News:

Simutrans Forum Archive
A complete record of the old Simutrans Forum.

Bug: Bad public right of way logic

Started by DrSuperGood, December 22, 2017, 09:26:12 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

DrSuperGood

The public right of way feature that prevents removal of some roads currently has bad/incorrect logic. Pretty much all road loops become defined as public right of way and so cannot be deleted. Since they are loops one side should be able to be deleted as the convoys can always use the other side as a diversion.

As for recreating this problem... Take any inter city road, make a few loops along it and try to delete one of the paths. The result is it will stop you from doing so. To delete the loop one has to fragment the loop with roads in the middle, delete the ends of the loop and then delete backwards towards the T junction that fragmented the loop. This works some times. When one can delete such roads or not is highly inconsistent.

This is currently very annoying as I have to pay for these pointless road loops that cannot be deleted. They cannot even be downgraded to Mothballed because the system prevents one from doing that as well. I suggest disabling/relaxing the system until the logic is fixed.

jamespetts

I am afraid that I have not been able to reproduce this. I created a new map, and then, as the default player, created a single parallel road for a short stretch next to an existing inter-city road. Attempting to delete a tile of that parallel road as the default player worked without error. Restoring the deleted tile, I then deleted a tile of the original road that runs parallel to the new road. Again, this was a success. It was then no longer possible to delete any of the tiles of the new parallel road, which, again, is intended, as deleting both original and parallel roads would have broken the route. I could, however, delete the whole of the original public road that runs parallel to the new road. I then restored a road along the route of the original public road, and was able to delete my parallel road without difficulty.

Can you be more precise as to the circumstances in which you find that this does not work as intended (the intention being to make sure that a public right of way cannot be deleted without an adequate diversionary route, which diversionary route becomes, on deletion of the original route, a public right of way itself)?
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

AP

The system works fine when I've been recently encountering it, apart from the max diversion length being a bit too short.  We discussed it very recently on another thread and agreed to slightly lengthen the max distance,  but that was to account for urban circumstances.  Which doesn't sound like the issue you are having...

One thing I have noticed is that the generic "bulldozer"  tool will refuse to demolish a road when the road removal tool allows its removal.  Are you using the road removal tool to remove your roads?

DrSuperGood

QuoteCan you be more precise as to the circumstances in which you find that this does not work as intended (the intention being to make sure that a public right of way cannot be deleted without an adequate diversionary route, which diversionary route becomes, on deletion of the original route, a public right of way itself)?
It occurs practically everywhere on the server, hence I did not see the need to post recreation instructions. Next time I log in I will place some signs and message the coordinates.

If you prevent people deleting a road, at least do not force them to pay for maintaining the road... I have nothing against disused roads everywhere as long as I am not the one paying for them.

AP

#4
I disagree with this, don't upgrade or turnpike the public roads if you don't want to pay for them in perpetuity.  You take the savings on Forge costs, you can't then avoid the maintenance. 

Public rights of way are an important concept in UK geography,  you can't just go around demolishing history.

There are plenty of companies burdened in reality with infrastructure they don't need any more.

There was debate about making turnpiked roads default to public ownership after a set time period,  say 100 years,  but I don't know if that idea went anywhere...

DrSuperGood

QuoteI disagree with this, don't upgrade or turnpike the public roads if you don't want to pay for them in perpetuity.  You take the savings on Forge costs, you can't then avoid the maintenance. 
I upgraded the ways, and even built short cuts for them with very expensive cuttings. Its not even like I stopped using the road, just the part which no one uses because I built a more direct route. The stupid system still demands I pay for the old disused roads... It will not even allow me to fragment a road in a city for inns to pickup passengers.

AP

But why did you upgrade the roads you were by passing with cuttings? Presumably because you made profitable use of them for some years until building the improved routes. The UK countryside is littered with roads that were once important,  but now are not. They are still maintained, because someone else may want to go down them tomorrow,  and there is a historic public right to do so.

In a similar way,  many laws authorising canals and railway lines required them to be maintained in perpetuity as well.

In cities,  an infinite grid of roads with 3x3 islands of houses can be cut anywhere,  ditto with 2x2, 2x3 or 2x4 islands.
However 3x4 islands or 4x4 islands cannot. It comes down to the length of the road circumference of the city block. If it's more than 16 tiles, by the alternative route , it won't permit the cut.

DrSuperGood

QuoteBut why did you upgrade the roads you were by passing with cuttings?
Because I was not the wealthiest company on the server back then.
QuotePresumably because you made profitable use of them for some years until building the improved routes.
Yes but now no one uses them, or ever will use them, as the route I spent a fortune on short cuts it by several km.
QuoteThe UK countryside is littered with roads that were once important,  but now are not.
Nope it is not. UK population density has increased so if anything most roads see more traffic year on year. Once rural suburbs of London now need huge roads due to all the people commuting.
QuoteThey are still maintained, because someone else may want to go down them tomorrow,  and there is a historic public right to do so.
Roads that are not used are not maintained here in the UK. In fact they barely maintain the roads that are used compared to European countries like Switzerland, France or Germany. These roads that I am forced to pay for are not used, and will never be used.
QuoteIn a similar way,  many laws authorising canals and railway lines required them to be maintained in perpetuity as well.
Except they are used, even by 1 person. These roads will never be used by anyone.

AP

Simutrans Extended is predicated on mimicking reality. If the problem is that nobody will use the circuitous routes due to population density being too low,  not enough farms, industry,  or villages,  that is a very different problem than suggesting we need to be able to remove country lanes from the map.

In my corner of the UK I know of many former drove roads between river limits of navigation,  former Stagecoach routes since bypassed because a village acquired a bridge or a ferry stopped crossing a river or a ford became too deep after a river was improved.

DrSuperGood

QuoteIn my corner of the UK I know of many former drove roads between river limits of navigation,  former Stagecoach routes since bypassed because a village acquired a bridge or a ferry stopped crossing a river or a ford became too deep after a river was improved.
And who maintains them? Also why can I delete them in Simutrans Extended with a lot of money and hacky trickery?

jamespetts

Quote from: DrSuperGood on December 22, 2017, 08:25:55 PM
It occurs practically everywhere on the server, hence I did not see the need to post recreation instructions. Next time I log in I will place some signs and message the coordinates.

It is not just the co-ordinates: I need to know which tool that you are using (the general bulldoze tool or the remove tool) and the exact sequence of steps, so that I can understand why we are apparently getting different results by doing what, at the level of description provided so far, is the same thing.

QuoteIf you prevent people deleting a road, at least do not force them to pay for maintaining the road... I have nothing against disused roads everywhere as long as I am not the one paying for them.

I do not understand this suggestion. A public right of way is a way that all have a right to use. A player may upgrade the road or river to a better one and, in exchange, receive tolls from those who use it (including private cars/horse carriages). Making a decision to upgrade a public right of way involves, just as in reality, the player taking on a degree of permanent responsibility, and hence a degree of risk: if the player decides that he/she no longer wishes to use that road, he/she will nonetheless be obliged to continue to maintain it.

In reality, public rights of way are fixed to precise places, and require an Act of Parliament to modify. The system in the game of allowing short diversions is intended to allow players to make minor modifications to fit in with railway/canal infrastructure, etc., without having to bother the public player as had been the case in previous multi-player games. The idea is not to allow players to modify rights of way as they please.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

AP

 
Quote from: DrSuperGood on December 22, 2017, 09:45:11 PM
And who maintains them? Also why can I delete them in Simutrans Extended with a lot of money and hacky trickery?
If you engage in trickery,  I imagine you can circumvent almost anything. So long as it's prohibitively expensive to do so, I can't imagine it becoming a problem.  It's meant as a restriction.

In the twentieth and twenty-first centuries responsibility has been assumed by government for all highways,  railway, and  waterways infrastructure maintenance. That model didn't exist further in the past, and I don't believe is simulated yet.

jamespetts

Quote from: AP on December 22, 2017, 09:52:27 PM
If you engage in trickery,  I imagine you can circumvent almost anything. So long as it's prohibitively expensive to do so, I can't imagine it becoming a problem.  It's meant as a restriction.

In the twentieth and twenty-first centuries responsibility has been assumed by government for all highways,  railway, and  waterways infrastructure maintenance. That model didn't exist further in the past, and I don't believe is simulated yet.

And, indeed, would be difficult to simulate without either a very sophisticated AI for the public player, or heavy use of the server administrator's time, which is impractical.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

DrSuperGood

The tool or where does not matter. The logic is clearly broken in that it cannot cope with diversion loops. One can do more with the bulldozer as it seems delete operations with the way remover abort if any of the tiles are the actual public way (as if it was trying to remove part of the bypass and fragment the road network).

jamespetts

Quote from: DrSuperGood on December 22, 2017, 10:11:42 PM
The tool or where does not matter. The logic is clearly broken in that it cannot cope with diversion loops. One can do more with the bulldozer as it seems delete operations with the way remover abort if any of the tiles are the actual public way (as if it was trying to remove part of the bypass and fragment the road network).

Stating that the logic is "clearly broken" does not help me to identify the issue so that I can fix it. I was not able to reproduce the problem that you described, so I need a more precise explanation so that I can reproduce it, as the only sensible inference as to why we are getting different results is that we are doing slightly different things, which is why I need more precision from you as to what you are doing so that I can do the same thing as you and get the exact same result and therefore see what the problem is.

As to the issue with the bulldozer and remove road tool behaving differently - is this a separate issue? I know that AP has reported this, but has not been able to give precise steps to reproduce. Is the issue that the remove road tool will not work on any tile of public right of way, or only that it will not work at all unless every tile that it is set to remove can be removed using the diversionary route logic?
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.


jamespetts

Splendid, thank you. I will look into this when I have access to my graphical debugger again in January.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

jamespetts

I should note that I have now fixed the specific issue reported by AP, which fix should be in to-morrow's nightly build.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.