Cancellation and Readability
Cancellation and Readability
Cancel actions
Cancelling is itself an action with its own PER cycle - not a special-case mechanic. There will be multiple actions that implement cancels:
Each cancel implementation is its own action with its own prep/exec/recover parameters and its own readability profile. Whether a cancel from a reaction or another action actually lands is subject to the target action's interruptibility (see Resolution). The one action state machine applies to cancels too.
Cancellation policy
Two windows, both in force:
- Boundary cancel (primary): cancels allowed at the prep-to-exec boundary, never between exec and recover. Cheap but never free - even a minimal PER cycle, because a free cancel means commitment means nothing.
- Deep-prep cancel (fallback): cancelling mid-prep is allowed but costs scale with invested prep:
cancel_time = min_cancel + invested_prep * factorA minimum cancel time prevents instant-cancels whenever an interrupt appears.
Readability - the public/private state layer
Every actor's phase state has two layers:
- Public: what the world observes (and the UI shows).
- Private: what is actually happening in the sim.
Feats and abilities modify the broadcast, not the sim:
- Fake a cancel (broadcast "recovering", actually still prepping).
- Pretend to continue an action while actually cancelling.
- Read others' cancels more accurately (requires Lore/Int investment).
Cancelling must telegraph (the flinch): hands relax, grip shifts. Else cancel-spam has no counterplay. An experienced enemy reads the flinch and punishes it; a wolf does not.
This is also where the game's knowledge system lives: what you and the monsters can read about each other's intentions is a stat, not a given.