Apex Utility AI

Apex Utility AI
Scripting Guide

All features described!

Scripting Guide

Obtain or
Redeem License

If you bought the Apex Utility AI product on Unity’s Asset Store, you need to obtain or redeem your license through our simple tool.

Obtain or Redeem License

Apex Utility AI
Survival Shooter tutorial

Requires Apex Utility AI.
Full functionality in both free and pro. Supports Unity 5.

The Apex Survival Shooter Tutorial Project is a complete implementation of the Apex Utility AI in the Unity Survival Shooter third-person survival shooter game. The project takes you through all the phases required to implement a game-ready AI.

The tutorial is a detailed step-by-step implementation of several core functionalities and use-cases of the Apex Utility AI.

Features include:

– Setting up the Apex Utility AI
– Configuring the Context
– Sensing
– Memory Management
– Target Prioritization
– Tactical Movement
– Action Prioritization
– Use of special abilities
– Working with Scorers
– Working with Qualifiers
– Parallel AIs

Apex Utility AI
Survival Shooter tutorial

Grab the project files from Unity Asset Store

Unity Asset Store

Survival Shooter
video tutorial

Video tutorials

Document Tutorial

Document tutorials

Example Tutorials

Creating a Utility AI from Scratch

Learn how to create a Utility AI from scratch based on components.

This example is based on using MonoBehaviours / Components.

Creating a Utility AI from Scratch

Target Selection

Selecting and prioritizing targets using the Apex Utility AI

Targeting is a critical part of many games where computer driven AI and AI controlled by the player has to select a target from a list of possible targets for a given attack. Across game genres, from real-time-strategy (RTS) to first-person shooters (FPS), targeting is essential in great combat. Utility AI is especially good at prioritization and evaluation given many complex inputs.

Target Selection

Vision and Hearing in Apex Utility AI

This tutorial shows how scanning can be implemented as an action controlled by the Apex Utility AI. This allows the AI to control when to scan and how scanning is performed. Scanning can be a central part of the game, in the case of e.g. stealth games or other games where sensory input is varied and complex. The Apex Utility AI makes it easy to handle any number of different sensory input types.

Vision and Hearing

Memory Management in
Apex Utility AI

Learn good practices and guidelines for memory management in AI for games.

Memory management is an important part of any Apex Utility AI implementation. To design and create an intelligently behaving Utility AI agent, the agent will most likely need access to some form of storage for observations. Additionally, by storing a custom observation type with relevant meta-data, the Utility AI can be designed to work on partial/incomplete knowledge, but still behave realistically.
In the simplest implementation, the memory consists solely of a list of observations. In its most complicated form, the memory is an advanced class exposing a set amount of methods for adding, updating, getting and removing observations.

Memory Management

Real-Time Strategy Demo

This end-to-end tutorial shows a mini-game implemented in Unity using the Apex Utility AI for all decision making. The RTS demo showcases multiple use-cases, including resource management, single unit intelligence, group coordination and combat evaluations.

RTS Demo

Basic Getting Started

This series of very basic tutorials showcase how to accomplish very simple, basic tasks using the Apex Utility AI. Common tasks such as moving, sampling positions and storing observations are showcased with and without Apex Path and Apex Steer.

Getting Started

Planned Example Tutorials

Modelling Dynamic Dialogue

Learn how a simple dynamic trade dialogue AI can be designed with the Apex Utility AI.

The scenario is based on the typical use case of many role-playing games (RPG) in which the player needs to speak with a merchant or shopkeeper to purchase gear and power-ups. In this use case, the player visits a shopkeeper, where the player can purchase health items, such as potions; weapons, such as swords and axes, and armor. Depending on arbitrary factors such as the state of the player, the reputation of the player, and how many times the player has previously purchased items, we want the shopkeeper to offer different items, of varying quality, and of varying prices. Moreover, we want to the shopkeeper to construct actual sentences that can be used as dialogue, to contain information about the offering to the player.

Dynamic Game Worlds
with Apex Utility AI

Many games today features immersive stories. Several AAA titles excel in offering an abundance of quests, well-written storylines, and countless side stories. To achieve this, many studios hire professional story writers, and invest a large part of the development budget on this side of the game. However, the handcrafted stories come at a price. Replayability is limited to the number of quests and side stories, after which the game becomes repetitive. Scripted stories also risk becoming irrelevant, e.g. if the e.g. the game progressed too fast for them to have relevance. For indie studios, budgeting for thousand of hours of writing stories is not feasible , and for sandbox games, scripted story lines are not an option.


Interactive storytelling, based on a dynamic and interactive universe has long been a dream for many game designers. A universe that is alive, evolving, and in which AIs will interact with the player based on the real events that unfold at any time in the game. This is now achievable with utility AI techniques.