Difference between revisions of "Sonic Adventure 2 (PC)/RAM Editing"
From Sonic Retro
(→Global Variables) |
(→Character Object 2) |
||
Line 275: | Line 275: | ||
| Invincibility | | Invincibility | ||
|} | |} | ||
+ | |- | ||
+ | | 12 | ||
+ | | Byte | ||
+ | | Hang Time | ||
|- | |- | ||
| 24 | | 24 |
Revision as of 15:54, 1 February 2013
SCHG: Sonic Adventure 2 | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Dreamcast GameCube PC | ||||||||||||||||
|
Cheat Engine is a program that enables you to edit a program's RAM while it's running. You can use this program to edit the RAM in Sonic Adventure 2, and the below cheat table file contains the addresses so you don't need to enter them manually. It also contains some additional values relating to Chao, as well as a few tweaks to enable or fix certain things.
Download SA2 Cheat Table
File: SA2_Cheat_Table.zip (94 kB) (info)
|
Note: All values are signed, unless noted otherwise.
Global Variables
Address (hex) | Type | Description |
---|---|---|
0174AFDB | Byte | Minutes on clock |
0174AFDC | Byte | Seconds on clock |
0174AFDE | Byte | 2P Mode
|
0174B013 | Byte | P1 Alternate Costume |
0174B014 | Byte | P2 Alternate Costume |
0174B015 | Byte | P1 Alternate Character |
0174B016 | Byte | P2 Alternate Character |
0174B024 | 2 Bytes | Lives |
0174B028 | 2 Bytes | P1 Rings |
0174B02A | 2 Bytes | P2 Rings |
0174B050 | 4 Bytes | P1 Score |
0174B05C | 4 Bytes | Total Rings (Black Market) |
01934B70 | Byte | Current Level |
01934B80 | Byte | P1 Character
|
01934BE0 | Byte | Menu Mode (some level swaps horribly crash)
|
01934BE4 | Byte | P2 Character
|
01DE4664 | Byte | P1 Lighting (0 through 255) |
Pointer Area
The data here changes its location when the level is loaded. Use pointers to find them.
Master Object Struct
A pointer to this for P1 is at 01DEA6E0, for P2, 01DEA6E4. Length: 0x50.
These are all pointers.
Offset (hex) | Description |
---|---|
0 | Pointer to previously loaded object in chain. |
4 | Pointer to next loaded object in chain. |
10 | Main routine |
14 | Display routine |
34 | Object Data 1 |
40 | Object Data 2 |
44 | Object Name |
Character Object 1
Length: 0x30
Offset (hex) | Type | Description | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
0 | Byte | Action. Each object has its own values for this. | |||||||||
4 | 2 Bytes | Status Bitfield
| |||||||||
8 | 4 Bytes | X Rotation (BAMS) | |||||||||
C | 4 Bytes | Y Rotation (BAMS) | |||||||||
10 | 4 Bytes | Z Rotation (BAMS) | |||||||||
14 | Float | X Position | |||||||||
18 | Float | Y Position | |||||||||
1C | Float | Z Position | |||||||||
20 | Float | X Scale | |||||||||
24 | Float | Y Scale | |||||||||
28 | Float | Z Scale |
Character Object 2
Length: 0x3A0
Offset (hex) | Type | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | Byte | Player Number | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
1 | Byte | Character ID
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3 | Byte | Character ID 2
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
4 | Array of Bytes (8 bytes) | Items in Action Window | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
C | Byte | Number of Items in Action Window | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
10 | 2 Bytes | Powerups Bitfield
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
12 | Byte | Hang Time | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
24 | 4 Bytes | Upgrades Bitfield
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
64 | Float | Horizontal Speed | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
68 | Float | Vertical Speed | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
C0 | Struct (0x84 bytes) | Physics Data | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
D0 | Float | Base Speed (default is 3, changes when player picks up speed shoes, etc.) |