The Dawn Age - Dungeons!

Published April 06, 2013
Advertisement
[color=rgb(51,51,51)][font=Georgia]


Hi, I'm Cassio Eduardo Ferreira da Cunha a 21 years old programmer, game designer and founder of this company(Dumont Studios), based in Brazil. This is my second blog post, if you want to know more visit my blog: http://www.dumontstudios.com

[/font][/color]
[color=rgb(51,51,51)][font=Georgia]


Yesterday I finished the dungeon generation. I've never worked on a dungeon generation before, so I had to think for a while and write down what I needed. It ended up working perfectly and have a lot of parameters that I can change to customize the dungeon.

[/font][/color]
[color=rgb(51,51,51)][font=Georgia]


Editor-Screenshot-1.png
This is a "mini-map" view of the dungeon.
Blue - Walkable.
Yellow - Door.
Red - Wall.

[/font][/color]
[color=rgb(51,51,51)][font=Georgia]


There are 4 types of areas: corridors, rooms, locked rooms and secret rooms. The secret room don't have doors, you may have to break the wall(if there is a crack) or pull a lever.

[/font][/color]
[color=rgb(51,51,51)][font=Georgia]


Editor-Screenshot-5-1024x576.png
This is the dungeon generated above. The environment is placeholder, but we will get there eventually.

[/font][/color]
[color=rgb(51,51,51)][font=Georgia]


Next week, I will focus on core gameplay mechanics and pathfinding. Bye.

[/font][/color]
Next Entry Small Progress
3 likes 2 comments

Comments

jbadams

Welcome to GameDev.Net!

What sort of approach have you taken to your dungeon generation?

April 07, 2013 12:16 PM
Cerd

Thanks!

I use a 2D matrix to store the data(25x25 in this case). The algorithm is quite simple:


1 - Generate room at any position and add it to the rooms list
2 - Random a room or corridor from the list(in my case i don't pick locked or secret rooms. Only corridors and rooms)
3 - Pick a wall from the randomed area on step 2(do a few checks) and put a door
4 - Generate a room or corridor for the door(do a few checks)
5 - Place the generated room or corridor on the map and on their respective list
(2, 3, 4 and 5 are inside a loop.)

Of course this is a simplification, but this is the base of the current algorithm. The generation of chests, levers, monsters and other stuff should be easy after this.

This is how the matrix look like:
attachment.php?attachmentid=49320&d=1365
* - Empty space
0 - Wall
1 - Walkable
3 - Door
4 - Locked Door
5 - Secred Door/Wall

April 07, 2013 03:46 PM
You must log in to join the conversation.
Don't have a GameDev.net account? Sign up!
Profile
Author
Advertisement

Latest Entries

Advertisement