ViZDoom logo.png
Standard Doom, Boom, Heretic, Hexen, Strife, UDMF
Codebase ZDoom
Developer(s) Michał Kempka, Grzegorz Runc, Jakub Toczek, Marek Wydmuch, et al.
Development status Active
Written in C++
Target Platform Windows, Linux, Mac OS X
Available in English (US), French, Italian
License MIT, others
Source Repository



ViZDoom is a source port derived from ZDoom. It is intended to be used for the development of AI players which have to rely on raw visual information instead of accessing the engine's internal data, by opposition to the AIs developed in various bots and ports such as AutoDoom.

To make things easier, there are however a few hooks available to AI developers, which can be accessed through C++, Java, or Python. The renderer is tweaked to allow to generate and access a depth buffer, and several statistics concerning the player (health, ammo, etc.) as well as up to 32 global ACS variables can be accessed. To permit machine learning, the first global variable is used to store a "reward" value, scripts can therefore be used to increase it or decrease it depending on player actions.

ViZDoom, originally called Vizia, was developed as the bachelor thesis project of four students at the Poznan University of Technology in Poland[1]. The project attracted mainstream attention when students at Carnegie Mellon Institute used it to teach an AI how to play Doom[2], which was interpreted by sensationalist journalists as teaching an AI how to murder humans[3].

External links[edit]


  1. Michał Kempka, Grzegorz Runc, Jakub Toczek, Marek Wydmuch (25 July 2016). "Vizia: 3D Video Game-Based Environment for Research on Learning Agents from Raw Visual Information." Retrieved 3 October 2016.
  2. Guillaume Lample, Devendra Singh Chaplot (18 September 2016). "Playing FPS Games with Deep Reinforcement Learning." Retrieved 3 October 2016.
  3. Scott Eric Kaufman (22 September 2016). "Meet your “Doom”: Carnegie Mellon researchers deliberately violate Asimov’s First Law of robotics, teach robots to kill." Retrieved 3 October 2016.
Source code genealogy
Based on Name Base for
ZDoom ViZDoom None