Lurking in the shadows
In our entry The Lamplighter we decided to go for a dark mood. We implemented the game with unreal and the main mechanic is a torch you need to charge to make your way through the eyes that lurk in the shadows.

Enemies
They had to be very simple but creepy & challenging. We ended up with a plane with a texture, and to do the blinking we only needed to scale the UP axis.
AI behavior
They had to reinforce the feeling of 1. danger ahead 2. being followed
Initially we tried to do the most simple AI possible: just entities that move brainlessly towards the player, to avoid creating complexity and dealing with the navmesh and behavior trees, but in the end we needed to go ahead and add a bit of complexity in this layer.
To do so, we implemented a very simple AI that just follows the player once they detect him, after a random time range. You can see the highly complex behavior tree:

This only worked to reinforce the point 1. To create the feeling of being followed, we decided to respawn the enemies behind the player once they were killed with light. To implement this, we used a simple environmental query:

This generates a circle of positions around the player and scores every position with the following tests: 1. Prefer greater distance to the player 2. Prefer greater distance to lit lamp posts 3. Get only positions that are in the navmesh 4. Get only the positions that are behind the player
All the tests work together, but it is the test (4) that made the magic.
