There’s A New DOOM Competition, But It’s For AI Only

There’s A New DOOM Competition, But It’s For AI Only

The internet has been privy to the results of StarCraft bots battling each other for years. Google’s AlphaGo AI recently conquered a game many thought once impossible. Bots playing games are cool, and programmers like making them.

But there hasn’t been a competition for bots playing DOOM — the original DOOM, that is. Fortunately, Visual Doom AI plans to fix that.

The premise behind the competition is pretty simple. While shooters have come a long, long way over the last couple of decades, the construction of AI bots hasn’t. “In particular, bots have still to “cheat” by accessing game’s internal data such as maps, locations of objects and positions of (player or non-player) characters,” the organisers of Visual Doom AI write.

So the task: if a player can play a game just using the feedback they receive from a game visually, why can’t an AI?

If you want to enter, you’ll have to write a controller for the ViZDOOM API that plays using C++, Python or Java. It’s being hosted by the Poznan University of Technology in Poland, and the winning bot will be determined the old fashioned way — through deathmatch.

Here’s the full rules, for clarity:

The participants of the Visual Doom AI competition are supposed to submit a controller (C++, Python, or Java) that plays Doom. The provided software gives a real-time access to the screen buffer as the only information the agent can base its decision on. The winner of the competition will be chosen in a deathmatch tournament.
Although the participants are allowed to use any technique to develop a controller, the design and efficiency of the Visual Doom AI environment allows and encourages participants to use machine learning methods such as reinforcement deep learning.

A full tutorial for the ViZDOOM API — which is based on Python — is available on the main site for those interested.

The final deathmatch will take place over two scenarios. Bots will only have access to the rocket launcher and whatever ammo and medikits they can find in the first scenario, although the map will be made known to creators ahead of time. In the second scenario, all items and weapons are usable, although the fight will take place on three unknown maps.

“Your controller will fight against all other controllers for 10 minutes on a single map. Each game will be repeated 12 times for track 1 and 4 times for track 2, which involves three maps. The controllers will be ranked by the number of frags,” the organisers said.

The final results will be announced in late September, with the warm-up deathmatch submissions due at the end of next month.

Note: the feature image was captured using the open-source ZDOOM, which you can play around with here.


  • But what if they learn to band together and instead take to the internet to verse humans in other death match based games?

  • Reminds me of a project a lifetime ago for Bejeweled 2. Proper respect for this guy:

    I used to enjoy watching and tweaking AI in Mugen bot matches. It was impressive to see the passion some authors put into their creations, but as with such things, there is no way to scale the difficulty down for a standard human player. Why would you want to.

    Would have loved to have got involved in AI, but this lifetime is now already spoken for.

  • Only visual data? What about audio data as well? It’s been a while since I last played MP DOOM but I’m pretty sure audio could be used to determine where people were as much as visual data.

    • I was thinking that too, then trying to remember what the audio was like. I’d be pretty confident to say that at the very least you’d hear nearby weapon fire in stereo.

    • It’s a valid idea of course, but I’d wager they narrowed the scope to make it easier to train your AIs for the competition.

  • This is okaaaaay, but it really doesn’t count if those AI aren’t trash talking about fucking your mum or bitching about goddamn campers. Show me an AI who can make another AI ragequit, and we’ll talk.

Log in to comment on this story!