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.
AI Controlled 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
Tools & Technologies
C++, NEAT (genetic algorithm + neural network), modular engine architecture, interface-driven design, game simulation loops, Git.




