When Towers Behave (Mostly) Like They Should


The Problem(s)

This stretch of development was basically a three‑act play starring my towers:

Act I: The AoE Tower That Forgot It Was AoE I built out three tower types — single‑target, AoE, and status‑effect — and everything compiled fine. But when I tested the AoE tower, enemies inside the explosion radius just shrugged and kept walking. Radial damage wasn’t applying at all. I spent hours spelunking through Unreal’s collision and damage pipeline, logging values like a mad scientist.

Act II: The Effect Tower That Refused to Slow Down The status‑effect tower was even more stubborn. Damage worked, but debuffs like Slow never triggered. After way too much head‑scratching, I realized the projectile was only listening for OnHit events, while my agents were set up to overlap. Translation: damage fired, effects didn’t. Once I refactored the projectile to override the overlap handler, the logs finally sang the words I’d been waiting for:

Slowing Agent from X to Y

Act III: The Classic Unreal “Miss‑Sync” And then there was the AoE tower again. After all that debugging, one morning I reopened the project and — poof — the bug was gone. No code changes, no magic fix, just Unreal being Unreal. Sometimes the engine just needs a nap.

The Solution

After all the drama, here’s where things landed:

  • Single‑Target Tower: Stable and reliable.
  • AoE Tower: Radial damage confirmed working (when Unreal feels like cooperating).
  • Effect Tower: Debuffs now apply consistently thanks to overlap handling.

I also hardened the code against crashes by cleaning up timers and using weak pointers in lambdas, so no more “apply slow to a corpse” crashes.

The Takeaway

These weeks were a reminder that in game dev, compiling is just the beginning. The real work is making sure systems behave in the chaos of actual gameplay. Sometimes that means deep‑diving into collision events, sometimes it means refactoring event bindings, and sometimes it just means reopening the editor and letting Unreal sort itself out.

For players, this means towers that actually do what they say on the tin:

  • AoE towers explode things.
  • Effect towers slow and poison things.
  • Single‑target towers keep the pressure steady.

For me, it means I can finally move on to polish: adding visual indicators for debuffs, letting players possess towers with a key press instead of walking over, and even allowing tower destruction with partial refunds so strategy feels flexible instead of punishing.

Get Wave Breakers – Strategy Hybrid Tower Defense

Leave a comment

Log in with itch.io to leave a comment.