Agent-based AI

C++ AI tech demo

Introduction

Set in the framework of a zombie survival game, this is an AI capable of survival by applying decision-making, steering behaviors, exploration, environmental awareness, combat and inventory management.

What I learned

I got acquainted with artificial intelligence through this project and learned all about the different aspects of AI and its purposes.
I also learned all about the C++ implementations of building a finite state machine and the AI steering pipeline.

How it works

The decision-making works with a finite state machine, which implements the following states: exploration, travel and combat.
The exploration state is based on a custom implementation of the rapidly exploring random tree.
Movement and travel works by applying the steering pipeline with 2 behaviors: seek and scan,
seek will face and move towards an objective, scan will do a 360° rotation to find objectives or hazards.
Furthermore, the AI will behave based on an aggression factor that is made up by its current equipment. This behavior can be either evade or engage when encountering an enemy.

Media