Einführung · bei.pm

Veröffentlicht am 19.11.2015·Aktualisiert am 13.02.2025·Deutsch

Die auf dieser Seite beschriebenen Dateiformate basieren auf der technischen Analyse geistigem Eigentums von Dynamix, Inc. und Sierra Entertainment.
Das geistige Eigentum ist heute Teil der Activision Publishing, Inc.- / Activision Blizzard, Inc.-Masse und derzeit im Besitz von Microsoft Corp..

Die Informationen wurden durch Reverse Engineering und Datenanalyse zum Zwecke der Archivierung und Interoperabilität mit historischen Daten zusammengetragen.
Es wurden keine proprietären oder vertraulichen Spezifikationen verwendet.

Das Spiel kann derzeit bei gog.com käuflich als Download erworben werden.

Die von Outpost 2 verwendeten 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.

Das Format ist immer das folgende; die eigentlichen Nutzdaten sind dann darin eingebettet:

Adr x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF char
0x0000 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- . . . . . . . . . . . . . . . .
Offset Datentyp Bezeichnung Erklärung
0x0000 uint(32) Magic Bytes

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'):
    Grafikdaten
  • 0x4C415050 ('PPAL'):
    Farbpalette
  • 0x4C415043 ('CPAL'):
    Farbpaletten-Container
  • 0x64616568 ('head'):
    Header
  • 0x61746164 ('data'):
    Nutzdaten
0x0004 uint(24) Block-Länge

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.

0x0007 uint(8) Flags?

Es ist unbekannt, wozu dieser Block genau dient.

In den Volumes ist dieser Wert häufig 0x80, in anderen Dateien häufig 0x00. Das legt nahe, dass es sich um ein Flag-Set handelt.