There’s really rude thing that some games like The Witcher III or Mirror’s Edge forces you to do, and that thing is to disconnect your controller if you want to display the buttons from the GUI or tutorial as keyboard buttons and not as controller buttons. Imagine this:
- You start playing a new game
- You want to play with a keyboard
- You have an Xbox controller connected to your machine
- The game displays all of the tutorials and GUI buttons as Xbox buttons
- The game doesn’t let you change this and display keyboard buttons
- The only way to fix this is to get up, disconnect your controller, and maybe restart the game
This is of course not very friendly with the user, some users might navigate the game’s options for minutes trying to find a solution, some might spend some more minutes searching the internet for how to fix it or trying useless solutions, others might just give up and play with something they don’t want to play with, or some others will have to unplug the controller while playing the game and then plug the controller back in when they want to use it, and some others might quit your game and ask for a refund.
Luckily this seems to be an easy thing to fix, and here are some ideas on how to:
- Ask the player with what input device they want to play with
- Allow the player to change their input device from inside the game options
- If you want a more subtle system, automatically change the displayed buttons depending on which input device the player pressed last (of course, as long as your game window is active)
- You can also ask for confirmation, although this will interrupt the player’s game which is something that you might want to avoid
Let’s try to make our players more confortable, and avoid having them to stand up, walk, and disconnect their game pads.