AI Technology

Using Conditional GANs to Build Zelda Game Levels

A team of researchers has proposed a Generative Adversarial Network based model tasked with creating playable and aesthetically appealing game levels for popular action-adventure video game series The Legend of Zelda.

In recent years AI models have learned to play games ranging from Go to Poker to StarCraft. One-by-one, the machines have demonstrated their superiority over even the strongest human players. With the challenge seemingly solved for existing games, what about testing AI in an entirely different way — by having it design new games for humans to play? A team of researchers has proposed a Generative Adversarial Network based model tasked with creating playable and aesthetically appealing game levels for popular action-adventure video game series The Legend of Zelda.

In their paper Bootstrapping Conditional GANs for Video Game Level Generation, researchers from New York University, IT University of Copenhagen, OriGen.ai, and modl.ai propose a new GAN architecture, CESAGAN (COnditional EMbedding Self-Attention Generative Adversarial Network), combined with a new bootstrapping training procedure. Compared to the traditional approaches using GAN to create game levels, CESAGAN produces more playable levels and fewer duplicate levels.

CESAGAN is a variation on a self-attention GAN combined with conditional embedding, where the feature information vector conditions the training of the discriminator and generator. Another essential component of CESAGAN is its bootstrapping mechanism. To increase the number of game levels for training the discriminator, researchers added playable generated levels to the training set for continued training of the GAN — a bootstrapping mechanism which expanded the model’s coverage and scope.

To complete a Zelda level, players must obtain a key and reach the exit door. Players also have to avoid being killed by enemies. Extra points will be awarded to players for killing enemies using a sword. Based on the Zelda rules, researchers set a few checkpoints to ensure playability:

  • There is only one player avatar.
  • There is only one key.
  • There is only one door.
  • Enemies cover less than 60% of the empty space (it is harder to beat the level when there are too many enemies)
  • The avatar can reach the key using an A* algorithm.
  • The avatar can reach the door using an A* algorithm.
  • The level has a border of walls to prevent the avatar and enemies to go outside the level.

Researchers used a total of 45 Zelda levels as training data. Without bootstrapping, CESAGAN improved game playability and decreased the ratio of duplicated levels compared with the baseline GAN. The researchers also trained CESAGAN with bootstrapping on five human-designed levels, where it increased playability from the baseline GAN’s 25 percent to 47 percent, and lowered the percentage of duplicated levels from 98 percent to 60 percent.

Researchers believe that advancements in deep neural networks will enable the further elimination of duplicate game levels, and that in the future CESAGAN could be deployed in more sophisticated video games such as Boulderdash.

The paper Bootstrapping Conditional GANs for Video Game Level Generation is on arXiv.


Journalist: Fangyu Cai | Editor: Michael Sarazen

0 comments on “Using Conditional GANs to Build Zelda Game Levels

Leave a Reply

Your email address will not be published.

%d bloggers like this: