Page 1 of 1

[0.16.51] Splitter input priority does not work when output belts are of mixed speed

Posted: Wed Oct 17, 2018 2:57 am
by lexi.lambda
A picture is worth a thousand words:



The above priority splitter has input priority set to the left side, and the output belts are red and yellow, which together form the same amount of throughput as the blue belt supplying the input. Therefore, this should pull from the blue belt at full speed and not use the yellow belt at all, but it doesn’t work that way—the yellow belt is pulled from at full speed, instead, and the blue belt is forced to wait.

I’ve attached a save file that reproduces the problem.

Re: [0.16.51] Splitter input priority does not work when output belts are of mixed speed

Posted: Wed Oct 17, 2018 5:35 pm
by quyxkh
Splitters can only prioritize the inputs they have, they don't know what's going to happen in the future, they only know what's at their input ports right now. Set the game speed down to like 1/30 or something and watch: that splitter's prioritizing what it has.

If you want to stuff the blue belt before splitting it, do that:
snap@T4842885=1088x208+570.5-139.75,z2.jpg
snap@T4842885=1088x208+570.5-139.75,z2.jpg (16.36 KiB) Viewed 1929 times

Re: [0.16.51] Splitter input priority does not work when output belts are of mixed speed

Posted: Wed Oct 17, 2018 6:28 pm
by DaveMcW
The root problem is the splitter will occasionally output 4 items on the same tick, but its input buffer only holds 2 items per belt. To fix this the splitter would need to buffer 4 items per belt (2 items per lane).

Re: [0.16.51] Splitter input priority does not work when output belts are of mixed speed

Posted: Tue Mar 26, 2019 10:33 pm
by Klonan
Seems to be fixed in 0.17.21