News:

Simutrans Tools
Know our tools that can help you to create add-ons, install and customize Simutrans.

Oneway Twoway Road Patch for the Extended

Started by THLeaderH, April 07, 2018, 09:23:26 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Vladki

#140
The new display of overtaking modes is excellent. I found quite some places with unexpected overtaking restrictions. Thank you very much.

EDIT: but it seems that after changing a city (public) road to two-way (from one-way) causes desync. Not immediate though. After reconnect the one-way mode is as it was before change.
It seems to be related to public player and public right of way roads. Modifying players own roads does not desync.

EDIT2: PROW does not affect it. But public player modifying private road causes desync too. If the owner does it, no desync happens.

jamespetts

I believe that I have now fixed the loss of network synchronisation - thanks to Freddy for identifying the cause of 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.

freddyhayward

Quote from: jamespetts on July 30, 2020, 03:15:15 PM
I believe that I have now fixed the loss of network synchronisation - thanks to Freddy for identifying the cause of this.
Looking at the code, your fix should work, but I am worried that the spread of player logic into classes and files where it had not previously existed will make future synchronisation issues harder to identify. It would be much better to handle this in wegbauer.cc, which was designed for such logic.

freddyhayward

This causes a segfault when the player parameter is passed as NULL by cities. An interim fix would be to add more if(player) checks. I still think it would be better to move the logic elsewhere.

Phystam

the segfault happens very often on my server... Overwriting overtaking mode by cityroad (by NULL player) is one of the causes, as freddy reported.

freddyhayward

Quote from: Phystam on August 01, 2020, 10:03:58 AM
the segfault happens very often on my server... Overwriting overtaking mode by cityroad (by NULL player) is one of the causes, as freddy reported.
In your case I would certainly recommend reverting the server and clients back to 26a357. It will still cause desync issues when modifying overtaking modes, but that is better than crashing.

jamespetts

Thank you for the report - I believe that I have now fixed the crashes. I should be grateful if people could re-test with the next 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.

freddyhayward

Quote from: jamespetts on August 01, 2020, 11:15:39 AM
Thank you for the report - I believe that I have now fixed the crashes. I should be grateful if people could re-test with the next nightly build.
Your fix seems to have worked - running the bridgewater-brunel save offline has gone without crashes for a long time. edit, nearly forgot: thank you!

Phystam


Ranran

As I've already explained, there is a case where the arrow is not displayed in the usual one way now, so I changed it to blue for this measure.

Please check pull request #229.

Mariculous

Soes that mean the arrows are not displayed at all anymore?

Ranran

The missing arrow is the original defect in the Oneway Twoway Road Patch for the Extended.
That is why the one way tiles need to be colored blue.
Players can have difficulty recognizing what is happening due to invisible arrows, but this coloring allows player to notice defects in the system.


I've tested pak192.comic and found it to cause a crash due to missing ribi arrow so I fixed it. It brought by my fix patch - I apologize.

jamespetts

Thank you for this fix - now incorporated.
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.

Ranran

Quote from: THLeaderH on July 07, 2018, 12:06:52 AMThis pull request contains bug fixes that was done in OTRP v14.
    • bug fix for algorithm of vehicle control
    • bug fix for lane yielding
    • do not execute other_lane_blocked when street is twoway
    • allow changing overtaking_mode for elevated way with ground way
    [/list]
    The last one is an improvement of UI, not a bug fix.
    I think I found a bug that originated from this patch. Check the thread below.
    https://forum.simutrans.com/index.php/topic,21630.msg200360/topicseen.html#msg200360

    Ranran

    As I pointed out earlier, there seems to be a lot of nonsensical buttons and code that doesn't work. Note that I'm not sure if this button is what turfit pointed out earlier, but the button has been removed anyway, but the code for its behavior has not been removed.
    What I recently noticed is that bool prev_based doesn't seem to be used.