The A‐Z Wheel Interface for Traditional Roguelikes on the Steam Deck - ScottBurger/going_rogue_podcast GitHub Wiki
A link to the steam controller config can be found here: steam://controllerconfig/3083461867/37848173560
Because I play so many traditional roguelikes (sometimes for the podcast) and inadvertently try to square-peg-round-hole them onto my main gaming platform of choice these days (Steam Deck), there's often the problem of "how do I map an entire keyboard work of commands to a controller interface?"
I think I came to a solution after getting DCSS fully functional on the Steam Deck. The major solution factor here are radial menu wheels: not as fast and fluid as pure keyboard input, but good enough for playing short bursts of traditional roguelikes via a controller interface.
In theory, this layout can translate easily to most keyboard-first traditional roguelikes, but your mileage may vary depending on how many ALT+SHIFT+CTRL+ETC simultaneous button inputs you need in order to equip a glove on your left hand.
The overall design is something like this:
- A, B, X, Y - most commonly used buttons for the game (inventory, spacebar, etc)
- D-Pad - up, down, left, right arrow keys
- R2, L2 - left click and right click respectively
- R1, L1 - shift key and ctrl key respectively
- Right track pad - mouse control
- Left track pad - wheel menu
Because tradRLs have a fetish of using every singly button on the keyboard, we can map most, if not all of these to the left track pad using action sets. Action sets change the gamepad layout on button press. So in our case, keep all the buttons the same, but swap the left radial menu from (a-m) to (n-z) as needed.
The left radial menu then can be swapped between:
- a-m
- n-z
- symbols (/'-= bksp , .;`[])
- Numbers (1234567890 from across the top of the keyboard)
Pressing the R4 (or mapped elsewhere) button cycles through the list of action sets to allow us to hunt for any given ASCII glyph we might need. If we need it capitalized, then holding R1 and pressing the lowercase 'w' in the radial menu will enter in a 'W' into the game. Likewise if you need a '$' symbol entered, you can swap action sets to the Numbers set, hold R1 and press the '4' key to get the associated glyph.