Csempe · bei.pm
A ezen az oldalon leírt fájlformátumok a Dynamix, Inc. és a Sierra Entertainment szellemi tulajdonának technikai elemzésén alapulnak.
A szellemi tulajdon ma az Activision Publishing, Inc. / Activision Blizzard, Inc. tömeg részét képezi, és jelenleg a Microsoft Corp. birtokában van.
Az információkat fordított mérnöki munka és adatok elemzése révén gyűjtötték össze az archíválás és a történelmi adatokkal való interoperabilitás céljából.
Semmilyen tulajdonjoggal védett vagy bizalmas specifikációt nem használtak.
A játék jelenleg a gog.com oldalon vásárolható meg letöltésként.
Cím | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | karakter | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | 50 | 42 | 4d | 50 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | P | B | M | P | . | . | . | . | . | . | . | . | . | . | . | . |
Eltolás | Adattípus | Megnevezés | Magyarázat |
---|---|---|---|
0x0000 | uint(32) | Bűvös bájtok | |
0x0004 | uint(24) | Blokkhossz | |
0x0007 | uint(8) | Zászlók |
A Tiles-ök egy Outpost-2-specifikus
bitmap grafikai formátum. 13 Tileset-re terjednek ki,
"well" néven (well0000.bmp
-tól well0012.bmp
-ig),
melyek a maps.vol kötetben találhatók.
A Tilesetek / Wells a következőket tartalmazzák:
Fájlnév | Tartalom |
---|---|
well0000.bmp | Egy 32x32px méretű, kék grafika - ideális tesztelésre, hogy működik-e a saját képkészítő |
well0001.bmp | Világos kőzetet, hegyvonulatokat világos kőzeten és számtalan kráter változatot tartalmaz világos kőzeten |
well0002.bmp | Világos kőzeti 'Doodad'-okat tartalmaz - tehát elemeket, amelyeket lazítás céljából (vagy tudatosan strukturaként, mint pl. falak) helyezhetünk el világos kőzeten, beleértve a növényzetet is |
well0003.bmp | Egy kérgesszerű struktúrát tartalmaz világos kőzeten |
well0004.bmp | Sötét kőzetet, hegyvonulatokat sötét kőzeten és számtalan kráter változatot tartalmaz sötét kőzeten |
well0005.bmp | Sötét kőzeti 'Doodad'-okat tartalmaz - tehát elemeket, amelyeket lazítás céljából (vagy tudatosan strukturaként, mint pl. falak) helyezhetünk el sötét kőzeten |
well0006.bmp | Egy kérgesszerű struktúrát tartalmaz sötét kőzeten, valamint átmeneteket világos és sötét kőzet között |
well0007.bmp | Láva tartalmaz, amelyhez 4-5 animációs keret tartozik |
well0008.bmp | Homokot és számtalan kráter változatot tartalmaz homokon |
well0009.bmp | Homok-'Doodad'-okat tartalmaz - tehát elemeket, amelyeket lazítás céljából (vagy tudatosan strukturaként, mint pl. falak) helyezhetünk el homokon |
well0010.bmp | 48 átmenetet tartalmaz homokról világos és sötét kőzetre |
well0011.bmp | A térkép sarkvidéki sapkáit tartalmazza, sötét kőzettel mint alap |
well0012.bmp | A térkép sarkvidéki sapkáit tartalmazza, világos kőzettel mint alap |
Javasolt, hogy a pontos megvalósítás érdekében ne rendereljük előre a lapkákat a gyorsítótárazás érdekében, mivel az adatok a nappali/éjjeli ciklushoz még feldolgozásra várnak - és nagyon-nagyon sok adat keletkezne.
A lapkák 8bpp grafikák indexelt palettával, mindegyik 32x32 pixel felbontású, amelyek egymás mellett helyezkednek el. Az így létrejött lapkakészlet azonban sokkal több
A fő konténer 2 szekcióból áll: head
és data
.
Csempe Fejléc
Cím | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | karakter | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | 68 | 65 | 61 | 64 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | h | e | a | d | . | . | . | . | . | . | . | . | . | . | . | . |
0x0010 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
Eltolás | Adattípus | Megnevezés | Magyarázat |
---|---|---|---|
0x0000 | uint(32) | Bűvös bájtok | |
0x0004 | uint(24) | Blokkhossz | |
0x0007 | uint(8) | Zászlók | |
0x0008 | uint(32) | Verzió / Zászlók? | Ez a fájlformátum verziószámára utalhat; az általam kezelt fájlokban itt a következő érték állt: |
0x000c | uint(32) | Szélesség (Horizontális felbontás) | Megadja, hogy milyen széles a képfájl (pixelben). Az Outpost 2 összes kútjánál itt a |
0x0010 | uint(32) | Magasság (Vertikális felbontás) | Megadja, hogy mekkora a képfájl (pixelben). Az Outpost 2 összes kutjánál itt a |
0x0014 | uint(32) | Színmélység? | Ennek az értéknek a jelentése ismeretlen. Mivel minden ellenőrzött fájlban a |
0x0018 | uint(32) | Színmélység 2? | Ennek az értéknek a jelentése ismeretlen. Lehetséges, hogy ez egy 'cél'-színmélység. |
Ezeket az adatok után egy standardizált RIFF-formátumban lévő palettafájl következik. A pontos specifikációt - mivel a paletták máshol is előfordulnak - a Paletták alatt található.
Csempe adatok
Cím | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | karakter | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | 64 | 61 | 74 | 61 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | d | a | t | a | . | . | . | . | . | . | . | . | . | . | . | . |
Eltolás | Adattípus | Megnevezés | Magyarázat |
---|---|---|---|
0x0000 | uint(32) | Bűvös bájtok | |
0x0004 | uint(24) | Blokkhossz | |
0x0007 | uint(8) | Zászlók |
Végül következnek a nyers pixeldatok, balról fentről lefelé, soronként jobbra.
A 8bpp-bitképként megjelenő grafikák adatértéke a színindexet jelenti a színpalettán.
A játékmotor a csempéket *valószínűleg* igény szerint rajzolja meg.
Ennek egyik oka valószínűleg a nap-éj ciklus, amely 32 fokozatot ismer az egyes csempék számára. Úgy tűnik, hogy a fényesség értékéből 'egy kicsit' levonnak. Pontos értékeket még nem sikerült meghatározni, a számítási alapot a következő képlettel dolgozom ki:
v *= (daylight / 48) + 0.25;
a pixel HSV-adatai alapján, ahol a daylight egy 0-31 közötti érték, és v egy 0-1 közötti érték. Továbbá figyelembe kell venni, hogy a térképen balra és jobbra is van egy 16 csempéből álló szegély (ez az egységek láthatatlan spawnálására szolgál).
Továbbá úgy tűnik, hogy a nap-éj ciklus játékciklusonként csak egy oszlopot frissít a térképen.
Egy felgyorsított nap-éj ciklus tehát a következőképpen néz ki: