PRT · 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.

Adr x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF char
0x0000 43 50 41 4c -- -- -- -- -- -- -- -- -- -- -- -- C P A L . . . . . . . . . . . .
Offset Datentyp Bezeichnung Erklärung
0x0000 uint(32) Magic Bytes
0x0004 uint(24) Paletten-Länge

Gibt, entgegen zum normalen Blockformat, die Anzahl an in dieser Datei zu findenden Paletten an - nicht die Länge des Blocks in Byte.

0x0007 uint(8) Flags

Wahrscheinlich, wie üblich, Flags.

Mir sind allerdings keine Flags bekannt; da alle mir bekannten Werte 0x00 entsprechen, wäre es auch potentiell denkbar, dass die Paletten-Anzahl schlicht ein uint(32) wäre.

Wofür PRT genau steht ist mir nicht bekannt; denkbar wäre beispielsweise 'Palette and Ressource Table' - da es sich bei dieser Datei - zu finden als op2_art.prt in der maps.vol - um eine solche handelt, bzw dies die Funktion ganz gut beschreiben würde.

Diese Datei enthält dabei eine Liste von Paletten, eine Tabelle über alle verwendeten Bitmaps, alle Animationsdefinitionen und noch eine Reihe von unbekannten Daten. Sie folgt dem bisherigen Containerformat lose, da nicht alle Datensätze diesem Schema folgen.

Die CPAL-Sektion (steht wahrscheinlich für Paletten-Container) umschließt dabei lediglich die Palettendaten, indem es angibt, wieviele der jeweils üblicherweise 1052 Byte großen 8-Bit-Paletten vorhanden sind.

Die 1052-Byte-Angabe gilt dabei nicht als verbindlich, da das Palettenformat potentiell unterschiedliche Palettengrößen vorsähe. Sie gilt lediglich für den Datenbestand, mit dem Outpost 2 ausgeliefert wird.

Nach den Paletten-Listen folgt unmittelbar und ohne einleitenden Header, bereits die Liste der Bitmaps; genauso unmittelbar folgen darauf die Animationslisten.
Beide werden dabei jeweils mit einem uint(32) (oder wieder uint24+uint8 flags?) eingeleitet, der die Anzahl an Datensätzen enthält.