A Must-See Ultima Castle Map Generator by Slashing Dragon (Updated)

SlashingDragonGen

Good Morning! I am excited to bring you an awesomely Dragonly Doing by Santiago Zapata, aka Slashing Dragon.  He has created what I would call an awesome tool to procedurally create Ultima 5-like single-floor castle maps.  While he may be done with this generator for now, he not only has learned alot about procedural generation of maps and areas; he could come back to it and maybe look at adding basements, upper floors, and other capabilities to the generator.

If you want something awesome and fun to check out and put a smile on your face go to his post on his website and have a read! You can also check it the generator directly as well, at http://slashie.net/ultimacastlegen (images are not preloaded so it may take one or two clicks of the Generate button for graphics to show up).  You can also find the source code at github.

(The image above is one of my favorites out of the ones I generated and took a screenshot of.)

The First Age of Update [WtFD]: I was going to put up a post about this today, but seeing as Golem beat me to it…it was really interesting to watch Slashing Dragon’s iterative development process, which played out over the course of eight days. Day one was all about deconstruction and figuring out just how castles in Ultima were put together. Slash took inspiration from his own Stygian Abyss generator, as well as from these procedural pirate map generators.

By day two, Slash had begun putting together the framework of the castle generator’s code. The room generator was added on day three. The easy part was getting the generator to place the corner towers, the central courtyard, and the hallways connecting them. Filling the remainder of the (roughly square) area with rooms was more of a challenge.

Additional tweaks on day four allowed for imperfect symmetry, and also the specific placement of certain rooms. By day five, Slash had implemented the actual tile renderer; to this point, the castle generator had been spitting out floor plans similar to what can be seen above, on the left. On day six, he focused on cleaning up the rendering of the courtyard, main hall, towers, entrances, and outer corridors. By day seven, he had added links (read: doors) between rooms, and also allowed for larger rooms.

And at this point, he even got some design input from Richard Garriott:

 

 

 

 

 

 

 

 

 

 

All in all, this is really excellent work by Slash. And to add to Golem Dragon’s notes about future enhancements to the generator, I can’t help but think that the ability to supply a custom tileset would be handy. As would be the ability to export creations to the TMX format.