[kovarex] [0.16.31] Issues with belt compression

Bugs that are actually features.
Post Reply
Avezo
Filter Inserter
Filter Inserter
Posts: 451
Joined: Fri Apr 01, 2016 3:53 pm
Contact:

[kovarex] [0.16.31] Issues with belt compression

Post by Avezo »

I've done some testing of various smelter setups in 16.31 (see save file) and encountered few issues:
Overview
Smelter rows in the picture have ratios to fill a bit over full blue belt, yet except for last one, they don't.

Smelter rows 1 and 2 are most typical beacon sandwiches, no.1 uses stack inserters as output, no.2 fast inserters. They sometimes still leave gaps (didn't catch any in picture for no.1, but they can be seen in save file).

Since ratios were correct, I've tested inserter's throughput for a single lane to see if they are the problem, but in this example even just fast ones were enough to fill up blue belt lane. Since chests are refilled to 100, inserters always grab full stack, whereas in case of smelters it's more erratic, but overall throughput should smooth out over time anyway:
Inserters throughput
Smelter row 3 uses pre-compression-changes method of merging two inputs by splitter at the end, 14/2 gives odd number of outputs per lane before merger, so one belt gets 3-4, another 4-3 and then they are supposed to merge to balanced 7-7. It can be seen with debug gap visualisation that right before the splitter inner lanes are fully compressed at all times, yet splitter somehow lets gaps through. This does not happen in the same setup in row 4 when there is bigger distance before the splitter. It seems as if there was not enough buffered items before the splitter in row 3, but debug shows otherwise.

Issue with splitters can be further examined in picture below where loading into splitter is used, some gaps seem to be ignored when going through it, despite inserter being ready to unload:
Splitter trick
The biggest problem is, these gaps still happen even in most common compact beacon sandwiches, regardless whether using 2 output belts and splitter or just a single output lane (slower setups for red and yellow belt seemed to work properly though).
Attachments
creative smelters.zip
Save
(5.15 MiB) Downloaded 68 times
factorio-current.log
Log
(7.56 KiB) Downloaded 77 times

EnigmaticAussie
Fast Inserter
Fast Inserter
Posts: 129
Joined: Mon Dec 18, 2017 7:53 am
Contact:

Re: [0.16.31] Issues with belt compression

Post by EnigmaticAussie »

I've got something similar, except with red belts.

The math states that I should need 47 (for the sake of symmetry I've used 48) stone furnaces to fill a red belt of plate.
However, on my red belt setups, I only ever get 40 of them working full time.

Not sure if it's the same cause as Avezo's compression issue, but it's definitely something that needs looking at, because if the math is wrong for this, then :sadfacepandabear:

For anyone interested, the inserters are wired in such a way that they will not put more raw material into the furnace if the outserter's hand is full.
Attachments
belt-compression.zip
Save Game
(3.76 MiB) Downloaded 68 times

kovarex
Factorio Staff
Factorio Staff
Posts: 8078
Joined: Wed Feb 06, 2013 12:00 am
Contact:

Re: [kovarex] [0.16.31] Issues with belt compression

Post by kovarex »

Rseding told me, that it was mistake to add the debug option that shows gaps, you wouldn't notice otherwise ..

User avatar
Aprillion
Inserter
Inserter
Posts: 34
Joined: Sun Apr 16, 2017 10:43 am
Contact:

Re: [0.16.31] Issues with belt compression

Post by Aprillion »

EnigmaticAussie wrote:The math states that I should need 47 stone furnaces to fill a red belt of plate..
Do you mean 26.66/s divided by 0.57/s, so ~46.77 of Steel furnaces (it would be 96 stone furnaces)? So 48 can't work full time even with 100% speed of consumption without delays or blocks.. Even if it could be worse because of gaps :)

kovarex
Factorio Staff
Factorio Staff
Posts: 8078
Joined: Wed Feb 06, 2013 12:00 am
Contact:

Re: [kovarex] [0.16.31] Issues with belt compression

Post by kovarex »

This is not a bug of a belt compression. The gaps you see are a direct implication of the physical inserter implementation and I would even call it an emergent gameplay mechanics.
In other words, the last furnace inserter can have just the last 1 stack from time to time, so it can't fill the incoming gap if it is larger, as when it fills the first item, it needs to take more from the furnace and the gap goes away in the meantime.

I was able to fix it easily by using 2 or 3 inserters in the last furnace.

P.S. The creative mode seems to be crazily slow. Using vanilla items obtainable through the script ("express-loader", "infinity-chest" and "electric-energy-interface") is doing the same job without the crazy slow-down.

Avezo
Filter Inserter
Filter Inserter
Posts: 451
Joined: Fri Apr 01, 2016 3:53 pm
Contact:

Re: [kovarex] [0.16.31] Issues with belt compression

Post by Avezo »

It still doesn't explain different behaviour of splitters at row 3 and 4, despite having full compressd lane available. It might be separate issue from compression mechanics, but it still seems like a 'bug'.

kovarex
Factorio Staff
Factorio Staff
Posts: 8078
Joined: Wed Feb 06, 2013 12:00 am
Contact:

Re: [kovarex] [0.16.31] Issues with belt compression

Post by kovarex »

The distance before the splitter shouldn't affect it. It might be the timing in your save.

Avezo
Filter Inserter
Filter Inserter
Posts: 451
Joined: Fri Apr 01, 2016 3:53 pm
Contact:

Re: [kovarex] [0.16.31] Issues with belt compression

Post by Avezo »

kovarex wrote:The distance before the splitter shouldn't affect it. It might be the timing in your save.
Provided save file proves that distance clearly affects it - it was tested over long time. I can't upload my own 'time' 'tested' here, still you don't even need much time to watch to see this particular issue.

*IF* somehow after that you don't see the problem, then that is still something 'you' should deal with through log file provided, because it must be local/hardware problem. which can affect many other 'customers'.

FFS This is the most basic belt beacon sandwich!
Not solving this is almost the same as throwing away all recent belt compression changes! It means wasting YOUR game development work, because since it's not 100% reliable, it won't be used by people who cared the most - you could've just left belts 'un-compresseable'...

I mean, did you even test provided save file over time? You make me feel like I should apoligise for trying to help...

EnigmaticAussie
Fast Inserter
Fast Inserter
Posts: 129
Joined: Mon Dec 18, 2017 7:53 am
Contact:

Re: [kovarex] [0.16.31] Issues with belt compression

Post by EnigmaticAussie »

kovarex wrote:Rseding told me, that it was mistake to add the debug option that shows gaps, you wouldn't notice otherwise ..
I noticed because my bottleneck mod told me I have 8 furnaces unable to offload their product.

EnigmaticAussie
Fast Inserter
Fast Inserter
Posts: 129
Joined: Mon Dec 18, 2017 7:53 am
Contact:

Re: [0.16.31] Issues with belt compression

Post by EnigmaticAussie »

Aprillion wrote:
EnigmaticAussie wrote:The math states that I should need 47 stone furnaces to fill a red belt of plate..
Do you mean 26.66/s divided by 0.57/s, so ~46.77 of Steel furnaces (it would be 96 stone furnaces)? So 48 can't work full time even with 100% speed of consumption without delays or blocks.. Even if it could be worse because of gaps :)
You're right.
My save game has the right number (94 stone furnaces to a red belt). I had a mental fart when I made the original post.

10 of them are not producing, and the gaps close up in front of the 'wave' of plates being placed on the belt.

Edit: Added correct numbers.

Edit 2: I changed the way the items are removed from the belt at the end (by stack inserters into chests, instead of a "matter void") and the issue is resolved. Seemed a little odd though.

Post Reply

Return to “Not a bug”