ANIM32.RES FRML #50
Hypothesis: render-derived action/death split
action [0-19]
Every FRML animation-frame resource from ANIM32.RES, ANIS32.RES and
INTFM32.RES, decoded by the same src/assets/formats/frml.ts code path
Spirit of Excalibur’s type-0x05 FRMLs use. All 101 resources decode — see
docs/conan/amiga/engine.md § “FRML Format” for the two generalized decoder
fixes (a PackBits/LZSS tie-break, and a bounded depth search) that closed the
last 14 of them.
Conan has no confirmed per-character recolor mechanism the way War in
Middle Earth’s FRMLs do (no remap tables or color-permutation code survive in
either disassembly — see docs/conan/amiga/engine.md § “Color Remapping”),
so there’s no FrmlCharacterGallery-style “known characters, correctly
recolored” view here. What is shown for every resource is its real rendered
frame sheet, plus a raw indexed debug view (palette index in the red
channel) — and, for each one, this project’s best current answer to “which
frames are which named animation.”
The FRML container itself carries no idle/walk/attack/death metadata — just
{x, y, width, height} per frame. This project found exactly one avenue for
recovering that split with code-level confidence, and it only reaches
23 of the 101 resources:
ANIS32.RES ids are cross-referenced by SCENES.RES’s own decoded
SCEN objects as scene-decoration sprites (torches, fire, a dripping
chain) — never as combat sprites. These are labelled confidence: 'confirmed' below: a single repeating clip, not a multi-pose animation.ANIS32.RES #55–89 and
ANIM32.RES — have no code-level frame-range table in either the Amiga
or DOS executable (four distinct search approaches came up short — direct
id-immediate scans, tracing the scene-FRML renderer itself, a whole-file
data-table census, and following the combatMoveNames string table’s own
cross-references; see docs/conan/amiga/engine.md § “Paths tried for a
code-level frame-range table” for why each one structurally couldn’t
answer this). Instead, a render-derived geometric heuristic
(classifyConanFrmlAnimations()) proposes an action → death split
wherever a resource’s trailing 1–2 frames are both much shorter and about
as wide as the rest — the visual signature of a standing figure collapsing
to the ground. This is explicitly labelled confidence: 'hypothesis'
everywhere it fires (marked in italic below), including two known false
negatives the render evidence itself catches (see the doc section above
for the specifics — a reclining pose that doesn’t quite reach the height
cutoff, and a colour-dissolve death animation no width/height rule could
ever detect). This is genuinely open — see docs/conan/TODO.md, item
conan-frml-combat-animation-ranges.Hypothesis: render-derived action/death split
action [0-19]
Hypothesis: render-derived action/death split
action [0-8]
Hypothesis: render-derived action/death split
action [0-11]
Hypothesis: render-derived action/death split
action [0-11]
Hypothesis: render-derived action/death split
action [0-11]
Hypothesis: render-derived action/death split
action [0-11]
Hypothesis: render-derived action/death split
action [0-6]
Hypothesis: render-derived action/death split
action [0-1]
Hypothesis: render-derived action/death split
action [0-0] · death [1-1]
Hypothesis: render-derived action/death split
action [0-8]
Hypothesis: render-derived action/death split
action [0-2] · death [3-3]
Hypothesis: render-derived action/death split
action [0-11]
Hypothesis: render-derived action/death split
action [0-11]
Hypothesis: render-derived action/death split
action [0-20]
Hypothesis: render-derived action/death split
action [0-8]
Hypothesis: render-derived action/death split
action [0-8] · death [9-9]
Hypothesis: render-derived action/death split
action [0-5]
Hypothesis: render-derived action/death split
action [0-5] · death [6-6]
Hypothesis: render-derived action/death split
action [0-4] · death [5-6]
Hypothesis: render-derived action/death split
action [0-3]
Hypothesis: render-derived action/death split
action [0-5] · death [6-6]
Hypothesis: render-derived action/death split
action [0-4]
Hypothesis: render-derived action/death split
action [0-8]
Hypothesis: render-derived action/death split
action [0-8] · death [9-9]
Hypothesis: render-derived action/death split
action [0-1]
Hypothesis: render-derived action/death split
action [0-4]
Hypothesis: render-derived action/death split
action [0-5] · death [6-6]
Hypothesis: render-derived action/death split
action [0-8]
Hypothesis: render-derived action/death split
action [0-7]
Hypothesis: render-derived action/death split
action [0-9] · death [10-10]
Hypothesis: render-derived action/death split
action [0-6]
Hypothesis: render-derived action/death split
action [0-8]
Hypothesis: render-derived action/death split
action [0-7]
Hypothesis: render-derived action/death split
action [0-5]
Hypothesis: render-derived action/death split
action [0-7]
Single-frame pose
pose [0-0]
Single-frame pose
pose [0-0]
Hypothesis: render-derived action/death split
action [0-2]
Hypothesis: render-derived action/death split
action [0-8]
Hypothesis: render-derived action/death split
action [0-6]
Hypothesis: render-derived action/death split
action [0-0] · death [1-2]
Hypothesis: render-derived action/death split
action [0-4]
Hypothesis: render-derived action/death split
action [0-7]
Hypothesis: render-derived action/death split
action [0-5]
Hypothesis: render-derived action/death split
action [0-2]
Hypothesis: render-derived action/death split
action [0-4]
Hypothesis: render-derived action/death split
action [0-0] · death [1-1]
Hypothesis: render-derived action/death split
action [0-0] · death [1-1]
Hypothesis: render-derived action/death split
action [0-1]
Hypothesis: render-derived action/death split
action [0-4]
Confirmed: single-clip scene decoration (SCEN cross-reference)
loop [0-1]
Confirmed: single-clip scene decoration (SCEN cross-reference)
loop [0-2]
Confirmed: single-clip scene decoration (SCEN cross-reference)
loop [0-1]
Single-frame pose
pose [0-0]
Confirmed: single-clip scene decoration (SCEN cross-reference)
loop [0-2]
Confirmed: single-clip scene decoration (SCEN cross-reference)
loop [0-2]
Hypothesis: render-derived action/death split
action [0-1]
Hypothesis: render-derived action/death split
action [0-2]
Hypothesis: render-derived action/death split
action [0-1]
Confirmed: single-clip scene decoration (SCEN cross-reference)
loop [0-1]
Confirmed: single-clip scene decoration (SCEN cross-reference)
loop [0-1]
Confirmed: single-clip scene decoration (SCEN cross-reference)
loop [0-1]
Hypothesis: render-derived action/death split
action [0-2]
Confirmed: single-clip scene decoration (SCEN cross-reference)
loop [0-1]
Hypothesis: render-derived action/death split
action [0-1]
Confirmed: single-clip scene decoration (SCEN cross-reference)
loop [0-1]
Confirmed: single-clip scene decoration (SCEN cross-reference)
loop [0-1]
Hypothesis: render-derived action/death split
action [0-1]
Hypothesis: render-derived action/death split
action [0-1]
Confirmed: single-clip scene decoration (SCEN cross-reference)
loop [0-1]
Confirmed: single-clip scene decoration (SCEN cross-reference)
loop [0-1]
Hypothesis: render-derived action/death split
action [0-1]
Confirmed: single-clip scene decoration (SCEN cross-reference)
loop [0-1]
Confirmed: single-clip scene decoration (SCEN cross-reference)
loop [0-1]
Hypothesis: render-derived action/death split
action [0-3]
Hypothesis: render-derived action/death split
action [0-1]
Hypothesis: render-derived action/death split
action [0-3]
Hypothesis: render-derived action/death split
action [0-2]
Confirmed: single-clip scene decoration (SCEN cross-reference)
loop [0-3]
Confirmed: single-clip scene decoration (SCEN cross-reference)
loop [0-0]
Hypothesis: render-derived action/death split
action [0-1]
Confirmed: single-clip scene decoration (SCEN cross-reference)
loop [0-1]
Confirmed: single-clip scene decoration (SCEN cross-reference)
loop [0-0]
Confirmed: single-clip scene decoration (SCEN cross-reference)
loop [0-5]
Hypothesis: render-derived action/death split
action [0-3] · death [4-4]
Hypothesis: render-derived action/death split
action [0-2]
Confirmed: single-clip scene decoration (SCEN cross-reference)
loop [0-0]
Hypothesis: render-derived action/death split
action [0-2]
Confirmed: single-clip scene decoration (SCEN cross-reference)
loop [0-2]
Confirmed: single-clip scene decoration (SCEN cross-reference)
loop [0-3]
Hypothesis: render-derived action/death split
action [0-3]
Hypothesis: render-derived action/death split
action [0-3]
Hypothesis: render-derived action/death split
action [0-3]
Hypothesis: render-derived action/death split
action [0-2]
Hypothesis: render-derived action/death split
action [0-2]
Single-frame pose
pose [0-0]
Single-frame pose
pose [0-0]
Single-frame pose
pose [0-0]
Single-frame pose
pose [0-0]
Single-frame pose
pose [0-0]
Single-frame pose
pose [0-0]