{"schemaVersion":1,"record":{"key":"mechanic/keyboard--family-movement","type":"mechanic","id":"keyboard--family-movement","lang":"en","title":"Directions and continuous control","summary":"Directional keys maintain movement while held. The game defines speed, acceleration and how opposing directions interact.","updatedAt":"2026-10-22","status":"active","url":"https://gamemechanics.pro/en/knowledge/mechanic/keyboard--family-movement/","jsonUrl":"https://gamemechanics.pro/api/v1/knowledge/en/mechanic/keyboard--family-movement.json","markdownUrl":"https://gamemechanics.pro/content/knowledge/en/mechanic/keyboard--family-movement.md","aliases":[],"tags":["Physical keyboard interactions","Mapping signals to actions"],"sourceIds":["source-b04ab56260801e8c"],"sources":[{"id":"source-b04ab56260801e8c","title":"Celeste","url":"https://www.celestegame.com/","verifiedAt":null}],"sections":[{"id":"principle","title":"How it works","body":"Discrete keys can control position, speed and multiple axes."},{"id":"variants","title":"Variants","body":"### Variants and applications\n\n<a id=\"family-movement-variants\"></a>\n\n- Step in direction. Action: Each press moves the object one position. Application: Step-by-step movement, puzzle on a grid, moving the cursor between cells. Conditions: Holding can include repetition according to a separate rule. Equipment: Regular keyboard. <a id=\"variant-k041\"></a>\n- Continuous movement. Action: Holding a direction sets the speed of movement. Application: Platformer, camera movement, tool carriage control. Conditions: Speed ​​should depend on the simulation time. Equipment: Regular keyboard. <a id=\"variant-k042\"></a>\n- Two axes and diagonals. Action: Simultaneous directions form a vector on the plane. Application: Moving from above, flying, panning the map. Conditions: Decide whether the speed is normalized along the diagonal. Equipment: Regular keyboard. <a id=\"variant-k043\"></a>\n- Separate movement and aiming. Action: Two groups of keys set independent directions. Application: Twin-stick circuit on the keyboard, control of the robot's body and gaze. Conditions: The number of simultaneous keys can exceed the capabilities of some devices. Equipment: Regular keyboard. <a id=\"variant-k044\"></a>\n- Relative control. Action: The keys change the rotation and movement relative to the current course. Application: Tank, car, ship, moving an object in local coordinates. Conditions: The spatial model must be understandable by feedback. Equipment: A regular keyboard. <a id=\"variant-k045\"></a>\n- Acceleration and braking. Action: Holding gradually increases the value, releasing or another key decreases it. Application: Inertial transport, soft camera movement, continuous axis synthesis. Conditions: The resulting analog effect is calculated in software. Equipment: Ordinary keyboard. <a id=\"variant-k046\"></a>\n- Selecting a direction from a sector. Action: Key combination directly selects one of discrete angles. Application: Eight attack directions, radial menu, shield orientation. Conditions: This is a final direction selection, not movement integration. Equipment: Regular keyboard. <a id=\"variant-k047\"></a>\n- Allowing opposite directions. Action: When two keys are opposite, the chosen rule applies: neutral, first or last. Application: Course switching, balancing, designing predictable controls. Conditions: The policy should be the same in training, playing and recording replays. Equipment: Regular keyboard. <a id=\"variant-k048\"></a>"},{"id":"context","title":"Context and limits","body":"Author's working classification for designing games and interactions. Options can overlap and combine; the list is not a generally accepted standard or proven exhaustive list. Application examples are conditional unless a specific verifiable observation is indicated nearby. Sources support individual techniques and technical limitations."}],"relations":[],"placements":[{"catalogId":"keyboard","id":"family-movement","title":"Physical keyboard interactions","url":"https://gamemechanics.pro/en/mechanics/keyboard/#family-movement","categoryIds":["section-2"]}],"supersededBy":[],"attributes":{"preview":{"updatedAt":"2026-10-22","title":"Directions and continuous control","description":"Directional keys maintain movement while held. The game defines speed, acceleration and how opposing directions interact.","image":{"src":"images/mechanics/celeste-air-movement.webp","width":1440,"height":810,"crop":{"x":300,"y":0,"width":1125,"height":810},"game":"Celeste","sourceUrl":"https://www.celestegame.com/","originalUrl":"https://www.celestegame.com/images/screenshots/02.png","credit":"Maddy Makes Games / Extremely OK Games","rights":"© Maddy Makes Games / Extremely OK Games. All rights reserved.","caption":"Moving between spikes","alt":"Celeste: Madeline in the air, spikes on platforms and a safe surface to the right.","markers":[{"x":41.5,"y":10,"label":"The character adjusts movement in the air"},{"x":84,"y":50,"label":"A safe surface among spikes"}]},"tips":["Define diagonals and simultaneous opposing directions explicitly."],"examples":[{"title":"Celeste","url":"https://www.celestegame.com/"}]}},"endsAt":null,"provenance":"Original editorial design catalog consolidated from project discussions on 2026-10-20. Complete discussion item lists and contextual limitations are preserved; linked primary sources support specific techniques, not the entire classification. English translation was prepared with machine assistance and editorial review.","license":"CC-BY-4.0","codeLicense":"MIT","attribution":"gamemechanics.pro contributors","catalogKey":"catalog/keyboard"}}