attack-tell · diff
git:20260912.2dbd4ed to git:20260913.74cd25b
17 added, 23 removed. Audit A to A.
---
name: attack-tell
- description: >
- Readable startup. Use when a swipe kills with no pose, when a red flash
- replaces animation, or when juice is the only warning. Stacks on
- enemy-kit and hitstun-recover.
+ description: Use when an attack, grab, area hazard, projectile, or one-shot-capable action becomes active before players receive a readable and accessible warning through the intended sensory channels.
---
- # Attack tell
+ # Attack Tell
- Ask the column.
+ This skill owns the **warning contract before logical activation**. `enemy-kit-balance` owns move balance; `action-feel` owns logical move timing; `camera-shots`/lock systems own framing.
- | Column | What the player sees |
+ ## Modes
+
+ | Mode | Primary warning channel |
|---|---|
- | pose-only | windup silhouette is enough |
- | pose-audio | pose + one locked sound |
- | marked-aoe | floor / beam mark before active |
- | color-flash | extra flash — never the only channel |
+ | pose-only | silhouette/pose change |
+ | pose-audio | pose plus authored sound cue |
+ | marked-aoe | spatial floor/beam/volume mark before activation |
+ | color-flash | color flash only as an additional channel |
- One-shot and grab tells default to marked-aoe or pose-audio. Pokes may be pose-only.
+ The mode is project data. Do not assign universal warning modes by attack class.
- ## Clock
+ ## Timing contract
- Tell frames = startup on the move row. The tell must be on screen before active.
- A flash that starts on the same frame as the hitbox is not a tell.
- Juice-vfx may accent the tell. It may not *be* the tell.
+ Publish `tell_start_tick` and `activation_tick` (or equivalent logical events). The warning must begin before the harmful/grab/activation event by the authored interval. Presentation interpolation may smooth the tell but cannot move logical activation earlier.
- ## Iron rules
+ Channels are explicit: pose/motion, spatial mark, audio, haptic, text/icon, color. Accessibility settings may suppress some channels, so critical warnings need the project's required redundant channel policy. Color alone should not be the only mandatory channel when color accessibility requires another cue.
- - Color-safe: shape + audio, not red-only (a11y-controls).
- - Camera must keep the tell in frame (camera-shots / lock-on). Off-screen one-shots are a camera bug.
- - Player and enemy use the same rule: if the player has a 4f jab with no pose, enemies do not get a 4f wipe.
- - Training-mode can freeze on the last startup frame.
+ Off-screen policy is project-specific: camera reframing, edge indicator, audio cue, attack suppression, spawn policy or intentional unseen threat can all be valid when authored and tested.
- ## Accept
+ ## Acceptance
- A first death to that move, the player can point at the pose that meant "move". Sound off still reads marked-aoe.
+ Log tell start, activation and channel availability for representative attacks. Test immediately-before/at activation boundaries, sound-disabled and reduced-flash/color-accessibility settings, plus off-screen conditions supported by the project. A VFX flash that begins on the activation tick is accent, not evidence of an earlier tell.