A maze exploration and combat game with procedurally generated dungeon.
Dungeon generation takes five steps. First rooms of random sizes are generated and placed within the dungeon. Then a flood-fill algorithm fills all the space between these rooms with hallways.
Each isolated space is then assigned a region and the walls that separate two regions are then designated as connectors. At least one connector is selected for each adjacent region to be destroyed, this continues until all regions are unified. Additional connections are made between regions two create loops within the maze.
Next dead ends (spaces with three walls) are removed one by one to create a more cohesive environment.
Lastly the rooms are populated with enemy slimes, an exit is placed within the maze and the player is spawned.
Made with the Unity engine in C#.