https://github.com/earamir4/hybrid-game-ai-framework
An AI Framework developed in the Unity Game Engine for an ASU Barrett Honors Creative Project
https://github.com/earamir4/hybrid-game-ai-framework
ai-framework csharp unity-game-engine unity3d
Last synced: 6 months ago
JSON representation
An AI Framework developed in the Unity Game Engine for an ASU Barrett Honors Creative Project
- Host: GitHub
- URL: https://github.com/earamir4/hybrid-game-ai-framework
- Owner: earamir4
- License: mit
- Created: 2018-04-19T22:03:54.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2018-06-09T20:40:17.000Z (about 8 years ago)
- Last Synced: 2025-02-13T22:49:17.597Z (over 1 year ago)
- Topics: ai-framework, csharp, unity-game-engine, unity3d
- Language: C#
- Size: 64.5 KB
- Stars: 1
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Behavior Trees + Finite State Machines: A Hybrid Game AI Framework
Undergraduate ASU Barrett Honors Creative Project
## Abstract
One of the core components of many video games is their artificial intelligence. Through AI, a
game can tell stories, generate challenges, and create encounters for the player to overcome.
Even though AI has continued to advance through the implementation of neural networks and
machine learning, game AI tends to implement a series of states or decisions instead to give the
illusion of intelligence. Despite this limitation, games can still generate a wide range of
experiences for the player.
The Hybrid Game AI Framework is an AI system that combines the benefits of two commonly
used approaches to developing game AI: Behavior Trees and Finite State Machines. Developed
in the Unity Game Engine and the C# programming language, this AI Framework represents the
research that went into studying modern approaches to game AI and my own attempt at
implementing the techniques learned. Object-oriented programming concepts such as
inheritance, abstraction, and low coupling are utilized with the intent to create game AI that’s
easy to implement and expand upon. The final goal was to create a flexible yet structured AI data
structure while also minimizing drawbacks by combining Behavior Trees and Finite State
Machines.