Game Design: Dungeons

by | Jan 22, 2021 | Development, Miscellaneous

Hi Everyone!

Hopefully, you’ve gotten through the first month of 2021 in one piece! You know what they say, “As one door opens another one … opens!” This is atleast the case for dungeon doors. 

One of the core elements of our Wheel of Fate game is the replayability of our ever changing dungeons. For this game design spotlight, we wanted to bring to light the thought process and logic surrounding these mysterious ruins. 

Here’s a deep dive into the game design behind the creation of Wheel of Fate’s procedural dungeons!



What was the most difficult part of creating the dungeons? 

The most difficult part of designing the dungeons was piecing it together. By that, I mean we had a clear vision of the dungeon system we wanted, had modular dungeon pieces and a working AI but it was a matter of connecting each operation. 

We had to make the AI capable of generating these unique dungeons based on player choices that it has observed. In addition, when there’s this much variability and combinations it makes testing very difficult. It’s hard finding solutions to weird problems when you’re still working on recreating the issue described. 


What are the dungeon doors with rocks over top of them?

So each modular dungeon piece is designed to have four ‘doors’ by default and the rocks are the AIs solution to fixing this. The purpose of this four doors design is so that they can be continuously combined with other modules. One module can have all four doors linked or based on your spin it’ll only have 2/4 doors available which is when the AI implements the ‘rock collapse’ to block those other doors. 


What do you feel could be improved upon on the dungeons?

Whenever I’m asked this question, I’ll almost always think ‘everything’ haha. Specifically for the dungeons I would want to improve the level design, tile sets, and revamping what’s there already. There’s certain areas I like and areas I don’t like at all. However, my main focus would be in redoing the level design so that there’s more difficulty variability between areas and based on spins. 


Which elemental dungeon is your favorite? Which is your least favourite?

Similar to the earlier game design blog post about the 4 races of the World of Providence, I like all four elements for various reasons so this is a hard question to answer.

 For the entrance way and aesthetic, I think the coolest ones are the changes made with the wind and fire elements. Water and Earth have really cool elements to them as well. The creatures for the water element have a great design. My least favorite is likely to be Earth since I’m not a fan of the particles and how dust and dirt is coming out of the torches. 


How did you design the dungeon traps? Ex. conveyor, spikes, elevators etc. 

Basically, the game design team had a list of trap concepts and set up videos of trap rooms to try out the various types. There were so many traps possible that were filtered through. Primarily, we chose the traps based on their compatibility with the AI, limited player displacement and overall variability. The traps had to be able to work with the AI in that they had to be able to be placed without breaking anything such as getting a player stuck in a wall or in a perpetual trap loop. The reason we wanted to limit player displacement was to prevent the changes of a perpetual trap loop which is when one trap knocks the player into another one and the cycle repeats itself continuously. 

Lastly, we wanted enough trap variability to work with the AI spins. In Wheel of Fate, you can have a conflict, knowledge, fortune, industry and adventure influence. Knowledge, for example, will spawn for puzzle-like traps. However the traps still need to fit with the modules and themes despite the variability.


Could you explain how the AI creates the dungeons?

  The AI for Wheel of Fate actually has a very sophisticated observation system. It observes the player choices throughout the game, even after the first spin it keeps learning about the player and builds on top of that. After watching what the player does, the AI influences the wheel based on choices which chooses the theme/element/tier. Then, the AI builds dungeons based off of the spin. Basically, the wheel spins, tells you what the spin is, and the AI generates stuff for what you get. This decision makes the seed of the dungeon, like a GMO, and builds out from choices. Module dungeon pieces are placed, the layout of dungeon changes and each room has smaller module pieces that also change. This is why the mini map will show you the rooms and number of doorways but the layout for each room does not necessarily matter.


How did you determine where to spawn chests and monsters?

It’s not really a choice. Based on predefined metrics, rules, and navmesh, the AI understands which areas are spots where things can happen and spawn. There’s a bit of randomness to it which is why sometimes you can have stuff spawning over a wall or over a cliff when boundaries are too tightly defined. 


Did you have any plans to expand on the dungeon?

We have tons of plans to expand. Ultimately in a shorter time frame, I would love to redo the tile sets. If I could redo the whole dungeon, then I would redo each modular dungeon piece and add more. Each dungeon piece would get a new tile set and new level design. I would also refine the generation part of the dungeon and add more logic between spaces for a more  interesting layout of the dungeon. This way the dungeons could be navigated but can still have interesting patterns. In addition, it’d be nice to have more specific pieces instead of generalized pieces but for now, most pieces are designed to be reusable due to limitations.



We hope you enjoyed this game design spotlight and got a better understanding of how the dungeons work. 

How about you? What do you think of the dungeons? Be sure to let us know in the comments! 



UDX Team

Wheel of Fate Eyecon game icon

Subscribe To Our Newsletter

Join our mailing list to receive the latest news and updates from our team.

You have Successfully Subscribed!