[EPIC] UI: Routing Tool
See original GitHub issueThis tool visually combines the features of the Lane Arrows and Lane Connectors tools.
Lane Arrows
Current implementation is floating panels with buttons for each direction. I find this a bit confusing to use, and clunky to work with. Maybe using arrow glyphs (rather than characters) on the buttons would be better, where only one button (and thus glyph) can be active at a time?
Also, it would be nice if we could add a few new arrows?
- Deflect = Driver should start moving in to adjacent lane
- Used when a lane is closing (eg. road narrows) or some obstruction ahead (eg. roadworks)
- Merge = Driver must merge in to adjacent lane
- Used when a lane cannot continue ‘straight ahead’
- Diverge = Driver may diverge in to adjacent lane
- Used when additional lanes become available, or when there’s a slip road, etc.
Issue: Most roads don’t have deflect, merge or diverge arrows. Some roads do, but only via supplemental lane marking asset packs. We’d need some way for user to choose which decals to use to represent the new arrows, possibly via integration with Find It! mod.
Two other things:
- H: Hide = Arrow takes effect, but does not appear on the road
- There must be way to do this, as on normal nodes where two segments of same type connect there are no arrows
- Would fix: https://github.com/VictorPhilipp/Cities-Skylines-Traffic-Manager-President-Edition/issues/169
- X: Reset = Reset an arrow to game default
- Removes any customisations; an arrow might still appear depending on what the game default is
The full list of arrows:
- L: Left
- LF: Left-Forward
- F: Forward
- LFR: Left-Forward-Right
- LR: Left-Right
- FR: Forward-Right
- R: Right
- DL: Deflect Left (new)
- DR: Deflect Right (new)
- ML: Merge Left (new)
- MR: Merge right (new)
- IL: Diverge left (new)
- IR: Diverge right (new)
They could be arranged in a grid, something like:
IL LF F FR IR
ML L LFR R MR
H DL LR DR X
With the exception of H (hide) and X (reset), all the arrows equate to lane connections. Depending on what’s attached to the nearby node, some arrows would be unavailable. For example, at road junction, the diverge, deflect and merge arrows would not be applicable. Diverge and merge are only available when a road widens or narrows, respectively. Deflect only applicable on normal nodes where both segments are same number of lanes. Left turn only applicable if there is a left turn, and so on…
As inferred from the above, it’s not just at junctions where the lane arrow tool is applicable; it’s also useful at nodes where different types, or even same type, of road meet.
When hovering over an arrow button in the panel, the following happens:
- Source lane is highlighted (see #33)
- Lane connectors are shown to clearly indicate what lanes it connects to
- Destination lanes are highlighted too
This way the user has zero doubt as to what effect the arrow will have if they choose it.
If any of that sounds feasible, let me know and I’ll do a quick graphic mockup of the grid layout.
Issue Analytics
- State:
- Created 5 years ago
- Comments:19 (13 by maintainers)
Top GitHub Comments
UI Mockup
Please excuse the shit diagram 😉
Quite a lot of changes here, as you can see.
Less right-clicking
Now that we differentiate between incoming (square) and outgoing (triangle) nodes, there’s no need to hide incoming nodes when routing a specific node.
Right click can still be used to deselect the current source node, however users can now simply click a different source node to route from that instead.
Squares:
Triangles:
Note: To further distinguish between squares and triangles, the squares could be flush with the end of the road segment (like bottom and right in the image above) and triangles could be offset from the road edge (like right segment in image above).
As I add custom lane routes, the source lane arrows are updated accordingly to best match the connections.
Lane arrows
When a source (filled square) is selected, the lane arrows palette appears, filtered to valid arrows for that source lane.
In any case where current connections for a lane match a standard lane arrow, the connection lines go thin white to indicate a standard set of connections. This is on a lane by lane basis. It makes it easy to see which lanes are using normal road/highway rules (those with thin white line connectors) and which are using customised rules (thick coloured lines).
No the middle lane of the round about should go to the outer lane of the roundabout. I think there should be a yellow circle in the middle lane of the roundabout. as for the connecting road, there should be a blue circle on the outermost lane but that might be hard to calculate.