🐣 Mobile Eggbert

Cheat System

Mobile Eggbert includes a hidden cheat panel accessible through a secret gesture. The system is documented in documentation/Cheat System.md.

Spoilers Ahead This page documents the complete cheat system including the unlock gesture. Only read if you intend to use cheats for development or testing.

Overview

The cheat panel consists of:

  1. A 3×2 hidden button grid on the main menu (or accessible screen) used to enter the unlock gesture
  2. A panel of 9 cheat action buttons (Cheat1Cheat9) that becomes visible after unlocking
  3. A set of 22 cheat code strings stored in Tables::CheatCodes

Unlock Gesture

The cheat menu is unlocked by pressing a specific 10-button sequence on the 3×2 cheat grid. The grid layout is:

Cheat11
Cheat21
Cheat31
Cheat12
Cheat22
Cheat32

Naming: first digit = column (1–3), second digit = row (1–2)

The required 10-button sequence to unlock the cheat panel:

Cheat12 → Cheat22 → Cheat32 → Cheat12 → Cheat11 → Cheat21 → Cheat22 → Cheat21 → Cheat31 → Cheat32

Cheat Action Buttons

After unlocking, 9 action buttons appear. Each maps to a cheat action in Game1::CheatAction():

ButtonCheat NameEffect
Cheat1OpenDoorsToggle all doors open/closed in the current level
Cheat2SuperBlupiToggle enhanced player abilities (god-mode variant)
Cheat3ShowSecretToggle display of hidden/secret objects
Cheat4LayEggSet lives to 9
Cheat5ResetReset all game data (all 3 gamer slots)
Cheat6TrialModeToggle trial mode simulation (shows paywall screen)
Cheat7CleanAllClear all objects from the current map
Cheat8AllTreasureGrant all treasures (level immediately completable)
Cheat9EndGoalInstantly complete the current level

All 22 Cheat Codes

The full list of cheat code strings stored in Tables::CheatCodes[22] (used by Game1::CheatAction()):

#Cheat CodeEffect
1BuildOfficialMissionsBuild/restore official mission set
2OpenDoorsOpen all doors
3CleanAllClear all objects from map
4SuperBlupiSuper Blupi mode
5LayEggGrant 9 lives
6KillEggRemove all eggs from level
7SkateSpawn skateboard
8CopterSpawn helicopter
9JeepSpawn jeep
10AllTreasureGrant all treasures
11EndGoalComplete level
12ShowSecretShow hidden objects
13RoundShieldGrant shield power-up
14LollipopGrant lollipop power-up
15BombsGrant personal bombs
16BirdLimeBird-lime / glue special
17TankSpawn tank
18PowerChargeGrant charge power
19DrinkGrant drink power-up
20OvercraftSpawn hovercraft
21DynamiteGrant dynamite
22WeelKeysGrant all 3 keys
Known Bug: Cheat Name Conflict The cheat codes quick and quicklollypop have a name collision — one is a prefix of the other. The fix is to rename quicklollypop. See Known Issues.

Implementation Details

The cheat system is implemented across:

  • Tables.cpp — stores the 22 cheat code strings as a static array CheatCodes[22]
  • Game1.cppCheatAction(ButtonGlyph) dispatches cheat button presses
  • Decor.cpp — implements the actual cheat effects (spawning objects, granting items, etc.)

The hidden button grid buttons (Cheat11 through Cheat32) are present in ButtonGlyph but not rendered until the player deliberately navigates to the hidden area of the screen.