COB-exact: timeline 1:1 from cormship.cob (activatescr/deactivatescr, disassembled with _cob_dis.py). StateChg staged-deploy family: 5 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 / 1030.00 s
COB timeline (CORMSHIP.COB)
- 0.00–0.40 s — Closed rest pose (3DO zero point)
- 0.40–0.77 s — activatescr stage 1: door2b y-move 0.00 elmo→-0.20 elmo, door2b z-move 0.00 elmo→3.60 elmo, door1b y-move 0.00 elmo→-0.20 elmo, door1b z-move 0.00 elmo→-3.70 elmo
- 0.77–1.24 s — activatescr stage 2: door1a y-move 0.00 elmo→-0.20 elmo, door1a z-move 0.00 elmo→-4.30 elmo, door2a y-move 0.00 elmo→-0.20 elmo, door2a z-move 0.00 elmo→3.95 elmo
- 1.24–2.26 s — activatescr stage 3: platform y-move 0.00 elmo→4.65 elmo
- 2.26–2.83 s — activatescr stage 5: stand y-move 0.00 elmo→4.40 elmo
- 2.83–3.43 s — activatescr stage 6: hamper x-turn 0.0°→-90.0°
- 4.63–5.19 s — deactivatescr stage 1: hamper x-turn -90.0°→0.0°
- 5.19–5.75 s — deactivatescr stage 2: stand y-move 4.40 elmo→0.00 elmo
- 5.75–6.51 s — deactivatescr stage 3: platform y-move 4.65 elmo→0.00 elmo
- 6.51–7.09 s — deactivatescr stage 4: door1a y-move -0.20 elmo→0.00 elmo, door1a z-move -4.30 elmo→0.00 elmo, door2a y-move -0.20 elmo→0.00 elmo, door2a z-move 3.95 elmo→0.00 elmo
- 7.09–7.64 s — deactivatescr stage 5: door2b y-move -0.20 elmo→0.00 elmo, door2b z-move 3.60 elmo→0.00 elmo, door1b y-move -0.20 elmo→0.00 elmo, door1b z-move -3.70 elmo→0.00 elmo
- 7.64–8.24 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).