Game guide · source of truth
Production

Showcase & Feel Lab

A playable previz of Zoen combat feel in Babylon.js — the same engine the game will use. Placeholder mannequin and monsters; real timing contracts, reaction rule, hitstop, shake, VFX layers and damage numbers. Recorded 5–10 s clips below.

Feel Lab (interactive)

Loading…

Recorded clips (5–10 s)

Mouse1 chain — Warblade build

One press per skill: Horizon Cleave → Crescent Wave → Iron Riposte (guard, negate, counter) → Sunbreaker launches the pack → the finisher Zenith Cut fires because targets are airborne; basic hits fill the gaps while the slots cool down.

Feel OFF vs Feel ON

Identical inputs and identical server outcome. Left half: no feel layer. Right half: hitstop, shake, flash, sparks and numbers.

Finisher in the Mouse1 chain

Zenith Cut (Warblade finisher) is pressed with no opening: nothing happens and no cooldown is spent. Sunbreaker launches the pack; the very next Mouse1 press fires Zenith Cut on the launched target. After a reset the chain skips the finisher.

Signature: Sunbreaker

Two slashes, a leap and a massive solar burst (chain slot 4 / X). The burst launches normal monsters; the next Mouse1 press fires the finisher on the airborne targets.

Crescent Wave · Reed Rush · Sunfall Thrust

A piercing sword wave, a 6 m movement-gem dash, and a lunge that knocks back along the line.

Same rule, different reactions

The same hits on a small dummy, a medium beetle and a large tortoise: impact − weight picks flinch / stagger / knockback / launch. The large target is never launched.

Ultra: Sunbreaker

The same signature on the Ultra tier: blade glint on the windup, flying debris, a scorched crater, a dust ring, a screen shockwave with colour split, an impact frame, camera kick and a short screen vibrate. Damage and timing are identical to High.

What this is (and is not)

  • Is: a timing and feel prototype. Skill timings come from skills.json and weapons.json, reactions from the rule in combat-states.json, and the feel stack follows Combat. Hitstop is local (attacker + target), never a global time scale.
  • Is not: final art or animation. The mannequin is procedural previz. Production follows the Animation, VFX and Audio pipelines and the one-skill gate.
  • How clips are made: Playwright opens /showcase/capture?demo=… at 1280×720, steps the simulation deterministically at 60 Hz, screenshots 30 fps frames, and Blender's bundled FFmpeg encodes MP4 (tools/blender/encode_frames.py). The process is reproducible and logged.