Friday Facts #279 - Train GUI & Modern Spitter

Regular reports on Factorio development.
Post Reply
StahnAileron
Burner Inserter
Burner Inserter
Posts: 9
Joined: Tue Jan 10, 2017 3:37 pm
Contact:

Re: Friday Facts #279 - Train GUI & Modern Spitter

Post by StahnAileron » Mon Jan 28, 2019 6:01 am

FasterJump wrote:
Sun Jan 27, 2019 2:17 pm
I'm still not convinced about the new texture of enemies. But nests are definitely too flat.

Otherwise, I support the checkpoint suggestion. Or any mechanic that prevents trains to stockpile when trying to reach the same station while others identical stations are free.

I agree about making fulfilled conditions looking different. Maybe a shiny white border effect?
I thought that was accounted for with the lights? The game seems to do a check every time a train crosses into a new rail section/zone as defined by where you place the traffic lights. I have 3-station stops for loading/unloading bars/ores. Unless I'm actively messing around with them, they do a decent job of keeping train traffic flowing through them. There may be a second or so lag when a train leaves a station before the next train moves in though. I'm using a crossover section so any train from any of the 3 wait lines can access any station.

User avatar
bobingabout
Smart Inserter
Smart Inserter
Posts: 6661
Joined: Fri May 09, 2014 1:01 pm
Contact:

Re: Friday Facts #279 - Train GUI & Modern Spitter

Post by bobingabout » Mon Jan 28, 2019 10:17 am

My biggest disappointment with the new train GUI is that it appears to still be for a specific train. I amongst others have been wanting a train schedule system, where you plan a route then assign multiple trains to it.

Worm also looks a little out of place when you consider both biters and spitters have a hard shell, but, things are looking forward.
Creator of Bob's mods. Expanding your gameplay since version 0.9.8.

factoriouzr
Filter Inserter
Filter Inserter
Posts: 612
Joined: Sat Jun 06, 2015 2:23 am
Contact:

Re: Friday Facts #279 - Train GUI & Modern Spitter

Post by factoriouzr » Mon Jan 28, 2019 11:30 am

bobingabout wrote:
Mon Jan 28, 2019 10:17 am
My biggest disappointment with the new train GUI is that it appears to still be for a specific train. I amongst others have been wanting a train schedule system, where you plan a route then assign multiple trains to it.

Worm also looks a little out of place when you consider both biters and spitters have a hard shell, but, things are looking forward.
I agree about the train GUI. I have asked for a train schedule system before.

Fraisev*che
Manual Inserter
Manual Inserter
Posts: 3
Joined: Sat Dec 16, 2017 12:55 pm
Contact:

Re: Friday Facts #279 - Train GUI & Modern Spitter

Post by Fraisev*che » Mon Jan 28, 2019 2:04 pm

I think the changes in the train GUI are really great. It makes for a much better UI. But I also agree with players saying that this UI fails to address long standing issues with trains while you're at it. The two most important ones being, in my opinion :
* having a global scheduling place where you can create a schedule for multiple trains
* having a more complex set of orders, OpenTTD is really a great source of inspiration when it comes to trains (https://wiki.openttd.org/Orders), maybe those programming options would only be added through a new research like "complex train automation system" and would need a specific item to be crafted and inserted into the locomotive to prevent the UI from being too complex from the get go for new players

If you look into the order mechanisms of OpenTTD, most of them are easy to understand and allows to make most of what is asked (in)directly. Like the pass by station that could be a simple go non stop via order (go to station X passing by station Y). The train can also decide to accept to load or unload items and which ones. That's an interesting idea that could simplify a lot inserters programming if exploited well. But that still could be left out since players can create the same thing (albeit not as properly) using proper use of circuit networks items.

mrvn
Smart Inserter
Smart Inserter
Posts: 3261
Joined: Mon Sep 05, 2016 9:10 am
Contact:

Re: Friday Facts #279 - Train GUI & Modern Spitter

Post by mrvn » Mon Jan 28, 2019 2:53 pm

Sander_Bouwhuis wrote:
Fri Jan 25, 2019 7:05 pm
doktorstick wrote:
Fri Jan 25, 2019 6:31 pm
The Train UI doesn't address logical operator precedence. My assumption is that and's precedence is higher than or (e.g., a or b and x or y => a or (b and x) or y), but it isn't obvious from the UI nor--would I expect--it to be obvious to the general player. And if my assumption is wrong, then it further illustrates my point :D Perhaps it's in the tutorial...

Regardless, I think giving the player the ability to group terms would clarify the situation. As you well know, programmers add unnecessary parentheticals for clarity; it's one less bit of cognitive load when processing or debugging a logical statement.
That was the first thing I (also a software engineer) was thinking of. Operator precedence will NOT be clear to a non-mathematically inclined person.
And I want to say (A and B) or (C and (D or E)) without having to normalize that.

mrvn
Smart Inserter
Smart Inserter
Posts: 3261
Joined: Mon Sep 05, 2016 9:10 am
Contact:

Re: Friday Facts #279 - Train GUI & Modern Spitter

Post by mrvn » Mon Jan 28, 2019 3:06 pm

A few things concerning the temporary stops:

1) Can I edit a temporary stop so it becomes permanent? Maybe show temporary stops with a condition of "Visit once" or "Remove on exit". One (mods more likely) could add such temporary stops into schedules, for example when fuel becomes low. And ctrl+click seems like a great way to make a permanent schedule too without having to remember all the station names. Just point and click.

2) Can I have more than one temporary stop? I'm thinking of the frequent case that I need to got to somewhere else and then come back. So enter train, ctrl+click where the train is, ctrl+click where I need go.

Hmm, the first ctrl+click would add the temporary stop and then remove it, because I'm already there. So maybe ctrl+shift+click could add 2 temporary stops to go somewhere and back?

3) ctrl+click shouldn't change the automatic/manual setting. If you build a schedule with ctrl+click then the train shouldn't start driving on it's own. Too much chance of an incomplete schedule making a mess of the whole base.

4) How about a "drive there and then stop" mode. Somewhat between automatic and manual. A "stop at next station" option. Would be useful with (2) so the train doesn't leave on it's own while the player wants it for the return trip.

User avatar
Sigma1
Fast Inserter
Fast Inserter
Posts: 227
Joined: Mon Nov 21, 2016 5:25 pm
Contact:

Re: Friday Facts #279 - Train GUI & Modern Spitter

Post by Sigma1 » Mon Jan 28, 2019 5:56 pm

My only complaint is that the worms and nests are too smooth, as others have mentioned too.

The train GUI looks great, but I'd have the option to collapse the condition list for each station.
My mods can be found on my homepage: https://sigma-one.gitlab.io/
They include nuclear and military stuff right now.

adam_bise
Fast Inserter
Fast Inserter
Posts: 180
Joined: Fri Jun 08, 2018 10:42 pm
Contact:

Re: Friday Facts #279 - Train GUI & Modern Spitter

Post by adam_bise » Mon Jan 28, 2019 9:11 pm

golfmiketango wrote:
Sun Jan 27, 2019 8:13 am
Pretty bugs! But those worms look like uncircumcised penises. I figure you should make them less smooth, or finish the job and give them a couple of furry stomach sacs at ground-level :mrgreen:
lol seriously though!! We're gonna be running around avoiding being jizzed on by land penises hahah

But hey, scum got a penis size slider so I guess we roll with the times eh?

doktorstick
Fast Inserter
Fast Inserter
Posts: 121
Joined: Fri Aug 12, 2016 10:22 pm
Contact:

Re: Friday Facts #279 - Train GUI & Modern Spitter

Post by doktorstick » Mon Jan 28, 2019 10:48 pm

kovarex wrote:
Sat Jan 26, 2019 9:56 am
Reika wrote:
Fri Jan 25, 2019 8:32 pm
This FFF hints at, but does not really explicitly confirm or deny, a thing I have wanted for a long time:

Condition combination control; that is, currently with AND and OR, your ability to control is somewhat limited if you want them combined in complex ways. For example, there is no way to achieve condition (A & (B | C) & D) | (E & F) | G.

Will that ever be a feature, with 0.17 or ever?
It is, your condition can be decomposed to:

A & B & D | A & C & D | E & F | G.

No need for brackets. (I know it is not perfect, but considering how much of an edge case this is, it is good enough.
The leading example in the FFF has a non-edge case: A & B | C, where the intent can arguably be read as A & (B | C) but is parsed as (A & B) | C. If you decompose it into A & B | A & C, then when you change A you have to update it multiple places. Error prone and tedious. And more importantly, not something the average player is going to grok. Signalling can be a pain, why add extra confusion to why trains are misbehaving?
Hacked Splitters - the mod prophesied to bring balance to the belts

Bauer
Fast Inserter
Fast Inserter
Posts: 247
Joined: Fri May 05, 2017 12:48 pm
Contact:

Re: Friday Facts #279 - Train GUI & Modern Spitter

Post by Bauer » Tue Jan 29, 2019 10:15 am

I'm with Factorio for a while now.
I used trains and circuits heavily.
I used train delivered blueprints for recursive blueprints (delivering one piece of another good to identify the blueprint at the station).
I made a rail network with all stations having the same name and all trains having the same schedule (no turnouts, though).

I never ever had a case in my entire Factorio life in which something like this was even remotely needed:
(A & (B | C) & D) | (E & F) | G

Please, impress me. What the hell would you need this for?

McDuff
Fast Inserter
Fast Inserter
Posts: 188
Joined: Sun Jan 11, 2015 11:09 am
Contact:

Re: Friday Facts #279 - Train GUI & Modern Spitter

Post by McDuff » Tue Jan 29, 2019 11:36 am

I think the thing to remember here, certainly for me, is that this is a train GUI update and not a train mechanics update.

I think I (and lots of other people) would love a system where stations know what they have and what they need, and you can dispatch trains accordingly, but I appreciate that that's beyond the scope of the update!

astroshak
Long Handed Inserter
Long Handed Inserter
Posts: 83
Joined: Thu May 10, 2018 9:59 am
Contact:

Re: Friday Facts #279 - Train GUI & Modern Spitter

Post by astroshak » Tue Jan 29, 2019 11:43 am

Bauer wrote:
Tue Jan 29, 2019 10:15 am
I'm with Factorio for a while now.
I used trains and circuits heavily.
I used train delivered blueprints for recursive blueprints (delivering one piece of another good to identify the blueprint at the station).
I made a rail network with all stations having the same name and all trains having the same schedule (no turnouts, though).

I never ever had a case in my entire Factorio life in which something like this was even remotely needed:
(A & (B | C) & D) | (E & F) | G

Please, impress me. What the hell would you need this for?
The closest I can think of, that I would use myself, for that sort of situation would be refueling. Fuel < 10 (or whatever) would be the condition for A in A I ( B & C), with B and C being the normal destinations. Beyond that, it seems to me to be an attempt to use one train for multiple purposes - using one Iron Plates train to feed several different assembly areas, depending on the amount left in the buffer chests, for example. Personally, I’d rather just add a train to cover each Iron Plate drop off.

User avatar
5thHorseman
Filter Inserter
Filter Inserter
Posts: 691
Joined: Fri Jun 10, 2016 11:21 pm
Contact:

Re: Friday Facts #279 - Train GUI & Modern Spitter

Post by 5thHorseman » Tue Jan 29, 2019 12:10 pm

Bauer wrote:
Tue Jan 29, 2019 10:15 am
I never ever had a case in my entire Factorio life in which something like this was even remotely needed:
(A & (B | C) & D) | (E & F) | G
I too have never had anything remotely this complex. In fact, I have once in my entire Factorio life thought "I wonder how the game will parse this?" I think it was basically A & B | C or A | B & C. I don't recall what I was doing or why, or if it worked, or what I did to make it work if there were problems.

Still it'd be nice to not have to wonder.
"So you completed the game with a spaghetti factory? Well I hand crafted a rocket and threw it into space with my bare hands!"

User avatar
mexmer
Filter Inserter
Filter Inserter
Posts: 824
Joined: Wed Aug 03, 2016 2:00 pm
Contact:

Re: Friday Facts #279 - Train GUI & Modern Spitter

Post by mexmer » Tue Jan 29, 2019 12:43 pm

5thHorseman wrote:
Tue Jan 29, 2019 12:10 pm
Bauer wrote:
Tue Jan 29, 2019 10:15 am
I never ever had a case in my entire Factorio life in which something like this was even remotely needed:
(A & (B | C) & D) | (E & F) | G
I too have never had anything remotely this complex. In fact, I have once in my entire Factorio life thought "I wonder how the game will parse this?" I think it was basically A & B | C or A | B & C. I don't recall what I was doing or why, or if it worked, or what I did to make it work if there were problems.

Still it'd be nice to not have to wonder.
i had few times similar situation like you. if i remember correctly, it's evaluated in order (there is no operator precedence).
i know i made some circuitry for those situation, although until they added ability to read train content, it was quite pain :D

Bauer
Fast Inserter
Fast Inserter
Posts: 247
Joined: Fri May 05, 2017 12:48 pm
Contact:

Re: Friday Facts #279 - Train GUI & Modern Spitter

Post by Bauer » Tue Jan 29, 2019 1:59 pm

mexmer wrote:
Tue Jan 29, 2019 12:43 pm
5thHorseman wrote:
Tue Jan 29, 2019 12:10 pm
Bauer wrote:
Tue Jan 29, 2019 10:15 am
I never ever had a case in my entire Factorio life in which something like this was even remotely needed:
(A & (B | C) & D) | (E & F) | G
I too have never had anything remotely this complex. In fact, I have once in my entire Factorio life thought "I wonder how the game will parse this?" I think it was basically A & B | C or A | B & C. I don't recall what I was doing or why, or if it worked, or what I did to make it work if there were problems.

Still it'd be nice to not have to wonder.
i had few times similar situation like you. if i remember correctly, it's evaluated in order (there is no operator precedence).
i know i made some circuitry for those situation, although until they added ability to read train content, it was quite pain :D
I can also recall A | B&C(&D&..) and (A|B) & C (=A&C | B&C) situations. That's it.
There is an operator precedence. And yes, it would be great to have this visualized.
In reality, this is a problem you'll be facing after '000s of hours into the game.
You'll have learnt by then how to figure out how this mechanism works.
Factorio is about figuring thing out, after all.

This is why I think that this is an academic discussion. SCNR.

lordaeron1
Inserter
Inserter
Posts: 22
Joined: Mon Sep 17, 2018 10:42 am
Contact:

Re: Friday Facts #279 - Train GUI & Modern Spitter

Post by lordaeron1 » Tue Jan 29, 2019 2:10 pm

so be it.
Last edited by lordaeron1 on Tue Jan 29, 2019 2:32 pm, edited 1 time in total.

Hannu
Filter Inserter
Filter Inserter
Posts: 654
Joined: Thu Apr 28, 2016 6:27 am
Contact:

Re: Friday Facts #279 - Train GUI & Modern Spitter

Post by Hannu » Tue Jan 29, 2019 2:14 pm

Bauer wrote:
Tue Jan 29, 2019 10:15 am
I never ever had a case in my entire Factorio life in which something like this was even remotely needed:
(A & (B | C) & D) | (E & F) | G
I have needed (A | B) & (C | D). I can use distributive law and get A&C | A&D | B&C | B&D, but it is annoying to feed with current UI.
Also, at least I think that complex schedules are too annoying to use and do not even think how I could use them. It is easier to put more trains, rails and stations even nice logic would certainly be more elegant solution.

xfir01
Long Handed Inserter
Long Handed Inserter
Posts: 68
Joined: Fri Feb 10, 2017 5:08 pm
Contact:

Re: Friday Facts #279 - Train GUI & Modern Spitter

Post by xfir01 » Tue Jan 29, 2019 2:16 pm

lordaeron1 wrote:
Tue Jan 29, 2019 2:10 pm
I hate to be that person but ...

January is almost over and there is no 0.17.
I don't care about mods and I play vanilla only, every new update I have a new motivation to replay the game all over again.
Sadly this time the promised 0.17 release is very hurtful, stated as January but clearly, it's not going to be.

Anyway, as they say... the higher the hype goes the deeper the fall will be. very sad :(
They said as much in FFF #278:
https://factorio.com/blog/post/fff-278
Playtesting, bug fixing, and design balancing
It seems to always be the case, but $nextUpdate is going to be the biggest Factorio release so far. While some initial playtesting shows that most things are stable, we have yet to have our typical office-wide week/fortnight of playtesting and tweaking. Inevitably things that we need to solve will come up during this playtesting, so it would be unwise to release before it is complete. There are also over 50 unsorted bug reports in our forum, which we will need to sort through.

Looking over what is left to be done, It is clear to me that the release won't be ready in January.
When we are ready to release 0.17, its launch definitely won't be a surprise. We will announce the exact date in the FFF at least the week before.
It's a big update, they gave an estimate for January release, but the date slipped. It happens all the time. You make it sound like they're giving estimates in bad faith, but this kind of reaction is why developers are hesitant to give any estimate in the first place.

lordaeron1
Inserter
Inserter
Posts: 22
Joined: Mon Sep 17, 2018 10:42 am
Contact:

Re: Friday Facts #279 - Train GUI & Modern Spitter

Post by lordaeron1 » Tue Jan 29, 2019 2:34 pm

xfir01 wrote:
Tue Jan 29, 2019 2:16 pm
lordaeron1 wrote:
Tue Jan 29, 2019 2:10 pm
I hate to be that person but ...

January is almost over and there is no 0.17.
I don't care about mods and I play vanilla only, every new update I have a new motivation to replay the game all over again.
Sadly this time the promised 0.17 release is very hurtful, stated as January but clearly, it's not going to be.

Anyway, as they say... the higher the hype goes the deeper the fall will be. very sad :(
They said as much in FFF #278:
https://factorio.com/blog/post/fff-278
Playtesting, bug fixing, and design balancing
It seems to always be the case, but $nextUpdate is going to be the biggest Factorio release so far. While some initial playtesting shows that most things are stable, we have yet to have our typical office-wide week/fortnight of playtesting and tweaking. Inevitably things that we need to solve will come up during this playtesting, so it would be unwise to release before it is complete. There are also over 50 unsorted bug reports in our forum, which we will need to sort through.

Looking over what is left to be done, It is clear to me that the release won't be ready in January.
When we are ready to release 0.17, its launch definitely won't be a surprise. We will announce the exact date in the FFF at least the week before.
It's a big update, they gave an estimate for January release, but the date slipped. It happens all the time. You make it sound like they're giving estimates in bad faith, but this kind of reaction is why developers are hesitant to give any estimate in the first place.
I have deleted my comment, It's just that I was counting on the release date I thought will be possible.

Bauer
Fast Inserter
Fast Inserter
Posts: 247
Joined: Fri May 05, 2017 12:48 pm
Contact:

Re: Friday Facts #279 - Train GUI & Modern Spitter

Post by Bauer » Tue Jan 29, 2019 2:38 pm

Hannu wrote:
Tue Jan 29, 2019 2:14 pm
Bauer wrote:
Tue Jan 29, 2019 10:15 am
I never ever had a case in my entire Factorio life in which something like this was even remotely needed:
(A & (B | C) & D) | (E & F) | G
I have needed (A | B) & (C | D). I can use distributive law and get A&C | A&D | B&C | B&D, but it is annoying to feed with current UI.
Also, at least I think that complex schedules are too annoying to use and do not even think how I could use them. It is easier to put more trains, rails and stations even nice logic would certainly be more elegant solution.
I always use circuit logic for more complex jobs.
Because debugging is much easier (rewire a few combinators instead of changing the schedule of xxx trains).
This, of course, is because "copy&paste" with blueprints is much easier than changing xxx train schedules manually.
(copy and paste usually doesn't work if you only want to change the condition for one of their stations)
Then the trains have "G>0" as leave-condition for their (complex) stations and that's it.

Post Reply

Return to “News”

Who is online

Users browsing this forum: No registered users