HN
← Back to Home

They Are

2D strategic tower defense with A* pathfinding and 99%+ optimization.

What is this game?

A 2D strategic tower defense where players control routes with obstacles and towers. As tech lead, I implemented A* pathfinding, optimized it by sharing computations across enemies, and built the core tower, monster, and wave systems.

Team Info

  • Role: Tech Lead
  • Team: 5 members
  • Engine/Tools: C++, OpenGL, STL

Contributions

  • Implemented grid-based A* pathfinding with dynamic updates when the player placed or removed obstacles.
  • Optimized enemy pathfinding by computing a single shared path for all enemies whenever the map changed, reducing A* calls from 24,000 to 1 in a 100-enemy benchmark and cutting total pathfinding CPU time from 8.4s to 0.65ms while keeping paths identical.
  • Built core tower and wave systems (placement/removal/upgrade, wave scheduling, monster spawning) plus a text-file driven configuration system and an in-engine path visualizer for debugging.

Challenges & Solutions

  • Naive per-enemy per-frame pathfinding blew up CPU cost; caching and sharing the path eliminated redundant work while preserving behavior.
  • Players could block all routes with obstacles, so we added pre-placement validation and fallback rules to prevent impossible or unfair maps.

Gallery

Contact

Feel free to reach out.