Game Development Reference
11. The cursor should blatantly draw attention to the currently selected menu item.
12. Avoid horizontal menus.
13. Vertical menus should consist of no more than 6-8 items, each with its own
14. Menus should by cyclic, allowing the player to loop through the menu choices.
15. Leave breathing room for text localization. (Some languages, such as German,
may require more letters per word than your game's native language.)
16. Place button icons next to their functions instead of using lines to connect
the functions to the buttons.
17. Point button icons to their location on the controller.
18. Separate thumb-stick movement functions from button functions.
Additional standards could apply to consistent keyboard assignments (“F1 should
always be the Help button�?) or the flexibility of game controller options (“There shall
always be an option to enable or disable vibration�?).
Your list of standards can be used as a checklist that gets filled out for each screen. The
checklist should include other information such as the QA person's name, the date of
the appraisal, the name of the software build and/or identifier being checked, and the
name of the screen. Don't wait until the UI is coded and put into a release before you
check it. Work with developers to verify that the standard is being followed in their UI
design. Some checking should also take place after code is released to verify that the
implementation matches the intent. This may include a suite of tests that specifically
check that each UI standard is met.
You may find that some of these items above make perfect sense for your game, while
some don't. Use what's right for you and your customers. The important thing is to
have some standards, have a reason for including each item in the standard, and have
a way to periodically check that the team uses the standard.
Coding standards can prevent the introduction of defects when the game code is written.
Some of the topics typically addressed by coding standards include
File naming conventions
Comment and indentation styles
Use of macros and constants
Use of global variables