input-design · git:20260912.a22b95e · 2026-09-12 · sha256 1acf0b93c5e148d0
input-design git:20260912.a22b95eA
Immutable. This exact content never changes and is served at /api/v1/blob/1acf0b93c5e148d0.
--- name: input-design description: Button grammar. Tap is commitment, hold is charge or aim, context face-button is the looked-at object. Ask few-buttons-context vs orthogonal-fight vs hotbar-abilities. Buffer windows belong to action-feel. --- # Input design Ask the column: | Column | Grammar | |---|---| | few-buttons-context | one face button reads the world | | orthogonal-fight | each attack button is a distinct move class | | hotbar-abilities | bar slots, queue or GCD lives in action-feel | ## Rules 1. Tap = commit. Hold = charge or aim. Release can fire. 2. Jump and confirm are not the same key on a 3D climber. 3. The same key must not be Confirm and Cancel. 4. Publish a context priority list if you use a context button (interact > grab > talk > mount > none). 5. Buffer length and cancel graphs live in action-feel, not here. 6. Rebind must preserve the grammar, not just the labels. ## Accept - A new player can say what tap vs hold does after one minute - Context button never attacks - Fight column buttons do not change meaning when a crate is nearby