Play as a stray fox trying to escape a post-Apocalyptic Paris. Explore the surroundings and stay out of the path of the dangerous wolves that haunt the city.

A wolf goes to the last know location of the fox, and approaches the player's hiding spot

Wolf AI

As the AI Designer responsible for the wolf character, my main task was to enhance the player’s immersion within the game world. I used Behavior Trees and custom Behavior Tree Tasks, blackboards, and AIControllers to accomplish this.

Before I started working on this I approached all the disciplines that would be interacting with the wolf, to ensure the systems where made from the ground up including features that visual artists and level designers would need to optimize the player experience.

The wolf’s primary role was to navigate specific sections, interacting with the player by pursuing them when detected. However, once the player successfully hid, the wolf was programmed to cease its chase and allow the player to continue undisturbed. To further heighten the suspense, I incorporated the wolf cautiously approaching the player’s hiding spot, providing a thrilling near-miss experience.

The behavior tree of the wolf, click to enlarge

Wolf AI

As the AI Designer responsible for the wolf character, my main task was to enhance the player’s immersion within the game world. I used Behavior Trees and custom Behavior Tree Tasks, blackboards, and AIControllers to accomplish this.

Before I started working on this I approached all the disciplines that would be interacting with the wolf, to ensure the systems where made from the ground up including features that visual artists and level designers would need to optimize the player experience.

The wolf’s primary role was to navigate specific sections, interacting with the player by pursuing them when detected. However, once the player successfully hid, the wolf was programmed to cease its chase and allow the player to continue undisturbed. To further heighten the suspense, I incorporated the wolf cautiously approaching the player’s hiding spot, providing a thrilling near-miss experience.

A wolf goes to the last know location of the fox, and approaches the player's hiding spot
The behavior tree of the wolf, click to enlarge

Developer tools

In addition to my involvement in the core project, I contributed to the development of several useful tools. One of these tools was a developer menu that allowed seamless teleportation within the game levels, enabling efficient testing and debugging for developers working on the levels and their functionality.

To enhance the workflow for developers working with the AI system I developed, I implemented an in-engine button. This button provided valuable insights by displaying the paths taken by each wolf character. It was a handy tool for analyzing and fine-tuning the behavior of the AI entities, to create a better player experience.

A menu meant for developers to teleport around the map, load other leves, and change variables such as the player state and save game

Developer tools

In addition to my involvement in the core project, I contributed to the development of several useful tools. One of these tools was a developer menu that allowed seamless teleportation within the game levels, enabling efficient testing and debugging for developers working on the levels and their functionality.

To enhance the workflow for developers working with the AI system I developed, I implemented an in-engine button. This button provided valuable insights by displaying the paths taken by each wolf character. It was a handy tool for analyzing and fine-tuning the behavior of the AI entities, to create a better player experience.

A menu meant for developers to teleport around the map, load other leves, and change variables such as the player state and save game
Colored arrows showed level designers which paths wolfs would take which they could then easily edit
I created an in engine button for debugging the navigation of the wolfs in the level editor.