Page 1 of 1

Filtering Splitter - Full output behavior

Posted: Sat Jul 25, 2020 3:19 pm
by TeXiCiTy
Hello fellow Factorians,

I was wondering if a small addition to the splitter is possible. I use the splitter filter function a lot to get specific items from mixed belts but it takes quite a lot of tiles to put them back on. A toggle option like the one in the attached screenshot would make my factorio setup a lot cleaner, easier and prettier.
SplitterOverflow.png
SplitterOverflow.png (1.05 MiB) Viewed 1405 times
I spend quite some time staring at some similar LUA codes but it's still too challenging to find the solution myself atm.

Re: Filtering Splitter - Full output behavior

Posted: Sun Jul 26, 2020 12:05 pm
by mmmPI
Wouldn't that be enough ?
splitfilter.png
splitfilter.png (80.56 KiB) Viewed 1383 times
it does require extra tiles, but quite few, you double the number of splitter though.

I use this a lot but without the output priority on the first splitter.

Re: Filtering Splitter - Full output behavior

Posted: Sat Aug 01, 2020 9:31 am
by TeXiCiTy
Here's a more sophisticated application. I have a 'rainbow' belt on which I put a lot of different items.
Upstream I only put items on the belt if they are needed downstream.
I create a 'request signal' based on chest inventory downstream.
factorio3.png
factorio3.png (4.65 MiB) Viewed 1345 times
The 'Belt sorter' mod has some features to do this, but I don't like the way items disappear and appear using these sorters. A small mod to the Vanilla splitter would be much preferred.

Re: Filtering Splitter - Full output behavior

Posted: Fri Feb 04, 2022 3:30 pm
by TeXiCiTy
Searching for a solution once again, but there just isn't an option to change splitter behaviour, is there?
TransportBeltConnectable Prototype / Splitter Prototype
mmmPI wrote:
Sun Jul 26, 2020 12:05 pm
Wouldn't that be enough ? splitfilter.png
Doesn't work with a 'rainbow' belt containing mixed contents.

Edits, thinking out loud:
What if the splitter 'filter' is temporarily set to a placeholder (i.e. fish) in case the output belt is saturated. That would mimic the desired behaviour quite a bit...
https://lua-api.factorio.com/latest/Lua ... tLine.html --> can_insert_at (position)
If !can_insert_at(filtered_output_position) Then splitter_filter=placeholderLuaItemPrototype Else splitter_filter=OriginalLuaItemPrototype

Forum post: Circuit network connections for splitters.
If the filter condition would be programmable it would be managable as well (with a lot of circuit magic)