Block 0: Miscellaneous
Offset
|
Type
|
Description
|
0x30
|
word
|
Year
|
0x32
|
word
|
Month
|
0x34
|
word
|
Day of week
|
0x36
|
word
|
Day
|
0x38
|
word
|
Hour
|
0x3A
|
word
|
Minutes
|
0x3C
|
word
|
Seconds
|
0x3E
|
word
|
Milliseconds
|
0x48
|
float[3]
|
camera coordinates (x,y,z)
|
0x54
|
dword
|
length (ms) of in-game minute (1000=normal)
|
0x5C
|
dword
|
game hour
|
0x60
|
dword
|
game minute
|
0x6C
|
float
|
game speed (015D)
|
0x90
|
dword
|
current weather
|
0x98
|
dword
|
current weather table offset (between 0 and 63)
|
0x9C
|
float
|
current vehicle camera view (between 0.0 and 5.0)
|
0xA0
|
float
|
current on foot camera view (classic controls only)
|
0xA4
|
dword
|
current interior (04BB)
|
0xA8
|
dword
|
taxi boost jump (0572)
|
0xB0
|
dword
|
sky color (04F9)
|
0xB4
|
dword
|
sky atmosphere (0=normal,1=interior)
|
0xB8
|
float
|
sky atmosphere blue overlay (between 0.0 and 1.0)
|
Block 3: Garages
Offset
|
Type
|
Description
|
0x00
|
dword
|
number of garages (0219)
|
0x04
|
dword
|
free bombs (0=not,1=yes)
|
0x08
|
dword
|
free respray (0335)
|
0x18
|
dword
|
garage type 8 status, see below
|
0x1C
|
dword
|
garage type 9 status
|
0x20
|
dword
|
garage type 10 status
|
0x24
|
dword
|
garage type 22 status
|
0x2C
|
[48]
|
garage car structures, see below
|
0x7AC
|
[32]
|
garage structures, see below
|
Export garage status:
- 0x01=car 1 collected
- 0x02=car 2 collected
- 0x04=car 3 collected
- 0x08=car 4 collected
- 0x10=car 5 collected
- 0x20=car 6 collected
Add them up to set the garage as car already collected:
1 + 2 = 3, cars 1 and 2 collected
1 + 2 + 20 = 23, cars 1, 2, and 6 are collected
Garage car structure:
Offset
|
Type
|
Description
|
0x00
|
dword
|
model ID
|
0x04
|
float[3]
|
x,y,z position
|
0x10
|
float[3]
|
x,y,z vector rotation
|
0x1C
|
dword
|
immunities
|
0x20
|
byte
|
primary color
|
0x21
|
byte
|
secondary color
|
0x22
|
byte
|
current radio station
|
0x23
|
byte
|
variation 1
|
0x24
|
byte
|
variation 2
|
0x25
|
byte
|
bomb type
|
Each vehicle is 0x28 in size
|
Garage structure:
Offset
|
Type
|
Description
|
0x00
|
byte
|
type
|
0x01
|
byte
|
door status (0=closed,1=opened,2=closing,3=opening)
|
0x02
|
byte
|
max number of cars to store (4=default)
|
0x19
|
byte
|
swing door (03BB)
|
0x1A
|
byte
|
camera follow player (03DA)
|
0x1C
|
float[3]
|
entrance bottom left x,y,z coordinates
|
0x28
|
float[4]
|
rx,ry,rz,rw quaternion rotation
|
0x38
|
float
|
ceiling z coordinate
|
Each garage is 0xA8 in size
|
Block 4: Game Logic
Offset
|
Type
|
Description
|
0x00
|
dword
|
number of restart taxis (058D)
|
0x04
|
[16]
|
restart taxi locations, see below
|
Offset
|
Type
|
Description
|
0x0
|
float[3]
|
x,y,z coordinates
|
0xC
|
float
|
z angle rotation
|
Each restart taxi is 0x10 in size
|
Block 8: Cranes
Offset
|
Type
|
Description
|
0x00
|
dword
|
number of cranes
|
0x08
|
[8]
|
crane structure, see below
|
Offset
|
Type
|
Description
|
0x40
|
float
|
current z rotation
|
Each crane is 0x7C in size
|
Block 9: Pickups
Offset
|
Type
|
Description
|
0x0
|
float[3]
|
x,y,z coordinates
|
0x18
|
dword
|
ammo or asset revenue
|
0x2E
|
byte
|
type
|
0x2F
|
byte
|
has been picked up
|
Each pickup is 0x34 in size
|
Block 10: Phone Info
Offset
|
Type
|
Description
|
0x04
|
dword
|
number of phones
|
0x08
|
[50]
|
phone structures, see below
|
Offset
|
Type
|
Description
|
0x0
|
float[3]
|
x,y,z coordinates
|
0x2C
|
dword
|
phone status (3=idle,9=ringing,others=leftover GTA III stuff)
|
Each phone is 0x34 in size
|
Block 11: Restart Points Buffer
Offset
|
Type
|
Description
|
0x00
|
string
|
RST
|
0x8
|
float[3]
|
hospital x,y,z coordinates
|
0x14
|
float
|
hospital z angle
|
Each point is 0x8 in size
|
0x88
|
float[3]
|
police x,y,z coordinates
|
0x94
|
float
|
police z angle
|
Each point is 0x8 in size
|
0x110
|
float[3]
|
override x,y,z coordinates
|
0x11C
|
float
|
override z angle
|
External links