# Path of Destruction: Learning an Iterative Level Generator Using a Small Dataset

arXiv: https://arxiv.org/abs/2202.10184 · HTML: https://mlsanity.com/paper/2202.10184/

## Key facts

- Cited by 14 papers in the map (data through 14 Oct 2026).
- Builds on 11 of its 30 references that are in the map.
- First posted on arXiv 21 Feb 2022.

## Builds on (most cited first, 11 of 11)

- [Diffusion Models Beat GANs on Image Synthesis](https://mlsanity.com/paper/2105.05233/) (2021)
- [Generative Image Inpainting with Contextual Attention](https://mlsanity.com/paper/1801.07892/) (2018)
- [Procedural Content Generation via Machine Learning (PCGML)](https://mlsanity.com/paper/1702.00539/) (2017)
- [PCGRL: Procedural Content Generation via Reinforcement Learning](https://mlsanity.com/paper/2001.09212/) (2020)
- [Evolving Mario Levels in the Latent Space of a Deep Convolutional Generative Adversarial Network](https://mlsanity.com/paper/1805.00728/) (2018)
- [Super Mario as a String: Platformer Level Generation Via LSTMs](https://mlsanity.com/paper/1603.00930/) (2016)
- [Learning Controllable Content Generators](https://mlsanity.com/paper/2105.02993/) (2021)
- [Bootstrapping Conditional GANs for Video Game Level Generation](https://mlsanity.com/paper/1910.01603/) (2019)
- [Illuminating Diverse Neural Cellular Automata for Level Generation](https://mlsanity.com/paper/2109.05489/) (2021)
- [Rotation, Translation, and Cropping for Zero-Shot Generalization](https://mlsanity.com/paper/2001.09908/) (2020)
- [Mixed-Initiative Level Design with RL Brush](https://mlsanity.com/paper/2008.02778/) (2020)

## Built on by (most cited first, 14 of 14)

- [DreamCraft: Text-Guided Generation of Functional 3D Environments in Minecraft](https://mlsanity.com/paper/2404.15538/) (2024)
- [Mutation Models: Learning to Generate Levels by Imitating Evolution](https://mlsanity.com/paper/2206.05497/) (2022)
- [The Procedural Content Generation Benchmark: An Open-source Testbed for Generative Challenges in Games](https://mlsanity.com/paper/2503.21474/) (2025)
- [Measuring Diversity of Game Scenarios](https://mlsanity.com/paper/2404.15192/) (2024)
- [GriddlyJS: A Web IDE for Reinforcement Learning](https://mlsanity.com/paper/2207.06105/) (2022)
- [Balancing of competitive two-player Game Levels with Reinforcement Learning](https://mlsanity.com/paper/2306.04429/) (2023)
- [Start Small: Training Controllable Game Level Generators without Training Data by Learning at Multiple Sizes](https://mlsanity.com/paper/2209.15052/) (2022)
- [Controllable Path of Destruction](https://mlsanity.com/paper/2305.18553/) (2023)
- [Reconstructing Existing Levels through Level Inpainting](https://mlsanity.com/paper/2309.09472/) (2023)
- [Improving Conditional Level Generation using Automated Validation in Match-3 Games](https://mlsanity.com/paper/2409.06349/) (2024)
- [Simulation-Driven Balancing of Competitive Game Levels with Reinforcement Learning](https://mlsanity.com/paper/2503.18748/) (2025)
- [Learning Local Constraints for Reinforcement-Learned Content Generators](https://mlsanity.com/paper/2605.13570/) (2026)
- [Representing and Generating Levels Over Time through Playtrace Reconstructive Partitioning](https://mlsanity.com/paper/2607.12097/) (2026)
- [ELMER: Evolutionary Language Model that Explores and Refines](https://mlsanity.com/paper/2608.10196/) (2026)

## Abstract (arXiv)

We propose a new procedural content generation method which learns iterative level generators from a dataset of existing levels. The Path of Destruction method, as we call it, views level generation as repair; levels are created by iteratively repairing from a random starting level. The first step is to generate an artificial dataset from the original set of levels by introducing many different sequences of mutations to existing levels. In the generated dataset, features are observations of destroyed levels and targets are the specific actions that repair the mutated tile in the middle of the observations. Using this dataset, a convolutional network is trained to map from observations to their respective appropriate repair actions. The trained network is then used to iteratively produce levels from random starting maps. We demonstrate this method by applying it to generate unique and playable tile-based levels for several 2D games (Zelda, Danger Dave, and Sokoban) and vary key hyperparameters.
