One of the longest-lasting and most successful video-game franchises is the Doom series, launched in 1993 and still going strong with over 10 million copies sold. The game is a first-person shooter in which a space marine battles to survive against various demons and zombies.
The game is notable because it pioneered 3-D graphics for PCs running MS-DOS, introduced networked multiplay, and even allowed players to create their own game levels. Indeed, large numbers of Doom levels—both official and player-created—are now freely available online, forming a formidable corpus for study and research.
And that raises an interesting possibility. Is it possible to use this data to train a deep-learning algorithm to create its own levels of Doom that a human would find compelling?
Today we get an answer thanks to the work of Edoardo Giacomello and colleagues at the Politecnico di Milano in Italy. These guys say it is indeed possible to create compelling Doom levels in this automated way, and that the technique has significant potential to change the way game content is created.
The team’s approach is relatively straightforward. They begin with 1,000 Doom levels taken from a repository of publicly available games, which includes all the official levels from Doom and Doom 2 as well as more than 9,000 levels created by the gaming community.
The team then processed each level to generate a set of images that represent its most important features, such as the walkable area, walls, floor height, objects, and so on. They also created a vector that captured important features of the level in numerical form, such as the size, area, and perimeter of rooms, the number of rooms, and so on.
Then they used a deep-learning technique called a generative adversarial network to study the data and learn how to generate new levels.
The results show just how powerful this technique is. After some 36,000 iterations, the deep-learning networks were able to produce levels of good quality. “Our results show that generative adversarial networks can capture intrinsic structure of DOOM levels and appears to be a promising approach to level generation in first person shooter games,” say Giacomello and co.
The researchers have tested the new levels and say they are interesting to explore and play, with typical Doom features such as narrow tunnels and large rooms. You can watch one of the levels being played here.
Of course, the levels are not perfect. For example, deep-learning networks struggle to produce fine detail, probably because of noisy data that is inevitably generated with this kind of approach.
Nevertheless, even this level of automation could have significant implications for game designers. “Levels are of paramount importance, especially in first person shooter and platform games, as they greatly affect the player experience,” says Gicomello and co. But content creation is one of the most time-consuming and expensive parts of the development process.
Game makers rely on human expertise and extensive testing to create good levels. And because this is so expensive, many of them are looking for effective ways to automate the process or assist the game designer.
Perhaps this it. Finding a way to automate level creation, at least in part, is a significant achievement. It should free up human designers to focus on bigger-picture issues, such as the type of level they want to generate. “Human designers can focus on high-level features by including specific types of maps or features in the training set,” say Giacomello and co.
In the last few years, computer scientists have shown how deep-learning machines can learn to play video games from scratch and then quickly outperform human players. So it’s not really a surprise that they can learn to design some aspect of the games too.
The bigger question is to what extent they can ever help with the more creative process of creating a back story for characters, generating a compelling story line for an entire game, or developing original game play. Humans aren’t redundant in this respect just yet.
Ref: arxiv.org/abs/1804.09154 : DOOM Level Generation using Generative Adversarial Networks