[P] I built an AI that teaches itself to play Mario from scratch using Python — it starts knowing absolutely nothing

Hey everyone!

I built a Mario AI bot that learns to play completely by itself using Reinforcement Learning. It starts with zero knowledge it doesn’t even know what “right” or “jump” means — and slowly figures it out through pure trial and error.

Here’s what it does:

  • Watches the game screen as pixels
  • Tries random moves at first (very painful to watch )
  • Gets rewarded for moving right and penalized for dying
  • Over thousands of attempts it figures out how to actually play

The tech stack is all Python:

  • PyTorch for the neural network
  • Stable Baselines3 for the PPO algorithm
  • Gymnasium + ALE for the game environment
  • OpenCV for screen processing

The coolest part is you can watch it learn in real time through a live window. At first Mario just runs into walls and falls in holes. After a few hours of training it starts jumping, avoiding enemies and actually progressing through the level.

No GPU needed — runs entirely on CPU so anyone can try it!

🔗 GitHub: https://github.com/Teraformerrr/mario-ai-bot

Happy to answer any questions about how it works!

submitted by /u/Southern-Site4143
[link] [comments]

Liked Liked