Stunt Race FX / Wild Trax
The following information is for the US version of the game.
Track Data
Locations
Offset | Description |
---|---|
1F4A5 - 1F4F8 | Track Data pointers (3 bytes per track, 28 tracks) |
28000 | Menu "Track" Data |
28074 | 00- Easy Ride Track Data |
28AB9 | 01- Aqua Tunnel Track Data |
2990B | 02- Sunset Valley Track Data |
2A4FC | 03- Night Owl Track Data |
2B285 | 04- King's Forest Track Data |
2BF92 | 05- Sea Breeze Track Data |
2CADA | 06- White Land Track Data |
2D7F4 | 07- Night Cruise Track Data |
68000 | 08- Lake Side Track Data |
68CF9 | 09- Big Ravine Track Data |
69B5E | 0A- Sky Ramp Track Data |
6AD25 | 0B- Harbor City Track Data |
6BD71 | 0C- Rock Field Track Data |
6CC71 | 0D- Up'N Down Track Data |
ADB6F | 0E- Ice Dance Track Data |
6DF8C | 0F- Blue Lake Track Data |
AC000 | 10- Cotton Farm Track Data |
AC6C3 | 11- Toxic Desert Track Data |
ACD4C | 12- Marine Pipe Track Data |
AD444 | 13- Port Arena Track Data |
2E509 | 14- Bonus 1 Track Data |
2EBB7 | 15- Bonus 2 Track Data |
2F245 | 16- Bonus 3 Track Data |
AEEB7 | 17- Radio Control 1 Track Data |
AF106 | 18- Radio Control 2 Track Data |
AF313 | 19- Radio Control 3 Track Data |
AF50A | 1A- Radio Control 4 Track Data |
6F126 | 1B- Test Run Track Data |
Format/Commands
0x06: Track Start
Start of track data.
0x1A: Flags 1
1A bb 00
bb Unknown (set to 01 in Radio Control tracks)
0x14: Flags 2
For unknown reasons, the 0x14 command appears more than once on several tracks, even though it can be used to set multiple bits simultaneously.
14 pp PP
pp Low byte:
bit 0: Rain
bit 1: Falling snow
bit 2: Unknown
bit 3: Unknown
bit 4: SPLASH death on Y=0000 plane (combine with bit 5 to give the illusion of deep water)
bit 5: Y=0000 plane and certain collision types are wet (combine with bit 4 to give the illusion of deep water)
bit 6: Snow on track
bit 7: More friction on track
PP High byte:
bits 8-16: Unknown
0x08: Object Direction
This command affects every object defined after it, until another 0x08 command is used.
08 dd
dd Direction:
00: North
40: West
80: South
C0: East
0x0E: Vehicle Objects
0E xx XX yy YY zz ZZ 40 A0 00 00 ll mm 08 00 00 00 00 00 00 00 02 vv VV II dd
XXxx X-coordinate (signed; 8000-7FFF)
YYyy Y-coordinate (signed)
ZZzz Z-coordinate (signed)
08mmll ASM Pointer (high byte is always 08):
AF0F: Player 1
AFD7: Player 2
B079: Enemy (Radio Control)
B1BA: Enemy 1
B1C7: Enemy 2
B1D4: Enemy 3
VVvv Car type:
81B9: F-Type (Player 1's default setting)
82E5: 2WD
8411: 4WD
853D: Coupé (Player 2's default setting in Battle Trax)
8669: Trailer
876E: Enemy F-Type (Enemy 1's default setting)
8886: Unused Enemy 3WD
8990: Enemy 4WD (Enemy 2's default setting)
8AA8: Enemy Coupé (Enemy 3's default setting)
II ID:
01: Player 1
02: Player 2
04: Enemy 1
08: Enemy 2
10: Enemy 3
40: Enemy (Radio Control)
0x12: Vehicle Starting Coordinates
Radio Control enemies don't need this command.
12 JJ xx XX yy YY zz ZZ dd
JJ ID:
01: Player 1
02: Player 2/Enemy 1
03: Enemy 2
04: Enemy 3
0x16 / 0x18: Startup / Camera Routine
0x16
is for Player 1 and 0x18
is for Player 2.
16 ll mm 08
18 ll mm 08
08 mm ll ASM Pointer (high byte is always 08):
8E26: Player enters Trailer? (Bonus Trax)
8E5D: Start inside of Trailer (Stunt Trax)
8F8E: Vehicle moves forward at start (Radio Control)
917D: Camera zooms in from back (Battle Trax)
919F: Default
0x02 / 0x0C: Standard Objects
0x02
objects overlap the previous object; 0x0C
objects go behind the previous object.
02 xx XX yy YY zz ZZ kk KK 00 00 ll mm hh rr RR tt TT uu UU ww WW
0C xx XX yy YY zz ZZ kk KK 00 00 ll mm hh rr RR tt TT uu UU ww WW
KKkk Model ID
A040-FE6C
Each value increments by 1C, so the second value is A05C, then A078, A094, A0B0 and so on.
QQqq Collision ID
Same range of values as the Model ID, but set to 0000 for objects without collision.
hhmmll ASM pointer
RRrr, TTtt, UUuu, WWww Unknown Flags; related to collision
Note: Usually, the first standard object on a track is the 3D "GOAL" text.
0x0A: Animated Objects
0A xx XX yy YY zz ZZ kk KK 00 00 ll mm hh rr RR tt TT uu UU ww WW __ -- 00
__ Unknown variable (values used: 02, 05, 08, and 10)
-- Unknown variable (values used: 01 or 02)
0x04: Path Coordinate Data
This data is used to tell CPU cars where to go, as well as determining if the player is going in the wrong direction.
04 nn NN xx XX yy YY zz ZZ ss SS xx XX yy YY ... etc.
NNnn: Number of Path Points
Can be set to 00 for tracks without a path.
SSss= Unknown
Common values are 014A, 019C, 01B8 and 025D. 025D tends to be the value used on straightaways.
While the lower values are used on different types of turns.
Note: The first point is always 64h past the start line, while the last point is 64h before the start line.
An incomplete listing of objects, as well as screen captures of them, can be found in this archive: Stunt_Race_FX_Objects.7z
Original information discovered by Mattrizzle.