Dev Log: Teaching Five Enemies to Think Differently
Breadth-first search, trail following, role-based flanking and disguise: a look at the simple rules that give each Neon Burrow enemy a distinct personality.
Enemies in a maze game have a hard job. They need to feel threatening without feeling unfair, and each type needs a personality that players can learn to read. In Neon Burrow we wanted five enemies that a player could tell apart by behaviour alone, even with the colours turned off. This dev log explains the shared foundation every enemy is built on and the small targeting rules that make each one feel different.
One brain, many targets
Every enemy in Neon Burrow uses the same movement system. At each intersection, the enemy asks one question: given my target tile, which direction gets me there fastest? The answer comes from a breadth-first search over the maze grid.
We chose breadth-first search over more sophisticated algorithms for three reasons:
- The grid is small. At 21 by 21 tiles, a full search costs almost nothing, even with a dozen enemies searching several times a second.
- It is always correct. On a uniform grid, breadth-first search finds the true shortest path. Enemies never get stuck on corners or take strange detours, which is the fastest way to make AI look broken.
- It reacts to change. When the Crystal Network's walls shift, every enemy simply searches again on the new layout. No precomputed paths need to be invalidated.
Because the search itself is identical for every enemy, personality comes entirely from where each enemy decides to go. That single design choice kept the code small and made each enemy easy to tune.
Alerts: telling the player first
Before looking at individual types, one shared feature deserves mention. When any enemy comes within five tiles of Pip, it enters an alert state: a red exclamation mark pops above it and a short alarm plays. We added this after early playtests where players felt ambushed from off-screen. The alert gives a fraction of a second of warning, enough to react, and it became one of the most important sounds in the game.
The Seeker: following the trail
Our first prototype enemy chased the player's current position directly. It was effective and completely boring. Every encounter played out the same way: the enemy closed in along the shortest path, and the player either outran it or did not.
The Seeker's final design came from a simple change. Instead of targeting Pip, it targets a point roughly nine steps back along the trail Pip has walked. The game keeps a short history of the tiles Pip has visited, and the Seeker aims at an older entry in that list.
The effect is dramatic. Seekers now feel like hounds tracking a scent. They follow corridors you took, not shortcuts you could have taken. Players quickly discover they can lead a Seeker around a loop and lose it, which creates satisfying moments of outsmarting the AI.
To keep Seekers dangerous, they switch to direct chase once they get within about four tiles. Far away they are predictable; close up they are relentless.
The Blocker: owning territory
The Blocker needed to create a different kind of pressure: spatial rather than pursuit. At spawn, each Blocker scans the corridors around it and chooses the longest straight run it can find. It then patrols that corridor back and forth for the rest of the district.
The Blocker barely uses its search at all. It is the simplest enemy in the game, but it changes how players plan routes, because the most efficient corridors are exactly the ones Blockers tend to claim.
Swarm Drones: three roles, one pack
The drones were the most fun to design. We wanted an enemy that cooperated, but genuine coordination between agents can quickly become expensive and unpredictable. Instead, we gave each drone in a pack of three a fixed role:
- The chaser targets Pip directly.
- The interceptor targets a point about four tiles ahead of the direction Pip is facing.
- The closer targets a point about three tiles behind Pip.
None of the drones knows about the others. Each one simply aims at its own target. Yet the result looks like teamwork: one drone appears in front of you, one behind and one follows. Emergent coordination from independent rules is one of our favourite tricks in game AI.
When any drone gets within two tiles, it drops its role and chases directly. Without that rule, the interceptor would sometimes run past a player standing right next to it, which looked silly.
The Mimic: a different kind of threat
The Mimic's behaviour is simple once revealed: it chases. Its interest lies in what happens before. A hidden Mimic is rendered exactly like an energy seed. When Pip comes within about 2.6 tiles, the Mimic spends about 0.6 seconds revealing itself, then hunts.
That 0.6-second reveal was tuned carefully. Shorter, and Mimics felt like cheap shots. Longer, and they were not threatening. At 0.6 seconds, a player who is paying attention can react, either by turning away or by triggering Overcharge to destroy the Mimic before it moves.
The Warden: the escalation
The Warden is fast, faster than Pip at base speed, and it targets you directly. What makes it special is timing. Wardens only spawn when you activate the Pulse Core in the Core Vault. They are a deliberate escalation at the most tense moment in the game.
We also made Wardens partially resistant to Time Spark: they slow to half speed for the first second, then recover to 85 percent. Early playtests showed that Time Spark completely neutralised them, which removed the tension we wanted.
Decoy Bot: overriding everything
Because every enemy chooses a target tile and then searches toward it, the Decoy Bot ability was trivial to implement. While a decoy is active, every enemy's target is simply replaced with the decoy's position.
What we learned
The biggest lesson was that personality comes from goals, not algorithms. All five enemies use the same pathfinding. They feel completely different because they want different things. That separation also made balancing easy: adjusting a Seeker's trail distance or a drone's lookahead is a one-number change that dramatically alters how they play.