Obsegi · bei.pm

Objavljeno 19.11.2015·Posodobljeno dne 13.02.2025·Slovenščina
Ta besedilo je bilo avtomatizirano prevedeno s strani OpenAI GPT-4o Mini.

Na tej strani opisani formati datotek temeljijo na tehnični analizi intelektualne lastnine podjetja Dynamix, Inc. in Sierra Entertainment.
Intelektualna lastnina je danes del mase Activision Publishing, Inc. / Activision Blizzard, Inc. in je trenutno v lasti Microsoft Corp..

Informacije so bile zbrane z obratnim inženiringom in analizo podatkov z namenom arhiviranja in interoperabilnosti s zgodovinskimi podatki.
Niso bile uporabljene nobene lastniške ali zaupne specifikacije.

Igro je trenutno mogoče kupiti v obliki prenosa na gog.com.

Volumi so podatkovni kontejner za igro, podoben arhivskemu formatu, kot je na primer Tarball. V Outpost 2 to format pozna le datoteke - brez map. Vendar bi jih verjetno lahko simulirali s ustreznimi imeni datotek.

Volumen je sestavljen iz volumske glave in več volumski blokov, ki ustrezajo konkretnim datotekam.

"Volumi" so datoteke z končnico 'vol' v imeniku igre.

Nasl. x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF znak
0x0000 56 4f 4c 20 -- -- -- -- -- -- -- -- -- -- -- -- V O L . . . . . . . . . . . .
Odmik Tip podatkov Oznaka Razlaga
0x0000 uint(32) Magični bajti
0x0004 uint(24) Dolžina bloka
0x0007 uint(8) Zastave

Glava volumna

Nasl. x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF znak
0x0000 76 6f 6c 68 -- -- -- -- -- -- -- -- -- -- -- -- v o l h . . . . . . . . . . . .
Odmik Tip podatkov Oznaka Razlaga
0x0000 uint(32) Magični bajti
0x0004 uint(24) Dolžina bloka
0x0007 uint(8) Zastave

Glava volumna ne vsebuje nobenih uporabnih podatkov.
Uporablja se le kot kontejner.

Prvi podatki v glavi volumna bi morali biti nizi volumna; za njimi sledijo informacije o volumnu.

Obsegni Nizi

Nasl. x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF znak
0x0000 76 6f 6c 69 -- -- -- -- -- -- -- -- -- -- -- -- v o l i . . . . . . . . . . . .
Odmik Tip podatkov Oznaka Razlaga
0x0000 uint(32) Magični bajti
0x0004 uint(24) Dolžina bloka
0x0007 uint(8) Zastave
Nasl. x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF znak
0x0000 76 6f 6c 73 -- -- -- -- -- -- -- -- -- -- -- -- v o l s . . . . . . . . . . . .
Odmik Tip podatkov Oznaka Razlaga
0x0000 uint(32) Magični bajti
0x0004 uint(24) Dolžina bloka
0x0007 uint(8) Zastave
0x0008 uint(32) Dolžina payloada

Navedite, koliko bajtov naslednjih podatkov je dejansko uporabnih podatkov.

Preostali podatki seznama nizov volumov očitno predstavljajo odpadne podatke.

V datotekah z novejšimi datumi so ti 'preostali podatki' 0x00, kar bi lahko nakazovalo na pomanjkljivosti orodne verige med razvojem igre, torej, da se je razvijalec šele zelo pozno lotil pravilne inicializacije predpomnilnikov, saj nima vpliva na igro, ali so podatki inicializirani ali ne.

0x000c uint(8)[] Seznam imen datotek

Gre za seznam imen datotek, ki je terminiran z 0 bajti in v tem podatkovnem sklopu pričakuje le ASCII znake.

Pri razčlenjevanju podatkov ni potrebno natančneje obravnavati tega podatkovnega bloka, saj so v informacijah o volumenu neposredno navedeni offseti imen datotek.

Volume Strings so seznam imen datotek, ki so vključene v volumen.

Informacije o volumnu

Nasl. x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF znak
0x0000 76 6f 6c 69 -- -- -- -- -- -- -- -- -- -- -- -- v o l i . . . . . . . . . . . .
Odmik Tip podatkov Oznaka Razlaga
0x0000 uint(32) Magični bajti
0x0004 uint(24) Dolžina bloka
0x0007 uint(8) Zastave

Informacije o volumnu zajemajo podrobnejše informacije o datotekah. Gre nekako za vrsto vnosa v FAT imeniku (FAT = tabela dodelitve datotek).

Število datotek izhaja iz velikosti bloka, deljene z dolžino vnosov v imeniku - 14 bajtov.

Posamezni vnosi v imeniku imajo naslednjo strukturo:

Nasl. x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF znak
0x0000 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- . . . . . . . . . . . . . . . .
Odmik Tip podatkov Oznaka Razlaga
0x0000 uint(32) Premik imena datoteke

Označuje, na katerem pomiku (!) znotraj seznama imen datotek (nizih volumov) se nahaja ime datoteke.

To se nanaša na začetek bloka uporabnih podatkov.

0x0004 uint(32) Datotečni offset

Označuje, na katerem odmiku znotraj celotne datoteke volumna se datoteka nahaja.

0x0008 uint(32) Velikost datoteke

Označuje, kako velika je datoteka v bajtih.

0x000c uint(16) Zastave?

Očitno navaja dodatne informacije o kodiranju datotek.

  • 0x03 je nastavljen, ko je datoteka stisnjena. Očitno se tukaj uporablja Huffmanovo drevo.
  • 0x80 je očitno vedno nastavljen.

Volumski blok

Nasl. x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF znak
0x0000 56 42 4c 48 -- -- -- -- -- -- -- -- -- -- -- -- V B L H . . . . . . . . . . . .
Odmik Tip podatkov Oznaka Razlaga
0x0000 uint(32) Magični bajti
0x0004 uint(24) Dolžina bloka
0x0007 uint(8) Zastave

Volume blok je kontejner, ki shranjuje datoteke. Vsebuje še enkrat - zaradi bloka formata - odvečno velikost datoteke, nato pa sledijo neposredno uporabniški podatki.