Grundsätzlicher Aufbau

Dieser Artikel soll aufzeigen, wie der grundsätzliche Aufbau von Dateien innerhalb von Outpost 2 aufgebaut sind

Veröffentlicht am 19.11.2015, aktualisiert am 17.03.2019

Alle Dateien des Spieles haben einen grundsätzlich ähnlichen Aufbau, der aus ineinander verschachtelten Blöcken besteht.

Jeder dieser Blöcke hat einen 8-Byte langen Header mit grundsätzlichen Informationen. Jeder dieser Header beginnt mit einer 4-Byte langen Magic Byte-Sequenz, welche die Art des Blockes offenbart; in der Regel besteht diese Sequenz aus lesbaren ASCII-Zeichen. Auf die Magic-Byte-Sequenz folgen 3 Byte (uint24), welche die Länge des Block-Inhaltes angibt. Der Header endet schließlich mit 8 Byte, deren Bedeutung mir unklar ist, ich gehe aber davon aus, dass es sich um Flags handelt.

Anschließend folgt bereits unmittelbar der Block-Inhalt.

ADR x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF
0000 0000 xx xx xx xx xx xx xx xx
Magic Bytes Datentyp: uint32
Enthält die Information darüber, was im nächsten Datenblock zu erwarten ist.

Bekannte Werte:
  • 0x204C4F56 ('VOL '): Volume
  • 0x686C6F76 ('VOLH'): Volume-Header
  • 0x736C6F76 ('VOLS'): Volume-Strings
  • 0x696C6F76 ('VOLI'): Volume-Informationen
  • 0x4B4C4256 ('BLCK'): Volume-Block
  • 0x504D4250 ('PBMP'): Bitmap
  • 0x4C415050 ('PPAL'): Palette
  • 0x4C415043 ('CPAL'): Paletten-Container
  • 0x64616568 ('head'): Header
  • 0x61746164 ('data'): Nutzdaten
Block-Länge Datentyp: uint24
Enthält die Information darüber, wie groß (in Byte) der folgende Datenblock ist.
Dabei sind die reinen Nutzdaten gemeint - die 8 Header-Byte sind darin nicht enthalten.
Flags? Datentyp: uint8
Es ist unbekannt, wozu dieser Block genau dient.
In den Volumes ist dieser Wert häufig 0x80, in anderen Dateien häufig 0x00.

Die Datenformate haben einen an JFIF / PNG erinnernden Aufbau - die einzelnen Datenblöcke verfügen dabei immer über einen 8 Byte Header. Daher spare ich es mir, die einzelnen Header an den entsprechenden spezifischen Stellen zu dokumentieren und dokumentiere dort nur Abweichungen.

Kommentare

Kommentar hinzufügen

Dein Kommentar wird möglicherweise nicht sofort dargestellt werden. Kommentare werden aus Spamschutzgründen moderiert.