Rail planning improvements

Post your ideas and suggestions how to improve the game.

Moderator: ickputzdirwech

Post Reply
Tooster
Long Handed Inserter
Long Handed Inserter
Posts: 62
Joined: Wed Mar 24, 2021 6:42 pm
Contact:

Rail planning improvements

Post by Tooster »

Generally, rail planning is working well. Sometimes, however, the work doesn't go as smoothly as it could with the current implementations. Below, i'm gonna assume default controls with [CTRL] for an obstacle avoidance mode, so I'll call it a [CTRL] mode sometimes.
Problems
  • Controls for rail planning introduce friction
    • ambiguity: [SHIFT] for ghost planning and [CTRL] for planning with obstacle avoidance produce almost the same result. From personal experience, I've never used Ctrl for rail planning. Are there any differences between the two modes? I don't recall there being any differences. @EDIT — I've been informed, that "obstacle" is "a tree, a cliff or a rock". This is an unfortunate wording for the "obstacle avoiding planning" and a mechanic for solving a very specific kind of problem
    • conflicts: [SHIFT] during rail planning conflicts with reverse rotation ([SHIFT]+[R]), which often leads to a problem where I press [R] 7 times to rotate a rail in a proper direction.
    • lack of control: Can't change the [SHIFT]+[LMB] shortcut for rail planning (@EDIT it can be changed, but only by changing the ghost building key which is solid tradeoff). Only [CTRL]+[LMB] can be changed for obstacle avoidance building.
    • manual difficulties: It's difficult to rotate with [R] when using [SHIFT] or [CTRL] mode. Rotating in CCW requires as much as 3 simultaneous keys pressed at the same time, all of which twist the hand substantially (CTRL+SHIFT+R)
    • counterintuitiveness: Holding [CTRL] and [SHIFT] at the same time deactivates rail planning, but makes sense verbally: "ghost planning with obstacle avoidance"
    • feature divergence: Rotating with [R] doesn't work in the [CTRL] mode. It only works in the [SHIFT] mode.
  • Planning a ghost rail, then pressing UNDO updates the starting point of a track. Here is a quick demonstration (LMB, SHIFT+LMB, CTRL+Z, SHIFT+LMB):
  • It's difficult to plan rails with obstacles in the way, for example through the belts.
  • rails don't align with already laid tracks when planning, requiring explicit rotations with [R], which, as mentioned earlier, doesn't work with [CTRL] mode:
    Image
Proposed solutions
I propose new controls and new modes for the rail planning that, in my opinion, would somehow solve the above. Some of the ideas below have some little problems of their own, which require more thought.
  • Remove [SHIFT] from track planning. Instead, the [CTRL] would TOGGLE the rail planning mode, and it would cycle between 4 of them:
    • REACH (default) - for placing tracks in player's reach (like already present in game after clicking [LMB] on a rail without any accelerators)
    • SAFE PLANNING - like the current SHIFT/CTRL planning with obstacle avoidance. If there is no path, then the red X cross is shown like it is now
    • UNSAFE PLANNING - a mode, which would allow for train tracks to path through simple obstacles. This mode would NOT destroy existing entities, but would find way through simple entities and show conflicts appropriately.
      • Be default it would path through belts, pipes and walls.
      • Supported entities could be converted to their other variants: walls to gates, belts to underground belts and pipes to underground pipes.
      • Optionally add filters (like for blueprints/upgrade/deconstruction planners) which could allow pathing through entities. Example: player would mark trees, rocks, rails signals, train stations, combinators, electric poles and logistic chests as pathable, because he can easily move those entities. This would allow players for more control when planning. It could also help when designing things like crossings and compact spaghetti bases.
      • When an unsafe path is found, the tracks change tint from green to yellow/orange and a warning icon is displayed.
      • Some indicator would show which entities/tracks collide with each other. Currently vanilla supports showing entities planned for deconstruction and ghost entities in the same place, so that would be similar.
      • A global warning could be shown similar to the one saying "entity is missing material for construction"
  • (This is my preferred way now) Alternatively to the idea above with [CTRL] as toggle I came up with this idea: first, [LMB] on a track to enter planning mode (like it is now), second use [SHIFT]+[MOUSE-WHEEL] to scroll between 3 modes: REACH, SAFE and UNSAFE (like above). This has an additional advantage of similar controls being already present in the game — when scrolling the paste buffer. It would also remove the need for using [CTRL] altogether for rail planning.
  • To solve the UNDO issue — store path starting point on the undo stack to solve the undo problem. This way a misplaced branch can be undo-ed and placed again without navigating to the beginning of the misplaced track. It would be helpful when planing long tracks.
  • For tracks auto-aligning — Check if there is a rail on one of the hovered tiles, snap to it and adjust initial rotation. This could massively help when planning tracks. [R] would rotate the rail ignoring the snap. [F] would flip the direction the rail is going in.
Problems, opportunities and things worth consideration with proposed solutions
  • (relates to first proposition of for CTRL) Using [CTRL] for switching planning could be a bit confusing. [SHIFT] is assigned to ghost building already, and planning is similar to ghost building. Tracks are planned as ghosts as well. Would [CTRL] be confused with [SHIFT] due to player's expectations about that key? How should [SHIFT] be handled then, as a NO-OP? Maybe use [SHIFT] to enter the planning mode as toggle, but then how to change the mode? Using [SHIFT]+[MOUSE-WHEEL]? (While writing this I came up with the idea of using [LMB] on track to enter planning and [SHIFT]+[WHEEL] to change mode) Would it be confusing if [SHIFT] worked as toggle only when building tracks?
  • Marking overlapping entities would be something new in the game. There is however a infrastructure to show them in an intuitive way (yellow/orange tinted ghost + warning at the bottom and on map), so it would be also something familiar
  • Marking overlapping blocks could open way to other feature requests like copy-pasting entities over
  • How a player would choose which overlapping entity to build and which to destroy? I propose using currently held item in the cursor as a selector. Use [SHIFT]+[MOUSE-SCROLL] to cycle between overlapping entities. Building/Ghost building ([LMB]) an entity with selected item accepts it, while using [RMB] selects the other one.
  • How many entities can overlap? I would say 2 distinct entities per single tile, because I don't expect anyone trying to plan multiple layers of overlaps at the same time.
  • Related to snapping and aligning rail rotation to an existing rail — What would be the best way to handle pressing rotation, then moving to another tile? Snap again, or preserve rotation? I'd say snap again.
For now, this is all I can think of, but if I find some more suggestions I'll update this post

Only now have I realized, that undo support could be moved to a separate suggestion/bug thread, and sorry for that, but this seemed like a tightly coupled idea when I was writing this post before.
Last edited by Tooster on Sun Jan 08, 2023 9:24 pm, edited 2 times in total.
Look mom, I made a mod ^^ Barrel Stages

Loewchen
Global Moderator
Global Moderator
Posts: 8361
Joined: Wed Jan 07, 2015 5:53 pm
Contact:

Re: Rail planning improvements

Post by Loewchen »

Tooster wrote:
Sun Jan 08, 2023 5:03 pm
  1. ambiguity: [SHIFT] for ghost planning and [CTRL] for planning with obstacle avoidance produce almost the same result. From personal experience, I've never used Ctrl for rail planning. Are there any differences between the two modes? I don't recall there being any differences
  2. conflicts: [SHIFT] during rail planning conflicts with reverse rotation ([SHIFT]+[R]), which often leads to a problem where I press [R] 7 times to rotate a rail in a proper direction.
  3. lack of control: Can't change the [SHIFT]+[LMB] shortcut for rail planning. Only [CTRL]+[LMB] can be changed for obstacle avoidance building.
  4. manual difficulties: It's difficult to rotate with [R] when using [SHIFT] or [CTRL] mode. Rotating in CCW requires as much as 3 simultaneous keys pressed at the same time, all of which twist the hand substantially (CTRL+SHIFT+R)
  5. counterintuitiveness: Holding [CTRL] and [SHIFT] at the same time deactivates rail planning, but makes sense verbally: "ghost planning with obstacle avoidance"
  6. feature divergence: Rotating with [R] doesn't work in the [CTRL] mode. It only works in the [SHIFT] mode.
  1. As the name says, ctrl will avoid obstacles (trees, rocks, cliff), shift will not, quite useful when you don't have time or ability to remove those
  2. Agreed, that is annoying
  3. That is not true, you can change the ghost building key
  4. Why are you holding shift and ctrl and R?
  5. No. shift = ghost planning crtl = ghost planning with obstacle avoidance, pressing both does not make sense
  6. That is just not true

Tooster
Long Handed Inserter
Long Handed Inserter
Posts: 62
Joined: Wed Mar 24, 2021 6:42 pm
Contact:

Re: Rail planning improvements

Post by Tooster »

Loewchen wrote:
Sun Jan 08, 2023 6:08 pm
Tooster wrote:
Sun Jan 08, 2023 5:03 pm
  1. ambiguity: [SHIFT] for ghost planning and [CTRL] for planning with obstacle avoidance produce almost the same result. From personal experience, I've never used Ctrl for rail planning. Are there any differences between the two modes? I don't recall there being any differences
  2. conflicts: [SHIFT] during rail planning conflicts with reverse rotation ([SHIFT]+[R]), which often leads to a problem where I press [R] 7 times to rotate a rail in a proper direction.
  3. lack of control: Can't change the [SHIFT]+[LMB] shortcut for rail planning. Only [CTRL]+[LMB] can be changed for obstacle avoidance building.
  4. manual difficulties: It's difficult to rotate with [R] when using [SHIFT] or [CTRL] mode. Rotating in CCW requires as much as 3 simultaneous keys pressed at the same time, all of which twist the hand substantially (CTRL+SHIFT+R)
  5. counterintuitiveness: Holding [CTRL] and [SHIFT] at the same time deactivates rail planning, but makes sense verbally: "ghost planning with obstacle avoidance"
  6. feature divergence: Rotating with [R] doesn't work in the [CTRL] mode. It only works in the [SHIFT] mode.
  1. As the name says, ctrl will avoid obstacles (trees, rocks, cliff), shift will not, quite useful when you don't have time or ability to remove those
  2. Agreed, that is annoying
  3. That is not true, you can change the ghost building key
  4. Why are you holding shift and ctrl and R?
  5. No. shift = ghost planning crtl = ghost planning with obstacle avoidance, pressing both does not make sense
  6. That is just not true
1. Interesting, I didn't know it worked like that — I've almost always cleared map to a flat empty surface. In this case the naming and explanation in the tips is quite unfortunate as I always thought "obstacles" involved anything, and never saw a difference when laying rails in bases. I think it would be good to include that somewhere in the in-game tip, that it means natural generation specifically.
2. ...
3. That slipped my mind. I thought of ghost building and rail planning as separate things. It is unfortunate though that changing the rail building key requires to also change the ghost building key. This is important, because if you want to "fix" the SHIFT+R for CCW rotation, you must change the ghost building key.
4. It stems from the lack of understanding what's the difference between the SHIFT and CTRL planing (in hope that two modifiers at the same time do something). HOWEVER, this combination is important when trying to rotate in CCW direction when planning with path avoidance. This would be less of a problem, if the rotation was preserved when entering/exiting the planning mode (HOLD SHIFT -> R several times -> RELEASE SHIFT -> HOLD SHIFT AGAIN -> rotation is lost, thus, cannot rotate in CTRL mode)
5. Image The tip wording "you can ALSO hold CTRL..." could be understood that two keys can be pressed at the same time
6. This was due to my keybinding. R works, SHIFT+R doesn't (@EDIT confirmed, CTRL+SHIFT+R for CCW rotation not working, settings are OK)
Last edited by Tooster on Sun Jan 08, 2023 10:32 pm, edited 2 times in total.
Look mom, I made a mod ^^ Barrel Stages

Loewchen
Global Moderator
Global Moderator
Posts: 8361
Joined: Wed Jan 07, 2015 5:53 pm
Contact:

Re: Rail planning improvements

Post by Loewchen »

Tooster wrote:
Sun Jan 08, 2023 6:32 pm
5.[...]
I see, that is indeed ambiguous.

I like the idea for using the Mousewheel for rotations in general, but it would need a keyboard key to trigger it.

DarkShadow44
Filter Inserter
Filter Inserter
Posts: 276
Joined: Thu Jun 01, 2017 12:05 pm
Contact:

Re: Rail planning improvements

Post by DarkShadow44 »

While we're at it, how about support for parallel rails? Preferably with a variable distance between the two rails? I'm never really able to use the full potential of the rail planner, because I need to make a second parallel rail from hand as well.

FuryoftheStars
Smart Inserter
Smart Inserter
Posts: 2635
Joined: Tue Apr 25, 2017 2:01 pm
Contact:

Re: Rail planning improvements

Post by FuryoftheStars »

Gonna say it right now: no to any removal of obstacle avoidance. The devs removed it once thinking that no one used it and a lot of us spoke up until they added it back. This is most helpful for pathing around cliffs before you have cliff explosives, but also for planning manual rail laying before bots and not wanting to manually chop down tons of trees.
My Mods: Classic Factorio Basic Oil Processing | Sulfur Production from Oils | Wood to Oil Processing | Infinite Resources - Normal Yield | Tree Saplings (Redux) | Alien Biomes Tweaked | Restrictions on Artificial Tiles | New Gear Girl & HR Graphics

Tooster
Long Handed Inserter
Long Handed Inserter
Posts: 62
Joined: Wed Mar 24, 2021 6:42 pm
Contact:

Re: Rail planning improvements

Post by Tooster »

FuryoftheStars wrote:
Sun Jan 08, 2023 9:32 pm
Gonna say it right now: no to any removal of obstacle avoidance. The devs removed it once thinking that no one used it and a lot of us spoke up until they added it back. This is most helpful for pathing around cliffs before you have cliff explosives, but also for planning manual rail laying before bots and not wanting to manually chop down tons of trees.
No one was saying anything about removing obstacle avoidance, I even included it as a SAFE mode in the suggestion 😅
Look mom, I made a mod ^^ Barrel Stages

FuryoftheStars
Smart Inserter
Smart Inserter
Posts: 2635
Joined: Tue Apr 25, 2017 2:01 pm
Contact:

Re: Rail planning improvements

Post by FuryoftheStars »

The OP was way too wordy, sorry, so I wasn't able to read it all, but I caught in the initial complaints about not knowing what obstacle avoidance was for and never use it, so I just wanted to put that out there, regardless of if you were suggesting its removal or not. Didn't want that idea getting into the devs' heads again. :D
My Mods: Classic Factorio Basic Oil Processing | Sulfur Production from Oils | Wood to Oil Processing | Infinite Resources - Normal Yield | Tree Saplings (Redux) | Alien Biomes Tweaked | Restrictions on Artificial Tiles | New Gear Girl & HR Graphics

Post Reply

Return to “Ideas and Suggestions”