Sonic Adventure DX: PC/Level Data Locations
From Sonic Retro
Revision as of 22:34, 2 June 2010 by MainMemory (talk | contribs) (moved SCHG:Sonic Adventure DX: PC/EXE Editing/Level Headers to SCHG:Sonic Adventure DX: PC/Level Geometry: They aren't headers for all the level data, and they aren't all in the EXE.)
Disclaimer
Each level in Sonic Adventure DX is a compiled C++ file with embedded model data. They are usually similar in structure, but there is technically the possibility that some things may be in different locations for different levels.
LandTable header format
Offset | Type | Description |
---|---|---|
0 | Short | COL Count |
2 | Short | Anim Count |
4 | Int | Some type of flag, usually 12, 13 indicates the presence of animations. |
8 | Float | Unknown, usually 3000 |
C | Pointer | COL List |
10 | Pointer | Anim List |
14 | Pointer | Texture file name. Optional, possibly unused. |
18 | Pointer | Texture List |
1C | Int | Unknown |
20 | Int | Unknown |
COL Format
The name COL is an antiquated misnomer, but for lack of a better name, it stuck. This data struct is a reference for loading a level model. It's 0x24 bytes long and works as follows:
Offset | Type | Description |
---|---|---|
0 | Float[3] | Center of collision sphere |
C | Float | Radius of collision sphere |
10 | 8 Bytes | Padding? |
18 | Pointer | Model (OBJECT Struct) |
1C | Int | Unknown |
20 | Int | Surface Flags (see below) |
Surface Flags
These flags are not entirely figured out yet, but here's what is known for sure:
0x00000001 = Solid
0x00000002 = Water (overrides solid flag, makes surface transparent)
0x00000004 = No Friction
0x00000008 = No Acceleration
0x00000080 = Increased Acceleration
0x00000100 = Diggable
0x00001000 = Unclimbable
0x00010000 = Hurt
0x00100000 = Footprints
0x80000000 = Visible
Listing of Header locations
If you wish to use Dude's level rippers with this data, you will have to enter the COL Address in decimal and the COL Count.
Name | File | Address | COL Count | COL Address | Anim Count | Anim Address |
---|---|---|---|---|---|---|
Hedgehog Hammer | sonic.exe | 23C7BCC | 71 | 23C71D0 | 0 | 0 |
Emerald Coast 1 | sonic.exe | A99CB8 | 480 | A95938 | 0 | 0 |
Emerald Coast 2 | sonic.exe | C39E9C | 169 | C386D8 | 0 | 0 |
Emerald Coast 3 | sonic.exe | C386B4 | 199 | C36AB8 | 0 | 0 |
Windy Valley 1 | sonic.exe | 8051E0 | 78 | 8046E8 | 0 | 0 |
Windy Valley 2 | sonic.exe | 8046C0 | 24 | 804360 | 0 | 0 |
Windy Valley 3 | sonic.exe | 80433C | 167 | 802BC0 | 0 | 0 |
Twinkle Park 1 | sonic.exe | 22B975C | 119 | 22B86A0 | 0 | 0 |
Twinkle Park 2 | sonic.exe | 22B867C | 193 | 22B6B58 | 0 | 0 |
Twinkle Park 3 | sonic.exe | 22B6B34 | 87 | 22B5EF8 | 0 | 0 |
Speed Highway 1 | sonic.exe | 22B1E98 | 474 | 22ADBF0 | 0 | 0 |
Speed Highway 2 | sonic.exe | 22ADBC8 | 88 | 22ACF68 | 0 | 0 |
Speed Highway 3 | sonic.exe | 22ACF40 | 202 | 22AB2D8 | 0 | 0 |
Red Mountain 1 | sonic.exe | 1E405E0 | 582 | 1E3B408 | 0 | 0 |
Red Mountain 2 | sonic.exe | 20C8B58 | 200 | 20C6F38 | 0 | 0 |
Red Mountain 3 | sonic.exe | 20C6F14 | 381 | 20C3980 | 0 | 0 |
Sky Deck 1 | sonic.exe | 1E39ADC | 349 | 1E369C8 | 0 | 0 |
Sky Deck 2 | sonic.exe | 1E369A0 | 238 | 1E34828 | 0 | 0 |
Sky Deck 3 | sonic.exe | 1E34800 | 328 | 1E319E0 | 0 | 0 |
Lost World 1 | sonic.exe | 1C38B60 | 104 | 1C37CC0 | 0 | 0 |
Lost World 2 | sonic.exe | 1C37C9C | 337 | 1C34D38 | 0 | 0 |
Lost World 3 | sonic.exe | 1C34D14 | 17 | 1C34AB0 | 0 | 0 |
Icecap 1 | sonic.exe | A41D2C | 59 | A414E0 | 0 | 0 |
Icecap 2 | sonic.exe | A414BC | 77 | A409E8 | 0 | 0 |
Icecap 3 | sonic.exe | A409C4 | 295 | A3E048 | 0 | 0 |
Icecap 4 | sonic.exe | A3E024 | 171 | A3C818 | 0 | 0 |
Casinopolis 1 | sonic.exe | 198A9D0 | 240 | 1988810 | 0 | 0 |
Casinopolis 2 | sonic.exe | 19887EC | 211 | 1986A40 | 0 | 0 |
Casinopolis 3 | sonic.exe | 1986A1C | 99 | 1985C30 | 0 | 0 |
Casinopolis 4 | sonic.exe | 1985C08 | 118 | 1984AF8 | 5 | 1985B90 |
Final Egg 1 | sonic.exe | 16600D0 | 287 | 165CFD0 | 92 | 165F830 |
Final Egg 2 | sonic.exe | 15C8ED0 | 122 | 15C7D60 | 3 | 15C8E88 |
Final Egg 3 | sonic.exe | 165CFA8 | 538 | 1657EF0 | 54 | 165CA98 |
Hot Shelter 1 | sonic.exe | 13D09C0 | 164 | 13CF2B0 | 0 | 0 |
Hot Shelter 2 | sonic.exe | 13CF288 | 614 | 13C9B70 | 8 | 13CF1C8 |
Hot Shelter 3 | sonic.exe | 13C9B48 | 394 | 13C6350 | 6 | 13C9AB8 |
Chaos 0 | BOSSCHAOS0MODELS.DLL | 69C20 | 64 | 69320 | 0 | 0 |
Chaos 2 | sonic.exe | D2136C | 51 | D20C40 | 0 | 0 |
Chaos 4 | sonic.exe | D90930 | 72 | D8FF10 | 0 | 0 |
Chaos 6 (Sonic) | sonic.exe | DEDE38 | 50 | DED718 | 1 | DEDE20 |
Chaos 6 (Knuckles) | sonic.exe | DED6F0 | 70 | DECD18 | 0 | 0 |
Perfect Chaos | sonic.exe | 102478C | 209 | 1022A28 | 0 | 0 |
Egg Hornet | sonic.exe | 1170B1C | 135 | 116F808 | 1 | 1170B04 |
Egg Walker | sonic.exe | 11EC454 | 301 | 11E9A00 | 0 | 0 |
Egg Viper | sonic.exe | 125E990 | 125 | 125D600 | 21 | 125E798 |
ZERO | sonic.exe | 12B4D38 | 50 | 12B4618 | 1 | 12B4D20 |
E-101 Beta | sonic.exe | 10FCEE8 | 105 | 10FBFC0 | 4 | 10FCE88 |
E-101mkII | sonic.exe | 1122578 | 50 | 1121E58 | 1 | 1122560 |
Station Square City Hall | ADV00MODELS.DLL | 1D0DA8 | 266 | 1CE840 | 0 | 0 |
Station Square Casino | ADV00MODELS.DLL | 1D494C | 423 | 1D0DD0 | 0 | 0 |
Station Square Sewer | ADV00MODELS.DLL | 1D5ABC | 123 | 1D4970 | 0 | 0 |
Station Square Station | ADV00MODELS.DLL | 1D82AC | 283 | 1D5AE0 | 0 | 0 |
Station Square Hotel | ADV00MODELS.DLL | 1D9170 | 104 | 1D82D0 | 0 | 0 |
Station Square Twinkle Park | ADV00MODELS.DLL | 1D948C | 21 | 1D9198 | 0 | 0 |
Egg Carrier Deck | ADV01MODELS.DLL | 1ECEE4 | 311 | 1EA310 | 1 | 1ECECC |
Egg Carrier Deck (Front) | ADV01MODELS.DLL | 1EDF4C | 115 | 1ECF08 | 1 | 1EDF34 |
Egg Carrier Deck (Back) | ADV01MODELS.DLL | 1EE9B4 | 73 | 1EDF70 | 0 | 0 |
Egg Carrier Captain's Room | ADV01MODELS.DLL | 1EFD50 | 129 | 1EE9D8 | 14 | 1EFC00 |
Egg Carrier Private Room | ADV01MODELS.DLL | 1F04E0 | 52 | 1EFD78 | 1 | 1F04C8 |
Egg Carrier Pool | ADV01MODELS.DLL | 1F15C4 | 119 | 1F0508 | 0 | 0 |
Egg Carrier Ammunition Room | ADV01CMODELS.DLL | E86D0 | 112 | E7680 | 6 | E8640 |
Egg Carrier Main Hall | ADV01CMODELS.DLL | E9934 | 129 | E86F8 | 1 | E991C |
Egg Carrier Hedgehog Hammer | ADV01CMODELS.DLL | EA354 | 71 | E9958 | 0 | 0 |
Egg Carrier Prison | ADV01CMODELS.DLL | EAF84 | 85 | EA378 | 1 | EAF6C |
Egg Carrier Reservoir | ADV01CMODELS.DLL | EB998 | 68 | EAFA8 | 4 | EB938 |
Egg Carrier Teleporter | ADV01CMODELS.DLL | EC038 | 46 | EB9C0 | 0 | 0 |
Mystic Ruins Main Area | ADV02MODELS.DLL | 2903B0 | 228 | 28E388 | 1 | 290398 |
Mystic Ruins Angel Island | ADV02MODELS.DLL | 2914DC | 121 | 2903D8 | 0 | 0 |
Mystic Ruins Jungle | ADV02MODELS.DLL | 2930D8 | 198 | 291500 | 0 | 0 |
Mystic Ruins Final Egg | ADV02MODELS.DLL | 293FE8 | 102 | 293100 | 6 | 293F58 |
Past Village | ADV03MODELS.DLL | FFC24 | 315 | FCFD8 | 0 | 0 |
Past Shrine | ADV03MODELS.DLL | 101B5C | 221 | FFC48 | 0 | 0 |
Past Flaming Shrine | ADV03MODELS.DLL | 103974 | 213 | 101B80 | 0 | 0 |
Twinkle Circuit | sonic.exe | 5C99A4 | 171 | 5C8198 | 0 | 0 |
Twinkle Circuit 1 | sonic.exe | 5C8170 | 150 | 5C6C58 | 0 | 0 |
Twinkle Circuit 2 | sonic.exe | 5C6C30 | 140 | 5C5880 | 0 | 0 |
Twinkle Circuit 3 | sonic.exe | 5C585C | 135 | 5C4560 | 0 | 0 |
Twinkle Circuit 4 | sonic.exe | 5C453C | 113 | 5C3558 | 0 | 0 |
Twinkle Circuit 5 | sonic.exe | 5C3534 | 129 | 5C2310 | 0 | 0 |
Sand Hill | sonic.exe | 133EB64 | 315 | 133BF18 | 0 | 0 |
Station Square Chao Garden | sonic.exe | 300E738 | 88 | 300DAD8 | 0 | 0 |
Egg Carrier Chao Garden | sonic.exe | 3005E54 | 83 | 3005290 | 1 | 3005E3C |
MR Chao Garden Day | CHAOSTGGARDEN02MR_DAYTIME.DLL | 35780 | 104 | 348E0 | 0 | 0 |
MR Chao Garden Evening | CHAOSTGGARDEN02MR_EVENING.DLL | 35780 | 104 | 348E0 | 0 | 0 |
MR Chao Garden Night | CHAOSTGGARDEN02MR_NIGHT.DLL | 35928 | 104 | 34A88 | 0 | 0 |
Chao Race Entry | sonic.exe | 3023700 | 28 | 3023310 | 0 | 0 |
Chao Race | sonic.exe | 3024C58 | 148 | 3023740 | 3 | 3024C10 |
Black Market | sonic.exe | 2FCAC58 | 18 | 2FCA9D0 | 0 | 0 |