Actions

SCHG

Difference between revisions of "Sonic Adventure DX: PC/Level Data Locations"

From Sonic Retro

m (Segment 0)
Line 37: Line 37:
  
 
==Listing of Header locations==
 
==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, sometimes the address given is for the end of the list, other times it is the address that points to the beginning of the list. Either way, they're within a tolerance of 0x0c of eachother, so don't use these addresses in a program, if you're coding a utility, please open a hex editor and make sure your address is accurate first.
+
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===
 
===Emerald Coast Geometry Loaders===
Line 47: Line 47:
 
====Segment 1====
 
====Segment 1====
 
* Geometry loader starts at: 12814040
 
* Geometry loader starts at: 12814040
* Geometry loader ends at: 12820124
+
* Geometry loader pointer at: 12820136
* Geometry loader is 0x17C4 long
+
* Geometry loader has 169 objects
  
 
====Segment 2====
 
====Segment 2====
 
* Geometry loader starts at: 12806840
 
* Geometry loader starts at: 12806840
* Geometry loader ends at: 12814004
+
* Geometry loader pointer at: 12814016
* Geometry loader is 0x1BFC long
+
* Geometry loader has 199 objects
  
 
===Windy Valley Geometry Loaders===
 
===Windy Valley Geometry Loaders===
 
====Segment 0====
 
====Segment 0====
 
* Geometry loader starts at: 8406760
 
* Geometry loader starts at: 8406760
* Geometry loader ends at: 8409572
+
* Geometry loader pointer at: 8409580
* Geometry loader is 0xAF8 long
+
* Geometry loader has 78 objects
  
 
====Segment 1====
 
====Segment 1====
 
* Geometry loader starts at: 8405856
 
* Geometry loader starts at: 8405856
* Geometry loader ends at: 8406724
+
* Geometry loader pointer at: 8406732
* Geometry loader is 0x360 long
+
* Geometry loader has 24 objects
  
 
====Segment 2====
 
====Segment 2====
 
* Geometry loader starts at: 8399808
 
* Geometry loader starts at: 8399808
* Geometry loader ends at: 8405824
+
* Geometry loader pointer at: 8405832
* Geometry loader is 0x177C long
+
* Geometry loader has 167 objects
  
 
===Casinopolis Geometry Loaders===
 
===Casinopolis Geometry Loaders===
 
====Segment 0====
 
====Segment 0====
 
* Geometry loader starts at: 26773520
 
* Geometry loader starts at: 26773520
* Geometry loader ends at: 26782160
+
* Geometry loader pointer at: 26782172
* Geometry loader is 0x21c0 long
+
* Geometry loader has 240 objects
  
 
====Segment 1====
 
====Segment 1====
 
* Geometry loader starts at: 62765888
 
* Geometry loader starts at: 62765888
* Geometry loader ends at: 26773484
+
* Geometry loader pointer at: 26773496
* Geometry loader is 0x1DAC long
+
* Geometry loader has 211 objects
  
 
====Segment 2====
 
====Segment 2====
 
* Geometry loader starts at: 26762288
 
* Geometry loader starts at: 26762288
* Geometry loader ends at: 26765856
+
* Geometry loader pointer at: 26765864
* Geometry loader is 0xDEC long
+
* Geometry loader has 99 objects
  
 
====Segment 3====
 
====Segment 3====
Line 95: Line 95:
 
====Segment 0====
 
====Segment 0====
 
* Geometry loader starts at: 10753248
 
* Geometry loader starts at: 10753248
* Geometry loader ends at: 10755376
+
* Geometry loader loader pointer at: 10755384
* Geometry loader is 0x84C long
+
* Geometry loader loader has 59 objects
  
 
====Segment 1====
 
====Segment 1====
 
* Geometry loader starts at: 10750440
 
* Geometry loader starts at: 10750440
* Geometry loader ends at: 10753216
+
* Geometry loader pointer at: 10753224
* Geometry loader is 0xAD4 long
+
* Geometry loader has 79 objects
  
 
====Segment 2====
 
====Segment 2====
 
* Geometry loader starts at: 10739784
 
* Geometry loader starts at: 10739784
* Geometry loader ends at: 10750408
+
* Geometry loader pointer at: 10750416
* Geometry loader is 0x297C long
+
* Geometry loader has 295 objects
  
 
===Twinkle Park Geometry Loaders===
 
===Twinkle Park Geometry Loaders===
 
====Segment 0====
 
====Segment 0====
 
* Geometry loader starts at: 36406944
 
* Geometry loader starts at: 36406944
* Geometry loader ends at: 36411232
+
* Geometry loader pointer at: 36411240
* Geometry loader is 0x10BC long
+
* Geometry loader has 119 objects
  
 
====Segment 1====
 
====Segment 1====
 
* Geometry loader starts at: 36399960
 
* Geometry loader starts at: 36399960
* Geometry loader ends at: 36406912
+
* Geometry loader pointer at: 36406920
* Geometry loader is 0x1B24 long
+
* Geometry loader has 193 objects
  
 
====Segment 2====
 
====Segment 2====
 
* Geomtery loader starts at: 36396792
 
* Geomtery loader starts at: 36396792
* Geometry loader ends at: 36399928
+
* Geometry loader pointer at: 36399936
* Geometry loader is 0xC3C long
+
* Geometry loader has 87 objects
  
 
===Speed Highway Geometry Loaders===
 
===Speed Highway Geometry Loaders===
 
====Segment 0====
 
====Segment 0====
 
* Geometry loader starts at: 3636248
 
* Geometry loader starts at: 3636248
* Geometry loader ends at: 36380316
+
* Geometry loader pointer at: 36380324
* Geometry loader is 0x42a8 long
+
* Geometry loader has 474 objects
  
 
====Segment 1====
 
====Segment 1====
 
* Geometry loader starts at: 36360040
 
* Geometry loader starts at: 36360040
* Geometry loader ends at: 36363212
+
* Geometry loader pointer at: 36363220
* Geometry loader is 0xc60 long
+
* Geometry loader has 88 objects
  
 
====Segment 2====
 
====Segment 2====
 
* Geomtery loader starts at: 36352728
 
* Geomtery loader starts at: 36352728
* Geometry loader ends at: 36360004
+
* Geometry loader pointer at: 36360012
* Geometry loader is 0x1C68 long
+
* 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===
 
===Lost World Geometry Loaders===
 
====Segment 0====
 
====Segment 0====
 
* Geometry loader starts at: 29588672
 
* Geometry loader starts at: 29588672
* Geometry loader ends at: 29592420
+
* Geometry loader pointer at: 29592428
* Geometry loader is 0xEA0 long
+
* Geometry loader has 104 objects
  
 
====Segment 1=====
 
====Segment 1=====
 
* Geometry loader starts at: 29576504
 
* Geometry loader starts at: 29576504
* Geometry loader ends at: 29588640
+
* Geometry loader pointer at: 29588648
* Geometry loader is 0x2F64 long
+
* Geometry loader has 337 objects
  
 
====Segment 2====
 
====Segment 2====
 
* Geometry loader starts at: 29575856
 
* Geometry loader starts at: 29575856
* Geometry loader ends at: 29576472
+
* Geometry loader pointer at: 29576480
* Geometry loader is 0x264 long
+
* Geometry loader has 17 objects
  
 
===Sand Hill Geometry Loader===
 
===Sand Hill Geometry Loader===
 
* Geomtery loader starts at: 20168472
 
* Geomtery loader starts at: 20168472
* Geometry loader ends at: 20179816
+
* Geometry loader pointer at: 20179824
* Geometry loader is 0x2C4C long
+
* Geometry loader has 315 objects
  
 
{{SCHGuides}}
 
{{SCHGuides}}
 
[[Category:Sonic Community Hacking Guide]]
 
[[Category:Sonic Community Hacking Guide]]

Revision as of 17:58, 3 November 2009

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.

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:

struct COL
float center[3]; // Center of the visibility/collision sphere.
float radius; // Could be diameter.
dword null[2]; // for alignment purposes
dword SEG; // points to SEG struct
dword null; 
Short col; // determines solidity
Short surf_flag; // determines visibility

Surface Flags

First byte:

  • 1x = can land on
  • 2x = push
  • 3x = push
  • 4x = Kill sonic?
  • 5x = no alpha, no col
  • 6x = water
  • 7x = lighting
  • 8x = Stage Specific on/off (EC footprints)
  • 9x = normal surf

Second Byte:

  • x0 = normal
  • x1 = hurt
  • x2 = low traction
  • x3 = hurt

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