A simple, colorful, annoying tower defense game.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
hut b1fa0e56a2 document "e" key in F1 help 2 years ago
sound add sounds on critical hits 7 years ago
COPYING included the GPL3 9 years ago
README.md fix table 2 years ago
wabbel.py document "e" key in F1 help 2 years ago



  • Python 2.6 or 2.7
  • pygame


This game uses sounds by opm from freesound.org, see: https://www.freesound.org/people/opm/

Technical Stuff

  • The high score table is saved at ~/.wabbel_highscore.
  • The name of the player is taken from the $USER environment variable. To change it in windows, set the environmental variable USER to your name. To change it in a unix system, run: USER="your name" wabbel
  • The F11 button does not seem to work in windows. If you want to play in full screen mode, you have to use the --fullscreen option when starting.

Key Bindings

Key Action
c, F2 Create a new bubble
n, F3 Send the next wave of monsters
D Destroy the active bubble
tab Select the next bubble (in order of size)
TAB Select the previous bubble (in order of size)
1-9 Select the 1-9th largest bubble
0 Select the weakest bubble
` Select all bubbles
e Lock a bubble in place until the map changes for extra XP
-------------- -----------------------------------------------------------
r Paint the bubble in red
g Paint the bubble in green
b Paint the bubble in blue
R Remove red color from the bubble
G Remove green color from the bubble
B Remove blue color from the bubble
-------------- -----------------------------------------------------------
F1 Display Help
F8 Reset Game
F11 Toggle Fullscreen
Space Pause the game
Esc End the game
F5 Clear the message log
-------------- -----------------------------------------------------------
Drag & Drop, Move the active bubble(s)
Arrow Keys,
hjkl, awsd


Create bubbles to fight the monsters that try to reach the end of the track. Each time a bubble kills a monster, it gains mass and size. This has several impacts:

  • Massive bubbles will attract other bubbles
  • Large bubbles have a stronger attack
  • Since the splash radius of their attacks is equal to their size, large bubbles will hit more monsters with each attack.
  • Massive bubbles will attack slightly slower

You can paint each bubble with a color by adding or removing the primary colors: Red, Green and Blue. Each color endows the bubble with certain properties, as described in the next section.


  • Red color increases the damage of the bubble.
  • Green color increases the range.
  • Blue color adds a freeze effect to every shot which slows monsters permanently, down to a minimum of 50% of their original speed.

You can mix two colors and leave out the third color for a bonus effect:

  • Yellow (red + green) increases the attack speed of the bubble
  • Cyan (green + blue) adds an armor damaging effect to each shot, which reduces the armor of the monster by a given amount.
  • Magenta (blue + red) adds a supportive effect that increases the damage of each bubble in the range. This effect doesn't stack, the stronger effect takes precedence.

Note that a yellow bubble will lose yellowness if you add blue, so you can't have one bubble with all the bonuses.

There are some bonus effects which you get for specific color mixtures:

  • If your secondary colors (yellow, cyan, purple) are all zero, you get a purity bonus of +2 attacks per second.
  • If your primary colors (red, green, blue) are all zero, you get a black hole bonus of 100% armor penetration.
  • If your primary colors are all between 30% and 50%, you get a pin head bonus, greatly increasing the inertia, making it more difficult to move it.


Monsters gain in strength after each level. This means that they get faster, gain more hit points and get stronger armor. Every three levels, a tough kind of monster will appear which has twice the armor rating but half the hit points.

The score that you get for killing a monster is equal to its level.