Many 3D first person games have consoles that allow people to spawn in items, grant themselves full health and warp to different levels. These are all helpful things to both players and developers. With this in mind, I decided to come up with a standardized cheat console system for my games going forward.
Making the cheat console itself was a daunting one or two day process that I made for the AlienVania remake. It was a notable experience because I had only experimented with text capturing before. Depending on the method it can turn into a beast for the inexperienced, but I had run out of fresh challenges with programming so I was happy to tackle the mini mountain.
My console is simple and only allows you to enter in a phrase when other games have full records and print outs like a true console would show. One day I might implement the same thing, but for now its just used for cheats. At first there were only cheat codes with no console like back in the 80s and 90s, but in the modern age its good to have that visualization of seeing an input box and the text you’ve typed.
My cheat consoles can be accessed by holding CTRL and pressing tab when most games require you to press the ~ key. I had originally made it the ~ key as well, but too many people were finding the consoles at random without realizing it. Fans wondered why pressing escape to call the menu resulted in the cheat console appearing.
With the cheat console open, users can type in simple commands depending on the game such as “stage 4,” “full health,” and “freeze enemies.” Many of these cheats are disabled in the Steam games as there are both leaderboards and achievements that would let player get the advantage over others and exploit. I could always disable the leaderboard if you cheat, but its just easier to disable the cheat itself. Otherwise I might have people complaining why they have much higher score with screen shots to prove it.
One of the other reasons to have a cheat console as a developer is its much easier to toggle between experimental settings than it is to add more menu items to the settings. User interface stuff is always a burden to make as I need to ballpark an estimate as to its location, make an icon and fit it into a space. It is just easier to type in “debug” to toggle the debugger rather than including it in the settings menu. Cheat menu is essential in Balloon Popping Pigs because its settings menu is on the home screen.
Having such freedom to add things into the games without having to change the user interface has allowed me to create special modes and hidden secrets. In Balloon Popping Pigs, there are a few hidden modes that turn your pigs into different animals. There is even an achievement tied to a secret code and a different cheat code “say cheese” that will make your pig say cheese and take a screenshot. Sure you can take screenshots without the use of this code, but the added pig saying cheese makes it special.
Cheat consoles are only the beginning since it equates to having a text input field that can be reused elsewhere for data entry. It should broaden the horizons of the game genres that I produce.