9474

Recursive Dungeon Generation

This Demonstration uses a simple recursive algorithm to generate dungeon floor plans. The algorithm works by placing a room, drawing two hallways from random points on the room's walls, and then repeating the process with these two new starting points. While rooms are not allowed to be placed on top of each other, hallways can cross into rooms and through other hallways. Therefore boring dungeons are unlikely, provided that the number of rooms is sufficiently high for the dungeon size. The proposed start of the dungeon is marked in green, and the proposed exit point is marked in red. Because of the way the algorithm works, the start will always be connected to the end, so the dungeons will always be possible.

THINGS TO TRY

SNAPSHOTS

  • [Snapshot]
  • [Snapshot]
  • [Snapshot]
    • Share:

Embed Interactive Demonstration New!

Just copy and paste this snippet of JavaScript code into your website or blog to put the live Demonstration on your site. More details »

Files require Wolfram CDF Player or Mathematica.









 
RELATED RESOURCES
Mathematica »
The #1 tool for creating Demonstrations
and anything technical.
Wolfram|Alpha »
Explore anything with the first
computational knowledge engine.
MathWorld »
The web's most extensive
mathematics resource.
Course Assistant Apps »
An app for every course—
right in the palm of your hand.
Wolfram Blog »
Read our views on math,
science, and technology.
Computable Document Format »
The format that makes Demonstrations
(and any information) easy to share and interact with.
STEM Initiative »
Programs & resources for
educators, schools & students.
Computerbasedmath.org »
Join the initiative for modernizing
math education.
Powered by Wolfram Mathematica © 2014 Wolfram Demonstrations Project & Contributors  |  Terms of Use  |  Privacy Policy  |  RSS Give us your feedback
Note: To run this Demonstration you need Mathematica 7+ or the free Mathematica Player 7EX
Download or upgrade to Mathematica Player 7EX
I already have Mathematica Player or Mathematica 7+