Actions

SCHG

Sonic Adventure DX: PC/Level Data Locations

From Sonic Retro

Revision as of 14:29, 1 June 2010 by MainMemory (talk | contribs) (rewriting)

Template:SCHG SADX:PC

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

This listing isn't for the actual start of the header, that location hasn't been determined. Since the major interest in editing levels is editing their geometry, this list will (for now) refer to the geometry loading index. These use the COL format as described above. Also, when this list was being created, the location selection was a little inconsistent. This has since been corrected, and the data has been reformatted to facilitate the use of available level rippers.

Emerald Coast Geometry Loaders

Segment 0

  • Geometry loader starts at: 11098424
  • Geometry loader pointer at: 11115716
  • Geometry loader has 480 objects

Segment 1

  • Geometry loader starts at: 12814040
  • Geometry loader pointer at: 12820136
  • Geometry loader has 169 objects

Segment 2

  • Geometry loader starts at: 12806840
  • Geometry loader pointer at: 12814016
  • Geometry loader has 199 objects

Windy Valley Geometry Loaders

Segment 0

  • Geometry loader starts at: 8406760
  • Geometry loader pointer at: 8409580
  • Geometry loader has 78 objects

Segment 1

  • Geometry loader starts at: 8405856
  • Geometry loader pointer at: 8406732
  • Geometry loader has 24 objects

Segment 2

  • Geometry loader starts at: 8399808
  • Geometry loader pointer at: 8405832
  • Geometry loader has 167 objects

Casinopolis Geometry Loaders

Segment 0

  • Geometry loader starts at: 26773520
  • Geometry loader pointer at: 26782172
  • Geometry loader has 240 objects

Segment 1

  • Geometry loader starts at: 62765888
  • Geometry loader pointer at: 26773496
  • Geometry loader has 211 objects

Segment 2

  • Geometry loader starts at: 26762288
  • Geometry loader pointer at: 26765864
  • Geometry loader has 99 objects

Segment 3

  • Geometry loader starts at: ??
  • Geometry loader ends at: ??
  • Geometry loader is 0x?? long

Ice Cap Geometry Loaders

Segment 0

  • Geometry loader starts at: 10753248
  • Geometry loader loader pointer at: 10755384
  • Geometry loader loader has 59 objects

Segment 1

  • Geometry loader starts at: 10750440
  • Geometry loader pointer at: 10753224
  • Geometry loader has 79 objects

Segment 2

  • Geometry loader starts at: 10739784
  • Geometry loader pointer at: 10750416
  • Geometry loader has 295 objects

Twinkle Park Geometry Loaders

Segment 0

  • Geometry loader starts at: 36406944
  • Geometry loader pointer at: 36411240
  • Geometry loader has 119 objects

Segment 1

  • Geometry loader starts at: 36399960
  • Geometry loader pointer at: 36406920
  • Geometry loader has 193 objects

Segment 2

  • Geomtery loader starts at: 36396792
  • Geometry loader pointer at: 36399936
  • Geometry loader has 87 objects

Speed Highway Geometry Loaders

Segment 0

  • Geometry loader starts at: 3636248
  • Geometry loader pointer at: 36380324
  • Geometry loader has 474 objects

Segment 1

  • Geometry loader starts at: 36360040
  • Geometry loader pointer at: 36363220
  • Geometry loader has 88 objects

Segment 2

  • Geomtery loader starts at: 36352728
  • Geometry loader pointer at: 36360012
  • Geometry loader has 202 objects

Red Mountain Geometry Loaders

Segment 0

  • Geomtery loader starts at: 31699976
  • Geometry loader pointer at: 31720940
  • Geometry loader has 582 objects

Segment 1

  • Geometry loader starts at: 34369336
  • Geometry loader pointer at: 34376548
  • Geometry loader has 200 objects

Segment 2

  • Geomtery loader starts at: 34355584
  • Geometry loader pointer at: 34369312
  • Geometry loader has 381 objects

Lost World Geometry Loaders

Segment 0

  • Geometry loader starts at: 29588672
  • Geometry loader pointer at: 29592428
  • Geometry loader has 104 objects

Segment 1

  • Geometry loader starts at: 29576504
  • Geometry loader pointer at: 29588648
  • Geometry loader has 337 objects

Segment 2

  • Geometry loader starts at: 29575856
  • Geometry loader pointer at: 29576480
  • Geometry loader has 17 objects

Sand Hill Geometry Loader

  • Geomtery loader starts at: 20168472
  • Geometry loader pointer at: 20179824
  • Geometry loader has 315 objects
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