Skip to content

Characters & Mobs

Every FRML animation-frame resource from AAnims.res (battle scenes) and BScene.res (landscape views), decoded by src/assets/formats/frml.ts and rendered by tools/wime/build-assets.ts’s buildViewerFrmls(). Six of these 19 resources are 16-colour (4-bitplane) sprites that the original game recolors per character at render time by choosing which half of the 32-colour scene palette is active — the rest are already full 32-colour art with no runtime recoloring. See docs/wime/amiga/frml-colour-variants.md in the main repo (not part of this site) for the full, disassembly-confirmed mechanism — that document is this page’s source for every character/entity attribution below.

Every named character (or named troop type) the game recolors per-entity via the 5th-bitplane mechanism above, rendered here with its real, correct color already applied — no raw SAS index or palette-half picking needed. Generated by tools/wime/build-assets.ts’s buildFrmlCharacters(), which groups entities.json by race (selects the FRML) and spriteAnimationSet (selects the color, via the same 48-entry mode table documented above), applying the permutation with tools/wime/frml-recolor.ts.

Each card plays only its idle/walk loop — not the full mixed idle+attack+death frame range, and with no segment picker to switch away from it. That’s a deliberate choice for WIME specifically: unlike Spirit of Excalibur (where every segment boundary is confirmed by tracing a real bytecode VM), WIME’s own attack/death boundaries are a render-derived best-effort fallback rather than a code-level table (see docs/wime/amiga/frml-colour-variants.md § “Animation-frame segmentation”), so this page shows the one segment confirmed enough to be worth looking at on repeat.

Three cards — Elrond, Galadriel and Tom Bombadil — are different in kind: their race values (80/81/82) have no FRML resource at all in this game, so there’s no animation and no recolor step to apply. Each is instead a single static portrait IMAG in BScene.res whose id equals its own race value (IMAG #80/#81/#82), shown here as a one-frame “animation.” See docs/wime/amiga/frml-colour-variants.md § “race → FRML resource” for the evidence (numeric id correspondence plus a rendered visual match — a robed elf-lord, a flowing-robed elf-queen, and a hatted, dancing figure).

Also here: every other named/attributed FRML that isn’t recolored — orcs, wolves, trolls, Gollum, cavalry, Ents, spiders, Balrogs, and a few more — already full 32-colour art with one fixed render for everyone, no per-entity color step. They’re grouped with the real recolored heroes because they’re still a known, named entity with real animation frames; only the palette mechanism differs.

Other Palette Variants (unused by any named entity)

Section titled “Other Palette Variants (unused by any named entity)”

The 48-entry mode table above has far more slots than the ~20 SAS values entities.json’s 196 records actually exercise (see docs/wime/amiga/frml-colour-variants.md § “SAS → character mapping”) — up to 8 of the remaining, never-used indices per FRML (capped below index 33; see tools/wime/build-assets.ts’s buildUnusedFrmlVariants()) are shown here purely as an illustration of what else this recolor mechanism can produce. None of these combinations is claimed to appear anywhere in the shipped game — unlike every card above, which is a real, in-game recolor.

BScene.res FRML #0 — Hobbits — Frodo, Sam, Merry, Pippin, Bilbo

Mode-table indices shown: 2, 4, 6, 7, 8, 9, 10, 13.

BScene.res FRML #1 — Elves — Legolas, Celeborn, Thranduil

Mode-table indices shown: 1, 3, 5, 9, 10, 11, 12, 13.

BScene.res FRML #2 — Men — Aragorn, Boromir, Faramir, Denethor, Brand

Mode-table indices shown: 1, 2, 3, 5, 6, 7, 8, 9.

BScene.res FRML #3 — Dwarves — Gimli, Dain

Mode-table indices shown: 1, 2, 3, 7, 8, 9, 10, 11.

BScene.res FRML #4 — Wizards — Gandalf, Gandalf the White, Radagast, Saruman

Mode-table indices shown: 1, 2, 3, 7, 8, 10, 11, 12.

BScene.res FRML #8 — Wraiths — the nine Nazgûl, Sauron, wights

Mode-table indices shown: 2, 4, 6, 7, 8, 9, 10, 11.

The 6 recolorable FRML resources (BScene.res #0–#4, #8), decoded by src/assets/formats/frml.ts and rendered by tools/wime/build-assets.ts’s buildViewerFrmls(). Every real character recolor is already shown above, and the raw bitplane debug renders this section used to show turned out to add nothing a reader needs — so this is now just the reference list itself (resource id, source file, bitplane depth, frame count).