Detail of a generated dungeon.

 

This project is a school project. The purpose is to generate a dungeon procedurally with like-shaped rooms : we need a start room, enemies rooms, a boss’s room, an ending room and the rooms of keys/bonus (Like in the Binding of Isaac).

The generated donjon is cut in several levels which require a key to reach it (recoverable in a room of key).

Inspired by the work of Calvin Ashmore (https://smartech.gatech.edu/bitstream/handle/18 53/16823/ashmore-thesis.pdf), we keep track of the intensity of our rooms to place key’s room where the tension is the higher.

We also generate procedurally the content of rooms by using a generative grammar to control a little bit the creation.

These rooms are cut in grid of 5×5 cells which can have the type : Empty, enemy, bonus or obstacle.

Finally all cells in front of doors are empty, so the player is not blocked when he/she enter in a new room. We also want that there is always a path to reach the next rooms.

The two big parts of my work are the generation of donjon and the contents of rooms.

 

detail of a generated room

 

 

Pattern Generator created in Unity

 

Sources : https://github.com/Suliac/DungeonGeneration