​Welcome to the Game AI Game Engine site!

The Game AI Game Engine (GAIGE) is a simple Game Engine designed to introduce students to Artificial Intelligence in computer games. Artificial Intelligence is an important part of most modern computer game development, providing path planning so non-player characters do not run into obstacles, decision-making so that non-player characters appear believable and present challenges in combat, etc. Students will modify GAIGE through a series of short programming assignments, resulting in a fully functional game inspired by Multi-user Online Battle Areas (MOBAs).

GAIGE is written in Python, using the PyGame library for graphical rendering. A screenshot of the final MOBA game is shown below. Although the game engine uses simple 2D top-down rendering, the game engine code base focuses on the artificial intelligence aspects of controlling agent navigation and decision making in a real-time environment.

Game AI programming topics covered:

  • Grid-based navigation
  • Automatic generation of navigation meshes
  • All-pairs shortest-path navigation
  • A* path finding
  • Finite state machines (focusing on integration in real-time game systems)
  • Behavior trees
  • Tactical and strategic combat decision making

Auto-graders are available upon request by verified instructors.