SamuKata
fantasytowngenerator
fantasytowngenerator

patreon


Development Update - January 2025

Hey everyone, I hope you're all doing well! First of all, I want to thank you for your patience - it's been a while since I've posted an update on Patreon (I'm more active on discord if you have questions or feedback). Just because I haven't posted, doesn't mean I haven't been busy. I'm happy to announce that the generation overhaul that I talked about in the last update is finally done, and has been released!

The main features of this update are:

And some misc update notes:

Putting that all together, you can now get settlements that look like:

City with a river:

Small town:

 Big city (with stone wall):

Big city (American preset)

 Inner ringed city:

In my opinion, these settlements look much better than what you could generate previously. The suburbs add a nice organic feel, and the settlements also now tend to grow along the main roads, giving them much more interesting shapes than the vaugely circular ones that were created before.

The generation algorithm

As mentioned in the previous posts (June, September), I wasn't happy with the districts and the road generation algorith. Specifically, districts had very uniform size lots across the entirety of the settlement, and the small lot sizes made it difficult to place large buildings.

The old algorithm created small lots first, placed buildings, and then merged lots together to create the districts.

The new algorithm creates large district lots, places landmark buildings, then divides the large lot into smaller ones, and places the remaining buildings for the district. You can find more information on the new algorithm in the user guide.

One of the main benefits of the new algorithm is the larger lots, which make it easier to place large buildings, and it also allows districts to place roads according to their preferences in these lots. This currently isn't done for many districts, but it's something I'd like to expand in the future.

For example, there are now many more ways to place markets than there were before.

The other main addition to the new algorithm is the suburb generator, which gives the settlement a much more organic feel than they did before, with the entire settlement surrounded by roads. This is one aspect of generation that I have wanted to improve since I first started, so I'm very happy that this is done.

There are also a whole bunch more customisation options for the districts and roads, you can find more information in the create settlements section in the user guide.

What's next?

This was a big change. Almost 800 files, and 70000 lines of code went into this (and thats only the final number, not including all the back and forth I did to tweak settings until they felt right) - almost all aspects of the map generation were updated, and needed to be properly tested. Because of this, I want to take a break from major changes for a bit, and tackle some of the smaller feature requests that have accumulated.

There are also some smaller tweaks that I want to make to improve and polish these changes - for example:

Improved castle districts - fill them with more things.

Improved park districts, paths and other small features.

Improved forests, adding trails etc.

Marinas for waterfront districts

Graveyards next to some temples

Wall alternatives, like moats / bypasses

More options for building placement in district re-roll

Option to re-roll farmland from the layout editor.

Link to the docs in relevant places

and so on...

Longer term

Last year I was looking at height integration and generation, and at some point I'd like to get back to that. Figuring out how to display it in the 3D mode is easy enough, but I'm not entirely sure how to display it on the 2D map. Also, fitting it in to the road network algorithm will be ...interesting... to say the least.

Another bigger feature I want to take a look at is climate and other natural landscape generation, e.g. moutains.

Conclusion

As always, I want to thank you all for all of your support - without you guys, I wouldn't have been able to keep going with this as long as I have.

What do you guys think of the changes? What districts do you want to see supported, or are there any decorations you'd like to be added? Please reach out, I always like getting feedback, either here or on the discord.

Comments

What are you trying to update? One problem at the moment would be that the building JSON export format is quite different to the building edit request format, and I don't really want to maintain that as an API as uploading that many buildings, determining what's different, and validating it will be tricky.

Thomas Allerton

Is there any possibility of an option to export the data for a city, edit it as plaintext json and then upload it to update the city? The use case here is really trying to bulk update specific buildings

Dylan Kennedy

Would love to see some Roll20 integration if that's possible. I know it's not as friendly to widgets as Forge.

Trevor Woodcook

What do you want to use tokens for? There is a feature to highlight the building that players are currently at. Using tokens in foundry will be tricky, as I'm not sure there is a good way to render the map behind the usual token layer, but still be interactive.

Thomas Allerton

I'd really like to see more work on the VTT integration. It's a beautiful map generator and it works quite well as a map within VTT, but it still relies on that external renderer which means you cannot use tokens on the maps.

Zips

What do you mean by edit custom populations? You can control the appearance of each race if you want, it's in race settings (in both the create settlement form, and the settlement specific settings)

Thomas Allerton

incredible work, perhaps tweaks to the character editing so we can edit custom populations (the same formula as the others,) and different character features and appearance options. optional changes to the religion, and having female characters with no growing beard, I mentally imagine all the ladies shaving their beards. That works for dwarves but it's odd outside of the dwarves, dragonborn and other custom races

Gabriella Galvez

Impressive work. Well done. Thanks for all the effort you put in this very useful tool.

Shotglass

Loving it. My one request (and maybe I'm just missing how to do this) would be to be able to search for residents using more fields. E.g. if I want to find where any blacksmith is or based on their demographics.

Peter Hawkins

Super excited about the update! My party just entered a new land so it couldn’t have come at a more perfect time

Caden

Can't wait to dive in and have a play

Chris Wilson


More Creators