[Feature Request] Modifier button to allow additional virtual button presses
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 14.1k
- Forks
- 2.2k
- Avg merge
- 7h 35m
- Merged PRs (30d)
- 51
Description
Description
A modifier button to turn, for example, a 4-button controller into effectively a 6-button controller.
Expected behavior
When the assigned button is pressed, RetroArch does not send any data to the core but waits for an additional input from a button assigned to an in-game action. Upon receiving that information, the input is sent to the core as per usual, only a different button press is registered than would normally be triggered by that particular button. Button 'B' on my XB pad hooks to 'A' on the Retropad, but with the modifier pressed down it might result in a 'Y' input instead. Fully configurable.
Actual behavior
At the moment we have hotkeys at our disposal, along with the Hotkey Enable function. This doesn't allow for any modifying behavior and stops all input to the game.
Closing
I think this would open up quite a few interesting gameplay possibilities, allow for more freedom in controller choice and make some inputs more natural for certain people - for instance people with disabilities.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing RetroArch's existing hotkeys and Hotkey Enable behavior, then trace how controller button assignments are sent to the core. Define how a modifier should defer input and map the subsequent action, including fully configurable button mappings. Done means modifier combinations produce the alternate in-game button without suppressing ordinary input.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- frontend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100