AI Game Controller


Neuro-evolutionary C++ Controller for a 2D Platformer

Overview

AI Game Controller is a C++ project that uses neuro-evolution (NEAT) to train an AI agent to navigate a 2D platformer environment. The focus is on creating adaptive behaviour, clean system decoupling and a flexible architecture that allows the AI to learn independently of the engine’s specific rendering or input systems.


Player Controlled Debug Mode

My Role

I designed and implemented the AI controller, integrated NEAT evolution logic, built the simulation loop and created the abstraction layer that connects the AI to the platformer game environment.

Key Features
  • NEAT-based evolutionary controller for platformer navigation
  • Clear separation between AI logic and engine systems
  • Modular agent interface for mapping game state to neural network inputs
  • Adaptive behaviour that improves across generations
  • Architecture designed for reuse across other game environments
Technical Highlights
  • Custom simulation loop enabling parallel evaluation of agent populations
  • Abstracted agent-environment interface for clean decoupling
  • Integration of neural networks with platformer movement logic
  • Fitness-driven evolution enabling agents to learn jumping, timing and navigation
  • Flexible design supporting different levels, obstacles and behaviours
Screen shots
  • Title Splash Screen
Tools & Technologies

C++, NEAT (genetic algorithm + neural network), modular engine architecture, interface-driven design, game simulation loops, Git.