Difference between revisions of "Saves (GTA VC)"

From GTAMods Wiki
Jump to navigation Jump to search
(Block 3: Garages: think that binary format is a bit more suitable for the flags description)
(script, ped, script path, and renumbering)
Line 1: Line 1:
 
{{stub}}
 
{{stub}}
==Block 0: Miscellaneous==
+
==Block 0: Miscellaneous and Script==
 
{| class="sortable" {{prettytable}}
 
{| class="sortable" {{prettytable}}
 
! Offset
 
! Offset
Line 143: Line 143:
 
| float
 
| float
 
| sky atmosphere blue overlay (between 0.0 and 1.0)
 
| sky atmosphere blue overlay (between 0.0 and 1.0)
 +
<!--
 +
|-
 +
| 0xBC
 +
| dword[10]
 +
| -
 +
-->
 +
|-
 +
| 0xE4
 +
| dword
 +
| size of script block
 +
|-
 +
| 0xE8
 +
| -
 +
| start of script block, see below
 +
|}
 +
 +
{| class="sortable" {{prettytable}}
 +
|+ style="text-align: left;"| Script and subblock A:
 +
! Offset
 +
! Type
 +
! width="350px"| Description
 +
|-
 +
| 0x00
 +
| string
 +
| SCR
 +
|-
 +
| 0x04
 +
| dword
 +
| size of subblock A
 +
|-
 +
| 0x08
 +
| -
 +
| start of subblock A: global variables - each variable is 4 bytes long
 
|}
 
|}
  
==Block 3: Garages==
+
{| class="sortable" {{prettytable}}
 +
|+ style="text-align: left;"| Subblock B:
 +
! Offset
 +
! Type
 +
! width="350px"| Description
 +
|-
 +
| 0x00
 +
| dword
 +
| size of subblock B
 +
<!--
 +
|-
 +
| 0x04
 +
| -
 +
| -
 +
|-
 +
| 0x08
 +
| 16 bytes[25]
 +
| -
 +
|-
 +
| 0x198
 +
| 8 bytes[20]
 +
| -
 +
-->
 +
|-
 +
| 0x238
 +
| -
 +
| misc., see below
 +
|}
 +
{| class="sortable" {{prettytable}}
 +
! Offset
 +
! Type
 +
! width="350px"| Description
 +
<!--
 +
|-
 +
| 0x00
 +
| -
 +
| -
 +
-->
 +
|-
 +
| 0x01
 +
| byte
 +
| kaufman cabs radio ([[0551]])
 +
<!--
 +
|-
 +
| 0x02
 +
| -
 +
| -
 +
-->
 +
|-
 +
| 0x04
 +
| dword
 +
| size of main
 +
|-
 +
| 0x08
 +
| dword
 +
| size of largest mission
 +
|-
 +
| 0x0C
 +
| dword
 +
| number of missions
 +
<!--
 +
0x0E - -
 +
0x10 - -
 +
-->
 +
|}
 +
Subblock C:
 +
 
 +
==Block 1: Ped Pool==
 +
{| class="sortable" {{prettytable}}
 +
|+ style="text-align: left;"| Ped structure:
 +
! Offset
 +
! Type
 +
! width="350px"| Description
 +
|-
 +
<!--
 +
0x00 - -
 +
0x04 - -
 +
0x06 - -
 +
-->
 +
|-
 +
| 0x0A
 +
| -
 +
| ped info, see below
 +
|-
 +
| 0x6E2
 +
| dword
 +
| max wanted level
 +
|-
 +
| 0x6E6
 +
| dword
 +
| max criminal points, in tandem with max wanted level
 +
<!--
 +
0x6EA - -
 +
-->
 +
|}
 +
 
 +
{| class="sortable" {{prettytable}}
 +
|+ style="text-align: left;"| Ped info:
 +
! Offset
 +
! Type
 +
! width="350px"| Description
 +
|-
 +
| 0x34
 +
| float[3]
 +
| x,y,z coordinates
 +
|-
 +
| 0xB8
 +
| float
 +
| weight
 +
|-
 +
| 0x354
 +
| float
 +
| health
 +
|-
 +
| 0x358
 +
| float
 +
| armor
 +
|}
 +
 
 +
==Block 2: Garages==
 
{| class="sortable" {{prettytable}}
 
{| class="sortable" {{prettytable}}
 
! Offset
 
! Offset
Line 318: Line 470:
 
|}
 
|}
  
==Block 4: Game Logic==
+
==Block 3: Game Logic==
 
{| class="sortable" {{prettytable}}
 
{| class="sortable" {{prettytable}}
 
! Offset
 
! Offset
Line 348: Line 500:
 
|}
 
|}
  
==Block 8: Cranes==
+
==Block 7: Cranes==
 
{| class="sortable" {{prettytable}}
 
{| class="sortable" {{prettytable}}
 
! Offset
 
! Offset
Line 417: Line 569:
 
|}
 
|}
  
==Block 9: Pickups==
+
==Block 8: Pickups==
  
 
{| class="sortable" {{prettytable}}
 
{| class="sortable" {{prettytable}}
Line 457: Line 609:
 
|}
 
|}
  
==Block 10: Phone Info==
+
==Block 9: Phone Info==
 
{| class="sortable" {{prettytable}}
 
{| class="sortable" {{prettytable}}
 
! Offset
 
! Offset
Line 490: Line 642:
 
|}
 
|}
  
==Block 11: Restart Points Buffer==
+
==Block 10: Restart Points Buffer==
 
{| class="sortable" {{prettytable}}
 
{| class="sortable" {{prettytable}}
 
! Offset
 
! Offset
Line 546: Line 698:
 
|}
 
|}
  
==Block 12: Radar Blips Buffer==
+
==Block 11: Radar Blips Buffer==
 
{| class="sortable" {{prettytable}}
 
{| class="sortable" {{prettytable}}
 
! Offset
 
! Offset
Line 612: Line 764:
 
|}
 
|}
  
==Block 14: All Gang Data==
+
==Block 13: All Gang Data==
 
{| class="sortable" {{prettytable}}
 
{| class="sortable" {{prettytable}}
 
! Offset
 
! Offset
Line 657: Line 809:
 
|}
 
|}
  
==Block 17: All Audio Script Objects==
+
==Block 16: All Audio Script Objects==
 
{| class="sortable" {{prettytable}}
 
{| class="sortable" {{prettytable}}
 
! Offset
 
! Offset
Line 695: Line 847:
 
-->
 
-->
 
|}
 
|}
 +
 +
==Block 17: Script Paths==
 +
{| class="sortable" {{prettytable}}
 +
! Offset
 +
! Type
 +
! width="350px"| Description
 +
|-
 +
| 0x00
 +
| dword
 +
| total number of [[Script Path|paths]]
 +
<!--
 +
0x04 - -
 +
0x08 - -
 +
-->
 +
|-
 +
| 0x0C
 +
| float
 +
| speed ([[049E]])
 +
|-
 +
| 0x10
 +
| float
 +
| distance along path ([[049F]])
 +
|-
 +
| 0x14
 +
| float
 +
| some sort of offset
 +
<!--
 +
0x18 - -
 +
-->
 +
|-
 +
| 0x1C
 +
| -
 +
| object handle, up to 6 supported
 +
|}
 +
 
==External links==
 
==External links==
 
*[http://web.archive.org/web/20050430091049/http://www.gtaforums.com/index.php?showtopic=142457 Very old development topic] - retrieved from archive.org
 
*[http://web.archive.org/web/20050430091049/http://www.gtaforums.com/index.php?showtopic=142457 Very old development topic] - retrieved from archive.org

Revision as of 12:57, 8 September 2010

Block 0: Miscellaneous and Script

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)
0xE4 dword size of script block
0xE8 - start of script block, see below
Script and subblock A:
Offset Type Description
0x00 string SCR
0x04 dword size of subblock A
0x08 - start of subblock A: global variables - each variable is 4 bytes long
Subblock B:
Offset Type Description
0x00 dword size of subblock B
0x238 - misc., see below
Offset Type Description
0x01 byte kaufman cabs radio (0551)
0x04 dword size of main
0x08 dword size of largest mission
0x0C dword number of missions

Subblock C:

Block 1: Ped Pool

Ped structure:
Offset Type Description
0x0A - ped info, see below
0x6E2 dword max wanted level
0x6E6 dword max criminal points, in tandem with max wanted level
Ped info:
Offset Type Description
0x34 float[3] x,y,z coordinates
0xB8 float weight
0x354 float health
0x358 float armor

Block 2: 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 (binary format):

  • 0b000001=car 1 collected
  • 0b000010=car 2 collected
  • 0b000100=car 3 collected
  • 0b001000=car 4 collected
  • 0b010000=car 5 collected
  • 0b100000=car 6 collected

Add them up to set the garage as car already collected:

0b000011, cars 1 and 2 collected
0b100011, cars 1, 2, and 6 are collected
Garage car structure, each is 0x28 in size:
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
Garage structure, each is 0xA8 in size:
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

Block 3: Game Logic

Offset Type Description
0x00 dword number of restart taxis (058D)
0x04 [16] restart taxi structures, see below
Restart taxi structure, each is 0x10 in size:
Offset Type Description
0x0 float[3] x,y,z coordinates
0xC float z angle rotation

Block 7: Cranes

Offset Type Description
0x00 dword number of cranes
0x08 [8] crane structures, see below
Crane structure, each is 0x7C in size:
Offset Type Description
0x40 float current z rotation

Block 8: Pickups

Pickup structure, each is 0x34 in size:
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

Block 9: Phone Info

Offset Type Description
0x04 dword number of phones
0x08 [50] phone structures, see below
Phone structure, each is 0x34 in size:
Offset Type Description
0x0 float[3] x,y,z coordinates
0x2C dword phone status (3=idle,9=ringing,others=leftover GTA III stuff)

Block 10: Restart Points Buffer

Offset Type Description
0x00 string RST
0x8 float[3] hospital x,y,z coordinates (016C)
0x14 float hospital z angle
Each point is 0x8 in size
0x88 float[3] police x,y,z coordinates (016D)
0x94 float police z angle
Each point is 0x8 in size
0x110 float[3] override x,y,z coordinates (016E)
0x11C float override z angle

Block 11: Radar Blips Buffer

Offset Type Description
0x00 string RDR
0x08 [75] blip structures, see below
Blip structure, each is 0x30 in size:
Offset Type Description
0x00 dword color
0x10 float[2] x,y coordinates
0x18 float[3] x,y,z coordinates
0x26 byte brightness (0166)
0x2A word size (0168)
0x2C word show (018B)
0x2E word type

Block 13: All Gang Data

Offset Type Description
0x00 string GNG
0x04 [9] gang structures, see below
Gang structure, each is 0x18 in size:
Offset Type Description
0x00 dword car model (0236)
0x04 dword ped model 1
0x08 dword ped model 2
0x10 dword weapon number 1 (0237)
0x14 dword weapon number 2

Block 16: All Audio Script Objects

Offset Type Description
0x00 string AUD
0x12 - audio structures, see below
Audio structure, each is 0x14 in size:
Offset Type Description
0x04 word ID number
0x08 float[3] x,y,z coordinates

Block 17: Script Paths

Offset Type Description
0x00 dword total number of paths
0x0C float speed (049E)
0x10 float distance along path (049F)
0x14 float some sort of offset
0x1C - object handle, up to 6 supported

External links