Tower Blitz Battleground
Overview
The Idea
My vision for this game was to create a top down tower defence game with an arcade feeling to it. I always loved playing Kingdom rush as a kid so the desire to make a tower defence game was there since I started developing games. I wanted to create a game with a fresh look whilst making sure the difficulty was challenging enough to keep the player engaged.
Skills Used
-
Unity 6
-
C
-
Git
-
Prefabs
What I Learned
Key Technical Systems
-
Data-driven wave spawner using ScriptableObjects for designer-configurable enemy compositions and spawn timings
-
NavMesh Agent pathfinding with waypoint system and animation state synchronization
-
8 enemy types with inheritance hierarchy: Basic, Sprinters, Swarm, Heavy (shield mechanic), Stealth (particle trail VFX), Flying, Spider Boss (AoE EMP ability), Flying Boss (runtime spawning)
-
Dynamic difficulty scaling with health/speed modifiers per wave
In Game Look
When I started this project, I wanted to build a complete tower defense game from scratch in Unity. The biggest technical challenge was implementing an efficient object pooling system to handle hundreds of enemies and projectiles without performance degradation. I learned how to optimize GameObject instantiation, manage memory efficiently, and debug complex issues with NavMesh pathfinding and script execution order. This project taught me the importance of scalable architecture and performance profiling, skills that directly apply to professional game development.
Links
Enemy & Wave Management
-
Priority queue-based targeting system with configurable modes (distance to base, lowest HP, enemy type filtering)
-
6 tower variants: Cannon, Crossbow, Drones, Hammer, Anti-air Harpoon, Machine Gun
-
Projectile physics with ballistic trajectory calculations and collision detection
-
Tower state machine managing idle, targeting, attacking, and cooldown states
Tower Targeting & Combat
-
Procedural grid generation using 2D array with automatic neighbor detection for level layout
-
Custom Unity Editor tool with multi-tile selection and batch prefab swapping for rapid iteration
-
Tower placement validation using raycasts and tile occupancy tracking
-
Preview system with material shader swapping for valid/invalid placement feedback
Tile Grid & Build System
-
Custom ObjectPool manager for projectiles, enemies, and VFX to eliminate runtime instantiation
-
Reduced garbage collection spikes by 80% through object reuse pattern
-
Dynamic pool expansion when demand exceeds initial capacity
-
Reset interface pattern for clearing pooled object state between uses
Object Pooling Architecture
-
Resource economy with per-enemy currency drops and tower cost balancing
-
Event-driven UI with UnityEvents for health, currency, and wave progress updates
-
Settings menu with slider-based controls for sensitivity, SFX volume, and music volume
-
Audio manager using singleton pattern with separated SFX and music channels
-
Camera controller with smooth transitions, procedural screen shake (Perlin noise), bounded free-roam, and zoom
-
Tile transition animations for level changes with visual feedback
Core Game Systems & Polish
A top-down tower defense game inspired by Kingdom Rush, featuring advanced enemy AI, priority-based tower targeting, and object pooling optimization for performance.




