Actions

SCHG

Sonic Adventure

From Sonic Retro

Revision as of 03:32, 25 March 2020 by Black Squirrel (talk | contribs) (Text replacement - "__NOTOC__ {{SCHG SA}}" to "{{SCHG SA}} __TOC__")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
SCHG: Sonic Adventure
Dreamcast
Gamecube
2004 PC
2010 PC

This is the Sonic Community Hacking Guide for Sonic Adventure. Download the SA1 tools or SADXMDL if you plan to edit the models.

Models

Main Article: SCHG:Sonic Adventure/Model Format
All levels and boss characters in SA are compressed in .PRS files in SA's SONICADV directory. Inside these .PRS files are .BIN files, which are the models.

Model editing

originally by Dude Edited for use with SA1

Editing a model in SA is a lot simpler than you would think. The following instructions should be easy to understand.


Rip the Models. Use sadxmdl.exe to rip a .BIN model.

Import the Models. Open the .OBJ file sadxmdl.exe created and import it into your favorite 3D modeling application. (Note you cannot use Milkshape3D for this.)

Sort the Models. Next, you need to search through all the objects you imported until you find what you want to edit.

Edit the Models. Now that you have the model you wish to edit, start editing vertex positions. Do not do mesh edits as they will not work in the game.

Export the Models. Export your creation to an .OBJ file, and run it through obj2vt.exe.

Replace the Models. Open the exported out.vt in a hex editor. Open the .BIN file in a hex editor. Go back into your modeling application, and look at the edited object's name. It should be something like "group36332_4". See the "36332"? That's the decimal offset in the .BIN you need to go to. Go there now. Now, you're at the SEG struct for the model. The attach pointer is 4 bytes after this, and it is a dword. Subtract $C900000 (the key for Dreamcast binaries), and you get your new offset. Now go to this new offset. You should now be at the ATTACH struct of the model. The first dword is a vertex pointer. You now have the next offset to go to. Go there. Now, in this case, out.vt is 2388 bytes. Go back to your location in the .BIN, select the next 2388 bytes, and replace those bytes with the contents of out.vt. Save, and look at your creation in the game.

Objects

Main Article: SCHG:Sonic Adventure/Object Editing

References


Sonic Community Hacking Guide
General
SonED2 Manual | Subroutine Equivalency List
Game-Specific
Sonic the Hedgehog (16-bit) | Sonic the Hedgehog (8-bit) | Sonic CD (prototype 510) | Sonic CD | Sonic CD (PC) | Sonic CD (2011) | Sonic 2 (Simon Wai prototype) | Sonic 2 (16-bit) | Sonic 2 (Master System) | Sonic 3 | Sonic 3 & Knuckles | Chaotix | Sonic Jam | Sonic Jam 6 | Sonic Adventure | Sonic Adventure DX: Director's Cut | Sonic Adventure DX: PC | Sonic Adventure (2010) | Sonic Adventure 2 | Sonic Adventure 2: Battle | Sonic Adventure 2 (PC) | Sonic Heroes | Sonic Riders | Sonic the Hedgehog (2006) | Sonic & Sega All-Stars Racing | Sonic Unleashed (Xbox 360/PS3) | Sonic Colours | Sonic Generations | Sonic Forces
Technical information
Sonic Eraser | Sonic 2 (Nick Arcade prototype) | Sonic CD (prototype; 1992-12-04) | Dr. Robotnik's Mean Bean Machine | Sonic Triple Trouble | Tails Adventures | Sonic Crackers | Sonic 3D: Flickies' Island | Sonic & Knuckles Collection | Sonic R | Sonic Shuffle | Sonic Advance | Sonic Advance 3 | Sonic Battle | Shadow the Hedgehog | Sonic Rush | Sonic Classic Collection | Sonic Free Riders | Sonic Lost World
Legacy Guides
The Nemesis Hacking Guides The Esrael Hacking Guides
ROM: Sonic 1 | Sonic 2 | Sonic 2 Beta | Sonic 3

Savestate: Sonic 1 | Sonic 2 Beta/Final | Sonic 3

Sonic 1 (English / Portuguese) | Sonic 2 Beta (English / Portuguese) | Sonic 2 and Knuckles (English / Portuguese)
Move to Sega Retro
Number Systems (or scrap) | Assembly Hacking Guide | 68000 Instruction Set | 68000 ASM-to-Hex Code Reference | SMPS Music Hacking Guide | Mega Drive technical information