Dungeon and Platformer Level Blending and Generation using Conditional VAEs

Variational autoencoders (VAEs) have been used in prior works for generating and blending levels from different games. To add controllability to these models, conditional VAEs (CVAEs) were recently shown capable of generating output that can be modified using labels specifying desired content, albeit working with segments of levels and platformers exclusively. We expand these works by using CVAEs for generating whole platformer and dungeon levels, and blending levels across these genres. We show that CVAEs can reliably control door placement in dungeons and progression direction in platformer levels. Thus, by using appropriate labels, our approach can generate whole dungeons and platformer levels of interconnected rooms and segments respectively as well as levels that blend dungeons and platformers. We demonstrate our approach using The Legend of Zelda, Metroid, Mega Man and Lode Runner.

[1]  Anurag Sarkar,et al.  Controllable Level Blending between Games using Variational Autoencoders , 2020, ArXiv.

[2]  Anurag Sarkar,et al.  Sequential Segment-based Level Generation and Blending using Variational Autoencoders , 2020, FDG.

[3]  Max Welling,et al.  Auto-Encoding Variational Bayes , 2013, ICLR.

[4]  Anurag Sarkar,et al.  Conditional Level Generation and Game Blending , 2020, AIIDE Workshops.

[5]  Julian Togelius,et al.  Procedural Content Generation via Machine Learning (PCGML) , 2017, IEEE Transactions on Games.

[6]  Santiago Ontañón,et al.  The VGLC: The Video Game Level Corpus , 2016, ArXiv.

[7]  Julian Togelius,et al.  Mario Level Generation From Mechanics Using Scene Stitching , 2020, 2020 IEEE Conference on Games (CoG).

[8]  Mark O. Riedl,et al.  Conceptual Game Expansion , 2020, IEEE Transactions on Games.

[9]  Honglak Lee,et al.  Attribute2Image: Conditional Image Generation from Visual Attributes , 2015, ECCV.

[10]  Simon M. Lucas,et al.  Evolving mario levels in the latent space of a deep convolutional generative adversarial network , 2018, GECCO.

[11]  Adam Summerville,et al.  Expanding Expressive Range: Evaluation Methodologies for Procedural Content Generation , 2018, AIIDE.

[12]  Gaël Varoquaux,et al.  Scikit-learn: Machine Learning in Python , 2011, J. Mach. Learn. Res..

[13]  Honglak Lee,et al.  Learning Structured Output Representation using Deep Conditional Generative Models , 2015, NIPS.

[14]  Julian Togelius,et al.  DeepMasterPrints: Generating MasterPrints for Dictionary Attacks via Latent Variable Evolution* , 2017, 2018 IEEE 9th International Conference on Biometrics Theory, Applications and Systems (BTAS).

[15]  Anurag Sarkar,et al.  Multi-Domain Level Generation and Blending with Sketches via Example-Driven BSP and Variational Autoencoders , 2020, FDG.

[16]  Edoardo Giacomello,et al.  DOOM Level Generation Using Generative Adversarial Networks , 2018, 2018 IEEE Games, Entertainment, Media Conference (GEM).

[17]  Maria L. Rizzo,et al.  Energy statistics: A class of statistics based on distances , 2013 .

[18]  Morteza Behrooz,et al.  The Learning of Zelda: Data-Driven Learning of Level Topology , 2015 .

[19]  Jacob Schrum,et al.  Generative Adversarial Network Rooms in Generative Graph Grammar Dungeons for The Legend of Zelda , 2020, 2020 IEEE Congress on Evolutionary Computation (CEC).

[20]  Anurag Sarkar,et al.  Towards Game Design via Creative Machine Learning (GDCML) , 2020, 2020 IEEE Conference on Games (CoG).

[21]  Anurag Sarkar,et al.  Blending Levels from Different Games using LSTMs , 2018, AIIDE Workshops.

[22]  M. Boden The creative mind : myths & mechanisms , 1991 .

[23]  Anurag Sarkar,et al.  Game Level Clustering and Generation using Gaussian Mixture VAEs , 2020, AIIDE.

[24]  Anurag Sarkar,et al.  Exploring Level Blending across Platformers via Paths and Affordances , 2020, AIIDE.

[25]  Santiago Ontañón,et al.  Learning to Generate Video Game Maps Using Markov Models , 2017, IEEE Transactions on Computational Intelligence and AI in Games.

[26]  Yoshua Bengio,et al.  Generative Adversarial Nets , 2014, NIPS.

[27]  Luca Antiga,et al.  Automatic differentiation in PyTorch , 2017 .

[28]  Michael Mateas,et al.  Sampling Hyrule: Sampling Probabilistic Machine Learning for Level Generation , 2015 .

[29]  Jacob Schrum,et al.  Using multiple generative adversarial networks to build better-connected levels for mega man , 2021, GECCO.

[30]  Julian Togelius,et al.  Autoencoder and Evolutionary Algorithm for Level Generation in Lode Runner , 2019, 2019 IEEE Conference on Games (CoG).

[31]  Joseph Corneli,et al.  Towards Generating Novel Games Using Conceptual Blending , 2021, Proceedings of the AAAI Conference on Artificial Intelligence and Interactive Digital Entertainment.

[32]  Jacob Schrum,et al.  Illuminating the space of beatable lode runner levels produced by various generative adversarial networks , 2021, GECCO Companion.

[34]  Jacob Schrum,et al.  Interactive evolution and exploration within latent level-design space of generative adversarial networks , 2020, GECCO.

[35]  Anurag Sarkar,et al.  Generating and Blending Game Levels via Quality-Diversity in the Latent Space of a Variational Autoencoder , 2021, FDG.