Gameplay Overview
Game Type
Speedy Eggbert 2 (Free Eggbert) is a side-scrolling platformer. The player controls "Blupi" (Eggbert) through a series of levels, collecting items, avoiding enemies, using vehicles, and activating switches to progress.
World Structure
- Each level is a 100×100 grid of cells
- Levels are organized into chapters (worlds 010–199, plus bonus and secret worlds)
- Each level has a name, background music track, and visual region/theme
- Up to 4 player start positions per level (for multiplayer)
Player Character
The player character is "Blupi" — a small anthropomorphic creature.
Player state is tracked in CDecor via individual member fields
(m_blupiPos, m_blupiAction, etc.).
Movement States
Character animation and behavior are controlled by ACTION_* codes.
Key movement states include:
- Walking —
ACTION_MARCH - Jumping —
ACTION_JUMP(start),ACTION_AIR(mid-air) - Looking up/down —
ACTION_UP,ACTION_DOWN - Edge vertigo —
ACTION_VERTIGO(standing at edge) - Teleporting —
ACTION_TELEPORTE
See the full Action Codes Reference for all 87 states.
Vehicles
Blupi can enter and operate several vehicles:
| Vehicle | Object Type | Transport Mode | Description |
|---|---|---|---|
| Helicopter | TYPE_HELICO / TYPE_BLUPIHELICO | 1 | Aerial vehicle, can fly over obstacles |
| Jeep | TYPE_JEEP | 2 | Fast ground vehicle |
| Tank | TYPE_TANK / TYPE_BLUPITANK | 3 | Can fire bullets (TYPE_BULLET) |
| Hovercraft | TYPE_OVER | — | Flies at fixed height (OVERHEIGHT=80px) |
| Skateboard | TYPE_SKATE | — | Fast ground movement; can be picked up/dropped |
Swimming
Blupi can enter water with different states:
- Deep water —
ACTION_STOPNAGE,ACTION_MARCHNAGE - Water surface —
ACTION_STOPSURF,ACTION_MARCHSURF - Drowning —
ACTION_DROWN
Enemies
| Enemy | Type Constant | Description |
|---|---|---|
| Fish | TYPE_POISSON | Aquatic enemy |
| Bird | TYPE_OISEAU | Aerial enemy |
| Wasp | TYPE_GUEPE | Stings Blupi, causing balloon swelling (ACTION_BALLOON) |
| Tentacle | TYPE_TENTACULE | Slime tentacle effect |
| Creature | TYPE_CREATURE | Moving slime creature |
Hazards
| Hazard | Type | Effect |
|---|---|---|
| Floor bomb | TYPE_BOMBEDOWN | Explodes on contact |
| Hanging bomb | TYPE_BOMBEUP | Explodes on contact from above |
| Moving bomb | TYPE_BOMBEMOVE | Patrols a path |
| Homing bomb | TYPE_BOMBEFOLLOW1/2 | Follows the player |
| Glue ball | TYPE_BALLE | Traps Blupi in place (ACTION_GLU) |
| Electrocution | TYPE_ELECTRO | Electrocutes Blupi (ACTION_ELECTRO) |
| Pollution | TYPE_POLLUTION | Toxic zone effect |
| Inversion | TYPE_INVERT | Inverts player controls (blupiInvert) |
Collectibles
| Item | Type | Effect |
|---|---|---|
| Treasure | TYPE_TRESOR | Increases nbTresor count |
| Egg | TYPE_EGG | Collectible item |
| Gold key | TYPE_CLE | Opens gold-locked doors |
| Red key | TYPE_CLE1 | Opens red-locked doors |
| Green key | TYPE_CLE2 | Opens green-locked doors |
| Blue key | TYPE_CLE3 | Opens blue-locked doors |
Power-Ups
| Power-up | Type / SEC_ flag | Effect |
|---|---|---|
| Shield | TYPE_SHIELD / SEC_SHIELD | Temporary invulnerability |
| Lollipop | TYPE_POWER / SEC_POWER | Speed or power boost; eating animation ACTION_SUCETTE |
| Cloud | SEC_CLOUD | Invisibility/cloud mode |
| Dynamite | TYPE_DYNAMITE | Placeable explosive; count tracked in blupiDynamite |
Level Mechanics
- Crates (
TYPE_CAISSE) — pushable and pullable boxes (ACTION_PUSH,ACTION_POP) - Doors (
TYPE_DOOR) — opened with matching keys; states tracked indoors[200] - Goal/Exit (
TYPE_GOAL) — level completion trigger - Lifts/Elevators (
TYPE_ASCENSEUR) — moving platforms - Conveyor belts (
TYPE_ASCENSEURs/si) — move Blupi left or right - Bridges (
TYPE_BRIDGE) — fragile bridges that collapse - Hanging bars — Blupi can hang and traverse (
ACTION_STOPSUSPEND, etc.) - Springs — bounce Blupi (
SOUND_RESSORT) - Switches — toggle doors or other mechanisms
- Teleporters — transport Blupi to another location
Win / Lose Conditions
- Win — Reach the goal (
TYPE_GOAL); triggersWM_PHASE_WIN - Lose — All lives depleted; tracked in
nbVies - Treasures — Collecting all treasures (
nbTresor == totalTresor) may trigger special win condition
Cheat Codes
25 cheat codes are defined in src/event.cpp (cheat_code[25][60])
and handled by CEvent and CDecor::CheatAction().
Type the code on the keyboard during gameplay (or on the title screen for some codes).
A sound plays if the code is accepted.
event.cpp).
Most gameplay cheats only work during WM_PHASE_PLAY or
WM_PHASE_PLAYTEST.
| # | Code | Effect | Where |
|---|---|---|---|
| 0 | XMISSION | Toggle build/official missions modifier (SetBuildOfficialMissions) | Any |
| 1 | OPENDOORS | Toggle all world-map doors/missions accessible (m_bAllMissions) | Any |
| 2 | CLEANALL | Explode all enemies currently on screen | Gameplay |
| 3 | MEGABLUPI | Toggle player invincibility (m_bSuperBlupi) | Any |
| 4 | LAYEGG | Give +1 life (or set lives to 10 during gameplay) | Any |
| 5 | KILLEGG | Remove 1 life | Any |
| 6 | FUNSKATE | Immediately put player on skateboard | Gameplay |
| 7 | GIVECOPTER | Immediately give player helicopter | Gameplay |
| 8 | JEEPDRIVE | Immediately put player in jeep | Gameplay |
| 9 | ALLTREASURE | Collect all remaining treasures in the level | Gameplay |
| 10 | ENDGOAL | Teleport to goal and win the level (only if all treasures collected) | Gameplay |
| 11 | SHOWSECRET | Toggle showing hidden/secret objects (m_bDrawSecret) | Any |
| 12 | ROUNDSHIELD | Activate shield power-up (100 ticks) | Gameplay |
| 13 | QUICKLOLLIPOP | Activate lollipop power-up (ACTION_SUCETTE) | Gameplay |
| 14 | TENBOMBS | Give 10 personal bombs (m_blupiPerso = 10) | Gameplay |
| 15 | BIRDLIME | Give 10 glue shots (m_blupiBullet = 10) | Gameplay |
| 16 | DRIVETANK | Immediately put player in tank | Gameplay |
| 17 | POWERCHARGE | Activate tank power charge attack (ACTION_CHARGE) | Gameplay |
| 18 | HIDEDRINK | Activate drink/invisibility (ACTION_DRINK) | Gameplay |
| 19 | NETPACKED | Toggle network packed mode (debug) | Any |
| 20 | ZNETDEBUG | Toggle network debug mode | Any |
| 21 | YNOSMOOTH | Toggle network move prediction (no-smooth mode) | Any |
| 22 | IOVERCRAFT | Immediately put player in hovercraft | Gameplay |
| 23 | UDYNAMITE | Give 1 dynamite stick (m_blupiDynamite = 1) | Gameplay |
| 24 | WELLKEYS | Give all colored keys (red, green, blue) | Gameplay |
Three of these flags are also serialized in DescSave:
bCheatDoors (OPENDOORS), bSuperBlupi (MEGABLUPI), and
bDrawSecret (SHOWSECRET) — they persist across save/load.
All others are session-only.
Multiplayer Gameplay
Up to 4 players can play simultaneously via DirectPlay networking. In multiplayer, each player has a personal colored bomb:
- Player 1: yellow bomb (
TYPE_BOMBEPERSO1) - Player 2: orange bomb (
TYPE_BOMBEPERSO2) - Player 3: blue bomb (
TYPE_BOMBEPERSO3) - Player 4: green bomb (
TYPE_BOMBEPERSO4)