March 1, 2019

Roads VI: Better Roads and Gardens

Generating a road takes a long time, because there are a lot of things to consider when picking targets, etc.

So it is better to generate them post-hoc, rather than in situ. Still takes a while, but I can blow through a lot more history and get some people on the map to debug.



I really like these results. The basic method here that I select the largest city in a region of continuous infrastructure. Then, a road is placed to every other city in that region if the target city is in the same size class. This generates a main road network artery. For every other city in the region of a certain infrastructure (so not every single village), a road is place to the next nearest road. In this way, all cities of the requisite infrastructure are joined together in a network that makes sense.



I particularly like that not every settlement has a road to it. These are the hinterlands. But if I add resource placement to the history generator, I might need to force high-resource areas to have roads. No sense in having a gold mine if you can't get to or from it easily.

Next, I'll determine the seaways in a similar fashion.

3 comments:

  1. Love the look of it. I did something similar and liked the results. Difference was that I had a random “infrastructure” seed, then a population number. The higher the population, the more cities and roads grew. This let me rewind/fast-forward it time... kinda.

    I never got around to make it work with ruins, battles, wars where damage occurred or kingdoms changed or population dropped... the next step I was going to try was to also have a list of when certain technologies became available, so that roads or bridges or large buildings or colleseums would be procedurally built. Never finished it before I got distracted with a new effort.

    ReplyDelete
  2. For my roads I used a different algorithm. Trails connect every settlement to any neighbour that is one or two hexes away. If no such neighbour can be found, I try to connect to one neighbour that are three hexes away. This also provides for clustering, and it connects clusters, but it doesn't provide for long distance trade routes. Which is what befits how I imagine the generated setting...
    https://campaignwiki.org/text-mapper/alpine/document?height=10

    ReplyDelete
    Replies
    1. I like that! I want to keep experimenting until I have a method that yields both isolated clusters and large-scale trade networks.

      Delete