{"schemaVersion":1,"record":{"key":"mechanic/controller-input--t283","type":"mechanic","id":"controller-input--t283","lang":"en","title":"Gamepads, sticks and triggers","summary":"Sticks and triggers provide continuous values while buttons switch actions and modes without looking at the device.","updatedAt":"2026-10-22","status":"active","url":"https://gamemechanics.pro/en/knowledge/mechanic/controller-input--t283/","jsonUrl":"https://gamemechanics.pro/api/v1/knowledge/en/mechanic/controller-input--t283.json","markdownUrl":"https://gamemechanics.pro/content/knowledge/en/mechanic/controller-input--t283.md","aliases":["Gamepad, sticks and triggers"],"tags":["Traditional input devices","Mechanics and variants"],"sourceIds":["source-9a110e52e07a4ab3","source-ae707dbe7c015c52"],"sources":[{"id":"source-9a110e52e07a4ab3","title":"MDN: Gamepad API","url":"https://developer.mozilla.org/en-US/docs/Web/API/Gamepad_API","verifiedAt":null},{"id":"source-ae707dbe7c015c52","title":"Pro Gymnast","url":"https://www.walaber.com/pro-gymnast","verifiedAt":null}],"sections":[{"id":"principle","title":"How it works","body":"Sticks and triggers provide continuous values while buttons switch actions and modes without looking at the device."},{"id":"variants","title":"Variants","body":"### Mechanic variants\n\n<a id=\"t283-variants\"></a>\n\n- Dead zones separate rest from small movement. <a id=\"t283-v1\"></a>\n- Response curves alter precision near the center. <a id=\"t283-v2\"></a>\n- Analog triggers modulate action strength. <a id=\"t283-v3\"></a>\n- Remapping preserves meaning across different layouts. <a id=\"t283-v4\"></a>"},{"id":"example","title":"Design example","body":"A light trigger pull draws a bow while a full pull completes preparation without automatically firing.\n\nPrototype check: Test stick drift, reconnection and missing axes; an API name alone does not establish hardware capability."},{"id":"context","title":"Context and limits","body":"Controllers turn physical movement into game parameters; range, neutral position and feedback should agree. Each overview separates player actions, state changes and alternative rules. Examples are hypothetical design scenarios, not claims about a named game. A prototype check states an observable question for the next iteration. Existing detailed references remain separately linked from the direction map."}],"relations":[],"placements":[{"catalogId":"controller-input","id":"t283","title":"Traditional input devices","url":"https://gamemechanics.pro/en/mechanics/controller-input/#t283","categoryIds":["mechanics"]}],"supersededBy":[],"attributes":{"preview":{"updatedAt":"2026-10-22","title":"Gamepad, sticks and triggers","description":"Sticks and triggers provide continuous values while buttons switch actions and modes without looking at the device.","image":{"src":"images/mechanics/general-pro-gymnast-00.webp","width":1440,"height":810,"game":"Pro Gymnast","sourceUrl":"https://www.walaber.com/pro-gymnast","originalUrl":"https://images.squarespace-cdn.com/content/v1/592a42752994ca7baf9f9b41/1598572727016-HQW3PDUQD2MHJ2UVS3XE/gymnast_launch_screen_trajectory.jpg","credit":"Walaber Entertainment","rights":"© Walaber Entertainment. Screenshot published by the developer; all rights reserved. Excluded from MIT and CC BY 4.0.","caption":"Controller button hints accompany holding and release","alt":"Controller button hints accompany holding and release","markers":[{"x":92,"y":91,"label":"Release R shows the assigned release button"},{"x":8,"y":91,"label":"Slow Time L shows a separate controller action"}]},"tips":["Show button assignments in context and support remapping."],"examples":[{"title":"Pro Gymnast","url":"https://www.walaber.com/pro-gymnast"}]}},"endsAt":null,"provenance":"Original bilingual editorial overviews authored for gamemechanics.pro on 2026-10-20 and reviewed on 2026-10-21. Scenarios are hypothetical design examples; prototype checks describe work to perform, not completed playtests. Primary sources support the stated techniques and implementation context, not every proposed variant.","license":"CC-BY-4.0","codeLicense":"MIT","attribution":"gamemechanics.pro contributors","catalogKey":"catalog/controller-input"}}