Animasjonen · bei.pm

Publisert den 19.11.2015·Oppdatert den 13. 02. 2025·Norsk (Nynorsk)
Denne teksten vart automatisert omsett av OpenAI GPT-4o Mini.

Filformatene som er beskrevet på denne siden, er basert på teknisk analyse av åndsverk frå Dynamix, Inc. og Sierra Entertainment.
Åndsverka er i dag ein del av Activision Publishing, Inc.- / Activision Blizzard, Inc.-massen og er for tida eid av Microsoft Corp..

Informasjonen er samla inn gjennom Reverse Engineering og dataanalyse med det formål å arkivere og oppnå interoperabilitet med historiske data.
Ingen proprietære eller konfidensielle spesifikasjoner har blitt brukt.

Spelet kan no kjøpast som nedlasting på gog.com.

no kjem vi til kongeklassen av disiplinar innan Outpost 2 dataformata:
Animasjonane.

Animationslistene blir innleidd med ein global header, som primært er til for dataverifikasjon. Deretter følgjer dei konkrete animasjonsdefinisjonane, som er delt inn i 3 nivå:

  1. Animajon
    Ein animasjon er den øvste instansen; ho representerer animasjonen av ein eining, ein bygning eller ein 'partikkel-animasjon' (kometnedslag, vêr, eksplosjon) i ein bestemt utgangspunkt.
  2. Frame
    Ein frame er eit enkelt bilete innanfor ei animasjon. Ei animasjon kan innehalde ein eller fleire frames.
  3. Subframe
    Ein subframe er informasjon om at ei bestemt bitmap skal teiknast på ein bestemt posisjon i eit frame under bestemte kriterium. Eit frame kan innehalde ein eller fleire subframes.

Deretter følgjer dei enkelte animasjonsdefinisjonane direkte.

Adr x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF teikn
0x0000 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- . . . . . . . . . . . . . . . .
Offset Datatype Betegnelse Forklaring
0x0000 uint(32) Antall animasjonar

Kor mange animasjonsdatasett er til stades

0x0004 uint(32) Antall rammer

Kor mange rammer skal vere til stades totalt

0x0008 uint(32) Antall subrammer

Korleis mange subrammer bør det totalt vere

0x000c uint(32) Antall valgfrie oppføringar

Kor mange "valfrie oppføringar" finst.

Animasjon

Adr x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF teikn
0x0000 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- . . . . . . . . . . . . . . . .
0x0010 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- . . . . . . . . . . . . . . . .
0x0020 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- . . . . . . . . . . . . . . . .
Offset Datatype Betegnelse Forklaring
0x0000 uint(32) Ukjent 1

Ukjente opplysningar

0x0004 uint(32) Avgrensingsboks: Venstre

Angir venstre start (i pikslar) av Bounding Box.

0x0008 uint(32) Avgrensingsboks: Oppe

Gjev den øvste starten (i pikslar) av Bounding Box.

0x000c uint(32) Avgrensingsboks: Breidde

Oppgjev breidda (i pikslar) til Bounding Box.

0x0010 uint(32) Avgrensingsboks: Høgde

Oppgjev høgda (i pikslar) til Bounding Box.

0x0014 uint(32) Offset: X

Angir den horisontale midtpunktet for animasjonen

0x0018 uint(32) Offset: Y

Gir den vertikale midtpunktet av animasjonen

0x001c uint(32) Ukjent 2

Ukjende opplysningar

0x0020 uint(32) Antall rammer

Angir kor mange animasjonsrammer som er inne i denne animasjonen

0x0024 uint(32) Antall vindauge

Angir kor mange vindauge som skal brukast ved teikning

Dataene til det øvste laget, animasjonen, er først og fremst forvaltningsdata - Boundingbox refererer til koordinatane til merkedomenet rundt kjøretøyet/bygningen, når det er valt, og indikerer også samtidig kva område som skal være klikkbart.

Offsetet bestemmer først og fremst "nullpunktet"; punktet som skal leggjast til eller trekkast frå spelintern koordinatar. Man kan også seie matematisk at offsetet her refererer til koordinatorigins.

Vindauga består, akkurat som offsetet, av 4 uint(32)-verdier per vindauge, som angir eit område som er brukbart for enkelt subrammer. Utenfor vindauga skal det, så lenge det er tiltenkt for bitmapen, ikkje teiknast.

Ramme

Adr x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF teikn
0x0000 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- . . . . . . . . . . . . . . . .
Offset Datatype Betegnelse Forklaring
0x0000 uint(8) Subframe-tal og toggle for Valgfri 1, 2

Denne verdien inneheld:

  • 0x7F (Bitmaske): Talet på subrammar som vert brukt i denne ramma
  • 0x80: Informasjonen om hendinga av Valfri 1 og 2
0x0001 uint(8) Ukjent 1 og Toggle for Valgfri 3, 4

Denne verdien inneheld:

  • 0x7F (Bitmaske): Ukjent - Eg mistenker sterkt at dette handlar om talet på gameticks som går til neste ramme blir vist
  • 0x80: Informasjon om hendinga av Valgfri 3 og 4
0x0002 uint(8) Valgfri 1

Ukjent

0x0003 uint(8) Valgfri 2

Ukjent

0x0004 uint(8) Valfritt 3

Ukjent

0x0005 uint(8) Valgfritt 4

Ukjent

Underramme

Adr x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF teikn
0x0000 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- . . . . . . . . . . . . . . . .
Offset Datatype Betegnelse Forklaring
0x0000 uint(16) Bitmap-ID

Angir kva bitmap som skal nyttast for denne subrammen

0x0002 uint(8) Ukjent 1

Er ukjend - eg mistenker likevel sterkt at dette handlar om ein render-prioritet (Z-lag).

0x0003 uint(8) Subramme-ID

Angir kva for ein subramme vi er i

0x0004 sint(16) Offset - Horisontal

Angir kvar innanfor ramma subramma skal plasserast, eller kor mange pikslar bitmapen skal flyttast horisontalt.

0x0006 sint(16) Offset - Vertikalt

Angir kvar innan ramma subramma skal plasserast, eller kor mange pikslar bitmapen skal flyttast vertikalt.

Med dette kan vi no sette saman enkeltbilde og heile animasjonar i samsvar, her demonstrert med eit meir komplisert eksempel, animasjonen med indeks 500.

Animasjon 500

Animasjon 500 viser korleis ein Plymouth-transportar, lasta med vanleg malm, blir lossa. Dette er ein av dei få animasjonane som nyttar vindusfunksjonaliteten.

Og slik kan heile animasjonen setjast saman.
Dessverre er det eit problem med den øvste lasteluka, sidan det aktuelle bitet i grafikktypa-informasjonen ikkje er sett.

Her er nokre fleire, vakkert animerte sprites frå spelet:

Rendering av animasjon 500 illustrert

Animasjon 500 ferdig samansett

Plymouth Byggefabrikk

Eden Romhavn

Eden Medisinsk Senter

SCAT

Plymouth Romhavn

Påskeegg:
Julenisse

Påskeegg:
Dans Hund