Roads of Daggerfall

Show off your mod creations or just a work in progress.
hedgelord
Posts: 5
Joined: Fri May 31, 2019 5:50 pm

Re: Roads of Daggerfall

Post by hedgelord » Mon Jun 10, 2019 8:07 pm

Does anybody know if Uncanny_Valley uploaded the roadmapReader he was talking about, or how you would paint the road textures in the world?

User avatar
jayhova
Posts: 576
Joined: Wed Jul 19, 2017 7:54 pm
Contact:

Re: Roads of Daggerfall

Post by jayhova » Tue Jun 11, 2019 10:44 am

hedgelord wrote:
Mon Jun 10, 2019 7:50 pm
@hurleybird thanks a ton for the source code, it's helping a lot! I've already noticed a couple problems (I forgot to sort the roads by length, for one).

There's still some problems but it's getting better. The big issue I have right now is that if we have two clusters of towns next to each other, we end up with a lot of parallel roads next to each other.
Image
My thought in making a set of rules was to to some extent break the problem down logically, so that a mathematical algorithm could be applied.

To solve for non-parallel roads one must take into account the time domain. One road always comes first, new roads join old roads (rule 4). Rule 3 states that roads need to be as short as possible. What is not explicitly stated is that the new road segments are the only parts that need to be accounted for. That is to say if you have a road from A to B and it already exists and you need a road from C to D and adding branches that connect to the existing road mean that you will only have to build half as much new road, then that is what will happen.

jayhova wrote:
Sat Jun 08, 2019 8:51 pm

Over time city states and the larger settlements in their provinces will establish networks of roads that join together.
...
  1. Roads are only as straight as obvious terrain features allow (hills, valleys ravines, rivers, etc.)
  2. Roads are only as straight as non-obvious terrain features allow (quality of ground to be built on)
  3. Roads have a economic cost and must be paid for with a return on investment. Roads are built to be as short as possible without imposing a substantial economic penalty.
  4. Roads are, often, not planned in a uniform way and are constructed generally, one at a time, decades or centuries apart. New roads join old roads.
  5. The path that a road must follow is limited by the grade. The economic viability of a road is limited by this. Steeper grades limit the use of fewer/heavier wagons carrying more goods. This may eliminate the ability to transport goods like refined iron, etc.
Remember always 'What would Julian Do?'.
Windows 10 Pro 64 bit. DFU Ver. PreAlpha 0.8.6

User avatar
jayhova
Posts: 576
Joined: Wed Jul 19, 2017 7:54 pm
Contact:

Re: Roads of Daggerfall

Post by jayhova » Tue Jun 11, 2019 11:43 am

...
  1. Roads are only as straight as obvious terrain features allow (hills, valleys ravines, rivers, etc.)
  2. Roads are only as straight as non-obvious terrain features allow (quality of ground to be built on)
  3. Roads have a economic cost and must be paid for with a return on investment. Roads are built to be as short as possible without imposing a substantial economic penalty.
  4. Roads are, often, not planned in a uniform way and are constructed generally, one at a time, decades or centuries apart. New roads join old roads.
  5. The path that a road must follow is limited by the grade. The economic viability of a road is limited by this. Steeper grades limit the use of fewer/heavier wagons carrying more goods. This may eliminate the ability to transport goods like refined iron, etc.

    Since the building of roads is heavily biased by political will, roads will be funded unevenly across political boundaries.

    So, additionally:
  6. Roads are politically funded. Roads inside a a province will receive funding at a significantly higher rate (perhaps 2x) than roads leading outside the province.
  7. Inter-provincial roads will favor roads with the shortest link between capitals
  8. Imperial roads will favor the shortest link between provincial capitals and the imperial province. (this might be possible to ignore)
Edit: As I think about it more it seems very likely that Tiber Septim would have made sure to connect very impressive roads from the provincial capitals to the Imperial. He would have wished the rulers under him to see Imperial power projected and make it clear 'These are the roads down which my armies shall march.'. He would at the same time have wished to espouse the benefits of good roads to his subject kingdoms.
Remember always 'What would Julian Do?'.
Windows 10 Pro 64 bit. DFU Ver. PreAlpha 0.8.6

Dalebvr
Posts: 25
Joined: Wed May 22, 2019 9:52 pm

Re: Roads of Daggerfall

Post by Dalebvr » Sun Jun 16, 2019 12:05 am

That's actually a good point. We know nothing about such structures during the Mer Period or before, but the only likely road builders then would have been Dwemer. So any road beds from that era would be something that newer roads might be built on, but those roads themselves wouldn't have endured time.

One thing that would need to be allowed for is the growing spaces that -have- to be present. An Empire runs on its stomach, so there would have to be considerable land dedicated to farming and husbandry. So the original Imperial roads were very likely spokes from the Imperial City (or more accurately the outskirts of the actual city, not that over decorated joystick they called the seat of the empire in Oblivion :P ). There would have to be massive farms there, so its likely that there are only a very few true 'roads' leading into the actual capitol city. Most of them would start outside the city borders, where the army has their permanent camps, so there was likely a perimeter road that encircled the capitol. Both to protect the capitol and to march straight to any rebeling provincial seat. Probably they were constructed by the army itself as it advanced, securing them a supply line, so it would have likely been 25% of the army building a section of road, then another 25% took over as the first group returned to actual warfare.

There would likely be at least two roads into a province; one headed straight to the capitol city of that province, and the other headed straight for the major trade city or resource location. Those two roads would likely join up in the Imperial province and become one larger road leading to the army encampment. Unless you had perfect conditions, a single road would be relatively easy to block repeatedly. Particularly if it passed through mountains where you could create landslides.

Once the invasion route was established, then supplies could move, which would later lead to merchants using the army's route, as it would be the safest. The secondary roadways may have been a function of the absorbed province. Which means they would try and get as much done by the invaders as possible, since when they leave for other locations the locals would be stuck doing it themselves, or paying the Empire for the extra roadways.

jedidia
Posts: 129
Joined: Sat Sep 15, 2018 9:49 am

Re: Roads of Daggerfall

Post by jedidia » Sun Jun 16, 2019 10:23 am

jayhova wrote:
Tue Jun 11, 2019 11:43 am
...
  1. Roads are only as straight as obvious terrain features allow (hills, valleys ravines, rivers, etc.)
  2. Roads are only as straight as non-obvious terrain features allow (quality of ground to be built on)
  3. Roads have a economic cost and must be paid for with a return on investment. Roads are built to be as short as possible without imposing a substantial economic penalty.
  4. Roads are, often, not planned in a uniform way and are constructed generally, one at a time, decades or centuries apart. New roads join old roads.
  5. The path that a road must follow is limited by the grade. The economic viability of a road is limited by this. Steeper grades limit the use of fewer/heavier wagons carrying more goods. This may eliminate the ability to transport goods like refined iron, etc.

    Since the building of roads is heavily biased by political will, roads will be funded unevenly across political boundaries.

    So, additionally:
  6. Roads are politically funded. Roads inside a a province will receive funding at a significantly higher rate (perhaps 2x) than roads leading outside the province.
  7. Inter-provincial roads will favor roads with the shortest link between capitals
  8. Imperial roads will favor the shortest link between provincial capitals and the imperial province. (this might be possible to ignore)
Edit: As I think about it more it seems very likely that Tiber Septim would have made sure to connect very impressive roads from the provincial capitals to the Imperial. He would have wished the rulers under him to see Imperial power projected and make it clear 'These are the roads down which my armies shall march.'. He would at the same time have wished to espouse the benefits of good roads to his subject kingdoms.
All good points, but missing the major impetus for why *empires* specifically built road networks: Troop deployment.
While the elder scrolls are culturally modeled more on medieval times than anything else, the existence of a central empire still holding the continent together makes it politically singnifficantly different. In effect, Tamriel is built on the idea "what if the roman empire didn't dissolve until the late medieval period" (and also "what if there was magic and monsters", obviously).

And the major reason why Rome built roads was military. For one to quickly deploy troops inside their own borders in case there was an uprising that was too much to deal with by local garrisons (spartacus being a prominent example), and for the other to quickly deploy troops, supplies and reinforcements to the border to support ongoing campaigns.

User avatar
jayhova
Posts: 576
Joined: Wed Jul 19, 2017 7:54 pm
Contact:

Re: Roads of Daggerfall

Post by jayhova » Sun Jun 16, 2019 5:51 pm

jedidia wrote:
Sun Jun 16, 2019 10:23 am

All good points, but missing the major impetus for why *empires* specifically built road networks: Troop deployment.
While the elder scrolls are culturally modeled more on medieval times than anything else, the existence of a central empire still holding the continent together makes it politically significantly different. In effect, Tamriel is built on the idea "what if the roman empire didn't dissolve until the late medieval period" (and also "what if there was magic and monsters", obviously).

And the major reason why Rome built roads was military. For one to quickly deploy troops inside their own borders in case there was an uprising that was too much to deal with by local garrisons (Spartacus being a prominent example), and for the other to quickly deploy troops, supplies and reinforcements to the border to support ongoing campaigns.
Some interesting differences between between Tiber Septum's Empire and the Roman Empire. The Roman Empire had external threats that had to be constantly contended with. Tiber Septum on the other hand had conquered or otherwise incorporated all the lands of Tamriel into his empire. This made it so there was less actual need to move troops through these lands however it would have been important to impress upon his new subject kings his ability to do so. He would have been largely concerned with the city-states that governed his provinces. It's interesting how very laissez-faire the imperial government is and clearly Tiber Septum was less willing to allow the infighting between his subjects than later Emperors would be. However, it is clear that the kings of the city states were largely left to their own devices to handle their affairs.

I think it likely that it would have been common practice to have tax collectors arrive with a moderate military presence at the provincial seat to receive that year's imperial revenue. The roads down which these troops/agents of the empire traveled would largely be constructed and maintained by what would amount to the imperial corps of engineers. It's likely that other roads would have been left largely to the royalty installed in the various provincial seats to deal with and maintain them to imperial standards.

After the conquest, imperial troops would largely be used to project power, reduce highway banditry (along imperial roads), and provide for the orderly payment of imperial taxes.
Remember always 'What would Julian Do?'.
Windows 10 Pro 64 bit. DFU Ver. PreAlpha 0.8.6

User avatar
King of Worms
Posts: 2056
Joined: Mon Oct 17, 2016 11:18 pm
Location: Scourg Barrow (CZ)
Contact:

Re: Roads of Daggerfall

Post by King of Worms » Sun Jun 16, 2019 8:19 pm

what about just connecting the dots?

seriously, with all these rules, political reasons, moon phases and stellar constelations being the deciding factors, it leads nowhere.

Use the algo the guy provided few pages back, it connects the dots nicely.

User avatar
jayhova
Posts: 576
Joined: Wed Jul 19, 2017 7:54 pm
Contact:

Re: Roads of Daggerfall

Post by jayhova » Mon Jun 17, 2019 3:29 pm

King of Worms wrote:
Sun Jun 16, 2019 8:19 pm
what about just connecting the dots?

seriously, with all these rules, political reasons, moon phases and stellar constelations being the deciding factors, it leads nowhere.

Use the algo the guy provided few pages back, it connects the dots nicely.
Unfortunately just connect the dots while it sounds good is not a tenable solution. The problem of routes is actually very hard to contend with. This is one of the delivery truck problems. Turns out that just brute force solving the problem of the best delivery routes for UPS or Fedex takes more computing power than exists. These types of routing problems are akin to the traveling salesman problem. It sounds like an easy to solve problem, but it isn't.

The rules for where roads go are important. Algorithms are nothing more than a set of rules run in a program. If for instance you say just connect the dots. The first question is 'which dots?'. Right, there is a rule. You cannot for instance have every location connect to every other location. The second question is 'in what order?'. Turns out that's important if you want roads to look like roads. Clearly just from looking at the picture (above) you can see there are long stretches of parallel roads on the map. Those would not exist in real life. In real life one road would have been built first and the second would have joined it because that is the best way to join 2 locations with the least amount of new road.

So when I lay out rules I am laying them out to answer specific questions and I am trying to do so roughly in order of importance.

Are roads straight? Yes. Unless something causes them not to be. Result, roads are rarely straight.

Are all roads equal? No. What roads are the most important? Roads that supply food and raw materials to the city that requires them. Again, these roads are the first roads that are constructed. The largest and closest settlements to a major city are the first ones built. Again, this is important because often the most economical way to build a new road is to join an existing road. This solves the problem of parallel roads.

Really the 2 major questions are what path will a road take and what road segments get built first. There is a strong temptation to start with roads between major cities and then work down. But road systems evolve from smaller road networks being connected over time.
Remember always 'What would Julian Do?'.
Windows 10 Pro 64 bit. DFU Ver. PreAlpha 0.8.6

User avatar
King of Worms
Posts: 2056
Joined: Mon Oct 17, 2016 11:18 pm
Location: Scourg Barrow (CZ)
Contact:

Re: Roads of Daggerfall

Post by King of Worms » Mon Jun 17, 2019 7:02 pm

Just simplify it, than it will work. Nobody will think about traveling merchant theorems ingame when he is observing a road from A to B

walls of texts will not solve this task, ever, unless its a actual code...

meritamas
Posts: 58
Joined: Sun Apr 07, 2019 6:16 am
Location: Slovak Republic

Re: Roads of Daggerfall

Post by meritamas » Tue Jun 18, 2019 7:26 pm

King of Worms wrote:
Mon Jun 17, 2019 7:02 pm
Just simplify it, than it will work.
I'm all for making things simple. A thought occurred to me, though. 'Having no roads is simple. You don't have to do anything, it's already there.' For some reason, somebody would like to try and add roads anyway... saying 'simple' seems simple, but it's not that simple...

...the next question could be how much complexity and effort we are willing to put into a solution and what we would like that solution to look like. Like: how much complexity are we willing to allow for a certain addition to realism and immersion? We could then think a lot, look at the alternatives and the potential trade-offs and pick one (or several) route(s) forward. Considering the potential effort needed to do this and the fact that someone is already actively working on a solution, the most reasonable way forward I see is to wait and see how those things work out before beginning anything time-consuming that could potentially turn out to be redundant.
King of Worms wrote:
Mon Jun 17, 2019 7:02 pm
walls of texts will not solve this task, ever, unless its a actual code...
I know, I know, I'll try to keep it short.

I am rooting very much for anybody who will create something of value here. So go, hedgelord, go!

As for me, I think I'll continue studying things that are available. One thing I would like to do, possibly for my personal amusement is to get my hands on that detailed, specifically DFU heightmap with the population centers denoted on it that I mentioned earlier. It's a must have: without it or the data it is meant to represent, I see no hope to account for any hills, grades etc. in any road-drawing algorithm calculations or to effectively judge how 'realistic' any given solution is.
I have seen references to similar work in one of the threads a couple of days back, so I'll try to find that again and take a look at it first. Perhaps, their heightmap is suitable for our purposes, too. Or, they might give me a lead on how to create one that would be. I'll also look at what Interkarma mentioned earlier in this thread and the info in this other thread.

This will be beneficial eitherway. If hedgelord and gang implement a good roads solution, doing all this will have been a good opportunity for me to get acquainted with development in Unity and the DFU code and I get to have a nice map that I can print and stick on my wall.
But if, for whatever reason, that route fails, the map created and the know-how (perhaps even know-why) gained in this way could also be used in developing a future 'Roads of Daggerfall' solution. (19 June 2019 UPDATE: or for anything else I could not even contemplate now.)
At this point, I aim to improve DFU by formulating ideas and working out some details of how things could work better.

Post Reply