A downloadable game for Windows

Nobody scripted these bots. They taught themselves. 


This is a 1v1 arena shooter where your opponent is a robot that learned to move, aim and shoot entirely on its own. There's no hand-written AI here, no behavior trees or pathfinding tricks. It just played against copies of itself for thousands of matches and figured things out as it went. Some of what it learned is surprisingly good. Some of it is pretty dumb. Part of the fun is finding out which is which. 

How it plays 

  • 1v1 robot duels, first to 10 points wins. 
  • All weapons are hitscan lasers. 
  • No ammo, just cooldowns, so it comes down to timing and aim. 
  • Fights are quick. Once you spot each other, it's usually over in a few seconds. 

Weapons 

  • Blaster: your starting weapon, decent at medium range. 
  • Sniper Rifle: hits from any distance and hits hard, but takes a while to recharge. 
  • Shotgun: devastating up close, not much use from far away. 

Know your enemy 

The bot doesn't cheat. It can't see through walls and doesn't know where you are unless it's seen you. All it has is your last known position and how long ago that was. It moves and shoots with exactly the same tools you do. 

Left to its own devices, it developed a pretty particular style. It's obsessed with the shotgun, charges straight at you, and constantly jumps and crouches to throw off your aim. What it never figured out is how to retreat. If you're patient and keep your distance, you can take it apart. 

In playtests, new players usually won 3–5 rounds per match. Experienced players beat it 10:0. It's not a perfect opponent, and it was never meant to be. It's an experiment, and you're welcome to poke holes in it. 

Controls 

  • WASD / arrows: move 
  • Mouse: look around 
  • Left mouse: shoot 
  • Space: jump 
  • C: crouch 
  • 1 / 2 / 3: switch weapons 
  • Gamepad supported 

About 

I made this for my master's thesis, Using machine learning to control opponents in an FPS game, at Kielce University of Technology. The game is built in Unity. I trained the bot with reinforcement learning on my home PC over about 4 days, so it's a small-scale project, not a big lab setup. The source code and the full story of the training, including what went wrong, are on GitHub: https://github.com/radekdevjasinski/Machine-learning-FPS

Updated 5 days ago
Published 6 days ago
StatusPrototype
PlatformsWindows
Rating
Rated 5.0 out of 5 stars
(1 total ratings)
Authorradek.dev
GenreShooter, Simulation
Made withUnity
TagsExperimental, FPS, machine-learning, Robots, Unity
Average sessionAbout a half-hour
LanguagesEnglish
InputsKeyboard, Mouse, Xbox controller, Playstation controller
ContentNo generative AI was used

Download

Download
build mlfps.zip 57 MB

Leave a comment

Log in with itch.io to leave a comment.