Animācijas · bei.pm
Šajā lapā aprakstītie failu formāti balstās uz tehnisko analīzi par intelektuālo īpašumu no Dynamix, Inc. un Sierra Entertainment.
Intelektuālais īpašums šobrīd ir daļa no Activision Publishing, Inc. / Activision Blizzard, Inc. mases un pašreiz pieder Microsoft Corp..
Informācija tika apkopota, izmantojot Reverse Engineering un Datu analīzi, lai arhivētu un nodrošinātu savietojamību ar vēsturiskajiem datiem.
Nekādas patentētas vai konfidenciālas specifikācijas netika izmantotas.
Spēli pašlaik var iegādāties kā lejupielādi gog.com.
Tagad mēs pārejam pie augstākās klases disciplīnām Outpost 2 datu formātos:
Animācijām.
Animāciju saraksti sākas ar globālu galveni, kas galvenokārt kalpo datu verificēšanai. Tam seko konkrēto animāciju definīcijas, kas iedalās trīs līmeņos:
-
Animācija
Animācija ir augstākā instance; tā attēlo vienības, ēkas vai 'daļiņu animāciju' (komētas trieciens, laika apstākļi, eksplozija) animāciju noteiktā izsākuma situācijā. -
Rāmītis
Rāmītis ir viens attēls animācijā. Animācija var ietvert vienu vai vairākus rāmīšus. -
Apakšrāmītis
Apakšrāmītis ir informācija par to, ka noteikta bitmapa noteiktos kritērijos jāizvieto noteiktā rāmīša pozīcijā. Rāmītī var būt viens vai vairāki apakšrāmīši.
Pēc tam seko tieši konkrētās animāciju definīcijas.
Adr | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | rakstz. | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
Novirze | Datu tips | Nosaukums | Skaidrojums |
---|---|---|---|
0x0000 | uint(32) | Animāciju skaits | Cik daudz animāciju datu ierakstu ir pieejami |
0x0004 | uint(32) | Rāmju skaits | Cik kopumā būtu jābūt ietvariem |
0x0008 | uint(32) | Subrāmis skaits | Cik daudz subrāmju kopā vajadzētu būt |
0x000c | uint(32) | Nepieciešamo ierakstu skaits | Cik daudz "papildu ierakstu" ir pieejami. |
Animācija
Adr | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | rakstz. | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
0x0010 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
0x0020 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
Novirze | Datu tips | Nosaukums | Skaidrojums |
---|---|---|---|
0x0000 | uint(32) | Nezināms 1 | Nezināma informācija |
0x0004 | uint(32) | Robusts: Kreisi | Norāda Bounding Box kreiso sākumu (pikseļos). |
0x0008 | uint(32) | Apakšējā kaste: Augšējā | Norāda augšējo sākumu (pikseļos) Bounding Box. |
0x000c | uint(32) | Apņemšanas kaste: Platums | Norāda Bounding Box platumu (pikseļos). |
0x0010 | uint(32) | Apakšējo robežu kaste: augstums | Norāda Bounding Box augstumu (pikseļos). |
0x0014 | uint(32) | Nobīde: X | Norāda animācijas horizontālo centru |
0x0018 | uint(32) | Novirze: Y | Norāda animācijas vertikālo centru |
0x001c | uint(32) | Nezināms 2 | Nezināma informācija |
0x0020 | uint(32) | Rāmju skaits | Norāda, cik daudz animācijas kadru ir šajā animācijā |
0x0024 | uint(32) | Logu skaits | Norāda, cik daudz logu jāizmanto zīmēšanā |
Augstākās slāņa dati, kas attiecas uz animāciju, galvenokārt ir administratīvie dati - Boundingbox apzīmē koordinātas ap transportlīdzekli/ēku, kad tas ir izvēlēts, un norāda arī to, kurš apgabals ir klikšķināms.
Ofsets galvenokārt nosaka "nulles punktu"; punktu, kas jāaprēķina vai jāatņem no spēles iekšējām koordinātām. Matemātiski sakot, ofsets šeit apzīmē koordinātu izcelsmi.
Windows ir, tāpat kā ofsets, katram logam 4 uint(32) vērtības, kuras norāda apgabalu, kas tiek uzskatīts par izmantojamu atsevišķiem subframe. Ārpus logiem nedrīkst zīmēt, ja vien tas nav paredzēts bitmap.
Rāmja
Adr | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | rakstz. | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
Novirze | Datu tips | Nosaukums | Skaidrojums |
---|---|---|---|
0x0000 | uint(8) | Apakšrāmja skaits un pārslēgs izvēles 1, 2 | Šī vērtība ietver:
|
0x0001 | uint(8) | Nezināms 1 un pārslēgs opcijām 3, 4 | Šī vērtība satur:
|
0x0002 | uint(8) | Nepiespiedu 1 | Nezināms |
0x0003 | uint(8) | Opcionalais 2 | Nezināms |
0x0004 | uint(8) | Nepieciešamais 3 | Nezināms |
0x0005 | uint(8) | Opcionalais 4 | Nezināms |
Apakšrāmis
Adr | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | rakstz. | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
Novirze | Datu tips | Nosaukums | Skaidrojums |
---|---|---|---|
0x0000 | uint(16) | Bitmap-ID | Norāda, kura bitmap jāizmanto šim apakšsvaram |
0x0002 | uint(8) | Nezināms 1 | Nepazīstams - tomēr es stipri pieļauju, ka šeit ir runa par renderēšanas prioritāti (Z-līmenis). |
0x0003 | uint(8) | Subframe-ID | Norāda, kurā apakšsistēmā mēs atrodamies |
0x0004 | sint(16) | Novirze - Horizontālā | Norāda, kur iekšējā rāmī jānovieto apakšrāmis, vai arī par cik pikseļiem bitmapa jānovieto horizontāli. |
0x0006 | sint(16) | Offset - Vertikāls | Norāda, kur iekš Frame jānovieto subframe, vai arī par cik pikseļiem bitmapa jānovieto vertikāli. |
Tādējādi mēs tagad varam salikt atsevišķus kadrus, kā arī pilnīgas animācijas, šeit piemēram tiek demonstrēta sarežģītāka animācija ar indeksu 500
Animācija 500
Animācija 500 parāda, kā Plymouth transportieris, kas ir iekrauts ar parasto ore, tiek izkrauts. Tā ir viena no nedaudzajām animācijām, kas izmanto logu funkcionalitāti.
Tādējādi var savienot visu animāciju kopā.
Diemžēl joprojām pastāv problēma ar augšējo kravas atveri, jo šeit attiecīgais bits grafikas tipa informācijā nav iestatīts.
Šeit ir vēl daži, skaisti animēti sprite no spēles: