Friday Facts #280 - Visual Feedback is the king
-
- Fast Inserter
- Posts: 209
- Joined: Mon Jan 08, 2018 4:54 pm
- Contact:
Re: Friday Facts #280 - Visual Feedback is the king
"Check for fuel" would demand ability to skip station on condition. There is no such ability now.
"Check for station overloading" would demand train to know "how many trains are on the route to the station" and "how many trains can wait before the station". Both info seems unknown now. And if it would be known it would be station control to not to allow routing of more trains than designated.
"Check for station overloading" would demand train to know "how many trains are on the route to the station" and "how many trains can wait before the station". Both info seems unknown now. And if it would be known it would be station control to not to allow routing of more trains than designated.
Re: Friday Facts #280 - Visual Feedback is the king
I don't understand all the fuss about fuel and refueling. It's no big deal to place fuel as part of the main stations.
-
- Fast Inserter
- Posts: 209
- Joined: Mon Jan 08, 2018 4:54 pm
- Contact:
Re: Friday Facts #280 - Visual Feedback is the king
pleegwat wrote: βSun Feb 03, 2019 7:02 pmI don't think you could make decisions here on waypoint stations anyway. even if a waypoint reads the train for one tick, you'd then have to get through all the requisite combinator logic before the train arrives at the branch.Pi-C wrote: βSun Feb 03, 2019 6:08 pmIt could work, but I would need more than twice the original number of stations for that, which might get a bit messy. Basically, I would have to change the schedule from "1) Station A (Circuit + Inactivity), 2) Station A (Circuit + Inactivity)" to "1) Station A (Circuit + Inactivity), 2) Exit (no condition)".
The reason I need waypoints at all is because I need routing stations in addition to normal loading/unloading stations. All trains have the same schedules, so the network is supposed to direct the trains based on what they carry. Before branches, I stop each train to read its content (which imposes a penalty on train speed already). If a train carries something that is needed off the main line, the main line will be closed for this train and the branch-off will open. Now, it may happen that the routing station is close to a regular loading/unloading station on the main line. Without a waypoint on the branch-off, the train will see that there is a station it has on its schedule on the main line and try to go there -- which it can't because the main line is closed, so it is blocking the line until I can manually intervene.
With my suggestion, I would just have to put one dedicated waypoint after a routing station -- but only if the next (routing or regular) station in the one direction is considerably further away than the next (routing or regular) station in the other direction. Going by your suggestion, I would have to use 2 waypoints after each routing station + 1 waypoint after each regular station. This is more expensive in regard to material needed, it would clutter up the map -- and I'm afraid it could also be expensive UPS-wise, just because I would have to put so many new stations on the map.
I'm afraid you've got me wrong: The logic for setting signals is at the routing stations, and it works, opening the signal after the switch. Trains then proceed to the next station (may be a waypoint for guidance, or the next routing/regular station). The signal state is reset once the train has left the routing station and passed the exit signal -- then the next train can enter the routing station. Currently, my waypoints are normal stations that are set to always send the GREEN signal on the circuit condition without reading the train. But all of my stations share the same name, so trains don't know or care whether their they are at a regular (loading/unloading), routing, or waypoint station and the second condition from the schedule (AND Inactivity) kicks in. So trains are moving on the main line until a track branches off. In this case they have to stop at a routing station that reads train contents, sets the exit signals and sends the train the GREEN signal via circuit network. The train then continues to wait until the scheduled inactivity period is over and the block ahead is clear -- then it starts moving and goes to the next station, where it will stop again. So routing and waypoint stations limit train speeds in my setup because the train has to brake until it stops, wait, and accelerate again there. There is no way to get around the routing station penalty, obviously, but trains rushing through the waypoints would considerably decrease a train's travel time.
Again, this could be quite messy. I already use red and green wires along all tracks to request and guide the trains with signals from the regular stations. If only we had a third kind of circuit wires (e.g. blue or yellow cables), then I could use these for train contents! Nah, just kidding β¦pleegwat wrote: βSun Feb 03, 2019 7:02 pmI think there's an alternative though - you could have a couple of combinators next to each signal acting as a latch. That makes the train contents travel along the line, advancing to the next signal as the train passes the previous. At a simple exit, you can use the forwarded signal to control the switch without having to read the train again.
Roughly, my network is built like this:
- All train stations are connected via circuit network.
- Regular (loading/unloading) stations signal what kind of cargo (really anything -- loading stations request trains with no cargo)they need via a pulse on the red wire and constantly (until a train they need arrives) on the green wire. There is a central dispatching area where all trains start and end their journey. Once a signal arrives on the red wire, it is registered; as soon as there is a train with anything required, that train is released and the required cargo is removed from the register.
If a train arrives at a regular station, the station will check whether it needs anything from it -- otherwise it will set the GREEN signal immediately and the train will leave after its inactivity period. Loading stations will put as much of their stuff as they can on the train. Ideally, that would be a full train load; if the train already has cargo, they add to it -- so mixed-cargo trains are possible. If a mixed-cargo train arrives, there might be a chance that it had left the dispatcher because some other cargo had been requested by another station. In such situations, the station signals everything on the train that it doesn't need again with a pulse on the red wire. Unloading stations will take as much as they need from the train. Ideally, that would be a full train load (so the train leaves empty); otherwise the train is still partly loaded and the next loading station will add to it. Again, if the train has a mixed cargo, anything on it not needed will be pulsed via red by the station. - Routing stations read train content and compare it with what is on the green wire coming in from the side (the line could branch off to just a single station or an entire subnetwork with several stations -- more routing stations would then be needed on this subnetwork). If there is a match, the station opens the branch-off, otherwise the train proceeds on the main line. In some cases, routing stations use a different logic. Say there are mining outposts on both sides of the branch (so both sides need trains with room for solid cargo) and stations needing fluids on only one side. In such a case, fluid trains would always go where they are needed while the first cargo train would go left, the second right, the next left again β¦ (other ratios are possible). This prevents one side from sucking up all trains, but there is a chance that a train gets to a station where it is not needed. In that case, it just leaves the station and proceeds its journey.
- Waypoint stations are just that, they neither read from nor signal on the circuit network.
I haven't had trouble with merges yet because it's not the trains that decide where they will go -- the regular stations say what they need and the routing stations direct the trains with requested cargo to it. However, let's give it a try!pleegwat wrote: βSun Feb 03, 2019 7:02 pmI'm not quite sure how to build a logic gate that works correctly at a merge (since in conflict situations you need to detect which train advanced). The idea probably also requires that signals are non-red for at least one tick between one train leaving the block and another train entering, but I think this is the case anyway.
- Train arrives at routing station, contents is read, signals are set.
- Routing station sends train contents to signals ahead, train leaves.
- Signals are set according to train contents. Train contents is ignored at the last signal before a merge.
- Train arrives at another routing station, right after the merge. Train contents signal must be removed from previous block.
- Circle starts all over again.
(Well, roughly speaking at least! Combinators may introduce delays.)
That means, if the signals ahead of a routing station see the contents of an approaching train, the signals behind it will too. In short, I can't transmit signals from stations and trains on the same wire. I need a separate wire between stations to keep the train content signals isolated from previous blocks. So, we do need another wire color after all! However, even if I could manage to transmit train contents signals separately without accidentally connecting them to the line carrying the station signals, there is another problem: The next train can't leave the routing station until the first train has reached the next station! Say, the first train carries iron ore, the second crude oil. If the contents of both trains were on the same wire, the first train might be sent to an oil drop-off because it passes that branch on the way to the ore drop-off. Even worse: the first train resetting its signals might mess with the train contents signals of the second train. So, there could only be one train between any two stations, however far apart these might be -- I guess throughput would be comparable to when I still had "Inactivity=8 seconds" in my schedules and close to 20 trains piled up before a branch β¦
A good mod deserves a good changelog. Here's a tutorial (WIP) about Factorio's way too strict changelog syntax!
- planetmaker
- Fast Inserter
- Posts: 188
- Joined: Mon Jan 21, 2019 9:30 am
- Contact:
Re: Friday Facts #280 - Visual Feedback is the king
I totally like the love you give the train interface. That should make train handling a lot easier.
And the same has to be said for the blueprint interface. That currently is a bit... say, unintuitive and I end up cluttering my whole inventory with blueprints which I regularily need to weed through - looking forward to see the changes there as well.
And the same has to be said for the blueprint interface. That currently is a bit... say, unintuitive and I end up cluttering my whole inventory with blueprints which I regularily need to weed through - looking forward to see the changes there as well.
They help you routing trains. E.g. it allows you to tell a train going via a certain route so that congestion in another place is avoided.micromario wrote: βFri Feb 01, 2019 5:38 pm What is the use case for waypoints? I've never felt like I needed to build one.
- bobingabout
- Smart Inserter
- Posts: 7352
- Joined: Fri May 09, 2014 1:01 pm
- Contact:
Re: Friday Facts #280 - Visual Feedback is the king
I like the idea of that additional toolbar. A suggestion somewhere on the forums was to allow high-res monitors to display 2 bars side by side, this will help fill the empty space.
Re: Friday Facts #280 - Visual Feedback is the king
Pi-C, how many exit signals (located on mainline/branch after the switch) is one routing station controlling?
I've seen some designs with many (up to extreme 20) red signals in a row to *really* discourage the train from choosing that path.
I've seen some designs with many (up to extreme 20) red signals in a row to *really* discourage the train from choosing that path.
Re: Friday Facts #280 - Visual Feedback is the king
One. I could try to use more signals in a row, I guess. (Actually, it should be enough to set just the signal that is the farthest away from the routing station, right?) Can't try it now, though. I abandoned my previous map for the time being; when 0.17 comes out, I plan to restart, with the new train network based on and improved by the experiences I made with the last one.
A good mod deserves a good changelog. Here's a tutorial (WIP) about Factorio's way too strict changelog syntax!
-
- Inserter
- Posts: 22
- Joined: Mon Jun 27, 2016 4:20 pm
- Contact:
Re: Friday Facts #280 - Visual Feedback is the king
This is needed. I hope they implement something to solve this issue. I have a the mod for trash slots still installed so I can lock the trash to the requests. Profiles is also why I still use the mod, there needs to be some profiles.factoriouzr wrote: βSun Feb 03, 2019 2:01 pm This is all great, but can we also have logistics request and trash merged into one in the GUI. When I request 100 turrets for eg. I want exactly that many all the time. If I pick up more during construction/deconstruction activities, I want the excess to be auto trashed. Same for belts, inserters and literally everything in the game.
Right now it's cumbersome to set the requester limit, then go to a new tab and find the item again and set a trash limit to the same as the request limit.
It makes much more sense to have the requests and trash slots merged and have two sliders for the item, one for a request limit and one for a trash limit, but have a checkbox that links the two sliders and makes them the same value. This checkbox should be on by default (or make it an option to be on by default in the options menu of the game).
I have been requesting this for a long time, now would be the perfect time to do this with the UI changes and improvements.
These devs are doing so much I am just blown away at how they handle user feed back. These FFF just continually impress me and make me can't wait for .17 or 1.0. I am really curious for the future (years down the line) with possible DLC/Expansions what they will come up with.
Re: Friday Facts #280 - Visual Feedback is the king
Thank you. I love the new train interface!
Re: Friday Facts #280 - Visual Feedback is the king
According to wiki, a red circuit-networked signal has penalty of 1000, so each such red signal counts.Pi-C wrote: βMon Feb 04, 2019 12:05 pmOne. I could try to use more signals in a row, I guess. (Actually, it should be enough to set just the signal that is the farthest away from the routing station, right?) Can't try it now, though. I abandoned my previous map for the time being; when 0.17 comes out, I plan to restart, with the new train network based on and improved by the experiences I made with the last one.
If the difference between (routing station->next mainline station) and (routing station->next branch station) is not that big and the train still chooses (red) mainline, you might want to check how many red signals there are on the branchline vs. mainline (that is, from the switch up to first station on the line).
Maybe designs of different kinds of stations use different number of signals that may cause this as well?
-
- Filter Inserter
- Posts: 265
- Joined: Thu Sep 15, 2016 3:04 pm
- Contact:
Re: Friday Facts #280 - Visual Feedback is the king
Excellent FFF.
Effectiveness is one goal of playing the game. Should the computer play the game or you?
They do already. Connect a wire to a station and a train that stops there has access
Re: Friday Facts #280 - Visual Feedback is the king
Unfortunately there are no (pre-) pathfinding hooks in the mod API so there is no way to do much of what is needed with trains unless you undertake the considerable task of scheduling from scratch as in LTN.meganothing wrote: βMon Feb 04, 2019 3:36 pmThey do already. Connect a wire to a station and a train that stops there has access
I believe that someone (Kovarex?) once explained that vanilla train pathfinding smarts were limited to trying to find an open platform at a multi-platform station but I don't understand why a game about automating keeps blocking automation so much.
Re: Friday Facts #280 - Visual Feedback is the king
The equivalent of a one way pump on the circuit network is a arithmetic combiner with the condition: Each + 0 = Each
Connect all of your branches to the main network through two of these (one for red, one for green).
-
- Filter Inserter
- Posts: 265
- Joined: Thu Sep 15, 2016 3:04 pm
- Contact:
Re: Friday Facts #280 - Visual Feedback is the king
Can someone explain to me the use-case for disabling the exosceleton?
Re: Friday Facts #280 - Visual Feedback is the king
Precise positioning is pretty hard when you walk 2 tiles just by pressing a movement button for a very short time. You just walk too much with 6 or more exo skeletons in that time. ^^
Re: Friday Facts #280 - Visual Feedback is the king
Trying to squeeze between two belts to fix a tiny part of a very compact base. Sometimes fast can be TOO fast.Can someone explain to me the use-case for disabling the exosceleton?
Belt immunity equipment will probably be just as effective.
Re: Friday Facts #280 - Visual Feedback is the king
The function from The progressive running mod should go vanilla
https://mods.factorio.com/mods/binbinhf ... iveRunning
Re: Friday Facts #280 - Visual Feedback is the king
Yeah I hope it does, Lubricus. Just a bit more smoothly.
Re: Friday Facts #280 - Visual Feedback is the king
* My first post *
You are the true AAA game Dev's:
I was really happy with all the news for the 0.17. And pleased on enjoy and contribute with this awesome game and comunity.
+ 1 for this!
(sorry, I not speack English)
For ALL Factorio/Wube team:
Thank you for your great and hard work!You are the true AAA game Dev's:
- Amazing
- Awesome
I was really happy with all the news for the 0.17. And pleased on enjoy and contribute with this awesome game and comunity.
Jon8RFC wrote: βFri Feb 01, 2019 6:33 pm Thanks for the new toggles! The toolbar will be an awesome addition.
Please make the personal roboport a 3-way toggle. On/off/self-only.
With self-only in multiplayer, inventory won't empty/fill when walking by something done by another player.
One thing to consider is should self-only still repair and/or replace destroyed entities.
Regarding the logistics & trash toggle suggestion:
Since there's a smaller inventory without armor, maybe a 3-way switch for on/off/armor-only?
The armor-only would disable it when a player dies, and once they get their armor back, it turns back on automatically.
Please add the belt immunity as a toolbar toggle.
Like the temporary train stops, I'd still love to see temporary logistics requests. Set it for 100, it fills or reaches 100, and it goes away.
+ 1 for this!
(sorry, I not speack English)
"A picture says more than 1000 words"
(please consider, english is not my language)
(please consider, english is not my language)