Skip to content

langchr86/pico-bubble-towers

Repository files navigation

pico-bubble-towers

Tower Defense Game for Pico-8.

title_image gameplay_1 gameplay_2 end_screen

Official game thread where you can play or download the game directly:

lexaloffle.com/bbs/?pid=151651

This is also the place to give feedback or just say thanks for the game. I very appreciate any comments there.

Description

This is not the usual tower defence game you are used to. Sure, you have to build towers to defend against enemy waves and also earn cash by destroying them to update your towers.

What is special here is that we not only can build defence towers to destroy enemies but also to define the path the enemies can take. Where the enemies have different skills like self-healing or flying over towers. In addition, we have various different maps where some may have blockades, are limited in space or have already predefined fixed paths.

Game Play

demo_gameplay_1 demo_gameplay_2

How to play

To skip the title image just press X and you can choose your difficulty level you want to play. Alternatively you can read a small in-game manual that describes most of the core concepts. After this first selection screen you can choose one of the 16 different maps. Each selection can always be undone by pressing O.

After map selection the game is started and allows you to either place or upgrade towers (all controlled with the cursor). Basic towers can always be removed and sold for the same amount of cash as they are bought. By pressing O you can start the next enemy wave (symbolized at the top center of the screen).

Place towers with X. Hover over it to see its shot range (visualized by a circle) or manipulation range (rectangle). Selecting it with X opens the upgrade menu. The upgrade menu gives you many options to develop your towers. There are attacking towers that can be improved in terms of range, fire rate or damage. The green towers are specialized for flying enemies. The yellow towers can deal area damage. Area damage towers can also be upgraded to enemy modifiers like reducing of movement speed or armor. Tower modifiers (gray rectangle) are the category that do not fire at enemies but improve the properties of all surrounding towers. The available properties to improve are: fire rate, range or damage. You can always close the upgrade menu with O if you do not want to change the selected tower.

Best way to learn all those tower types is to play an easy game and try all possible upgrades. See how expensive upgrades are and what works best for you or the selected level. And then try the next harder level or map. Good luck!

Tower upgrades

The attached table shows all tower upgrades and their costs and stats.

tower_upgrades.pdf

Customization

If you like this game and want to play more maps you can easily build your own. Simply open the map editor in pico-8 and change the existing maps to your liking. No coding is needed. The only thing you need to ensure is to only use the 3 map sprites and always place exactly 1 start and 1 goal per map.

If you want to tweak the difficulty levels you can manipulate the corresponding wave definition strings in CreatePredefinedWaveList.

Releases

You can find the official releases for download under Releases or in the folder releases.

There you can also find all alpha stage releases named as pico-proto-xx.p8.png.

You can play the game directly in the official BBS thread: lexaloffle.com/bbs/?pid=151651

Any changes since the first official release can be found in the CHANGELOG.

Inspiration

This game is inspired by the old flash games: Bubble Tanks Tower Defence.

Some are still playable:

Used third-party tools and libraries

Special thanks to

Presentation

This game was part of a presentation that shows the core concepts of Lua, how we can use Lua for object-oriented programming and some basics of game development for PICO-8.

Slides: pico8_bubble_tanks.pdf

Raw markdown: pico8_bubble_tanks.md

License

CC BY-NC-SA 4.0

This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

CC BY-NC-SA 4.0

Author Information

Christian Lang

lang.chr86@gmail.com