-
Notifications
You must be signed in to change notification settings - Fork 85
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Priority signs should affect 'Enter blocked junction'? #424
Comments
Brain: Why even have 'enter blocked junction' when we have priority signs? Also brain: No idea. Also brain: Why not merge priority signs in to junction restrictions, and ditch the 'enter blocked junction' thing? |
Isn't "(don't)enter blocked junctions" a more CPU lightweight option than TMPE priority signs since it's something that is in the vanilla game? At least that's the exact reason why I preffer to just use this setting instead of priority Signs in my roundabouts lol. |
In a 4 way junction with priority signs people on the major road should not want to enter blocked junctions for people on the minor road to be able to go into directions that is not blocked. |
I agree with kianzarrin. As for the feature that is suggested here... I have doubts! However, if you want to activate such feature in situations where it does help (1 lane road to intersection, instead of 2+ lane road), then it's fine for me. |
The feature in vanilla is the "Stop" sign (traffic routes > junctions info view) - and we already have that covered in TM:PE priority signs. So the "don't enter blocked junctions", as far as I know, isn't even part of vanilla. Vanilla essentially has two signs: Yield (default) and Stop. The priority routes feature in vanilla, as far as I can tell, has two purposes:
Isn't that what TM:PE priority signs are for? The Priority/Yield/Stop sign (default: Yield) for each segment at the junction controls how traffic should enter the junction (however, see additional note below).
Any lane that would cross oncoming traffic (eg. left or right turn depending on what side of road cars drive on) should always yield to avoid collisions. That's a "road rule" that applies everywhere: Don't crash in to other cars. So that should be baked in to the priority sign logic - it shouldn't require is to fiddle with "enter blocked junction" stuff. For complex junctions we could use conflict point detection (see #4 for details) to determine which lanes must yield at the junction.
See my comments above. The yielding when crossing oncoming traffic should be baked in to priority sign logic. We shouldn't have to fudge it with "allow enter blocked junction" stuff. Also, I think the whole implementation of "allow enter blocked junction" is wrong in TM:PE. It shouldn't be defined segment by segment (we have Priority/Yield/Stop signs for that), it should be defined in the junction node. I can't speak for other countries, but in UK we have this: So on a normal junction, everything is handled by priority rules. But some super-busy junctions, which can lead to gridlock if they get blocked, have that extra "keep this junction clear" rule (the yellow hash pattern on the road). I think all too often users are using "enter blocked junction" feature as a weird alternate to priority/yield/stop signs. For good traffic flow, generally speaking, vehicles should be able to enter junctions if they are clear (ie. default of Yield for all roads entering a junction, unless user defines otherwise). There are some cases where you want to keep junctions clear of stagnant traffic, most notably level crossings (or busy junctions like the image above). But in those cases the "enter blocked junction" setting applies to the junction itself, not the roads entering the junction. My suggestion is therefore:
If even more control is required, traffic lights should be used to fully control traffic across the junction. There's a bunch of other stuff too, see #46 and #63 |
Some other thoughts:
|
Maybe an enum at the node could define traffic behaviour through the node? For junction nodes:
For other node types:
|
It is true that users get confused by enter blocked junction. I know I did. But this problem is soon diminished when we allow users to setup intent. Intent can be used for generic stuff and for more advanced users who like flexibility they can micro manage a bit more for all the crazy junctions they have. @aubergine10 I think this is a bad idea to take that flexibility away. We should let the user decide to enter blocked junctions or not on a segment end by segment end basis. TMPE users like flexibility. To automatically decide to enter blocked junctions or not can be complicated. If we are going to take that flexibility away from the user then: Either do it perfect or don't do it at all. I am worried that this is going to be a repeat of the highway rules mistake that people don't use because they don't like extra restrictions. I also think that the code for enter blocked junction can improve (EDIT: created #871). for example consider a big highway roundabout. once I disable enter blocked junctions, cars entering the roundabout wait for the junction to be clear before entering. This happens even if traffic is flowing fast. I think if traffic is flowing fast there is no need for cars entering the roundabout to wait a little bit longer. For this reason in my highway roundabouts, I generally set enter blocked junction for yielding cars entering the roundabout. The traffic just flows faster that way. for my urban roundabouts yielding cars cannot enter blocked junctions. So we need to solve some problems including the one I mentioned above to abolish enter blocked junctions and I think we are no where near ready. Also I think its not worth the time specially considering that the intent feature is coming. |
In the image above, it shows another issue we have - the priority signs should factor in 'does this lane cross traffic'. A similar connundrum is discussed in #565. |
For anyone following this issue #424 please go take a look at the awesome stuff being worked on in #1229 (specifically the videos near bottom of that issue) - very significant improvements to both normal junctions, and also those with priority signs. Example of normal junction with turning lane - no priority signs, etc., just junction with lane-arrow based turning lane: 2022-02-06.21-52-53.mp4 |
@aubergine10 What's that mod for traffic scenario? It would be great for my junction testing as I'm experimenting with different junctions |
It's my internal mod for testing. I plan to release it as a debug tool but for now... it's just never-ending sandbox where I throw my prototypes and ideas. |
@krzychu124 Thanks for sharing that. When you are comfortable enough, I'll make time to test it and also to test my own stuff. |
When setting priority signs, it would be nice if they could affect the "Enter blocked junction" setting either automatically (via mod option) or with keybind modifier.
The text was updated successfully, but these errors were encountered: