What problem does it solve?
It provides reusable tower-defense architecture patterns so you can implement the core gameplay loop—grid placement, enemy pathing, wave spawning, combat, and economy—without entangling Unity views with deterministic game logic.
Core Features & Use Cases
- Grid placement that validates and commits: Use a pure C# grid model plus a placement system to handle cell validity, occupancy, and currency checks.
- Target acquisition and firing: Implement an ITickable tower system that selects enemies by range and targeting mode, then publishes fire events.
- Waypoint-based enemy pathing: Move enemies along scripted paths and signal when enemies reach the end so lives/health can be deducted.
- Wave spawning without coroutines: Define wave groups and spawn timing with UniTask, publishing wave started/completed messages.
- Economy, upgrades, and economy-driven tower progression: Award currency on kills, subtract lives on leaks, and upgrade towers by swapping to the next ScriptableObject definition.
- Projectile simulation and pooling-friendly execution: Model projectiles in deterministic ticks with hit checks, AoE splash, homing behavior, and pooled runtime integration.
Quick Start
Use the Tower Defense skill patterns to structure your Unity project into pure C# models and ITickable systems, then connect thin MonoBehaviour views to render the grid, towers, enemies, and projectiles.