18,700
edits
(→Instance descriptors: corrections, wording, adding additional used bit) |
m (→Header: let's not confuse the reader by claiming that 31 33 52 56 is "VR31"; also, seeing as the TM code is in its third iteration, it's probably 'version 3.1', not '31') |
||
Line 28: | Line 28: | ||
{{OBD_Table_Header}} | {{OBD_Table_Header}} | ||
{{OBDtr| 0x00 | int64 | | 1F 27 DC 33 DF BC 03 00 | 0x0003BCDF33DC271F | Windows instance file total template checksum; Windows demo and Mac retail/demo use 0x0003BCDF23C13061 instead }} | {{OBDtr| 0x00 | int64 | | 1F 27 DC 33 DF BC 03 00 | 0x0003BCDF33DC271F | Windows instance file total template checksum; Windows demo and Mac retail/demo use 0x0003BCDF23C13061 instead }} | ||
{{OBDtr| 0x08 | int32 | | 31 33 52 56 | ' | {{OBDtr| 0x08 | int32 | | 31 33 52 56 | '13RV' | .dat version (meant to be read as "VR32"); OniSplit's .oni files use '23RV' ("VR32") instead }} | ||
{{OBDtr| 0x0C | int16 | | 40 00 | 64 | size of this header }} | {{OBDtr| 0x0C | int16 | | 40 00 | 64 | size of this header }} | ||
{{OBDtr| 0x0E | int16 | | 14 00 | 20 | size of instance descriptor }} | {{OBDtr| 0x0E | int16 | | 14 00 | 20 | size of instance descriptor }} | ||
Line 48: | Line 48: | ||
The file's '''total template checksum''' is the sum of all the template checksums (see "Template descriptors" below). Oni looks at this number in order to validate that it can read this version of the game data format. In practical terms, the total checksum value given for Windows above tells us that this level data is in the .dat/.raw file scheme, and the value given for Mac Oni and the Windows demo tells us that the level data uses the .dat/.raw/.sep file scheme. | The file's '''total template checksum''' is the sum of all the template checksums (see "Template descriptors" below). Oni looks at this number in order to validate that it can read this version of the game data format. In practical terms, the total checksum value given for Windows above tells us that this level data is in the .dat/.raw file scheme, and the value given for Mac Oni and the Windows demo tells us that the level data uses the .dat/.raw/.sep file scheme. | ||
The '''version''' of the instance file is the format version. Reading it backwards, as discussed under the "Backwards and garbage data" section, we get "VR31", which | The '''version''' of the instance file is the format version. Reading it backwards, as discussed under the "Backwards and garbage data" section, we get "VR31", which probably means "version 3.1". This is the format version of all instance files in all releases of Oni, regardless of file scheme. | ||
The '''descriptor sizes''' are the sizes of the instance, template, and name descriptors which are coming up in this file (see breakdowns in later sections). For instance, each instance descriptor will be 0x14, or 20 bytes, in length. | The '''descriptor sizes''' are the sizes of the instance, template, and name descriptors which are coming up in this file (see breakdowns in later sections). For instance, each instance descriptor will be 0x14, or 20 bytes, in length. |