Register - Login
Views: 99797338
Main - Memberlist - Active users - Calendar - Wiki - IRC Chat - Online users
Ranks - Rules/FAQ - Stats - Latest Posts - Color Chart - Smilies
05-03-22 05:52:52 AM
Jul - SM64 Hacking (Archive) - ToadsTool Suggestions New poll - New thread - Thread closed
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13Next newer thread | Next older thread
Weapon Master
Random nobody
Level: 8


Posts: 3/8
EXP: 1615
For next: 572

Since: 05-18-08

From: Pennsylvania

Since last post: 13.9 years
Last activity: 13.8 years

Posted on 05-22-08 08:35:54 PM Link
Dont yell if this was already posted but, how about a multiselect option. I.E. ctrl clicking on objects will allow you to change what they are, the position, ect. This would be useful for flatworld due to its 100+ blank items.
messiaen
Catgirl
Level: 68


Posts: 106/1085
EXP: 2596323
For next: 132477

Since: 11-20-07


Since last post: 8.1 years
Last activity: 7.2 years

Posted on 05-22-08 09:27:07 PM Link
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.
Weapon Master
Random nobody
Level: 8


Posts: 4/8
EXP: 1615
For next: 572

Since: 05-18-08

From: Pennsylvania

Since last post: 13.9 years
Last activity: 13.8 years

Posted on 05-22-08 10:54:05 PM Link
Thanks for that messiaen, it shuold list that. Another thing, how about a help button?
Stevoisiak
Member
Level: 38


Posts: 84/283
EXP: 345780
For next: 24667

Since: 11-22-07

From: New York, Long Island

Since last post: 12.4 years
Last activity: 5.6 years

Posted on 05-26-08 03:56:08 PM Link
So let me compile a newer list list of suggestions (I made one before) and if available, quotes from VL-Tone.


-A help button
-Turn double textures (Ex: Paintings, peach's portrait) into a single texture
Originally posted by VL-Tone
Yeah, but I would need to create special cases for these textures. I understand how useful it could be, but it would mean to have to design a special interface to deal with these.

-Integrate Text Wrangler into Toad's Tool
Originally posted by VL-Tone
Integrating the text editor was always in the plans. Currently it's not integrated. The menus for signs and Toad will show you the text from the game, but won't let you edit it. Actually it only shows the original text, it doesn't load it from the ROM.

The main issue is that the Text Wrangler shares some function names but the functions are sometimes different. Also, TT64 uses a different Binary I/O Xtra (Director Plug-in), so I'll have to change the code so it uses the same one (using both Xtras at the same time creates problems).

It won't be that hard, but the fact that it's not straightforward kept me from adding it sooner.

-Automatically resize oversized textures
Originally posted by VL-Tone
Having an automatic resizing feature was in my original plans. It wouldn't be that hard to implement. I'll try to keep that in mind

-Ability to edit colors of objects/characters other than Mario
-Change preferences before loading the ROM
Originally posted by VL-Tone
I'll try to see what I can do about that preference thing. I guess I could change the startup sequence so that it jumps to the pref screen at the beginning, and disable the "enable flatworld" button, and "back to editor" until a ROM is first loaded.

-Automatic Mario to Luigi/Waluigi/Wario button
Originally posted by VL-Tone
I thought about it, maybe a Luigi preset will be included.

-Skins for Toads Tool
-Make it so no files are left on the host PC if Toad's Tool is run of a flashdrive
Originally posted by VL-Tone
Well TT64 leaves an harmless preference file, but that's it.

-Add messiaen's custom objects for Flatworld Battlefield and "Flatworld Lava Land" to Toads Tool
-Allow extra text in the game
Originally posted by VL-Tone
It wouldn't be "that" hard, I would just need to know where is the pointer for the beginning of the text data so I could move the text at the end of its MIO0 bank, at a place where expansion would be easier. I'll try to keep that suggestion in mind and eventually implement it.

-Make some objects movable
Originally posted by VL-Tone
Unfortunately, the SM64 engine doesn't makes this as easy. You can't turn things solid just with a simple byte change, unlike when I thought when I started hacking the game. Objects need a collision map to be solid, which is in a different format than the textured polygon model.

Platforms in the Bowser courses and in Lethal Lava Land rely on the main level collision map to be solid, that's the problem we have. Moving the platforms without modifying the main collision map result in platforms that are not solid. Even if I make a collision data editor, it would be complicated to keep track of object movements and match the collision data changes. Furthermore, while some platforms can move individually, some of them are glued together in the collision map, and separating them in the collision map wouldn't be trivial, it would require adding new collision polygons.

You probably noticed that some platforms in other levels are solid by themselves, don't rely on the main collision map, and will remain solid if you move them.

Those have their own collision map, stored somewhere in the level data bank, or in the bank where their textured polygons are found.

I recently figured out that these collision maps are referred by the 0x2A commands found in the behavior scripts. The 0x2A command includes the address where this collision map is found. For example, the rotating grass platforms in Whomp's Fortress rely on their behavior to be solid. If you apply their behavior to another object, you'll notice that it does rotate, but that it has the same round platform collision as the original platform.

What I'm thinking about doing, is generate individual collision maps for each platform in the Bowser courses and LLL, then create new behavior scripts for each of them that will refer to their own collision map.

That would solve a lot of problems at the same time. That way, platforms would be really solid, and you could move them, swap them, duplicate them without having to modify the main collision map each time. I'd probably have to eliminate the original collision map.

If I used the rotating grass platform as a template to create these new behaviors, you could even make all platforms in the level rotate at the speed you want, or if you'd set their rotation to zero, they would be static like they are in the original.

Doing that would require some heavy modification of the original levels and data. The ROM would need to be patched with these modifications before it would be loaded by TT64. Maybe the ROM Extender could do that automatically, or TT64 itself.

-Use High Resolution textures.
Originally posted by VL-Tone
The N64 hardware has a very small texture cache, and this is the real limitation.

At best we could replace 32x32 textures by 64x64 versions. That would be relatively easy for textures that are contained in "texture-only" MIO0 data bank, but it would be much more complicated for textures that are contained along polygon data in the same MIO0 banks, since it would require moving the polygon commands around and change all the pointers and jump commands.

The high-resolution SM64 textures you've seen are possible only in an emulator using a specially crafted plug-in called "Rice video". This plug-in doesn't read the high-res textures from the ROM but rather from a folder. As far as I know it doesn't really increase the n64 texture cache, but rather intercepts the low-res texture before they're drawn on screen and replaces them with the high-res version.
VL-Tone
Member
Super Mario 64 forum moderator
Level: 53


Posts: 205/621
EXP: 1136482
For next: 20637

Since: 07-27-07

From: Montreal, Canada

Since last post: 4.7 years
Last activity: 6 days

Posted on 05-28-08 02:49:59 AM Link
Time: Now - Date: Today - Weather: What can be seen outside. - Mood: How it feels. Answer to the universe: 42
Originally posted by messiaen
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.


Starting with version 0.5.6 or something like that, I modified the behavior of the shift key from what it was in previous versions.

Now you can use the shift key to select multiple objects in the same click, by selecting the first object, then clicking on the last object while holding shift. Previously the shift key was only selecting or deselecting one object at a time (you could select multiple objects using shift, but only one by one). Since that change, the control key is now used much like the shift key was in previous versions, mimicking standard UI selection behaviors found in Windows and Mac OS X (though on the Mac it's the command key that has this role in the rest of the OS).

These changes were not listed in the latest documentation, but I'm pretty sure that the earlier shift behavior was mentioned.

Anyway, thanks again guys for all the suggestions, I'll try to address them when I get the time to work on TT64 again.

____________________
messiaen
Catgirl
Level: 68


Posts: 116/1085
EXP: 2596323
For next: 132477

Since: 11-20-07


Since last post: 8.1 years
Last activity: 7.2 years

Posted on 05-28-08 03:16:32 AM (last edited by messiaen at 05-28-08 01:52 PM) Link
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.
GhostMaster3000
Member
Level: 18


Posts: 18/53
EXP: 27658
For next: 2239

Since: 04-07-08

From: United States

Since last post: 12.6 years
Last activity: 12.5 years

Posted on 06-03-08 12:49:14 AM Link
Make the ROM extender extend all n64 ROMs to help people hack other games

____________________
Consoles Own: Atari 2600, NES, Game Boy, PlayStation, Nintendo 64, Game Boy Color, Sega Dreamcast, PlayStation 2, Gamecube, Xbox, Gameboy Advance (and SP), Nintendo DS (and DS Lite), PSP, Xbox 360, and Wii
Stevoisiak
Member
Level: 38


Posts: 87/283
EXP: 345780
For next: 24667

Since: 11-22-07

From: New York, Long Island

Since last post: 12.4 years
Last activity: 5.6 years

Posted on 06-03-08 01:02:56 AM Link
Originally posted by GhostMaster3000
Make the ROM extender extend all n64 ROMs to help people hack other games

Youd need a decoding of each individual game to extend it. When it extends the rom, the moved data needs to be moved to specific places, or it'll just end up as garbage.
Linkin800
User
Level: 11


Posts: 6/17
EXP: 5012
For next: 973

Since: 05-01-08


Since last post: 13.0 years
Last activity: 12.4 years

Posted on 06-03-08 01:34:19 AM Link
A way to rename object's so you don't have to click on everything that says undentified object to find the right one.
GhostMaster3000
Member
Level: 18


Posts: 19/53
EXP: 27658
For next: 2239

Since: 04-07-08

From: United States

Since last post: 12.6 years
Last activity: 12.5 years

Posted on 06-03-08 01:52:15 AM Link
Originally posted by Stevoisiak
Originally posted by GhostMaster3000
Make the ROM extender extend all n64 ROMs to help people hack other games

Youd need a decoding of each individual game to extend it. When it extends the rom, the moved data needs to be moved to specific places, or it'll just end up as garbage.

good point

____________________
Consoles Own: Atari 2600, NES, Game Boy, PlayStation, Nintendo 64, Game Boy Color, Sega Dreamcast, PlayStation 2, Gamecube, Xbox, Gameboy Advance (and SP), Nintendo DS (and DS Lite), PSP, Xbox 360, and Wii
messiaen
Catgirl
Level: 68


Posts: 124/1085
EXP: 2596323
For next: 132477

Since: 11-20-07


Since last post: 8.1 years
Last activity: 7.2 years

Posted on 06-06-08 01:46:45 PM Link
What about the possibility to manually input the behavior number instead of choosing it from the list? Since this would require some intimacy with behaviors, TT64 could prompt a confirmation box.

The reason I ask this is twofold: first, because of the "undefined behaviors" and, second, to make access to custom behaviors more easy. TT64 compiles the list of behaviors from objects used in the game, so if you have an unused behavior it won't show in the interface. To use it, you have manually change the behavior of a object in a hex editor, and then open TT64 behavior for a new "object combo" to be created.

Another option, but this probably needs a bit more work, is to actually read the bank 0x13 and compile the list of behaviors pointers from there.
machead253
iFruit
Level: 18


Posts: 46/50
EXP: 25245
For next: 4652

Since: 05-17-08

From: U.S.A

Since last post: 13.5 years
Last activity: 13.3 years

Posted on 07-16-08 02:24:05 PM Link
Would it be hard to have a button that could take Mario's hat of or maybe you could save different colors for Mario instead of doing it manually each time.
VL-Tone
Member
Super Mario 64 forum moderator
Level: 53


Posts: 210/621
EXP: 1136482
For next: 20637

Since: 07-27-07

From: Montreal, Canada

Since last post: 4.7 years
Last activity: 6 days

Posted on 07-16-08 03:43:52 PM Link
Time: Now - Date: Today - Weather: What can be seen outside. - Mood: How it feels. Answer to the universe: 42
Originally posted by messiaen
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.


Yes it could be done, currently the 0x13 byte is hidden, but I could make it visible and editable. As for the shift key, I'll have to check when I get home, but it is supposed to work that way.

Originally posted by Linkin800
A way to rename object's so you don't have to click on everything that says undentified object to find the right one.


Actually, you can change object labels with the current version of TT64, hold the alt/option key when clicking on the name (in the parameter bar, not in the menu) and you'll be able to edit the name. Note that if you update TT64 you'll lose your changes unless you keep the "label" files from the previous version. If you manage to find and rename a lot of the unknown labels, you can send me the files so I can integrate the changes into the next version of TT64.

Originally posted by messiaen
What about the possibility to manually input the behavior number instead of choosing it from the list? Since this would require some intimacy with behaviors, TT64 could prompt a confirmation box.

The reason I ask this is twofold: first, because of the "undefined behaviors" and, second, to make access to custom behaviors more easy. TT64 compiles the list of behaviors from objects used in the game, so if you have an unused behavior it won't show in the interface. To use it, you have manually change the behavior of a object in a hex editor, and then open TT64 behavior for a new "object combo" to be created.

Another option, but this probably needs a bit more work, is to actually read the bank 0x13 and compile the list of behaviors pointers from there.


By holding the alt/option key and clicking on a parameter field, you can edit any locked values. The field will be highlighted in red, reminding you to be careful with the values you enter. You can even edit things like 0x17 and 0x1A parameters with this feature (which are normally locked), but you'll have to reload the ROM for TT64 to take the changes into account.

Originally posted by machead253
Would it be hard to have a button that could take Mario's hat of or maybe you could save different colors for Mario instead of doing it manually each time.


Being able to save color sets is a nice suggestion, I'll try to remember it. As for Mario's hat, it would require me to have the ROM location of the byte modified by the appropriate Gameshark code (I assume that there's a code that does that).


____________________
Deleted User
Collection of nobodies
Posted on 07-18-08 07:52:49 AM Link
When you click the maximize button on a widescreen display, Toad's Tool 64 doesn't maximize the window fully. It makes the window not resize fully across the screen. Dragging the edges of the window when small doesn't allow the window to fill the whole screen, just a square shaped part of the screen on the left side.

My suggestion is when you click the maximize button on a widescreen display, it maximizes the screen fully and also dragging the edges should allow the window to go across the whole screen.
messiaen
Catgirl
Level: 68


Posts: 174/1085
EXP: 2596323
For next: 132477

Since: 11-20-07


Since last post: 8.1 years
Last activity: 7.2 years

Posted on 07-18-08 04:04:41 PM (last edited by messiaen at 07-18-08 03:27 PM) Link
I'm not sure if the following are bugs or something that needs to be implemented, but I would like to know how jumps (0x06) in the level scripts are handled. I tried insert a jump inside a jump and that works in SM64, but not in TT64. I also tried repointing one of existing 0x06 jumps to an extended part of the level script to get more room for 0x24 objects, but again this worked in the game but not in TT64. In both cases, I got a #getProp error. Are the level script jumps hardcoded in TT64?

And for the suggestion itself: what about a debug box so you can see what command and/or offset triggered the error?
VL-Tone
Member
Super Mario 64 forum moderator
Level: 53


Posts: 213/621
EXP: 1136482
For next: 20637

Since: 07-27-07

From: Montreal, Canada

Since last post: 4.7 years
Last activity: 6 days

Posted on 07-21-08 12:22:32 AM Link
Time: Now - Date: Today - Weather: What can be seen outside. - Mood: How it feels. Answer to the universe: 42
Originally posted by Blaster
When you click the maximize button on a widescreen display, Toad's Tool 64 doesn't maximize the window fully. It makes the window not resize fully across the screen. Dragging the edges of the window when small doesn't allow the window to fill the whole screen, just a square shaped part of the screen on the left side.

My suggestion is when you click the maximize button on a widescreen display, it maximizes the screen fully and also dragging the edges should allow the window to go across the whole screen.


What resolution is your screen? I think I put some maximum size value for the window, I may extend it, or remove the maximum. As for the dragging by the edges, I think it's a Director limitation, maybe it's fixed in Director 11, I'll have to check.

Originally posted by messiaen
I'm not sure if the following are bugs or something that needs to be implemented, but I would like to know how jumps (0x06) in the level scripts are handled. I tried insert a jump inside a jump and that works in SM64, but not in TT64. I also tried repointing one of existing 0x06 jumps to an extended part of the level script to get more room for 0x24 objects, but again this worked in the game but not in TT64. In both cases, I got a #getProp error. Are the level script jumps hardcoded in TT64?

And for the suggestion itself: what about a debug box so you can see what command and/or offset triggered the error?


Did you use the 0x07 command to get back from your jumps? I suspect that the game may not care that much if you didn't, but TT64 does.

As for a debug box, TT64 would first need some better error trapping. There's already a debug function that is more or less useful, hold shift while clicking on the splash screen to activate it.


____________________
Deleted User
Collection of nobodies
Posted on 07-21-08 12:54:40 AM Link
Originally posted by VL-Tone
Originally posted by Blaster
When you click the maximize button on a widescreen display, Toad's Tool 64 doesn't maximize the window fully. It makes the window not resize fully across the screen. Dragging the edges of the window when small doesn't allow the window to fill the whole screen, just a square shaped part of the screen on the left side.

My suggestion is when you click the maximize button on a widescreen display, it maximizes the screen fully and also dragging the edges should allow the window to go across the whole screen.


What resolution is your screen? I think I put some maximum size value for the window, I may extend it, or remove the maximum. As for the dragging by the edges, I think it's a Director limitation, maybe it's fixed in Director 11, I'll have to check.

My screen resolution is 1680 x 1050.
VL-Tone
Member
Super Mario 64 forum moderator
Level: 53


Posts: 217/621
EXP: 1136482
For next: 20637

Since: 07-27-07

From: Montreal, Canada

Since last post: 4.7 years
Last activity: 6 days

Posted on 07-21-08 01:18:08 AM Link
Time: Now - Date: Today - Weather: What can be seen outside. - Mood: How it feels. Answer to the universe: 42
Well it's the same as mine, though I'm pretty sure I put the limit of 1280 when I had a smaller screen. So anyway I'll remove the limit in the next version.


____________________
Deleted User
Collection of nobodies
Posted on 07-21-08 01:25:03 AM Link
Also I noticed I can't drag the bottom of the window to touch the taskbar. Clicking the maximize button doesn't let it either.
GhostMaster3000
Member
Level: 18


Posts: 32/53
EXP: 27658
For next: 2239

Since: 04-07-08

From: United States

Since last post: 12.6 years
Last activity: 12.5 years

Posted on 08-20-08 01:32:30 AM (last edited by GhostMaster3000 at 08-19-08 10:34 PM) Link
I just thought of something, when we known a lot about sm64, we can turn it into
A completely different game. Like the game is what you start with but then you use custom models and behaivors to change it.

Like mario in ocarina of time or a mix of games with a different plot.

____________________
Consoles Own: Atari 2600, NES, Game Boy, PlayStation, Nintendo 64, Game Boy Color, Sega Dreamcast, PlayStation 2, Gamecube, Xbox, Gameboy Advance (and SP), Nintendo DS (and DS Lite), PSP, Xbox 360, and Wii
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13Next newer thread | Next older thread
Jul - SM64 Hacking (Archive) - ToadsTool Suggestions New poll - New thread - Thread closed


Rusted Logic

Acmlmboard - commit 47be4dc [2021-08-23]
©2000-2022 Acmlm, Xkeeper, Kaito Sinclaire, et al.

33 database queries, 10 query cache hits.
Query execution time: 0.078935 seconds
Script execution time: 0.034558 seconds
Total render time: 0.113493 seconds