• Alexios
  • AI
  • C++
  • debianisations
  • roguelikes

I've always been a fan of roguelike games (as evidenced by the inanity that is Kareltima). I've also always been a fan of artificial life techniques, from Conway's Game of Life1 to Ant Colony Optimisation. In 2002, I was impressed by Peter Henningsen's DungeonMaker. DungeonMaker can make complex random dungeons according to the designer's specifications. They can be as random or as deterministic as you want. The complex, organic look of the generated dungeons comes from the use of Artificial Life techniques: tunnels and walls are built by a-life creatures moving around the map.

An example of Dungeonmaker's output

DungeonMaker can make complex random dungeons, following your own high-level designs and filling in the details.

In more recent times, Aaron Dalton took over the SourceForce project, modernised the build and produced a library that can finally be incorporated into game projects.

I also set about making a set of Python bindings for this library. My first step was to modernise the build infrastructure even more (it's been a few years since the last DungeonMaker release), and debianise it. You can find it here.

Please note that the code of this project is not my work. It's the work (and copyright) of Peter Henningsen and Aaron Dalton. I only modernised the build infrastructure and packaged it for recent operating systems.

Download

License

The original DungeonMaker licensing holds for this release. The library is licensed under the GNU Public License. For projects where this is an issue, commercial licenses are available from the original authors.

DungeonSpawn

In the process of building the DungeonMaker Python bindings, I extended the original library to a point where forking a new project with personal customisations and extensions seemed prudent. This project is DungeonSpawn.

  1. I've lost track of the implementations of the Game of Life I've written. Back in my dark past, one of them even won me first place in the Greek branch of the International Olympiad in Informatics