informa
3 min read
article

Adapting my game to one-switch controls

In this post I explain how I adapted my platformer game to work with an one-switch control scheme and allow players that have severe mobility issues to play the game.

There isn't much information about how to adapt videogames to be compatible with one-switch schemes (important for people with severe mobility disabilities), and most of the information available focuses on heavily modifying the design of the games to adapt to the control scheme, so I thought I may share my experiences adapting my own game to an one-switch scheme.

The first important thing is to simplify the controls if possible. My game is a platformer and has five controls: up, down, left, right and jump. However, you can get away with two directions and jumping really, so that's in total three actions: forward, backward and jump.

Trying to map all that to a single button is practically impossible, so here I sorta cheated. The game will process two kind of responses: "tap" (press button for a short period of time) and "hold" (press button for a longer period of time). This is effectively like having two buttons, but we can map it to a single one.

Then we can proceed to map the actions to these two responses. Jumping is simply mapped to "hold". Changing directions is mapped to "tap": tapping the button changes the direction in which the player is currently going (in order of forwards, stop, backwards, stop). A small HUD at the corner shows the current direction, so the player knows where he/she will go next when tapping again.

Finally there's the pause menu to take care of. Generally the suggestion is to leave it mapped to the Esc key, so the game does that. However, if it can be triggered with the button it's nice too, so we provide that option too: if the player taps five times in a row, the pause menu is invoked. I went with this because it's an unlikely input.

Of course this is not enough. You may want to add more accessibility options. Add settings to change the timings of the taps and such. Add an easy difficulty setting. Ideally also add a speed setting that allows the game to run slower (you can counter naysayers by also allowing it make the game faster). Cheats can be useful for some more extreme cases, like having extra health or something like that.

And ultimately, just see it as a design challenge. Other games will require other approaches (though the tap/hold scheme seems pretty useful in general), sometimes even contextual controls (e.g. hold may be either attack or jump depending on what actions the player can take at the current location). Don't let the lack of information let you down with making your game more accessible. Remember, there are lots of disabled players out there who would wish to play your game!

That's all and have a nice day :)

Latest Jobs

Treyarch

Playa Vista, California
6.20.22
Audio Engineer

Digital Extremes

London, Ontario, Canada
6.20.22
Communications Director

High Moon Studios

Carlsbad, California
6.20.22
Senior Producer

Build a Rocket Boy Games

Edinburgh, Scotland
6.20.22
Lead UI Programmer
More Jobs   

CONNECT WITH US

Register for a
Subscribe to
Follow us

Game Developer Account

Game Developer Newsletter

@gamedevdotcom

Register for a

Game Developer Account

Gain full access to resources (events, white paper, webinars, reports, etc)
Single sign-on to all Informa products

Register
Subscribe to

Game Developer Newsletter

Get daily Game Developer top stories every morning straight into your inbox

Subscribe
Follow us

@gamedevdotcom

Follow us @gamedevdotcom to stay up-to-date with the latest news & insider information about events & more