Formáidí comhoibrithe Outpost 2 · bei.pm
Tá na cruthanna comhoibrithe atá curtha síos ar an leathanach seo bunaithe ar an anailís theicniúil ar mhaoin intleachtúil ó Dynamix, Inc. agus Sierra Entertainment.
Is cuid den mhaoin intleachtúil í atá anois faoi úinéireacht Activision Publishing, Inc. / Activision Blizzard, Inc. agus faoi láthair tá sé i seilbh Microsoft Corp..
Bhí na hionchais bailithe trí Innealtóireacht In aghaidh agus anailís sonraí chun críocha comhoibrithe agus comhoiriúnachta le sonraí stairiúla.
Ní raibh aon shonraíochtaí maoinithe nó rúnda á n-úsáid.
Is féidir an cluiche a fháil faoi láthair le hoibriú le gog.com mar dhíoladh le híoslódáil.
Leagtar amach i sraith na n-alt seo mo thuiscint ar na formáidí sonraí sa chluiche straitéiseach fíor-ama "Outpost 2: Divided Destiny", a foilsíodh i 1997 ag Sierra agus a d'fhorbair Dynamix.
Ó thús na Samhna 2015 go dtí an 14 Samhna 2015, bhí mé i mbun anailíse ar na sonraí atá ag baint leis an gcluiche - agus ar an gcaoi a n-úsáidtear iad.
De réir na n-eolas atá bainte amach agam go dtí seo, tá sé le feiceáil go ndearna Dynamix - cosúil le go leor comhlachtaí tráchtála - roinnt formáidí sonraí nach ndearnadh go sonrach do Outpost 2, ach a úsáideadh freisin i gforbairtí eile mar shampla, an tsraith Mechwarrior (atá athraithe).
Neamhchiontach, tá sé tábhachtach a thabhairt faoi deara go bhfuil an nuálaíocht i bhformáidí sonraí teoranta go praiticiúil agus go mbíonn sí go minic bunaithe ar choincheapa atá ann cheana féin ó na formáidí coitianta mar JFIF agus RIFF.
Le haghaidh léirmhínithe ar na táblaí agus na formáidí sonraí, tá tuilleadh eolais ar fáil ag Cad é cad?.
Is éard atá sna sonraí a luaitear anseo go ginearálta ná Little Endian.
Ar deireadh, is féidir a rá go raibh an innealtóireacht ar ais an-spraoi, cé nach bhfuil sé iomlán.
Cinnte, molaim freisin an cluiche féin a imirt, mar go dtugann sé meicníochtaí súgartha suimiúla.
Réamhrá
Tá na formáidí sonraí a úsáideann Outpost 2 comhoiriúnach le JFIF / PNG - tá ceann na sonraí ar gach bloc sonraí 8 bliain d'aois. Mar sin, ní thógfaidh mé an stró chun na ceanntásca a dhoiciméadú sna háiteanna ábhartha, ach déanfaimid cur síos ar na hionchais amháin.
Is é an formáid i gcónaí an méid seo a leanas; tá na sonraí úsáideacha féin suite isteach ann:
Seoladh | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | carachtar | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
Crios | Cineál Sonraí | Ainm | Míniú |
---|---|---|---|
0x0000 | uint(32) | Bóthar Draíochta | Cuireann sé an t-eolas ar fáil faoi na rudaí atá le súil leo sa bloc sonraí seo chugainn. Luachanna a bhfuil aithne orthu:
|
0x0004 | uint(24) | Fad na bacainne | Cuireann sé ar fáil an t-eolas faoin méid (i Byte) atá ag an bbloc sonraí seo a leanas. Baineann sé le na sonraí úsáideacha amháin - níl na 8 Byte ceannlínte san áireamh ann. |
0x0007 | uint(8) | Bratacha? | Tá sé neamhréiteach cad é an críoch atá ag an bbloc seo go díreach. Saibhreas, is minic a bhíonn an luach seo 0x80, agus i gcóipeanna eile is minic a bhíonn sé 0x00. Cuireann sé in iúl go bhfuil sé i gceist le conradh brataí. |
Toitil
Tá na Volumes mar choimeádán sonraí don chluiche, cosúil le formáid ailtireachta ar nós Tarball. I gcluiche Outpost 2, níl an formáid ach comhoibrithe le comhad - níl fillteáin ann. D'fhéadfadh sé go bhféadfaí iad a shimuláil trí ainmneacha comhad cuí.
Tá Volume comhdhéanta as an gceannaire Volume agus roinnt Bloic Volume a bhaineann le comhoibrithe sonraithe.
"Volumes" is ea na comhoibrithe le deireadh 'vol'
sa chlárlann chluiche.
Seoladh | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | carachtar | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | 56 | 4f | 4c | 20 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | V | O | L | . | . | . | . | . | . | . | . | . | . | . | . |
Crios | Cineál Sonraí | Ainm | Míniú |
---|---|---|---|
0x0000 | uint(32) | Báistí Draíochta | |
0x0004 | uint(24) | Fad Bloc | |
0x0007 | uint(8) | Bratacha |
Ceannteideal Toirmeasc
Seoladh | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | carachtar | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | 76 | 6f | 6c | 68 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | v | o | l | h | . | . | . | . | . | . | . | . | . | . | . | . |
Crios | Cineál Sonraí | Ainm | Míniú |
---|---|---|---|
0x0000 | uint(32) | Báistí Draíochta | |
0x0004 | uint(24) | Fad Bloc | |
0x0007 | uint(8) | Bratacha |
Ní bhaineann aon shonraí úsáideacha leis an gCeannlíne Toilleadh.
Úsáidtear é mar chontae amháin.
Mar an chéad dáta sa Cheannlíne Toilleadh, ba chóir go mbeadh na Sraitheanna Toilleadh ann; ina dhiaidh sin, tagann na faisnéisí Toilleadh.
Snáitheanna Toirt
Seoladh | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | carachtar | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | 76 | 6f | 6c | 69 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | v | o | l | i | . | . | . | . | . | . | . | . | . | . | . | . |
Crios | Cineál Sonraí | Ainm | Míniú |
---|---|---|---|
0x0000 | uint(32) | Báistí Draíochta | |
0x0004 | uint(24) | Fad Bloc | |
0x0007 | uint(8) | Bratacha |
Seoladh | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | carachtar | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | 76 | 6f | 6c | 73 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | v | o | l | s | . | . | . | . | . | . | . | . | . | . | . | . |
Crios | Cineál Sonraí | Ainm | Míniú |
---|---|---|---|
0x0000 | uint(32) | Báistí Draíochta | |
0x0004 | uint(24) | Fad Bloc | |
0x0007 | uint(8) | Bratacha | |
0x0008 | uint(32) | Fad an t-ualach | Sonraíonn sé cé mhéad byte atá i ndáta na n-eolais thíos a bhaineann le húsáid. Is léir go measfar na sonraí atá fágtha sa liosta de na sreanga toilleadh mar bruscar. Saibhreann na sonraí 'fágtha' 0x00 i gcomhad le dáta níos déanaí, rud a d'fhéadfadh a bheith ina chomhartha ar laigeanna le linn na huirlisí a d'fhorbair an cluiche, is é sin, nach raibh forbróir ag tabhairt aire do thús ceart na bpointí go dtí go déanach, mar níl aon tionchar ag an gcás a bhfuil na sonraí tosaigh nó nach bhfuil orthu ar an gcluiche. |
0x000c | uint(8)[] | Liosta Ainmneacha Comhad | Seo liosta de na hainmneacha comhad a chríochnaíonn le 0-byte, a éilíonn - ar a laghad sa tsample sonraí atá i láthair - comharthaí ASCII amháin. Ní gá an bloca sonraí seo a scrúdú níos mine agus tú ag an bpróiseas parsanachta, toisc go n-iarrtar go díreach na bpointí atá ag tagairt do na hainmneacha comhad sna h-infhoirtimí tosaigh. |
Maidir le na sl Strings toilleadh, is liosta é d'ainmneacha comhad a bhíonn laistigh den toilleadh.
Eolas ar Thomhas
Seoladh | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | carachtar | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | 76 | 6f | 6c | 69 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | v | o | l | i | . | . | . | . | . | . | . | . | . | . | . | . |
Crios | Cineál Sonraí | Ainm | Míniú |
---|---|---|---|
0x0000 | uint(32) | Báistí Draíochta | |
0x0004 | uint(24) | Fad Bloc | |
0x0007 | uint(8) | Bratacha |
Tugann na h-eolas tosaigh sonraí níos mionsonraithe maidir le na comhad. Is cineál iontráil eolaire FAT é seo ar bhealach (FAT = Tábla Comhoibrithe Comhad)
Tá an líon comhad bunaithe ar an méid bloca a roinntear le fad na n-iontrálacha eolaire - 14 Byte.
Tá struchtúr na n-iontrálacha eolaire mar seo a leanas:
Seoladh | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | carachtar | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
Crios | Cineál Sonraí | Ainm | Míniú |
---|---|---|---|
0x0000 | uint(32) | Comhoiriúnacht Ainm comhad | Cuireann sé in iúl cén áit (!) laistigh den liosta ainmneacha comhoibrithe (Volume-Strings) a bhfaighidh an t-ainm comhoibrithe. Tagraíonn sé do thús an bloc sonraí. |
0x0004 | uint(32) | Suíomh comhoibrithe comhoibrithe | Sonraigh an t-oifig a bhfuil an comhad suite laistigh den chomhdhéan iomlán. |
0x0008 | uint(32) | Toisí comhoibrithe | Leagann sé amach cé chomh mór atá an comhad i byteanna. |
0x000c | uint(16) | Bratacha? | Cuireann sé ar fáil eolas breise faoi chódáil na comhad.
|
Bloc Toirteala
Seoladh | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | carachtar | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | 56 | 42 | 4c | 48 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | V | B | L | H | . | . | . | . | . | . | . | . | . | . | . | . |
Crios | Cineál Sonraí | Ainm | Míniú |
---|---|---|---|
0x0000 | uint(32) | Báistí Draíochta | |
0x0004 | uint(24) | Fad Bloc | |
0x0007 | uint(8) | Bratacha |
Is coimeádán é Bloc Toille, a ghlacann comhad. Ní bhíonn ann ach arís - mar gheall ar fhormat an bloc - méid an chomhaid atá dúbláilte, agus ansin leanann na sonraí úsáideacha go díreach.
Tíleanna
Seoladh | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | carachtar | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | 50 | 42 | 4d | 50 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | P | B | M | P | . | . | . | . | . | . | . | . | . | . | . | . |
Crios | Cineál Sonraí | Ainm | Míniú |
---|---|---|---|
0x0000 | uint(32) | Baitíní Draíochta | |
0x0004 | uint(24) | Fad an bloc | |
0x0007 | uint(8) | Bratacha |
Is éard atá i na Tiles ná formáid grafaicí Bitmap ar leith do Outpost-2.
Síneann siad thar 13 Tileset, ar a dtugtar "wells" (well0000.bmp
go well0012.bmp
),
atá laistigh den toirt maps.vol.
Áiríonn na Tileset / Wells seo a leanas:
Ábhar comhoibrithe | Ábhar |
---|---|
well0000.bmp | Grafic 32x32px gorm - foirfe mar thástáil ar an gcuairteoir íomhá |
well0001.bmp | Ábhar ina bhfuil carraigeacha éadroma, sléibhte ar charrigeacha éadroma agus neart éagsúlachtaí de chraiceann tuillte ar charrigeacha éadroma |
well0002.bmp | Ábhar ina bhfuil 'Doodads' carraige le haghaidh cur i láthair (nó ar bhealach struchtúrtha, mar shampla, ballaí) ar charrigeacha éadroma, lena n-áirítear plandáil |
well0003.bmp | Ábhar ina bhfuil struchtúr cosúil le cruth ar charrigeacha éadroma |
well0004.bmp | Ábhar ina bhfuil carraigeacha dorcha, sléibhte ar charrigeacha dorcha agus neart éagsúlachtaí de chraiceann tuillte ar charrigeacha dorcha |
well0005.bmp | Ábhar ina bhfuil 'Doodads' carraige dhorcha - gnéithe a úsáidtear chun struchtúir (nó ar bhealach struchtúrtha, mar shampla, ballaí) a chur i láthair ar charrigeacha dorcha |
well0006.bmp | Ábhar ina bhfuil struchtúr cosúil le cruth ar charrigeacha dorcha, chomh maith le haistriúcháin idir charrigeacha éadroma agus dorcha |
well0007.bmp | Ábhar ina bhfuil lava, lena n-áirítear 4-5 frámanna injiniúil |
well0008.bmp | Ábhar ina bhfuil gaineamh agus neart éagsúlachtaí de chraiceann tuillte ar gaineamh |
well0009.bmp | Ábhar ina bhfuil 'Doodads' gaineamh - gnéithe a úsáidtear chun struchtúir (nó ar bhealach struchtúrtha, mar shampla, ballaí) a chur i láthair ar ghaineamh |
well0010.bmp | Ábhar ina bhfuil 48 aistriúcháin ó ghaineamh go carraigeacha éadroma agus dorcha |
well0011.bmp | Ábhar ina bhfuil na cnapáin pholaire ar an mapa, le carraige dorcha mar bhunús |
well0012.bmp | Ábhar ina bhfuil na cnapáin pholaire ar an mapa, le carraige éadrom mar bhunús |
Is é an comhairle is fearr ná na Tiles a réamh-thógáil le haghaidh cachdála, toisc go mbeidh ar na sonraí don chiorcal lá/nóin a bheith á n-ullmhú fós - agus go mbainfidh sé le líon mór sonraí.
Tá na Tiles mar ghráficaí 8bpp le pailéad le hiontrálacha, gach ceann acu le réiteach 32x32 picteilín, atá socraithe i sraitheanna. I dtíleanna a chruthaítear ar an gcaoi seo, d'fhéadfadh níos mó ná sin a bheith ann.
Comhdhéantar an príomh-chontae as 2 rannóg: head
agus data
.
Ceann na gCreach
Seoladh | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | carachtar | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | 68 | 65 | 61 | 64 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | h | e | a | d | . | . | . | . | . | . | . | . | . | . | . | . |
0x0010 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
Crios | Cineál Sonraí | Ainm | Míniú |
---|---|---|---|
0x0000 | uint(32) | Baitíní Draíochta | |
0x0004 | uint(24) | Fad an bloc | |
0x0007 | uint(8) | Bratacha | |
0x0008 | uint(32) | Leagan / Bratacha? | Is féidir gurb é atá i gceist anseo ná leagan comhoiriúnachta an fhormáidi; bhí an luach |
0x000c | uint(32) | Leith (Réiteach Horizontach) | Tugann sé le fios cé chomh leathan is atá an comhad íomhá (i bpixeleanna). Le gach well ó Outpost 2, táthar ag súil leis an luach |
0x0010 | uint(32) | Airde (Réiteach verticail) | Cuireann sé in iúl cé chomh hard agus atá an comhad íomhá (i bpixeleanna). Le gach well i Outpost 2, beidh an luach |
0x0014 | uint(32) | Domhain dath? | Tá brí an luacha seo anaithnid. Ós rud é go bhfuil an luach |
0x0018 | uint(32) | Dromchla dath 2? | Tá brí an luacha seo anaithnid. Is féidir go bhfuil sé ina dhoimhneacht dhath 'sprioc'. |
Tar éis na sonraí seo, beidh comhad pailéad i bhformáid RIFF caighdeánach ar fáil. Tá an sonraíocht cheart le fáil - ós rud é go mbíonn na pailéid le feiceáil in áiteanna eile - faoi Pailéad.
Sonraí na dTaifead
Seoladh | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | carachtar | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | 64 | 61 | 74 | 61 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | d | a | t | a | . | . | . | . | . | . | . | . | . | . | . | . |
Crios | Cineál Sonraí | Ainm | Míniú |
---|---|---|---|
0x0000 | uint(32) | Baitíní Draíochta | |
0x0004 | uint(24) | Fad an bloc | |
0x0007 | uint(8) | Bratacha |
ar deireadh, tá na sonraí pixele nochtaithe, ag tosú ó na hoibrithe ar chlé ar an mbóthar agus ag dul ar dheis síos.
Comhoiriúnann an luach sonraí atá ag na grafaicí a bhíonn i gcló 8bpp de ghnáth leis an innéacs d’athruithe na gcolor sa phalét.
Éilíonn an inneall cluiche na tiles *d'fhéadfadh go leor* ar éileamh.
Dealraíonn sé go bhfuil sé seo mar gheall ar an timthriall lae agus oíche, a bhfuil 32 céimeanna difriúla ag baint leis na tiles. Leis, tá sé soiléir go gcuirtear 'beagán' den luach gile i laghdú. Níor éirigh liom luachanna cruinne a fháil fós, táim ag obair ar an mbonn ríomhaireachta
v *= (daylight / 48) + 0.25;
le sonraí HSV na picteilín, áit a bhfuil daylight ag baint le luach idir 0-31 agus tá v i raon 0-1. Thar aon rud eile, ba chóir a chur san áireamh go bhfuil teorainn de 16 tiles ar chlé agus ar dheis ar an máap (cuireann sé sin le spás do na haonad neamh-infheicthe) ann.
Chomh maith leis sin, dealraíonn sé go bhfuil an timthriall lae-oíche ag nuashonrú ach colún amháin den máap in aghaidh gach timthrialla gníomh.
Mar sin, breathnaíonn timthriall lae-oíche atá toirtithe mar seo a leanas:
PRT
Seoladh | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | carachtar | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | 43 | 50 | 41 | 4c | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | C | P | A | L | . | . | . | . | . | . | . | . | . | . | . | . |
Crios | Cineál Sonraí | Ainm | Míniú |
---|---|---|---|
0x0000 | uint(32) | Bíotáidí Draíochta | |
0x0004 | uint(24) | Fad na bpalaitíní | In áit an gnáthfhormáid bloic, tugann sé le fios an líon na palet atá le fáil sa chomhad seo - ní an fad na bloic i byteanna. |
0x0007 | uint(8) | Bratacha | Is dócha, mar is gnách, bratacha. Ach níl bratacha ar eolas agam; ó tá na luachanna ar fad a bhfuil a fhios agam comhoiriúnach le |
Cén fáth ar PRT
a sheasann go díreach níl a fhios agam; d'fhéadfadh sé a bheith cosúil le 'Tábla Pallet agus Acmhainne' - toisc gurb é atá i gceist leis an gcomhad seo - atá le fáil mar op2_art.prt sa maps.vol - go bhfuil sé de chineál sin, nó go gcuirfeadh sé síos an fheidhm go maith.
Tá liosta pallettí sa chomhad seo, tábla faoi na bitmaps go léir a úsáidtear, sainmhínithe ar gach animatio, agus sraith sonraí neamhoifigiúla eile. Leanann sé an cruth comhoibrithe go laige, mar ní leanann gach taifead an scéim seo.
Clúdaíonn an CPAL
-roinnt (b'fhéidir go bhfuil sé do chontae pallettí) ach na sonraí pallettí, ag cur in iúl cé mhéad de na pallettí 8-bit a bhíonn de ghnáth 1052 byte ar fáil.
Ní ghlactar leis an 1052-byte mar choinníoll, mar d'fhéadfadh an cruth pallettí méid pallettí difriúil a áireamh. Ní bhaineann sé ach leis an gcaipiteal a sheachadtar le Outpost 2.
Tar éis na liostaí pallettí, leanann an liosta bitmaps go díreach agus gan aon cheannlíne tosaigh; agus go díreach ina dhiaidh sin, tagann na liostaí animatio.
Seoltar dhá cheann acu le uint(32) (nó arís uint24+uint8 bratacha?) a thugann an méid taifead a bhaineann.
Pailéadáin
Seoladh | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | carachtar | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | 50 | 50 | 41 | 4c | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | P | P | A | L | . | . | . | . | . | . | . | . | . | . | . | . |
Crios | Cineál Sonraí | Ainm | Míniú |
---|---|---|---|
0x0000 | uint(32) | Bátaí Draíochta | |
0x0004 | uint(24) | Fad na bpalaitín | In ionad an gnáthfhormáid bloca, léiríonn sé an líon palet a fhaightear sa chomhad seo - ní faigheann sé fad an bloca i nByteanna. |
0x0007 | uint(8) | Bratacha | Is dócha, mar is gnáth, bratacha. Ach níl a fhios agam faoi bhratacha; ó tá na luachanna ar fad a bhfuil aithne agam orthu ag comhoiriúnadh le |
Tá na sonraí faoi na palletts an-éasca le léamh.
Comhcheanglaíonn siad gach ceann le haghaidh a cheann agus le haghaidh sliseanna sonraí.
Ceann Pallet
Seoladh | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | carachtar | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | 68 | 65 | 61 | 64 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | h | e | a | d | . | . | . | . | . | . | . | . | . | . | . | . |
Crios | Cineál Sonraí | Ainm | Míniú |
---|---|---|---|
0x0000 | uint(32) | Bátaí Draíochta | |
0x0004 | uint(24) | Fad na bpalaitín | In ionad an gnáthfhormáid bloca, léiríonn sé an líon palet a fhaightear sa chomhad seo - ní faigheann sé fad an bloca i nByteanna. |
0x0007 | uint(8) | Bratacha | Is dócha, mar is gnáth, bratacha. Ach níl a fhios agam faoi bhratacha; ó tá na luachanna ar fad a bhfuil aithne agam orthu ag comhoiriúnadh le |
0x0008 | uint(32) | Leagan formáile palata? | Is dócha gurb é an leagan de fhoirméad na bpalat a leanann an palette áirithe. Is cosúil go bhfuil leagan |
Sonraí na n-ardán
Seoladh | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | carachtar | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | 64 | 61 | 74 | 61 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | d | a | t | a | . | . | . | . | . | . | . | . | . | . | . | . |
Crios | Cineál Sonraí | Ainm | Míniú |
---|---|---|---|
0x0000 | uint(32) | Bátaí Draíochta | |
0x0004 | uint(24) | Fad Bloc | |
0x0007 | uint(8) | Bratacha |
Glacann an rannsonraí na hiontrálacha pallet aonair. Is é líon na n-iontrálacha pallet a dhéantar de réir fad an bloc / 4.
Tá struchtúr simplí ag na hiontrálacha aonair seo a leanas;
Seoladh | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | carachtar | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | -- | -- | -- | 04 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
Crios | Cineál Sonraí | Ainm | Míniú |
---|---|---|---|
0x0000 | uint(8) | Comhpháirt dearg | Cuireann sé líon na dearg i dtón na dathanna in iúl |
0x0001 | uint(8) | Comhpháirt Ghréine | Tugann sé le fios cé chomh mór is atá an méid glas sa dhath |
0x0002 | uint(8) | Comhpháirt Gorm | Tugann sé an cion gorm den dhath. |
0x0003 | uint(8) | Neamhchinnte - Bratacha? | Tá sé doiligh a thuiscint cad a chiallaíonn an luach seo, mar go bhfuil sé cosúil le |
Maidir leis na palet, ní gá ach a rá go bhfuil na rialacha a leanas i bhfeidhm do na palet a úsáidtear le haghaidh léirithe:
- Always is é an chéad dath TRÉASCANTACH, cibé cad é an luach a luaitear ann.
-
Tuigítear go bhfuil na hiontrálacha palet 1-24 mar dhath cluiche i na palet 1-8.
Ní léir dom cá as a dtagann na dathanna seachas ó imreoir 1.
Sílim go bhfuil na dathanna eile socraithe go crua.
Bithlína
Seoladh | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | carachtar | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
0x0010 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
Crios | Cineál Sonraí | Ainm | Míniú |
---|---|---|---|
0x0000 | uint(32) | Leathanaigh a shocrú | Tugann sé leathan na n-ábhar pictiúr i nByte - mar tá siad comhoiriúnach le teorainneacha 4-Byte. Mar sin, tá sé tapaidh chun líne áirithe pictiúr a shlánú. cén fáth a 저장해 이 값이 별도로 저장되었는지, 비록 계산할 수 있지만, 불분명합니다. |
0x0004 | uint(32) | Comhoiriúnacht | Tugann sé le fios an t-aistriú atá ag an chéad líne sa Bitmap |
0x0008 | uint(32) | Airde | Sonraigh airde an ghréasáin i bpixeleanna |
0x000c | uint(32) | Luas | Glaoigh leathan na híomhá i bpixeleanna |
0x0010 | uint(16) | Tipeáil | Tugann sé le tuiscint cén saghas íomhá atá ann. Is cosúil go bhfuil sé ag tagairt do mhasg bioráin:
|
0x0012 | uint(16) | Palette | Sainmhínigh cé acu pailéad óna comhad PRT a úsáidfear |
Leagann an struchtúr sonraí seo atá ag an gcóip PRT le conas atá na bitmaps a úsáidtear do na sprites comhoibrithe. Tá na bitmaps seo mar chuid amháin, óna ndéantar roinnt rudaí a chur le chéile chun freagra a thabhairt ar fhrámaí a animh.
Tá na sonraí íomha sonracha i bhfolach i
op2_art.BMP sa chatalóg cluiche.
Ní léir cén fáth atá ag an gcomhad bitmap seo header RIFF (atá go hiondúil ceart), is dócha go n-úsáideann Outpost 2 APIs córas chun na grafaicí a luchtú, ag baint úsáide as an header seo go sealadach agus ag scríobh na réimsí ag athrú.
Tá na sonraí pixeleach i láthair sa chomhad BMP ag an suíomh Offset + an uint32-Offset, atá le fáil sa chomhad BMP ag seoladh 0x000A (RIFF-Bitmap-Dátaí-Offset), agus tá siad comhoiriúnach le comhoibriúnacht an tsraithe ó thuas ar chlé go dtí an taobh íochtair.
Is féidir grafaicí monochrome 1bpp a dhéanamh ar bhealach a luíonn go bhfuil dath 0 ar an trédhearcacht iomlán, chomh maith le dath 1 bhí sé dubh/gorm le leath-trédhearcacht, mar is minic a úsáidtear na grafaicí monochrome do scáthanna feithiclí agus foirgneamh sa naíonraí.
Mar sin, is féidir go leor grafaicí a chur le chéile cheana féin.
Animéidí
Anseo tagann muid chuig an gclár ríoga na ndisciplíní laistigh de na foirmlí sonraí Outpost 2:
Na hAnimíochtaí.
Tosaítear na liostaí gníomhachtaí le hiontráil domhanda, a bhfuil sé mar aidhm aici go príomha an fhaisnéis a fhíorú. Leanas na sainmhínithe gníomhachtaí sonracha, atá comhdhéanta de 3 leibhéal:
-
Gníomhacht
Is éard atá i ngníomhacht an leibhéal is airde; léiríonn sé gníomhacht aontaithe, foirgneamh nó 'gníomhacht pháirticil' (buama comhoibrithe, aimsir, pléascadh) i suíomh áirithe. -
Fráma
Is íomhá aonair atá i fráma laistigh de gníomhacht. D’fhéadfadh gníomhacht amháin nó níos mó frámaí a bheith aici. -
Fo-fráma
Is éard atá i fo-fráma an t-eolas faoin gcinneadh go gcuirfear Bitmap áirithe i láthair i suíomh áirithe fráma faoi choinníollacha áirithe. D’fhéadfadh fráma amháin nó níos mó fo-frámaí a bheith aige.
Agus ansin, leanann na sainmhínithe gníomhachtaí laistigh de na hiontrálacha.
Seoladh | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | carachtar | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
Crios | Cineál Sonraí | Ainm | Míniú |
---|---|---|---|
0x0000 | uint(32) | Uimhreacha na n-aistriúchán | Cá mhéad comhoibrithe gníomhaíochta atá ann |
0x0004 | uint(32) | Uimhreacha Frámaí | Cé mhéad raon atá le bheith ann go léir |
0x0008 | uint(32) | Uimhir na fo-thimpeallachtaí | Cé mhéad subframes atá le bheith ann go hiomlán |
0x000c | uint(32) | Uimhir na n-eisíontach roghnacha | Cé mhéad "iontráil roghnach" atá ann. |
Clónadh
Seoladh | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | carachtar | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
0x0010 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
0x0020 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
Crios | Cineál Sonraí | Ainm | Míniú |
---|---|---|---|
0x0000 | uint(32) | Neamh-cháiliúil 1 | Faisnéis Neamhaithnidiúil |
0x0004 | uint(32) | Bóthar Teorann: Ar chlé | Sonraíonn sé tosaigh na Bounding Box ar chlé (i bpixeleanna). |
0x0008 | uint(32) | Bóthar Teorann: Ar Aghaidh | Sonraíonn sé tús na Bounding Box (i bpíosa) atá os cionn. |
0x000c | uint(32) | Bhosca Teorann: Leathan | Sonraigh leathanacht (i bpix) na Bounding Box. |
0x0010 | uint(32) | Cás Teorann: Airde | Sonraigh airde (i bpix) na Bounding Box. |
0x0014 | uint(32) | Pointe: X | Sonraíonn sé lár na hinimiciúna go hoifigiúil |
0x0018 | uint(32) | Leathnú: Y | Sonraigh lárionad verticil na himeachtaireachta |
0x001c | uint(32) | Anaithnid 2 | Eolas neamhspleách |
0x0020 | uint(32) | Uimhreacha Frámaí | Leagann sé amach cé mhéid comhghníomhartha atá san animáitiún seo |
0x0024 | uint(32) | Uimhir na gCuirtíní | Tugann sé le fios cé mhéid fuinneoga atá le húsáid agus tú ag tarraingt |
Na sonraí atá ag an gcéad leibhéal, an t-ainmniú, is iad na sonraí riaracháin a bhíonn i gceannas - is é Boundingbox na comhordanáidí a bhaineann le marcáil timpeall ar an gcarr/náisiúnta, when a roghnaítear é agus tugann sé freisin le fios cén limistéar atá in-inúsáidte.
Leis an Offset, tá sé de ghnáth i gceist le "pointe tosaigh"; an pointe a chaithfear a chur in oiriúnacht le comhordanáidí laistigh den chluiche. D'fhéadfaí a rá freisin ó thaobh na matamaitice: tagraíonn an Offset anseo do thús na gcomhordanáidí.
Maidir leis na Fuinneoga, tá sé mar an gcéanna, go díreach cosúil leis an Offset, ag baint le 4 uint(32) luach, atá ann chun limistéar a shonrú, a bhfuil sé in-úsáidte do fho-chluichí. Níor chóir dá mbeadh sé áiteamh le haghaidh na Bitmap, a tharraingt taobh amuigh de na Fuinneoga.
Fráma
Seoladh | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | carachtar | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
Crios | Cineál Sonraí | Ainm | Míniú |
---|---|---|---|
0x0000 | uint(8) | Líon na subframeanna agus comhla do Rogha 1, 2 | Tá an luach seo áireamh:
|
0x0001 | uint(8) | Neamhchinnte 1 agus Toggle le haghaidh Roghnach 3, 4 | Tá an luach seo comhdhéanta as:
|
0x0002 | uint(8) | Roghnach 1 | Neamhchinnte |
0x0003 | uint(8) | Roghnach 2 | Neamhchinnte |
0x0004 | uint(8) | Roghnach 3 | Neamhchinnte |
0x0005 | uint(8) | Roghnach 4 | Neamhchinnte |
Fo-fráma
Seoladh | x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | carachtar | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | -- | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . | . |
Crios | Cineál Sonraí | Ainm | Míniú |
---|---|---|---|
0x0000 | uint(16) | Id Bitmap | Sonraigh cén Bitmap a úsáidfear don Subframe seo |
0x0002 | uint(8) | Neamh-cháiliúil 1 | Tá sé neamhchinnte - áfach, tá mé ag súil go láidir go mbaineann sé le tosaíocht rindreála (Z-Layer). |
0x0003 | uint(8) | Subframe-Id | Glaonn sé ar an bhfóram sub a bhfuilimid ann |
0x0004 | sint(16) | Dícheangail - Horantúil | Sonraigh cá háit laistigh den fhráma a gcuirfear an subfhráma, nó conas go leor picteilín a chaithfear an bitmap a bhogadh go hoifigiúil. |
0x0006 | sint(16) | Offset - Duillín | Sonraigh cá háit laistigh den fhráma a gcuirfear an subframe, nó cé mhéad picteilín a bhogfaidh an bitmap go hingearach. |
Leis sin, is féidir linn anois raon aonair, chomh maith le heachtraí iomlána a chur le chéile, anseo mar shampla ar an animíocht níos casta, an animíocht le hiontráil 500, a thaispeáint.
Animíocht 500
Leagann an t-ainmniú 500 conas a dhéantar leagan amach ar Thionól Plymouth atá luchtaithe le hór a ghnóthach. Is é seo laige amháin de na h-ainmniúcháin a úsáideann an feidhmiúlacht Windowing.
Agus mar sin is féidir an t-ainmniú iomlán a chur le chéile.
Ar an drochuair tá fadhb amháin fós leis an úrlár uachtarach,
ó tá an bit cuí sa t-eolas cineál grafach neamhshocraithe.
Seo roinnt spraoianna álainn a bhfuil an-álainn ag an ainmniú as an gcluiche:
Comhoibriú Úsáideora
Anseo tá an t-úinéir-idirghníomhú atá ag teastáil don chluiche, atá coimeádta i stíl miotal brúite.
Ach tá sé soiléir anseo nach raibh ar Dynamix an roth a ath-innealtóireacht; ní úsáidtear ach na APIs User32 agus GDI32 a chuir Windows ar fáil - go háirithe, úsáidtear bainistíocht acmhainní User32 freisin.
Is féidir iad a bhaint, mar shampla, tríd an gclár saor in aisce Resource Hacker a d'fhorbair Angus Johnson, nó - más rud é nach bhfuil suim agat Wine a úsáid ar Linux / Mac OS - le cabhair ón wrestool atá san icoutils.
Seoladh comhoibrithe | Ábhar |
---|---|
Outpost2.exe | Áiríonn sé ach an t-icón de chluiche, a thaispeánann an stáisiún spáis os comhair New Terra |
op2shres.dll | Áiríonn sé, seachas grafaicí do na comhoibrithe cosúil le teorainneacha, cnaipí, cnaipí raidió agus seiceanna, freisin cúlraí comhrá, íomhánna comhoibrithe do na téacsanna misean scéil agus grafaicí cúlra don phríomh-mhéara |
out2res.dll | Áiríonn sé an maisiúchán fhuinneog in-game, icónna do mhiotal gnáth agus speisialta, an scáileán luchtaithe, grafaicí do chomhrá, chomh maith le grafaicí cursor eile, i gcónra na gcluichí |