messiaen
Catgirl
Level: 68
   
Posts: 103/1085
EXP: 2596326 For next: 132474
Since: 11-20-07
Since last post: 8.1 years Last activity: 7.2 years
|
|
I couldn't understand these ideas. What are "key objects" ? What is the "appearing light effect" ?
Also, I can't handle multiple exits and there are already secret levels in Mario 64. |
messiaen
Catgirl
Level: 68
   
Posts: 104/1085
EXP: 2596326 For next: 132474
Since: 11-20-07
Since last post: 8.1 years Last activity: 7.2 years
|
|
I was looking at some old files and found this videogame-ish composion I did back in 2000. Back then I had some cool samples for it, which I lost on some hard drive failure.
I think the solos between 0:30-00:48 and especially 1:50-2:20 would really fit well into a Megaman Hack .
Hope you enjoy it!
Edit: Ops, I forgot the link. And sorry for the cheesy ending .
Edit2: Perhaps this should go to the "Art" forum?
|
messiaen
Catgirl
Level: 68
   
Posts: 105/1085
EXP: 2596326 For next: 132474
Since: 11-20-07
Since last post: 8.1 years Last activity: 7.2 years
|
|
Some objects have scaling parameters you can access from the Toad's Tool interface, such as goombas. You may have to turn on the "expert" mode for that.
The scaling you can do by hex editing is to change behaviors which use the 0x32 scale command. This will affect ALL objects which use that behavior, unless you create a custom behavior, which will require a lot more editing.
Here is an example how to scale a object. First of all, get a copy of the behaviors.txt file at the Hacking Documents thread. Now search for the Racing Penguin behavior. After you found it, locate the 0x32 command.
ROM Addr: 0021F180 Hex Behav: 13005380
Description: Racing Penguin
[...] 21F1A8/0053A8 32 00 01 90 [...]
The last two bytes of the 0x32 command (in this case, 01 90) determine the scaling. Go to the windows calculator and convert Hex -> Dec, and you'll see that in this case it is 400%. The 21F1A8 is the offset address of that command in the ROM, so if you edit this one use your hex editor "Go To" function and type 21FA18. For instance, if you want 800% scaling, change 32 00 01 90 to 32 00 03 20.
To check the effects, load the ROM again, go to the level and watch the giant penguin race . |
messiaen
Catgirl
Level: 68
   
Posts: 106/1085
EXP: 2596326 For next: 132474
Since: 11-20-07
Since last post: 8.1 years Last activity: 7.2 years
|
|
If you hold the "shift" key, you can select multiple objects at once. Any changes will affect all selected objects. It also took me a while to figure this feature , but it is probably in the Read Me file. |
messiaen
Catgirl
Level: 68
   
Posts: 107/1085
EXP: 2596326 For next: 132474
Since: 11-20-07
Since last post: 8.1 years Last activity: 7.2 years
|
|
The 0x32 is the one which starts with 32 00 XX XX , XX XX being the scaling factor. Here is one example how to find it. First, go to Toad's Tool and search the Chain Chomp. Now get his behavior number. Enable the "hexadecimal" option in the interface, so it will show as h478C.
Now look at the behavior file:
ROM Addr: 0021E58C Hex Behav: 1300478C
Description: Chain Chomp
21E58C/00478C 00 04 00 00
21E590/004790 11 01 20 C9
21E594/004794 1E 00 00 00
21E598/004798 27 26 00 00 06 02 51 78
21E5A0/0047A0 28 00 00 00
21E5A4/0047A4 30 00 00 00 00 00 FE 70 FF CE 00 00 03 E8 00 C8 00 00 00 00
21E5B8/0047B8 22 00 00 00
21E5BC/0047BC 2D 00 00 00
21E5C0/0047C0 0E 15 00 F0
21E5C4/0047C4 32 00 00 C8
21E5C8/0047C8 29 00 00 00 00 00 00 6B 13 00 48 1C
21E5D4/0047D4 08 00 00 00
21E5D8/0047D8 0C 00 00 00 80 30 0E 40
21E5E0/0047E0 09 00 00 00
There is the 0x32 command in bold. 21E5C4 is the offset in the ROM. Don't forget to convert C8 to decimal in the windows calculator, so C8 = 200% scaling. Change and see the effects. You can search the behavior file for other objects which use this command and change them. Sometimes you may get unpredictable effects.
Regarding the Bob-omb, it doesn't have a 0x32 command, so you may try to replace one of the other 4-byte commands. This one is safe to edit:
21CF84/003184 1E 00 00 00
Change 1E 00 00 00 to 32 00 XX XX (scaling factor) and you can get effects like this:
 |
messiaen
Catgirl
Level: 68
   
Posts: 108/1085
EXP: 2596326 For next: 132474
Since: 11-20-07
Since last post: 8.1 years Last activity: 7.2 years
|
|
A preview pic for the next release of "Platform Battlefield". This is not the actual sample level (there is none yet), just a test of different textured blocks with texture coordinates which don't hurt the eyes . Also, this will include a few individual scaling behaviors, so you can scale some objects just by changing its behavior. |
messiaen
Catgirl
Level: 68
   
Posts: 109/1085
EXP: 2596326 For next: 132474
Since: 11-20-07
Since last post: 8.1 years Last activity: 7.2 years
|
|
Something like this :
 |
messiaen
Catgirl
Level: 68
   
Posts: 110/1085
EXP: 2596326 For next: 132474
Since: 11-20-07
Since last post: 8.1 years Last activity: 7.2 years
|
|
You can always try the Virtual Theremin, but it takes a while to calibrate.
|
messiaen
Catgirl
Level: 68
   
Posts: 111/1085
EXP: 2596326 For next: 132474
Since: 11-20-07
Since last post: 8.1 years Last activity: 7.2 years
|
|
Ah, I didn't understand if you meant "key object" (a important object for an act) or the Bowser key, now it is clear. I think of using it in SMW-style, and now that James (yoshiman) found the coding which spawns itens from a tree, the key could be well hidden on there .
I can't make the appearing light effect, but the idea of an door inside a level is interesting. Perhaps a door that only opens if you have a certain ammount of coins? That would be probably a simple (but not easy, at least for me) modification with interesting effects.
I haven't been working on this for the past few days, I'm focusing on improving the experimental "Platform Battlefield" which is the basis of this. I now have about 5 different "blocks" with 3 texture combinations, and they can be used not just for building terrain but also for simple interiors. This template, along with a sample level, will be released in a few days. |
messiaen
Catgirl
Level: 68
   
Posts: 112/1085
EXP: 2596326 For next: 132474
Since: 11-20-07
Since last post: 8.1 years Last activity: 7.2 years
|
|
| One question: does anyone remember which levels use "hanging from ceiling" objects ? I searched in Toad's Tool 64 and I found one in the "Tall Tall Mountain" level. I want to "rip" it, but Tall Tall Mountain is not very good for this because its shape is a bit complex, I want something more simple. I'm sure there is another level with some kind of "net" you can hang, but I couldn't find it. |
messiaen
Catgirl
Level: 68
   
Posts: 113/1085
EXP: 2596326 For next: 132474
Since: 11-20-07
Since last post: 8.1 years Last activity: 7.2 years
|
|
Thanks Linkin800, that was the one I was looking for! I think it will be very useful as an independent 0x24 object. Do you know what is the texture number for it? I need this to help locating its polygons within the level terrain.
Regarding poles, I'm also looking for them. Besides the "Yellow pole" fom Dire Dire docks and the giant one in Whomp's Fortress, are there other ones which are already moving objects?
Kingwhomp: Those platforms polygons were created from scratch and their collisions polygons are basically the same as the platform geometry, but translated to the collision format. A custom behavior makes it "movable". You can read more about it in the Flatworld and behavior thread, or by looking at the hex data of the "Experimental Platform Battlefield 002". |
messiaen
Catgirl
Level: 68
   
Posts: 114/1085
EXP: 2596326 For next: 132474
Since: 11-20-07
Since last post: 8.1 years Last activity: 7.2 years
|
|
Thanks Linkin, that was the object I was looking for. I couldn't remember the level.
Also, I never noticed you could hang from the bridge in Bob-Omb .
PS: There is a new test video at the Experimental Platform Battlefield thread. |
messiaen
Catgirl
Level: 68
   
Posts: 115/1085
EXP: 2596326 For next: 132474
Since: 11-20-07
Since last post: 8.1 years Last activity: 7.2 years
|
|
Thanks, actually I had seen that list before on the Acmlm2 board. Could you give some more details about the 08 bytes per vertex format?
One interesting thing is that the 0001 "lava/ice" collision works on the Bob-omb terrain type (it produces lava), so even though the lava polygons in Lethal Lava Land aren't loaded with the 0x15 Geo Layout command, to get lava in any level is easier than water. |
messiaen
Catgirl
Level: 68
   
Posts: 116/1085
EXP: 2596326 For next: 132474
Since: 11-20-07
Since last post: 8.1 years Last activity: 7.2 years
|
|
There is one suggestion I think could benefit TT64 flexibilty: support loading behaviors from banks other than 0x13. I think every level can hold a few more bytes of data, so if you sneak in custom behaviors in one of the banks loaded (and expand it) you can have for instance scaling behaviors without affecting all objects and/or individual collision maps for some objects.
Also, VL-Tone, are you sure about the shift key functionality? In my 0.5.98b Windows version, it behaves like the usual "Control" function (selecting just one object at once), instead of selecting all objects between the first and second click. |
messiaen
Catgirl
Level: 68
   
Posts: 117/1085
EXP: 2596326 For next: 132474
Since: 11-20-07
Since last post: 8.1 years Last activity: 7.2 years
|
|
Thanks for sharing it rstewart. By the way, do you have undocumented information about Geometry Layout commands?
---
Ripped!
[/URL]
Now I just need to create the collision for it. |
messiaen
Catgirl
Level: 68
   
Posts: 118/1085
EXP: 2596326 For next: 132474
Since: 11-20-07
Since last post: 8.1 years Last activity: 7.2 years
|
|
While trying to use the "hanging net" object in my level, which has transparent polygons, it became clear to me the function of the "drawing layers" of 0x15 Geo Layout command. The Geometry Mode (Culling, Texture coordinates) and other polygon commands sometimes affect all other objects drawn at the same layer. The transparent polygons/semi-transparent polygons are usually drawn at layer 6, which seems to be the last one. Adding a few RSP commands before the triangle data, you can apply transparent textures to any object (if you don't do that, the alpha channel won't work).
Also, water/lava are loaded in different layers. |
messiaen
Catgirl
Level: 68
   
Posts: 119/1085
EXP: 2596326 For next: 132474
Since: 11-20-07
Since last post: 8.1 years Last activity: 7.2 years
|
|
----------------------------------------------
FLAT LETHAL LAVA LAND V0.2 - by messiaen
----------------------------------------------
This patch is an adaptation of the Flatworld concept to Lethal Lava Land, it replaces the polygons/collision from the level with a flat plane. Besides it, some objects now have individual solidity, so you can move them around and replicate them as many times as you want. To make them solid, you must select the appropriate behavior (see list below). There is also a special set of behaviors which makes the objects collision detectable by the enemies and also make them visible all the time. Use them *VERY* sparingly, because they lead to severe slowdown. The volcano uses the same kind of behavior, so be careful when using it.
There is a sample 2-star level included, so you can get an idea how to use the custom objects. Area 2 doesn't work properly, so forget about it for now.
Screenshot of the Sample Level:
Playthrough of the first star (you may want to play it first before watching the video!):
<object width="425" height="344"><embed src="http://www.youtube.com/v/7YvSAyHbARg&hl=pt-br&fs=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"></embed></object>
Features of v0.2:
----------------
- One "Flat" Lethal Lava Area (second area doesn't work)
- All objects from Lethal Lava Land
- Individual collision for Volcano, Platform with Arrows and Octogonal Lava Platform
- A modified "flat" version of the Platform with Arrows (Model 0B), so you can build more interesting platforms.
- Solidity/Scaling Behaviors
- Descriptions files
Solidity Behaviors:
-------------------
56E4 - Solid Platform With Arrows (model 0C)
5714 - Solid "Flat" Platform With Arrows (model 0B)
56FC - Solid Octogonal Lava Platform (model 05)
577C - Solid Volcano (Normal scaling)
5758 - Solid Volcano (300%)
572C - Solid Volcano (200%)
576C - Small Inverted Pyramid (200% scaling)
Special Behaviors (enemies can detect its collision)
------------------------------------------------
Use these sparingly, especially if you already have one or more volcanos in the level.
5790 - Octogonal Lava Platform for Enemies
57A4 - "Flat" Platform With Arrows" for Enemies
57B4 - Solid Platform With Arrows for Enemies
Download here! Patch to an extended Super Mario (U)! ROM.
*** IF YOU USE THIS ON YOUR MOD/HACK/VIDEO, PLEASE GIVE THE APPROPRIATE CREDITS *** |
messiaen
Catgirl
Level: 68
   
Posts: 120/1085
EXP: 2596326 For next: 132474
Since: 11-20-07
Since last post: 8.1 years Last activity: 7.2 years
|
|
The name of the object as listed in Toad's Tool interface plus the "Model ID" is fine, but if you also copy the respective Hex Data of the 0x22 Geometry Layout for those models that would be even better.
Edit: I worked a bit on the lava collision and now it works perfectly. Since there is now some empty space in Bank 0x07, I may use it for additional 0x24 command slots or, eventually, for behaviors. I also finished the volcano collision, but when I get near it the game halts .
I am also experimenting scaling some of the platforms and changing the movement (rotating/tilting/etc) by simple behavior edits. If you remember of some type of platform movement found in other level which you think would fit a platform model in Lethal Lava Land, we could experiment with creating hybrid behaviours to add yet more variety to this.
When scaling objects, the "intensity" of the movement is not altered, so for instance if you increase too much the size of the "Tilting Inverted Pyramid" object you won`t be able to climb it, because it will turn very fast and you will fall in the lava. Hmmm, maybe with the Koopa shell ? More moderate scalings values such as 200% work very nice for this one, so that will probably be a preset scaling value for this behavior.
Using the 0x04 "jump" command, you can create many scaling behaviors using just a few bytes, so it won't be a problem to include about 3 different preset scalings for each object.
---
Yet another edit: I was checking what objects could be imported from Bowser Fire Sea. There are lot of interesting moving objects, however most of them don't use the 0x2A collision pointer I'm used to. Probably they use a hard-coded kind of collision (maybe a pointer in the ASM data?). My previous experience with this kind of object is that even if you import the polygons the game will crash if you use it on other level, probably because it can't locate the collision data.
Too bad, because these moving platforms would add a great deal of fun to the Flat Lava Land.
---
Update: I fixed the volcano problem. I really don't understand what was the problem, but moving the collision into another bank worked. I have already finished the collision for the Volcano, Octogonal Lava Platform and Platform with Arrows.
Since I don't want any kind of slowdown, I'm being very conservative regarding drawing/disappear distance. Maybe each object will feature also a special behavior with maximum distance settings, because otherwise you can't place enemies on it. |
messiaen
Catgirl
Level: 68
   
Posts: 121/1085
EXP: 2596326 For next: 132474
Since: 11-20-07
Since last post: 8.1 years Last activity: 7.2 years
|
|
I tried it, and this is possible. Check the Sound Hacking thread.
What you have to do is erase (fill with 0 with a hex editor) the audio data for this particular sound effect. First, get
the N64 Sound Bank Ripper program (link in the sound hacking thread). After the program rips all the audio data, find the Peach voice. I did this by sorting by size, so it was easy to found it as "A001015.WAV".
Open the control.h file generated by that program and search for 1015. You will find this data:
NSound Sound1015 = { // Offset: 0x581980
NWaveTable Wave1015 = { // Offset: 0x581330
NLoop NLoop1015 = { // Offset: 0x5813A0
ALADPCMBook Book1015 = { // Offset: 0x581350 - This one is the important one
Open your ROM with your hex editor, go to offset 581350. I filled the whole region between 581350 to 5817A5 with 0's and it worked, but probably I should have stopped a few bytes earlier (or started a few bytes after 581350), because my emulator gave a small error (but continued working). |
messiaen
Catgirl
Level: 68
   
Posts: 122/1085
EXP: 2596326 For next: 132474
Since: 11-20-07
Since last post: 8.1 years Last activity: 7.2 years
|
|
The bridge is now on "Platform Battlefield"! I'm adding some new features and finishing a sample level before I release it.
--
Chomps no longer chained:
<object width="425" height="350"> <embed src="http://www.youtube.com/v/WeK4cI4DedA" type="application/x-shockwave-flash" width="425" height="350"> </embed> </object>
|