
Procedural Dungeon Tool
About
In this project, I've made a procedural dungeon generator tool using Random Walk, Corridor first algo, and Binary space partitioning to randomly generate dungeons and connect them with corridors with collidable walls with given specific details like size iteration.
Random Walk: I've used the Random walk algorithm to make a single room which became the base of my whole system.
Corridor first Algorithm: After a Random walk, I needed to connect my rooms with corridors so I used Corridor first algo to first make the corridors and randomly selected points at the end of corridors and used Random Walk to make rooms there. After that, I changed the code to remove dead ends and Scriptable objects to give parameters like Dungeon size, Room numbers, and the number of iterations.
Binary Space Partitioning: I've then added BSP to make a certain room size to make different sized rooms and the used Corridor first and Random walk to make the final dungeon.
Wall Placement: Lastly I've added to detect dungeon corners and endings to generate walls and their orientation and generated walls based on that. I've then added tilemap collider then created a dungeon based on that.
Game: I then created a game using my tool to create a very small game.