Automata Subfiles
Revision as of 05:30, 12 February 2023 by Memo (talk | contribs) (→Vehicle Automata Subfile (0x896e714a): add path coordinate point number)
This page pertains to the format of the Automata Subfiles within the Savegame files.
Vehicle Automata Subfile (0x896e714a)
Structure
List of records of the form:
DWORD Record Size DWORD CRC DWORD Memory address WORD×3 Version (always 2, 2, 8) BYTE Zot (always 0x04) DWORD Unknown (always 0) BYTE Appearance flag (e.g. 0x10, 0x11, 0x14 or 0x15) DWORD Record type identifier (always 0xc7cc75f1) BYTE×4 (Min Tract X, Min Tract Z, Max Tract X, Max Tract Z) coordinate WORD×2 Tract size (X, Z) DWORD Count of properties SGPROP SaveGame Properties, repeated Count times (e.g. Occupant Group property 0xAA1DD396) DWORD×3 (Group=0x096E6739, Type=0x6534284A, Instance)-ID of Exemplar FLOAT32×3 (x, y, z)-coordinate A FLOAT32×3 (x, y, z)-coordinate B or (-1, -2, -3) FLOAT32×3 Direction (a unit vector) FLOAT32 Unknown scalar (approximately satisfies: coordinate A + direction * scalar / 2 = coordinate C) FLOAT32 Speed in km/s (in range 80..110 km/h defined in Automata Controller) DWORD Unknown bitset DWORD Unknown (always 0) DWORD Address DWORD Subfile (Automata Attractor subfile) when Address is not 0 FLOAT32×5 Unknown (the last three are 0.0 if the attractor is absent, so might be related parameters) DWORD Address DWORD Subfile (e.g. Trailer Vehicle, Ambulance, Bus, Patrol Car) when Address is not 0 DWORD Count of blocks to follow DWORD Unknown (seen 0, 7, 13) WORD Unknown (always 0x03) DWORD Address DWORD Subfile (Automata Generator or Attractor subfile) when Address is not 0 DWORD Index of block starting at 0, 1,... FLOAT32 Unknown (-1.0 or large numerical values) DWORD Unknown (0 or 1) BYTES×5 Unknown (always 0) DWORD Unknown bitset DWORD Count of auxiliary models DWORD×3 TGI of auxiliary S3D-model (e.g. head lights, rear lights) DWORD×3 TGI of S3D-model DWORD Instance ID DWORD Count of manager addresses DWORD Address DWORD Subfile (e.g. City Situation Manager or Automata Controller Manager) FLOAT32 Speed in km/s (can differ from other speeds) FLOAT32 Speed in km/s (can differ from other speeds) FLOAT32×6 Unknown (often 0 or 1, but numerical values are possible) BYTE Unknown (seen 0, 25, 50, 254) DWORD Occupant Group DWORD Address DWORD Subfile (e.g. Trailer Vehicle, Ambulance, Bus, Patrol Car) when Address is not 0 DWORD Unknown (seen 1, 3, 7) BYTE Unknown (in range 0...47 -- maybe vehicle lifespan?) DWORD Address of network tile DWORD Subfile (e.g. Network Subfile 1, Prebuilt Network Subfile, Bridge Subfile) when Address is not 0 BYTE Exit side of path (0,1,2,3 = W,N,E,S) BYTE Entry side of path (0,1,2,3 = W,N,E,S) BYTE Path class number BYTE Unknown (presumably Path Transport Type, i.e. 0x01 for vehicles) DWORD Index number of the Path Coordinate Point the vehicle is headed to next DWORD Count of blocks to follow BYTE×3 Unknown (seen for Occupant Group Moving Van) DWORD×2 Unknown (always 0) FLOAT32×3 (x, y, z)-coordinate C or (-1, -2, -3) FLOAT32×3 (-1, -2, -3) FLOAT32 Unknown (often 0.0)
For the format of the properties, see SaveGame Properties.
|