COB-exact: timeline 1:1 from armplat.cob (activatescr/deactivatescr, disassembled with _cob_dis.py). StateChg staged-deploy family: 6 open stages, then the compiled close order — not a reversed activate. Fire/hit/death/smoke scripts are engine-driven or firing-only and not part of this loop.
Animation

PNG frames

Frame 0 / 1060.00 s
COB timeline (ARMPLAT.COB)
- 0.00–0.40 s — Closed rest pose (3DO zero point)
- 0.40–1.16 s — activatescr stage 1: platform y-move 0.00 elmo→11.65 elmo
- 1.16–1.55 s — activatescr stage 2: door1 z-turn 0.0°→-90.0°, door2 z-turn 0.0°→90.0°
- 1.55–1.94 s — activatescr stage 3: door1 y-move 0.00 elmo→-7.40 elmo, door2 y-move 0.00 elmo→-7.30 elmo
- 1.94–2.33 s — activatescr stage 4: plate1 y-move 0.00 elmo→10.00 elmo, plate2 y-move 0.00 elmo→10.00 elmo
- 2.33–2.72 s — activatescr stage 5: nano2 y-move 0.00 elmo→5.60 elmo, nano1 y-move 0.00 elmo→5.60 elmo
- 2.72–3.53 s — activatescr stage 6: nano2 z-turn 0.0°→115.3°, nano1 z-turn 0.0°→-115.3°
- 4.73–5.20 s — deactivatescr stage 1: nano2 z-turn 115.3°→0.0°, nano1 z-turn -115.3°→0.0°
- 5.20–5.67 s — deactivatescr stage 2: nano2 y-move 5.60 elmo→0.00 elmo, nano1 y-move 5.60 elmo→0.00 elmo
- 5.67–6.14 s — deactivatescr stage 3: plate1 y-move 10.00 elmo→0.00 elmo, plate2 y-move 10.00 elmo→0.00 elmo
- 6.14–6.62 s — deactivatescr stage 4: door1 y-move -7.40 elmo→0.00 elmo, door2 y-move -7.30 elmo→0.00 elmo
- 6.62–7.09 s — deactivatescr stage 5: door1 z-turn -90.0°→0.0°, door2 z-turn 90.0°→0.0°
- 7.09–7.89 s — deactivatescr stage 6: platform y-move 11.65 elmo→0.00 elmo
- 7.89–8.49 s — closed again — loop restarts (fire/hit/death scripts are engine-driven, not in this loop)
Every stage duration equals its COB sleep exactly; values are raw COB units (turns: BAM 65536 = 360°, moves: elmo × 163840). Renderer conversions follow the proven family conventions (_cob_anim.py).