| |||
Views: 88,313,492 |
Main | FAQ | Uploader | IRC chat | Radio | Memberlist | Active users | Latest posts | Calendar | Stats | Online users | Search | 03-28-24 04:21 PM |
|
Guest: Register | Login |
0 users currently in ROM Hacking | 2 guests | 2 bots |
Main - ROM Hacking - Super Mario 64 Hacking Thread | New thread | Thread closed |
mortalkenshi2 |
| ||
Goomba Level: 13 Posts: 14/22 EXP: 8154 Next: 2113 Since: 02-22-07 Last post: 5370 days Last view: 1784 days |
Its a hack my bro made. He changed the castle hills into a black and green thingie. and then i used vl's hack for info on how to make any kind of cap that i want in any place so I got the cap and then in the end he will look like the yoshi from smw. what i am doing though is in hex not GS! |
Ribo Zurai |
| ||
Micro-Goomba Level: 10 Posts: 2/13 EXP: 3694 Next: 720 Since: 03-25-07 From: São Paulo, Brazil Last post: 6044 days Last view: 6044 days |
Hello. How I do to add a new object to the stage, without removing another one?
PS: VL-TONE IS ALIVE!!! Check Out>> http://www.youtube.com/watch?v=7uCLaxTlD3w His latest video, sooo coool! |
Cellar Dweller |
| ||
Snifit Level: 39 Posts: 24/287 EXP: 384304 Next: 20467 Since: 02-19-07 From: Arkansas Last post: 4023 days Last view: 3190 days |
I just thought y'all'd like to know that there is a demo hack posted on VL-Tone's blog. |
Craig341 |
| ||
Red Koopa Level: 27 Posts: 12/127 EXP: 112553 Next: 3606 Since: 04-23-07 Last post: 6061 days Last view: 6039 days |
Posted by Cellar Dweller Oh my god; Blarrgg? |
HyperHacker |
| ||
... Level: 73 Posts: 709/1220 EXP: 3359028 Next: 126840 Since: 03-25-07 From: no Last post: 6062 days Last view: 6046 days |
Wow. Isn't that the first beta found in SM64 since the debug codes so long ago? |
GuyPerfect |
| ||
Paratroopa Level: 30 Posts: 30/155 EXP: 152249 Next: 13620 Since: 03-14-07 Last post: 6016 days Last view: 5965 days |
Nope. After the MIO0 files were first dumped, a Yoshi Egg animation was discovered. I believe this was after the debug menu GameShark code was around. |
HyperHacker |
| ||
... Level: 73 Posts: 713/1220 EXP: 3359028 Next: 126840 Since: 03-25-07 From: no Last post: 6062 days Last view: 6046 days |
Oh right, there were some unused animations. Those are boring though. |
AT_460 |
| ||
Paragoomba Level: 20 Posts: 1/65 EXP: 41152 Next: 1287 Since: 05-11-07 From: PA Last post: 6153 days Last view: 6135 days |
Posted by HyperHacker You probably could but a Blarrg in a level but it has to be set to an existing behavior ID. Like make it act like a Goomba. |
Craig341 |
| ||
Red Koopa Level: 27 Posts: 13/127 EXP: 112553 Next: 3606 Since: 04-23-07 Last post: 6061 days Last view: 6039 days |
I downloaded the program needed to patch the patch file and the rom expander, but when I try to expand it, it says I need "us version 1.0 with ABCD byte ordering".
How to I change the ROM file to, uh, that? |
OoBurns |
| |||
Boo Level: 68 Posts: 478/1036 EXP: 2635514 Next: 93286 Since: 02-19-07 From: It is a mystery. Last post: 5693 days Last view: 5693 days |
|
Craig341 |
| ||
Red Koopa Level: 27 Posts: 14/127 EXP: 112553 Next: 3606 Since: 04-23-07 Last post: 6061 days Last view: 6039 days |
Posted by BooUrns That explains it; mine's .N64. Ah, forget it. |
Cellar Dweller |
| ||
Snifit Level: 39 Posts: 27/287 EXP: 384304 Next: 20467 Since: 02-19-07 From: Arkansas Last post: 4023 days Last view: 3190 days |
Here is a byte swapper I wrote. To use it, put the EXE file in the same directory your ROM (or somewhere in your $PATH). Start a command prompt and cd to the ROM directory. Then type the following: n64swapper2 <infile >outfile where infile is the ROM in the wrong byte order and outfile is the name to give to the fixed ROM. The following two URLs might not last long: http://desktop64.homeip.net:8086/n64swapper2.exe (binary) http://desktop64.homeip.net:8086/n64swapper2.c (source) |
GuyPerfect |
| ||
Paratroopa Level: 30 Posts: 31/155 EXP: 152249 Next: 13620 Since: 03-14-07 Last post: 6016 days Last view: 5965 days |
getc and putc are kinda extranneous for individual bytes of an entire file, aren't they? I recommend loading data into a char array buffer and swapping from there; outputting the file in larger chunks to minimize transfers between the storage device. |
Cellar Dweller |
| ||
Snifit Level: 39 Posts: 28/287 EXP: 384304 Next: 20467 Since: 02-19-07 From: Arkansas Last post: 4023 days Last view: 3190 days |
The program was coded quickly for a task that was at hand some time ago. If it was being polished up for a more formal release, I might have used a buffer and also added support for supplying filenames in the argument list.
Reading one character at a time isn't really that bad. One reason is that the program is expected to be used only once in a while. Also, the C standard libary supplies some buffering of its own. |
Raccoon Sam |
| ||
Cobrat Level: 56 Posts: 179/672 EXP: 1376864 Next: 21312 Since: 02-19-07 From: Hi Last post: 3439 days Last view: 2670 days |
Toad's Geometry starts from 0x00A3D3DB.
Now to find out where it ends and how it's handled. ____________________ |
mortalkenshi2 |
| ||
Goomba Level: 13 Posts: 15/22 EXP: 8154 Next: 2113 Since: 02-22-07 Last post: 5370 days Last view: 1784 days |
Hey, posting a new thing here since i had nothing else to do. This is what it looks like. The more you know the more you can add on. Don't add general stuff add what it does in the level.
24 18 1F 36 05 B0 03 00 01 BE 00 00 01 46 00 00 00 00 00 00 13 00 48 68 Chain Chomps Gate 24 18 1F 37 F7 01 02 CD 04 00 00 00 00 2D 00 00 00 03 00 00 13 00 4B 1C Teeter Bridge 24 18 1F 00 F7 FE 00 20 F4 03 00 00 00 19 00 00 00 00 00 00 13 00 25 E0 Unknown 24 18 1F CF F7 15 00 00 F1 9E 00 00 00 1B 00 00 00 00 00 00 13 00 14 78 Gate Switch [Switch] 24 18 1F CA 06 4C 01 2C 12 03 00 00 00 00 00 00 00 28 00 00 13 00 1B 70 Rotating Platforms 07 04 00 00 Unknown 24 18 03 00 05 FF 0F 00 EA 47 00 00 00 00 00 00 00 00 00 00 13 00 3A A4 Black Rolling Balls 24 18 3C 00 05 FF 0F 00 EA 47 00 00 00 00 00 00 00 00 00 00 13 00 3A 80 Black Rolling Balls 24 18 03 00 02 0C 0B 09 EA E8 00 00 00 00 00 00 00 02 00 00 13 00 3A A4 Black Rolling Balls 24 18 3C 00 02 0C 0B 09 EA E8 00 00 00 00 00 00 00 02 00 00 13 00 3A 80 Black Rolling Balls 24 18 1F B4 FC 1F 03 76 F2 13 00 00 00 00 00 00 00 00 00 00 13 00 3A 08 Unknown 24 18 1F B4 FC EF 03 76 EF 33 00 00 00 00 00 00 00 00 00 00 13 00 3A 08 Unknown 24 18 3E B4 FF A3 03 76 F2 AA 00 00 00 00 00 00 00 00 00 00 13 00 3A 08 Unknown 24 18 01 C3 E9 A5 00 8C 17 81 00 00 00 00 00 00 00 02 00 00 13 00 31 DC Pink Bob-Omb 24 18 01 C3 E7 96 00 00 1A 18 00 00 00 00 00 00 00 01 00 00 13 00 31 DC Pink Bob-Omb 24 18 3E C3 E9 A5 00 8C 17 81 00 00 00 00 00 00 00 00 00 00 13 00 32 28 Pink Bob-Omb Cannon 24 18 3E C3 E7 96 00 00 1A 18 00 00 00 00 00 00 00 03 00 00 13 00 31 DC Pink Bob-Omb 24 18 01 80 E9 C2 00 80 15 E0 00 00 00 87 00 00 00 01 00 00 13 00 4F 10 Unusable Cannon 24 18 3E C9 E9 C2 00 80 15 E0 00 00 00 B4 00 00 00 00 00 00 13 00 32 74 Bob-Omb Cannon Blocker 24 18 02 00 0C E8 10 92 EE 05 00 00 00 00 00 00 00 00 00 00 13 00 45 D0 Koopa The quick Flag 24 18 3C 68 0D 48 03 02 19 64 00 00 00 00 00 00 00 01 00 00 13 00 45 80 Koopa The Quick 07 04 00 00 Unknown 24 18 01 56 06 64 10 92 EA 41 00 00 FF 6D 00 00 00 00 00 00 13 00 01 F4 King Bob-Omb Boss 24 18 02 68 F0 5C 00 00 14 65 00 00 00 00 00 00 01 02 00 00 13 00 45 80 Koopa The Quick 24 18 3F 00 E8 90 03 E8 09 60 00 00 00 00 00 00 03 00 00 00 13 00 3E 8C Destination for Star in Act 4 24 18 3F 00 E6 38 03 E8 04 E2 00 00 00 00 00 00 04 04 00 00 13 00 3E FC Destination for star in Act 5 24 18 3F 7A 06 0E 04 B0 01 2C 00 00 00 00 00 00 05 00 00 00 13 00 3E 3C Unknown 07 04 00 00 Unknown 1B 04 00 00 Unknown 17 0C 00 07 00 EF 0E 37 00 F0 25 F9 Unknown 1A 0C 00 09 00 CD 34 BD 00 CE 03 D1 Unknown 17 0C 00 0A 00 B3 57 15 00 B5 58 55 Unknown 17 0C 00 05 00 88 C3 BC 00 89 D4 5C Unknown 17 0C 00 0C 00 13 B5 D0 00 13 B9 10 Unknown 17 0C 00 06 00 A0 99 34 00 A2 EA BC Unknown 17 0C 00 0D 00 1D 7C 90 00 1D 83 10 Unknown 17 0C 00 08 00 A8 18 1C 00 AA A4 0C Unknown 17 0C 00 0F 00 20 08 D0 00 20 14 10 1D 04 00 00 Unknown 25 0C 00 01 00 00 00 01 13 00 2E C0 Loads Mario Object 06 08 00 00 Unknown 15 00 06 60 06 08 00 00 Unknown 15 00 07 6C 06 08 00 00 Unknown 15 00 09 58 22 08 00 17 Unknown 16 00 0F E8 Unknown 22 08 00 36 0E 00 04 40 Unknown 22 08 00 37 0E 00 04 58 Unknown 22 08 00 38 0E 00 04 70 Unknown 1F 08 01 00 0E 00 04 88 Unknown 06 08 00 00 0E 00 00 00 Unknown 06 08 00 00 0E 00 00 7C Unknown 06 08 00 00 0E 00 01 E8 Unknown 24 18 1F 00 E6 62 17 70 19 40 00 00 00 87 00 00 00 0A 00 00 13 00 2F 78 Unknown 24 18 1F 00 02 47 0A 7B EA F5 00 00 FF 66 00 00 00 0B 00 00 13 00 07 5C Unknown 24 18 1F 00 06 90 0E FB EA 6D 00 00 FF 67 00 00 00 0C 00 00 13 00 07 5C Unknown 24 18 1F 00 E6 2C 04 00 F2 E9 00 00 00 6B 00 00 00 0D 00 00 13 00 07 5C Unknown 24 18 1F 00 07 BC 03 00 19 DA 00 00 FF 69 00 00 00 0E 00 00 13 00 07 5C Unknown 26 08 0A 09 01 0A 00 00 Warp 26 08 0B 09 01 0C 00 00 Warp 26 08 0C 09 01 0B 00 00 Warp 26 08 0D 09 01 0E 00 00 Warp 26 08 0E 09 01 0D 00 00 Warp 26 08 F0 06 01 32 00 00 Warp 26 08 F1 06 01 64 00 00 Warp 2E 08 00 00 07 00 E9 58 Level Collision Data 39 08 00 00 07 01 10 4C Insert MI0O object 30 04 00 00 Unknown 36 08 00 00 00 03 00 00 Music Command 31 04 00 00 Terrain Type 20 04 00 00 Unknown 1E 04 00 00 Unknown 2B 0C 01 00 00 87 E6 62 00 00 19 40 Unknown 11 08 00 00 80 24 BC D8 Unknown 12 08 00 01 80 24 BC D8 Unknown 1C 04 00 00 Unknown 04 04 00 01 Unknown 02 04 00 00 Unknown 00 00 00 00 20 00 03 E8 Unknown 04 00 00 00 Unknown 15 04 00 00 07 00 E4 58 05 00 00 00 Unknown 01 00 00 00 Unknown 20 00 04 B0 Unknown 04 00 00 00 Unknown 15 01 00 00 07 00 E7 68 Unknown 05 00 00 00 Unknown 01 00 00 00 Unknown 20 00 03 20 Unknown 04 00 00 00 Unknown 15 04 00 00 07 00 E8 A0 Unknown 05 00 00 00 Unknown 01 00 00 00 Unknown 08 00 00 0A 00 A0 00 78 00 A0 00 78 Unknown 04 00 00 00 Unknown 0C 00 00 00 Unknown 04 00 00 00 Unknown 09 00 00 64 Unknown 04 00 00 00 Unknown 19 00 00 00 80 27 63 D4 Unknown 05 00 00 00 Unknown 05 00 00 00 Unknown 0C 01 00 00 Unknown 04 00 00 00 Unknown 0A 01 00 2D 00 64 75 30 80 29 AA 3C Unknown 04 00 00 00 Unknown 0F 00 00 01 00 00 07 D0 17 70 Unknown 0C 00 00 00 Unknown EE 00 80 28 7D 30 Unknown 04 00 00 00 Unknown 15 01 00 00 07 00 43 90 Unknown 15 01 00 00 07 00 9D 80 Unknown 15 06 00 00 07 00 A4 70 Unknown 15 04 00 00 07 00 A9 20 Unknown 15 01 00 00 07 00 DD 18 Unknown 15 01 00 00 07 00 E3 38 Unknown 17 00 00 00 Unknown 18 00 00 00 80 27 61 D0 Unknown 05 00 00 00 Unknown 05 00 00 00 Unknown 05 00 00 00 Unknown 0C 00 00 00 Unknown 04 00 00 00 Unknown 18 00 00 00 80 2C D1 E8 Unknown 05 00 00 00 Unknown 05 00 00 00 Unknown 01 00 00 00 00 00 00 00 Unknown |
Concertmate200 |
| ||
Newcomer Level: 8 Posts: 9/9 EXP: 2133 Next: 54 Since: 02-22-07 Last post: 6162 days Last view: 6124 days |
VL just updated his blog http://web.mac.com/qubedstudios/iWeb/Site/Blog/9B2D8FAE-91CB-4D71-A6B0-230821E0945F.html
Ok I know this is not the "VL-Tone blog updates" thread, but he just released some very interesting new SM64 hacking documents. http://homepage.mac.com/qubedstudios/SM64Behaviors.txt Contains just about all possible behavior pointers and their "decompiled" script, including some not used in the game. This one lists all 3d models and their Geometry Layout pointers, by level. http://homepage.mac.com/qubedstudios/SM64GeoLayoutPtrsByLevels.txt This one is a list of all 3d models and their Geometry Layout pointers, sorted by ROM banks. http://homepage.mac.com/qubedstudios/SM64GeoLayoutPtrs.txt And this one adds Polygon data pointer lists to each Geometry Layout pointer. http://homepage.mac.com/qubedstudios/SM64GeoLayoutPtrsAndPolys.txt You may also need this doc, which lists all ROM banks with their TT64-specific ID number. http://homepage.mac.com/qubedstudios/TT64ROMBanks.txt |
Cellar Dweller |
| ||
Snifit Level: 39 Posts: 29/287 EXP: 384304 Next: 20467 Since: 02-19-07 From: Arkansas Last post: 4023 days Last view: 3190 days |
I discovered/verified a few things about the behavior scripts. First, the commands between the 0x08 and 0x09 commands get execuited repeatedly during gameplay. The 0x08 command puts the current script position on a stack and the 0x09 command jumps back to the command after the 0x08 command without popping the stack. (Actually, the 0x09 command pops the address off the stack, but then pushes it right back on.) The 0x09 command also halts the interpeter until later, probably the next frame.
The 0x0c command just calls a function. Address in the ranges of 0x802461dc - 0x80328960 and 0x8037893c - 0x80384678 are functions. There are almost certainly some more functions outside these ranges as these are the bounds of the two main blocks of them recorded in my notes. I canged the function pointer in the last 0x0c command in the "Collectable coin" behavior script to a stub function. The result was some coins not spinning and not being collectable. The stub function I used was 0x8028b704 which is actually the address of the return instruction of the preceding function in memory. |
Kario |
| ||
Red Goomba Level: 16 Posts: 11/40 EXP: 19930 Next: 326 Since: 04-01-07 Last post: 5207 days Last view: 2985 days |
Not to get anyones hopes up, but the latest update on his blog today, says there could be a release within the next few weeks. |
GuyPerfect |
| ||
Paratroopa Level: 30 Posts: 44/155 EXP: 152249 Next: 13620 Since: 03-14-07 Last post: 6016 days Last view: 5965 days |
I motion that this thread be closed and clicking on its link redirects to VL-Tone's blog. |
Main - ROM Hacking - Super Mario 64 Hacking Thread | New thread | Thread closed |
© 2005-2023 Acmlm, blackhole89, Xkeeper et al. |
MySQL - queries: 117, rows: 157/157, time: 0.019 seconds. |