2
\$\begingroup\$

I'd like to build several cheat-like commands into my game, mainly for debugging problems that could only be reproduced on the end-user's side.

For most games this would be trivial: just listen to a keyboard shortcut or two, but my game is a 'tap-only' mobile game. How can I go about providing access to these sorts of diagnostic commands with such a limited user interface in a way that will remain accessible to end-users but that they'd be unlikely to trigger automatically?

\$\endgroup\$
  • \$\begingroup\$ Not that I'd recommend it, but in the latest version of Android, to access developer tools you must tap a button 5 times to get to enable an "advanced" mode. This prevents accidental access but is evidently stupid :P \$\endgroup\$ – T. Kiley Jan 8 '14 at 12:10
  • \$\begingroup\$ Well, that kind of "stupid" seems to be OK as far as cheat-codes go. Do you care to add this as an answer? \$\endgroup\$ – Alexander Gladysh Jan 8 '14 at 12:12
  • \$\begingroup\$ Sure, give me a second :) Guess I more took issue with Android hiding developer tools :P \$\endgroup\$ – T. Kiley Jan 8 '14 at 13:14
  • \$\begingroup\$ The purpose of industry UX standards is to make sure that the user finds the functionality they are searching for. But in case of cheatcodes you have the opposite goal: The user is not supposed to find them. So be creative :) \$\endgroup\$ – Philipp Jan 8 '14 at 13:32
  • \$\begingroup\$ Well, that's not exactly opposite to UX. The problem is two-fold: it should be unlikely for normal users to stumble on the functionality. However, if user knows about it (say, was told by the support — so he can send diagnostics), it should be straightforward to use. Sounds like UX to me. \$\endgroup\$ – Alexander Gladysh Jan 8 '14 at 17:53
3
\$\begingroup\$

In the latest version of Android (4.3 and above), to access the developer options, you had to click the build number in the settings menu multiple times.

You could do something similar with a UI element that would normally be there and have a click counter to enable a "cheat" mode. Once in this mode, you could use more standard UI elements to expose cheat functionality.

|improve this answer|||||
\$\endgroup\$
2
\$\begingroup\$

Usually, cheat codes are like easter eggs. They are usually enabled when the user performs a series of unusual actions in a situation where the UI doesn't seem to expect any action from them. The typical examples from the console-area of games are:

  • start screen
  • loading screen
  • when the game is paused

It is important to choose a situation where the user has no reason to perform any input, because otherwise they might enable the cheat-code by accident. In the context of a game where the only input is a touchscreen, you could have input elements which don't look like input elements (like decorative graphics or text labels) and have the user perform unusual actions on them (draw specific shapes, tab them in a specific order, etc.). You could also combine this with other input methods your game doesn't utilize in other ways. When your game runs on mobile phones equipped with accelerometers, and your game doesn't use them as an input method otherwise, you could for example enable a cheatcode by shaking the phone while holding a button (which doesn't look like a button).

|improve this answer|||||
\$\endgroup\$
  • \$\begingroup\$ Good answer, thank you! Care to list some examples of existing applications? \$\endgroup\$ – Alexander Gladysh Jan 8 '14 at 17:54

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.