Some answers and comments

Yesterday something has happened and suddenly the link to this generator got shared and retweeted all over the internet (twitter and reddit mostly but still)! The page was visited more than 100k time in one day - it's very exciting and motivating :) There were many comments, questions and suggestions and here I'll try to answer the most frequent of them. In some cases it will be a link to my answer somewhere else to keep this post reasonably compact.

Why there is always a wall? Not all medieval cities had walls. I'm pretty sure that most settlements large enough to be called cities did have walls. What is more important is that walls make a pile of polygons look like a fantasy city map :) I tried to remove walls, you can read about it here. If I succeed in creating  plausible "wall-less" cities, I'll make walls optional.

Why there is always a castle? Not all medieval cities had a castle. That's true, but a castle adds some asymmetry and make a map look better. It's not hard to remove it, so I'm gonna make it optional. Here is link to discussion of castle placement: link.

Too many triangular buildings. I agree, it's unfortunate and unintentional. This is a result of a rather silly algorithm for creating alleys and buildings. I hope to fix it to some extent using this approach.

No temples/churches. Small temples don't have to be distinguishable from the rest of the buildings inside a ward (of course I can mark them somehow if it's needed), but the main city temple or a cathedral is different. In the next version it will be a large building in the center of the city drawn similarly to castles like on the image.

Too many craftsmen wards. Where do they all live? Medieval cities were all about crafts and trade, so it's not a surprise that craftsmen comprised the majority of the city population. They usually worked and lived at the same place, having a living space at the back of the workshop or above it. Also relevant to the topic may be this piece: I need to clarify here what my wards are or rather what their labels mean. For example "Gate" doesn't mean that the whole ward is just er... gate. It's a ward with gate-related venues - some taverns, cheap shops etc. People also may live there. The same is true for other ward types as well: a craftsmen ward doesn't consist entirely of workshops, there are also pubs, churches etc.

No rivers/lakes/coastline. With the current algorithm it's a bit tricky to add water, especially rivers. But water is important from both the historical accuracy point of view (medieval cities are more likely to prosper with the access to water bodies) and visual point of view (it would make maps more interesting and diverse). I'll keep working on it.

It would be nice to be able to export a map. I can save a map as a png image, but it's probably not the most useful feature it's almost the same as taking a screenshot. Exporting in some vector format shouldn't be a problem providing there are libraries for that, I haven't check that yet.

It would be nice to have checkboxes for such map features as walls, castle, plaza, river etc. Ok :)

That's all for now. Feel free to comment/criticize/suggest/donate :)


Log in with your account to leave a comment.

Also is it possible to fork the code and contribute to the project?

Great work there! What do you think about adding an "editing" mode in addition to "generating"? Like where a user can define major features like shape of walls, streets, castle etc. and the generator attaches some meat to these bones drawing quarters of houses?

Thanks! Implementing an editing mode is a big task though an interesting one. Maybe I'll try it later on a more stable stage of development. Same for forking: now when I add any new feature it leads to massive refactoring and maintaining open source would be a pain.