rajoles · bei.pm
Els formats de fitxer descrits en aquesta pàgina es basen en l'anàlisi tècnica de la propietat intel·lectual de Dynamix, Inc. i Sierra Entertainment.
La propietat intel·lectual forma part actualment de la massa d'Activision Publishing, Inc. / Activision Blizzard, Inc. i actualment és propietat de Microsoft Corp..
La informació s'ha recopilat mitjançant Enginyeria inversa i Anàlisi de dades amb l'objectiu d'arxivar i garantir la interoperabilitat amb dades històriques.
No s'han utilitzat especificacions propietàries ni confidencials.
El joc es pot adquirir actualment a gog.com com a descàrrega.
Adr | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | caràcter | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | 50 | 42 | 4d | 50 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | P | B | M | P | . | . | . | . | . | . | . | . | . | . | . | . |
Desplaçament | Tipus de dada | Designació | Explicació |
---|---|---|---|
0x0000 | uint(32) | Bytes màgics | |
0x0004 | uint(24) | Longitud del bloc | |
0x0007 | uint(8) | Banderes |
Les fitxes són un format gràfic de bitmap específic d'Outpost-2. S'estenen a través de 13 conjunts de fitxes, anomenats "wells" (well0000.bmp
fins well0012.bmp
), que es troben dins del volum maps.vol.
Així, els conjunts de fitxes / wells contenen el següent:
Nom del fitxer | Contingut |
---|---|
well0000.bmp | Una gràfica de 32x32px, de color blau - ideal per provar si el teu carregador d'imatges funciona |
well0001.bmp | Conté roca clara, cadenes muntanyoses sobre roca clara i nombroses variants de cràters d'impacte en roca clara |
well0002.bmp | Conté 'Doodads' de roca clara - és a dir, elements que poden ser col·locats per decoració (o intencionadament com a estructura, com per exemple murs) sobre roca clara, incloent vegetació |
well0003.bmp | Conté una estructura semblant a una crosta sobre roca clara |
well0004.bmp | Conté roca fosca, cadenes muntanyoses sobre roca fosca i nombroses variants de cràters d'impacte en roca fosca |
well0005.bmp | Conté 'Doodads' de roca fosca - és a dir, elements que poden ser col·locats per decoració (o intencionadament com a estructura, com per exemple murs) sobre roca fosca |
well0006.bmp | Conté una estructura semblant a una crosta sobre roca fosca, així com transicions entre roca clara i roca fosca |
well0007.bmp | Conté lava, incloent 4-5 fotogrames d'animació de la mateixa |
well0008.bmp | Conté sorra i nombroses variants de cràters d'impacte en sorra |
well0009.bmp | Conté 'Doodads' de sorra - és a dir, elements que poden ser col·locats per decoració (o intencionadament com a estructura, com per exemple murs) sobre sorra |
well0010.bmp | Conté 48 transicions de sorra a roca clara i roca fosca |
well0011.bmp | Conté les capes polars del mapa, amb roca fosca com a substrat |
well0012.bmp | Conté les capes polars del mapa, amb roca clara com a substrat |
És molt recomanable per a una implementació acurada no renderitzar les fitxes amb antelació per tal de fer-ne la memòria cau, ja que les dades per al cicle de dia/nit encara s'han de processar - i s'acumularien moltes dades.
Les fitxes són gràfics de 8bpp amb paleta indexada de 32x32 píxels de resolució, que estan disposades de manera col·locada. En un conjunt de fitxes així creat, però, es poden obtenir moltes més
El contenidor principal consta de 2 seccions: head
i data
.
Capçalera de les Fitxes
Adr | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | caràcter | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | 68 | 65 | 61 | 64 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | h | e | a | d | . | . | . | . | . | . | . | . | . | . | . | . |
0x0010 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
Desplaçament | Tipus de dada | Designació | Explicació |
---|---|---|---|
0x0000 | uint(32) | Bytes màgics | |
0x0004 | uint(24) | Longitud del bloc | |
0x0007 | uint(8) | Banderes | |
0x0008 | uint(32) | Versió / Banderes? | Això podria ser una indicació de la versió del format de fitxer; en tots els fitxers que tinc, aquí apareixia el valor |
0x000c | uint(32) | Amplada (Resoldre horizontal) | Indica quina és l'amplada del fitxer d'imatge (en píxels). Per a tots els pous de Outpost 2, aquí s'esperarà el valor |
0x0010 | uint(32) | Alçada (Resolució vertical) | Indica quina és l'alçada del fitxer d'imatge (en píxels). En tots els pous d'Outpost 2 s'espera aquí el valor |
0x0014 | uint(32) | Profunditat de color? | La importància d'aquest valor és desconeguda. Atès que conté el valor |
0x0018 | uint(32) | Profunditat de color 2? | La importància d'aquest valor és desconeguda. Potser es tracta d'una profunditat de color 'objectiu'. |
Després d'aquests detalls, es presentarà un fitxer de paleta en format RIFF estàndard. La especificació exacta es pot trobar - ja que les paletes apareixen en altres llocs - a Paletes.
Dades de les fitxes
Adr | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | caràcter | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | 64 | 61 | 74 | 61 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | d | a | t | a | . | . | . | . | . | . | . | . | . | . | . | . |
Desplaçament | Tipus de dada | Designació | Explicació |
---|---|---|---|
0x0000 | uint(32) | Bytes màgics | |
0x0004 | uint(24) | Longitud del bloc | |
0x0007 | uint(8) | Banderes |
Finalment, segueixen les dades de píxels en brut, de dalt a l'esquerra a baix a la dreta, línia per línia.
El valor de les dades en les gràfiques que normalment es presenten com a imatges de 8bpp correspon a l'índex del color a la paleta de colors.
El motor del joc dibuixa els tiles *probablement* sota demanda.
Això sembla ser degut, entre altres coses, al cicle dia-nit, que coneix 32 graduacions de tiles individuals. Sembla que es resta 'una mica' del valor de brillantor. Encara no s'han pogut determinar els valors exactes, estic treballant sobre la base de càlcul
v *= (daylight / 48) + 0.25;
amb les dades HSV dels píxels, on daylight és un valor de 0-31 i v és un valor entre 0-1. A més, cal tenir en compte que al mapa hi ha un marge de 16 tiles cap a l'esquerra i cap a la dreta (que serveix per aparèixer unitats de manera invisible).
A més, sembla que el cicle dia-nit actualitza només una columna del mapa per cada cicle del joc.
Un cicle dia-nit accelerat és, per tant, així: