ID:39071
 
Keywords: maps
Here I am, back again with a new dungeon generator. This one is so much better than my other one. Here is an example of a dungeon generated by it. You'll notice that there are many loops, unlike the previous one.

You can set any of the following variables to change the dungeon created:

        list/room_weights = list(100)
list/room_choices = list(/room/generic) // List of rooms to choose from when placing a room

floor_type = /turf/dirt
wall_type = /turf/earth

linear = FALSE // if this is true, the dungeon has no loops and is completely linear

room_count = 100 // how many rooms and passages to attempt to create
room_try = 10 // how many times it should try and place a particular room
min_room_size = 3 // minimum size of a room
max_room_size = 5 // maximum size of a room
room_satisfy = 10 // how many times to loop the generator in an attempt to generate room_count rooms/passages

min_passage_length = 12 // min/max passage length
max_passage_length = 24

erosion_probability = 25 // percent of walls to erode (off in the above example)
erosion_iterations = 0

loop_probability = 7 // probability of creating a loop
loop_randomness = 30 // randomness of the loop (high percentages cause the loop to wind all around


I may very well release the source to this. ;)
Why don't you release the source to it? Its not like a thousand people are going to rip your source code and build their own dungeon generator rips.

Oh, and your sample link doesn't work.
You can see a sample of this here. :)
Wow, I'd trim those hallways down to about 10-20% of their length. :P
If you want you can also take a look at the Map Generator which I build a few months back. I suspect it works on a pretty similar concept, but it makes nice maps regardless.

It also supports vaults.

And its open source.

http://www.byond.com/developer/Foomer/MapGenerator