dev.

Circuit Defense

Grid-based tower defense with 10 scripted enemy waves — place towers on a 12×16 board, earn coins per kill, upgrade between waves, and keep enemies from reaching the exit.

Description

Enemies follow a fixed path across a 12×16 grid. You place towers on non-path cells to intercept them. Kills earn coins; coins buy more towers or upgrade existing ones. Between waves you have full freedom to build, upgrade, or sell.

Ten scripted waves of increasing difficulty. Survive all ten and you win. Let too many enemies reach the exit and lives drain to zero — game over.

Features

  • 12×16 grid — wide enough for layered coverage, complex enough to matter
  • Multiple tower types — different range, fire rate, and damage profiles
  • 10 scripted waves — escalating enemy count and speed
  • Buy / upgrade / sell — full economy between every wave
  • CustomPainter rendering — smooth 60 fps grid, path, tower beams, and enemies via Flutter canvas
  • No game engine — pure Flutter with AnimationController ticker

Tower Types

Each tower type trades range for fire rate or damage. Mix them to cover the full path:

  • Basic — balanced range and fire rate, cheapest to place
  • Sniper — long range, slow fire rate, high single-target damage
  • Rapid — short range, very fast fire rate, low damage per shot
  • Splash — area damage on impact, effective against dense waves

How to Play

  1. 1.Tap a tower type in the bottom bar to select it
  2. 2.Tap an empty non-path cell to place it
  3. 3.Tap a placed tower to select it — upgrade or sell from the info panel
  4. 4.Press Start Wave when ready
  5. 5.Survive all 10 waves to win

Economy Tips

  • Sell towers that cover cleared sections of the path to reinvest coins
  • Upgrade choke-point towers first — enemies funnel there the longest
  • Save coins before wave 8 — the final waves are significantly harder

Changelog

Feedback

Found a bug? Have a feature idea? Something unclear? Use the form below.

Describe what happened, what you expected, and your environment.