GZ 1 format - MisterMarty/bahn-gz-editor GitHub Wiki
Content of a GZ-1 file:
Name |
Type |
Value |
Length (in bytes) |
Description |
Header Text |
char (ANSI) |
Any ANSI text (e.g. "Hello, world!") |
1-* |
ASCII text containing meta-info about the file |
Header End |
byte |
0x1A |
1 |
Marks the end of the Header Text |
File Identifier |
char |
0x47, 0x5a, 0x47 ('G', 'Z', 'G') |
3 |
Static text "GZG" used to identify GZ-* files |
Zoom Factor |
char |
0x49 ('1') |
1 |
Zoom factor as char. '1' for GZ-1 files, '2' and '4' for GZ-2 and GZ-4 respectively |
Version |
byte |
0x03, 0x84 |
2 |
Version of Bahn |
Sub-version |
byte |
0x00, 0x03 |
2 |
Sub-version of Bahn |
Properties |
int32 |
bitmask |
4 |
See Flags below |
Steam/Smoke origin X * |
int32 |
any int32 |
4 |
X position of the smoke origin. Only set when either the steam- or smoke-flag is set |
Steam/Smoke origin Y * |
int32 |
any int32 |
4 |
Y position of the smoke origin. Only set when either the steam- or smoke-flag is set |
Steam/Smoke origin Width * |
int32 |
any int32 |
4 |
Width (length) of steam/smoke. Only set when either the steam- or smoke-flag is set |
Clock future flag * |
int32 |
1 |
4 |
For future use. Set to 1 if clock flag is set, otherwise omit |
... |
... |
... |
... |
... |
Flags
Flag |
Binary |
Hex |
Description |
Smoke |
0000000000000001 |
0x0001 |
Element emits smoke (exclusive to Steam) |
Steam |
0000000000000010 |
0x0002 |
Element emits steam (exclusive to Smoke) |
Clock |
0000000000000100 |
0x0004 |
Element contains a clock |
Cursor info available |
0000000000001000 |
0x0008 |
Element contains custom cursor info |
Driveway info available |
0000000000010000 |
0x0010 |
Element contains custom driveway info |
Colormap info available |
0000000000100000 |
0x0020 |
Element contains custom colormap info |
24BPP |
0010000000000000 |
0x0200 |
Encoded in new color format (required) |
Example of a flag combination: 00100000 00110010
This means, the element emits steam and contains custom driveway- and colormap info. The 24BPP flag must always be set.