GrimE/Research on EFMI

From ScummVM :: Wiki
< GrimE
Revision as of 18:29, 12 October 2020 by MetaFox (talk | contribs) (add page for ResidualVM merge)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

What we know is different

EFMI uses different Lua-functions, that Grim doesn't, it also has a few differencies in file formats:

  • Grim has BMs for backgrounds, EFMI has .tiles
  • Grim has cleartext .cos and .set, EFMI has binary .cosb and .setb
  • Grim uses SMUSH, EFMI uses BINK/MPEG2
  • Grim has LAB, EFMI has M4B (but those are rather similar)

Solved

LIP files

LIP files in both versions have an extra "animation number" 0x0000.

SPR files

SPR files seem to contain all the parameters required to draw: tex coordinates, polygon coordinates, glColor4ub parameters, ...

TIL files

Grim had separate Z-buffer bitmaps that mark some parts of the background as overlay and some as underlay. EFMI has TIL files, that contain 6 256x256 bitmaps + some extra bits. A TIL file also has a number of layers, with the last one being the entire background. It looks like sortorders map to the different layers in the TIL file, so given a file with 5 layers:

  • the background is sortorder 40
  • the layers before it are drawn at 30, 20, 10, 0.

Some sectors modify the sortorder of actors in them.

TinyGL

  • Does not support full transparency, only "visible" or "not visible".

Somaen's Retail Playthrough (Dec 2013)

  • New game crashes if you use it after already starting a game.
  • Load screen has garbage from previous frame.
  • Text isn't placed correctly when actors talk (missing feature)
  • Set changes sometimes show a different set for a split second.
  • Intro
    • Intro has upside down fade-outs
    • Intro fade-outs are not transparent
  • Act 0 (wed):
    • Coal is bouncing around like crazy when kicked.
    • The fuse isn't actually burned.
    • The brazier is drawn partially on top of the coals after tipping it.
    • Guybrush' chain is rotated wrong.
    • The ship behind is drawn a bit wrongly.
  • Act 1 (Melee Island)
    • Elaine passes through Guybrush when exiting. (intro, gme)
    • When picking up the popped inner tube, it's transparent, and placed in Guybrush' stomach.
    • Talking to the dart players can get stuck. (Not repeated yet).
    • Guybrush is visible on the wrong side of the door of the SCUMM bar just after closing it when leaving.
    • Catapult keeps firing after shooting at the cactus.
    • Elaine stands inside the table in the mansion when guybrush is picking up the cushy government contract.
    • When Elaine hands over the Gubernatorial symbol, the item is rotated weirdly.
    • When giving the contract to Carla and Otis, it is drawn behind the building as Carla moves it. (it's also completely rolled out when handed over).
    • The insult arm wrestling grip is at times wrong (Guybrush arm doesn't connect to Mr Cheese's)
    • Only half of the dainty lady is drawn. (The rest is transparent).
  • Act 1 (Lucre Island)
    • Guybrush is in Jesus-mode.
    • The cane breaking in the bank looks wrong.
    • Reading the letter, it's just sped through.
    • Guybrush is behind the pillar in the chess-player set.
    • Freddie in the house of sticks is rendered completely broken
    • File retrieval system controls rotates the wrong way around (compared to the arm movement)
    • File retrieval system isn't smooth.
    • Swamp directions are drawn without background and thus hard to read.
    • The chess players don't turn around when annoyed.
    • The raft stick is moved above Guybrush's head.
    • The random set switching managed to trigger the time paradox before reaching the gate.