News:

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

range restriction can be avoided

Started by Vladki, April 24, 2018, 08:54:40 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Vladki

O found a bug (cheat) while debugging this save game: https://forum.simutrans.com/index.php/topic,18115
The skif-wherry has a range of 6 km. If you fix the constraints as noted in the above linked post, set the skif-wherry to go on the "Hovworth-Wendburgh-Elmenton Canal Ferry line" it will correctly tell you that the next stop is out of range. But if you change the schedule, and add Howvorth Country Pub Quay as the next stop, it will happily start moving, even if the stop is 14 km away.

DrSuperGood

#1
Awww you had to report this... This was the only way to move convoys that were out of range to be back in range. Would not be useful if they made pit stops to get back into range but...

It seems to ignore the distance to the last stop. I am unsure if this includes automatic schedule advancement or just manual schedule setting.

Would be nice if a vehicle is out of range of their next stop if they could search through their schedule for any stops they are in range automatically. It currently is a pain to modify a long distance line schedule with ranged vehicles because some of them will be automatically redirected to stops that are out of their range and so run away to depots. At least make them get stuck rather than go to depot because that way one can see the out of range vehicles from the line manager window highlighted in red/orange and so manually fix them.

jamespetts

Thank you for your report - I have not yet had a chance to look into the code on this, but some comments on Dr. Supergood's suggestions first: making the out of range convoys stuck might be fine for ships, but would potentially cause serious problems for railways and possibly aircraft as they would clog the line/taxiways and cause other services, which are in range, also to become stuck. Conversely, if the behaviour were not consistent between different modes of transport, it would be likely to be very confusing for players, so the universal behaviour must be one that works well for railways and aircraft.
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.

Vladki

Vehicles should get stuck at the stop or refuse to leave the depot, thus reducing the risk of blocking the way.

DrSuperGood

QuoteThank you for your report - I have not yet had a chance to look into the code on this, but some comments on Dr. Supergood's suggestions first: making the out of range convoys stuck might be fine for ships, but would potentially cause serious problems for railways and possibly aircraft as they would clog the line/taxiways and cause other services, which are in range, also to become stuck. Conversely, if the behaviour were not consistent between different modes of transport, it would be likely to be very confusing for players, so the universal behaviour must be one that works well for railways and aircraft.
If they searched for a stop on their line that was in range that would not be a problem... I would want them to go to depot then if they could not find any.

The problem is currently they run away to some further away depot and I do not even know which of the many dozen convoys assigned to a line this effects.

jamespetts

Quote from: DrSuperGood on April 26, 2018, 09:53:45 PM
If they searched for a stop on their line that was in range that would not be a problem... I would want them to go to depot then if they could not find any.

The problem is currently they run away to some further away depot and I do not even know which of the many dozen convoys assigned to a line this effects.

I wonder whether better information being given when this occurs would assist with this?
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

When altering a schedule or replacing a vehicle, if the destination is out of range the vehicle searches its schedule for any stop within range. If such stop is found the schedule is changed to it and no notification is raised. Only if that fails should it go to the nearest depot with a warning message.

With the current behaviour it would be better that the vehicles get stuck rather than going to depot. This way the user can locate them in the line manager and manually order them to the nearest stop.

jamespetts

Thank you very much for your reports - I believe that I have now fixed this; I should be grateful if you could re-test in the next nightly build.

As to the suggestion of vehicles silently skipping to another stop in the schedule that is in range, surely that would be extremely confusing for players and would make range issues impossible to debug?
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

QuoteAs to the suggestion of vehicles silently skipping to another stop in the schedule that is in range, surely that would be extremely confusing for players and would make range issues impossible to debug?
When modifying the stops in a schedule the stops the vehicles are ordered to are already confusing. If anything this would make more sense.

jamespetts

I am not sure that I follow - why are they confusing in order and why would skipping stops entirely without warning make more sense?
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

#10
QuoteI am not sure that I follow - why are they confusing in order and why would skipping stops entirely without warning make more sense?
When deleting or inserting stops into a schedule it is very common to end up with a lot of vehicles changing their destination to seemingly random stops in the schedule, and never the inserted stops even if those are more logical.

For example I was modifying a horse line (maximum distance 15km) on the server game to drop service between some cities due to the construction of a brand new train line. This involved deleting the end stops of a mirror schedule, and then inserting a new stop at the train terminal. At no point were the vehicles left in the no longer serviced area more than 15km away from the new train terminal or even the stop before it for that matter. Upon updating the line schedule, many of the vehicles decided to go to stops several towns away which are more than 15km from their current spot so are out of range. These vehicles then proceeded to head to depots and so I was forced to manually check every of the 40 vehicles servicing the line to fix their scheduling before they reached the depot. Fixing their schedule was as simple as changing their destination from trying to go towards some very far away town to the logical choice of the town with the train terminal in it which is still served.

Another example is a simple point to point ship line. Sometimes one has to move the stop of the line at one of the ends due to harbour design changes or line changes. This can either be done manually from the line manager or using the replace stop tool, does not matter which as the results are the same. Once the schedule is changed all ships will proceed to the unchanged end of the line, even if they were only a few tiles away from the replaced stop and its replacement. Worse, if this ship line involved waypoints due to it covering an excessive distance then the ships might seemingly randomly decide to skip waypoints and so become permanently stuck until manual intervention is performed. This also applies to trying to move waypoints, say to new or more efficient shipping lanes, where the ships in transit will try to go towards one end and unable to do so because it is too far away for navigation without using the waypoints, another case where manual intervention on a per convoy basis is required. However unlike the above case, all ships will either eventually resume to normal service as none of the ships are out of range of any stop and any that are out of computational range can be easily spotted from the line manager window and manually corrected.

jamespetts

It would seem more sensible to rectify the issue with inserting stops in a line, as the solution that you propose for the more general case would make it impossible for players to understand what is happening if one of the stops in the schedule were out of range of the previous stop.

With that in mind, would you be able to post, in a separate bug report thread, a full report of this issue with a saved game in which this can reliably be reproduced at a specific time and place?
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.