Friday Facts #299 - Everything is more complex than expected

Regular reports on Factorio development.

tehfreek
Filter Inserter
Filter Inserter
Posts: 391
Joined: Thu Mar 17, 2016 7:34 am
Contact:

Re: Friday Facts #299 - Everything is more complex than expected

Post by tehfreek »

Pfft, trains, amirite?

User avatar
Gergely
Filter Inserter
Filter Inserter
Posts: 614
Joined: Sun Apr 10, 2016 8:31 pm
Contact:

Re: Friday Facts #299 - Everything is more complex than expected

Post by Gergely »

Wait are you talking train crashes or game crashes?

Which of them is shown in the diagram?

User avatar
Klonan
Factorio Staff
Factorio Staff
Posts: 5204
Joined: Sun Jan 11, 2015 2:09 pm
Contact:

Re: Friday Facts #299 - Everything is more complex than expected

Post by Klonan »

Gergely wrote: ↑
Fri Jun 14, 2019 2:12 pm
Wait are you talking train crashes or game crashes?

Which of them is shown in the diagram?
The graph shows total crash reports

Riktol
Inserter
Inserter
Posts: 37
Joined: Thu Nov 23, 2017 12:52 am
Contact:

Re: Friday Facts #299 - Everything is more complex than expected

Post by Riktol »

I've probably missed something but why can't you limit a train to reserving each block once? The train enters block 3 and removes the reservation on block 2, then reserves block 2 again (unless another train has already reserved it)?

Alternatively you could mark the whole thing as working as designed, people who don't put enough signals :twisted: deserve :twisted: to have their trains crash.

User avatar
DanGio
Filter Inserter
Filter Inserter
Posts: 398
Joined: Sat May 10, 2014 6:22 pm
Contact:

Re: Friday Facts #299 - Everything is more complex than expected

Post by DanGio »

You're doing great! Thx for making the game better every day!

User avatar
BattleFluffy
Fast Inserter
Fast Inserter
Posts: 196
Joined: Sun Mar 31, 2019 4:58 pm
Contact:

Re: Friday Facts #299 - Everything is more complex than expected

Post by BattleFluffy »

Thank you guys for making sure the trains are super rock solid :>

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

Re: Friday Facts #299 - Everything is more complex than expected

Post by Loewchen »

Riktol wrote: ↑
Fri Jun 14, 2019 2:19 pm
why can't you limit a train to reserving each block once? The train enters block 3 and removes the reservation on block 2, then reserves block 2 again?
Because it needs to reserve block 2 for the front before the rear has left block 2. Reservations account for breaking distance not only actually position as well.

IronCartographer
Filter Inserter
Filter Inserter
Posts: 459
Joined: Tue Jun 28, 2016 2:07 pm
Contact:

Re: Friday Facts #299 - Everything is more complex than expected

Post by IronCartographer »

Sounds like rail reservations are akin to reference counting for RAM now.

When will Factorio grow so large that it escapes to become its own Operating System?

FactoriOS? :lol:

Tempest_D
Manual Inserter
Manual Inserter
Posts: 2
Joined: Fri Jun 14, 2019 3:14 pm
Contact:

Re: Friday Facts #299 - Everything is more complex than expected

Post by Tempest_D »

As someone who has worked on and around railroads for most of my life; The way you had it was the "correct" way to do it. The "error" you're trying to fix is due to poor track signal design and not due to a programming error or deficiency in the game. That's a problem that would be seen in the real world.

Personally, it looks like you're dumbing down of one of the challenges of the game to set up railroads for efficient and desired operations.

Also setting up the game to use more CPU time and memory that is really necessary, which is OK for small factories. I'd be interested to see what happens to the game performance of some of the mega factories that have been built with extensive railroad supply systems.

User avatar
Optera
Smart Inserter
Smart Inserter
Posts: 2920
Joined: Sat Jun 11, 2016 6:41 am
Contact:

Re: Friday Facts #299 - Everything is more complex than expected

Post by Optera »

Tempest_D wrote: ↑
Fri Jun 14, 2019 3:28 pm
As someone who has worked on and around railroads for most of my life; The way you had it was the "correct" way to do it. The "error" you're trying to fix is due to poor track signal design and not due to a programming error or deficiency in the game. That's a problem that would be seen in the real world.

Personally, it looks like you're dumbing down of one of the challenges of the game to set up railroads for efficient and desired operations.

Also setting up the game to use more CPU time and memory that is really necessary, which is OK for small factories. I'd be interested to see what happens to the game performance of some of the mega factories that have been built with extensive railroad supply systems.
Amen.
Never accommodate code to mimic the faulty use scenarios you see. Teach people to use things right.... that kinda sounds more like Apple's "you're using it wrong" than i'd like but it holds true here.

User avatar
Gergely
Filter Inserter
Filter Inserter
Posts: 614
Joined: Sun Apr 10, 2016 8:31 pm
Contact:

Re: Friday Facts #299 - Everything is more complex than expected

Post by Gergely »

Optera wrote: ↑
Fri Jun 14, 2019 3:40 pm
Tempest_D wrote: ↑
Fri Jun 14, 2019 3:28 pm
As someone who has worked on and around railroads for most of my life; The way you had it was the "correct" way to do it. The "error" you're trying to fix is due to poor track signal design and not due to a programming error or deficiency in the game. That's a problem that would be seen in the real world.

Personally, it looks like you're dumbing down of one of the challenges of the game to set up railroads for efficient and desired operations.

Also setting up the game to use more CPU time and memory that is really necessary, which is OK for small factories. I'd be interested to see what happens to the game performance of some of the mega factories that have been built with extensive railroad supply systems.
Amen.
Never accommodate code to mimic the faulty use scenarios you see. Teach people to use things right.... that kinda sounds more like Apple's "you're using it wrong" than i'd like but it holds true here.
While I agree that logic like this is not worth fixing because most of the problem is in track signal design, it is also worth noting that this so-called "poor track signal design" can cause desyncs which are very certainly bugs in the game. This quote above is also (probably) an example of people thinking it's supposed to be their fault, not the game's. It is definitely a good idea to fix this problem instead of dismissing it as the player's fault. Desyncs or other forms of crashes are always on the game. Never on the player.

Edit: Oh and from a programmer's perspective, I am currently unable to see how this would affect memory usage or performance. ...unless the new reserved counter spams more than one byte.

XBBX
Long Handed Inserter
Long Handed Inserter
Posts: 74
Joined: Wed Jan 07, 2015 4:30 pm
Contact:

Re: Friday Facts #299 - Everything is more complex than expected

Post by XBBX »

in case you guys missed train related bug from reddit
https://www.reddit.com/r/factorio/comme ... dium=web2x

User avatar
EstebanLB
Fast Inserter
Fast Inserter
Posts: 103
Joined: Mon Apr 15, 2013 3:00 am
Contact:

Re: Friday Facts #299 - Everything is more complex than expected

Post by EstebanLB »

Klonan wrote: ↑
Fri Jun 14, 2019 2:18 pm
Gergely wrote: ↑
Fri Jun 14, 2019 2:12 pm
Wait are you talking train crashes or game crashes?

Which of them is shown in the diagram?
The graph shows total crash reports
:( Ohhh, a graph with actual train crashes would have looked awesome on the FF

User avatar
MasterBuilder
Filter Inserter
Filter Inserter
Posts: 353
Joined: Sun Nov 23, 2014 1:22 am
Contact:

Re: Friday Facts #299 - Everything is more complex than expected

Post by MasterBuilder »

XBBX wrote: ↑
Fri Jun 14, 2019 4:14 pm
in case you guys missed train related bug from reddit
https://www.reddit.com/r/factorio/comme ... on_design/
They've already fixed it for .50
viewtopic.php?f=30&t=71990
Give a man fire and he'll be warm for a day. Set a man on fire and he'll be warm for the rest of his life.

XBBX
Long Handed Inserter
Long Handed Inserter
Posts: 74
Joined: Wed Jan 07, 2015 4:30 pm
Contact:

Re: Friday Facts #299 - Everything is more complex than expected

Post by XBBX »

MasterBuilder wrote: ↑
Fri Jun 14, 2019 4:24 pm
XBBX wrote: ↑
Fri Jun 14, 2019 4:14 pm
in case you guys missed train related bug from reddit
https://www.reddit.com/r/factorio/comme ... on_design/
They've already fixed it for .50
viewtopic.php?f=30&t=71990
obviously why i was thinking it's not fixed yet bugs hare disappear fast :lol:

User avatar
raiguard
Factorio Staff
Factorio Staff
Posts: 556
Joined: Wed Dec 13, 2017 8:29 pm
Contact:

Re: Friday Facts #299 - Everything is more complex than expected

Post by raiguard »

It's interesting that such a straightforward system can be completely broken when you have as dedicated a playerbase as Factorio has :D

Anyway, I have a quick question: When the new resource icons were added, it appears as if you added the mipmaps for them as well. Does this mean that item mipmapping is already in the game, or are the icons just that way so when the mipmapping is added, you don't have to update the icons again?
Don't forget, you're here forever.

Jap2.0
Smart Inserter
Smart Inserter
Posts: 2366
Joined: Tue Jun 20, 2017 12:02 am
Contact:

Re: Friday Facts #299 - Everything is more complex than expected

Post by Jap2.0 »

Raiguard wrote: ↑
Fri Jun 14, 2019 4:42 pm
Anyway, I have a quick question: When the new resource icons were added, it appears as if you added the mipmaps for them as well. Does this mean that item mipmapping is already in the game, or are the icons just that way so when the mipmapping is added, you don't have to update the icons again?
Mipmapping has been in the game for quite some time.
There are 10 types of people: those who get this joke and those who don't.

User avatar
Philip017
Filter Inserter
Filter Inserter
Posts: 360
Joined: Thu Sep 01, 2016 11:21 pm
Contact:

Re: Friday Facts #299 - Everything is more complex than expected

Post by Philip017 »

trains are indeed a integral part of the game, when we play large maps, running millions of belts, although possible, are certainly more ups intensive than running a bunch of trains.
it is a very good idea to prevent crashes and dsyncs as these are detrimental to fluid game play. still hoping that the save function will eventually be pause free, but would still love to see a message 10 seconds before the inevitable forced stand still, which can sometimes take upwards of 30 seconds or more on very large maps.
with out trains those very large maps and bases would be way more challenging but having a good train network is great. learning how to properly use train signals however can be a tall learning curve, but 2 things i have learned that i consider the best for train networks is:
1) Rail Signals every Big electric pole distance for long runs.
OR further if you are running extremely long trains, the distance between them should be at least the distance of your trains plus wagons, for the majority of your trains. my example for a signal every big pole is good for 1-4 trains. if your rail signals are too close together you could end up with traffic jams. and too far apart will result in slow downs.

2) Chain Signals before every junction, and another rail after all the junctions close.
use of more chain signals in a large junction block allows trains with non-interfering paths to cross though the same junction, which makes them faster. placing a rail signal after all junctions complete, allows the train path to become open again after the train clears, which will allow the next train with what would be an interfering path to enter the junction space.

failure to make proper use of rail signals and chain signals most likely will result in a jam or collision.
although the train logic is being improved dramatically which can allow use of rail signals everywhere, because players like me, where i didn't understand the difference between chain and rail signals, or how to use them properly, resulted in unintended behavior, and forwarded to the devs as bugs, although realistically these issues are more along the lines of: "lack of understanding" or "lets try to break the game".
thanks however to the fantastic developers of this game, they take these things in stride and make adjustments to help with these situations.
Thanks to all of you at WUBE for this fantastic game and all your hard work!

pleegwat
Filter Inserter
Filter Inserter
Posts: 277
Joined: Fri May 19, 2017 7:31 pm
Contact:

Re: Friday Facts #299 - Everything is more complex than expected

Post by pleegwat »

Tempest_D wrote: ↑
Fri Jun 14, 2019 3:28 pm
As someone who has worked on and around railroads for most of my life; The way you had it was the "correct" way to do it. The "error" you're trying to fix is due to poor track signal design and not due to a programming error or deficiency in the game. That's a problem that would be seen in the real world.

Personally, it looks like you're dumbing down of one of the challenges of the game to set up railroads for efficient and desired operations.

Also setting up the game to use more CPU time and memory that is really necessary, which is OK for small factories. I'd be interested to see what happens to the game performance of some of the mega factories that have been built with extensive railroad supply systems.
In that case though, I'd expect the signal leaving block #3 to remain red. The train would either resume accelerating when its tail leaves block #2 for the first time (since it can re-reserve for its second entry into block #2), or it would deadlock if its tail was still in block #2.

Post Reply

Return to β€œNews”