Androidpimps presents: Android standard controls for gaming

Posted by Dan Mousavi On April - 5 - 2010

Hi and welcome to our new Dev section at Androidpimps. With this first article we try to give developers a rough outline of standard controls, that we would like to see in every game submitted to the Android market. A lot of small teams don’t have the manpower or the devices to do extensive QA and have to rely on unpaid testers or forum comments to improve controls. Hopefully we can help you circumvent bad navigation choices and maybe we can even influence big game publishers to implement our suggested controls, so that navigation can become more instinctive on the android plattform like it is on home consoles.

Let’s start with handset orientation, because this is a big differentiation point for Iphone ports in our opinion.

The Android Gaming Mode

This is strange at first, since the Android system only supports rotation to the left for it’s navigation and browsing, which is fine for these areas. But Gamers need more control which they have through the trackball. They are also trained to navigate mostly with the left thumb and press buttons with the right thumb and the Trackballs work better as a steering device then a button. And while there playing, they don’t want to accidentaly quit out of the game and bringing the return key to the most upper left screen estate makes unwanted closing of the application less probable. Also when you hold the Nexus One like this, you don’t cover up the speakers so easily with your palm and have a better sound experience.

This function would be great in any game, but it should stay optional, because of Qwerty devices like the Droid. They need left sided rotation, so the screen is aligned with the Keyboard, which is the preferred input method for these devices. A good example for a great implementation of the “gaming mode” is ExZeus, which supports rotation in both directions through the in game options.

Unified usage of system buttons

A lot of developers use the 4 front buttons and the Volume control in a lot of different ways. This should be stopped before it get’s too fragmented. Here are our suggestions for the six buttons on modern Android phones:

Return Key - This Key is mostly used to return to a previous page and to close the application in the main menu, but some developers have implemented another use for the button or blocked it completely, because of accidental closures. We recommend the following use:
If the player is in the Main Menu of your game, a single press of the return button brings up a multiple choice dialogue, like “Do you really want to close?”. If you want, you can add a soft rumble. A second press of the return key accepts the closure and ends the application. This is necessary, if e.g. you’re application had problems initializing and the screen doesn’t work, if I can close it by hammering the return key, I don’t need to go deep into the system to force close the app.
In Game a single press on the return key should create a soft rumble and don’t do anything else. This is to prevent the app from accidental closing. A second press should bring up a dialogue with a yes/no choice that brings you back to the main menu. A third press on return key accepts the dialogue. Optionally you can bring up a menu to directly close the app out of the game, if the return key is hold after the second press.

Menu Key – The menu key should always be linked context sensitive, on the title screen to the main menu, in game to your in game menu and so on. In game, it should List options and if you have an on screen menu button, don’t block the key, instead give it the same functionality. Holding the Menu Key always brings up the on screen Keyboard, you could use this for chat or cheat codes or prior release for testing modes on Keyboardless devices.

Home Key – The home key is the button for multitasking. Your application should NEVER close when this button is pressed, instead the game needs to pause when the phone switches to the homescreen. This is especially important if you track the playtime in savegames etc. because it will get falsified if you don’t pause correctly. Multitasking is one of the key features in Android and don’t think for a second you’re game doesn’t need to support it. Even the shortest 1 click game is more fun when i can immediately switch to it and start to play when I hold the Home button and select it for a quick spin. I always use it after i played a game for a while to play my own music, or switch to a short stop at a walkthrough with the browser. This is a must in my opinion.

Search Key – This key doesn’t have much functionality for games, usually it activates the search function in the phone and when you hold it, Voice search is activated.
Our preferred use of this button would be to toggle the on screen help or descriptions, because that is what a inexperienced Android User would search for in the game, regular users mostly ignore this key and never try it in games. You could also just block it for better handling in the gaming mode, because this would be the most likey key to be pressed accidentally while playing with the trackball.

Volume Up/Down – These keys should always just influence the Music Volume, NEVER the ringtone Volume. Some games change the music volume in game and the ringtone volume in the menu. This is bad, because when I play the game I usually only want to adjust the volume of the game and if you don’t look for the title, you don’t realize that your phone is now in nearly silent mode. Also some applications like Aldiko use these keys as navigation buttons, this is always a bad idea, because as I said earlier when I multitask and listen to the music player in the background while playing, I want to be able to adjust the volume inside the current application and not have to break the immersion in the game.

That’s it for our first special, please let me know what you think of it and if you like my points about a loose gaming standard, please spread the word.