View Full Version : Random catacombs -- maybe

12-15-2008, 05:05 AM
I was just playing around with writing a random catacombs generator (using stochastic L-systems (http://en.wikipedia.org/wiki/L-system)), and happened to get a result which looked half-decent. Then I thought it'd look better on parchment, so I had a go at RobA's parchment tutorial.

If I can manage to get the generator consistently producing good results maybe I'll script the whole thing up in GIMP or something. Until then, here's a preview.

Comments and suggestions appreciated (all it's doing so far is corridors and small rooms).

Steel General
12-15-2008, 07:05 AM
Interesting, though it reminds me more of a series of mines/mine shafts than catacombs.

12-15-2008, 02:34 PM
hmm isomage,

maybe you should check out my script (http://www.cartographersguild.com/showthread.php?t=2901) based on RobA's tutorial.

Just be warned, it is by far the most ugliest script I ever posted cause I did it really fast. :)

Actually I planned to update it in the next few days cuase I got alot of nice feedback for it and wanted do add a new feature, so you either can wait for my update or check it out now.

12-15-2008, 04:09 PM
There is a L-system renderrer in gimp. What is the rule set you are using?

-Rob A>

12-15-2008, 05:29 PM
What is the rule set you are using?

It's a bit ugly, since I was just playing around adding and tweaking rules to see what happened, and I'm not entirely happy with the results yet, but that one was drawn with:

Axiom: F

Production rules:
F -> (probability 1/2) F R
(probability 1/8) F [ - F R ] F
(probability 1/8) F [ + F R ] F
(probability 1/8) F [ - F R ] [ + F R ]
(probability 1/8) F [ - F R ] [ + F R ] F

R -> (probability 1/2) F F
(probability 1/2) F [ room ]

I didn't know about the GIMP plugin; got a link?

My program processes data defined in configuration files which let you define the axiom and production rules, specify whether the system is deterministic or random, define the step distance and turn angle (as functions, so they can be variable), define new symbols and functions to be called when they're parsed (like "room" above, which draws a room at the current position), specify line width and image size, and so on. It outputs PostScript, but since it's written in Lisp it should be fairly easy to convert to GIMP Scheme if I decide to -- I just need to get it producing better results :)

12-15-2008, 08:33 PM
Here's another, which I think is a little better (didn't bother with the parchment this time) -- it uses a simpler rule-set, has slightly bigger rooms, and might be more like what we'd want from a random dungeon map.

One of the things I like about these maps is that I'm randomly perturbing the L-system's angles and distances, so you don't get perfect right angles; it makes the corridors look more like ones in real catacomb maps, I think.

Steel General
12-16-2008, 07:22 AM
Much better I think, not quite so spread out.

12-16-2008, 07:27 AM
Isomage, have you ever come across a free application called 'context free'? Check it out on google. I'm convinced that it can be used to make some really nice automated maps, but I'm not enough of a programmer to be able to do it.

12-16-2008, 09:46 AM
Wow- I was wrong :)

There was an L-system renderer for gimp back in the 1.2 days (source here (http://members.ozemail.com.au/~hodsond/lsystem.html)) but it has never been ported to gimp 2.x.

BTW- Isomage, that last effort is superb!

-Rob A>

12-16-2008, 01:02 PM
Isomage, have you ever come across a free application called 'context free'?

I hadn't, thanks. It looks interesting.