Replace the splitter with simpler unit operations

Post your ideas and suggestions how to improve the game.

Moderator: ickputzdirwech

DrNoid
Long Handed Inserter
Long Handed Inserter
Posts: 55
Joined: Tue Apr 22, 2014 10:43 am
Contact:

Replace the splitter with simpler unit operations

Post by DrNoid »

The current splitter is quite a complex unit operation. It identifies incoming items (like a smart inserter) and even counts items, per type (See The exact inner workings of the splitter). At the same time, in practically all situations it could be replaced by simpler unit operations.
slpwnd wrote:... philosophy of Factorio when you are supposed to work out your solution from simple components ...
Since the fundamental idea behind Factorio is to combine simple unit operations to create complex behaviours, I propose to replace the current splitter with two simpler unit operations:
  • The lane splitter (a simple piece of metal that pushes one lane off the belt)
  • The lane re-balancer. (takes the input lanes (alternating if possible), and distributes the items neatly over the output lanes)
Individually those two operations are easier to understand than the current splitter, yet by combining those two you can cover all functionalities of the current splitter.

Lets look at the current use-cases for the splitter:
  • A belt with 1 lane filled needs to be split in two: 1 re-balancer to put stuff on both lanes, followed by a lane-splitter. This doesn't even need the complex "lift items over a lane to the other belt" functionality of the current splitter.
  • A belt with 2 lanes, filled with the same stuff, needs to be split in two belts, each with only 1 lane: 1 lane-splitter.
  • A belt with two lanes of different stuff, need to be split into two belts, each with only 1 type: 1 lane-splitter. This use-case requires the ugly underground-belt trick at the moment.
  • A belt with stuff mostly on one lane (that fills up too much) needs to be spread better over both lanes: 1 re-balancer. For re-balancing purposes the current splitter only works well if one lane is completely empty. If both lanes have things, the split-and-merge trick doesn't work very well.
  • Merge stuff from two belts onto one: A T-junction of belts, with a re-balancer if need be. I have never used a splitter for this.
  • Merge two lanes into one, with both input lanes being used equally: a re-balancer followed by a side-feed on the next belt.
  • A belt with two lanes of different things needs to be split in two belts with two lanes of different things: (the most complex one)1 lane-splitter, each side followed by a re-balancer and another lane-splitter. Then 1 underground belt to swap the places of the middle two belts, and finally you merge the inner two belts with the outer two.
if I miss one, please post, with how you would solve it with the above two mentioned simpler tools

Neotix
Filter Inserter
Filter Inserter
Posts: 599
Joined: Sat Nov 23, 2013 9:56 pm
Contact:

Re: Replace the splitter with simpler unit operations

Post by Neotix »

What about splitting sequence of items?

DrNoid
Long Handed Inserter
Long Handed Inserter
Posts: 55
Joined: Tue Apr 22, 2014 10:43 am
Contact:

Re: Replace the splitter with simpler unit operations

Post by DrNoid »

Neotix wrote:What about splitting sequence of items?
What exactly do you mean?

Garm
Filter Inserter
Filter Inserter
Posts: 368
Joined: Mon Nov 18, 2013 9:46 pm
Contact:

Re: Replace the splitter with simpler unit operations

Post by Garm »

While i would agree, that individually they are simpler, (I believe current splitter is easier to understand then proposed balancer - since currently you know that everything will get split evenly) They are much more complicated as two.


How would proposed system split random sequence \ fixed ratio into two belts while preserving said ratio? This is rather important aspect in multi-item belt roundabouts where 5+ different items are placed onto same belt at precise ratios in order to avoid congestion.

DrNoid
Long Handed Inserter
Long Handed Inserter
Posts: 55
Joined: Tue Apr 22, 2014 10:43 am
Contact:

Re: Replace the splitter with simpler unit operations

Post by DrNoid »

Garm wrote:While i would agree, that individually they are simpler, (I believe current splitter is easier to understand then proposed balancer - since currently you know that everything will get split evenly) They are much more complicated as two.
The balancer is a lot simpler than the splitter. It can even be made fully transparent instead of the black-box that the splitter is: A slight funnel pushes the items to the centre, where a slide with 2 slots picks up the items and moves them back to one of the lanes. Items are never hidden (like in the current splitter) and you can clearly see in advance where the next item will go.

That's one of the main problems I have against the current splitter: very hard to predict where the next item will go.

Garm wrote:How would proposed system split random sequence \ fixed ratio into two belts while preserving said ratio? This is rather important aspect in multi-item belt roundabouts where 5+ different items are placed onto same belt at precise ratios in order to avoid congestion.
Can't say I've ever used a setup like that. Either there are not enough items to cause congestion, thus no need for a roundabout, or there are enough items to cause congestion, but then a roundabout doesn't help much either. I've also never seen the usefulness of multiple items on the same belt-side, too finicky, If the ratio is not always perfect it ends up with a mess.

But that said, there is no reason not to have the current splitter as an advanced item further down the tech-tree.

(Edit: Can you give an example of such a roundabout with multi-item belts that works? I'm wondering how one would set that up.)

Neotix
Filter Inserter
Filter Inserter
Posts: 599
Joined: Sat Nov 23, 2013 9:56 pm
Contact:

Re: Replace the splitter with simpler unit operations

Post by Neotix »

DrNoid wrote:What exactly do you mean?
This
Image

DrNoid
Long Handed Inserter
Long Handed Inserter
Posts: 55
Joined: Tue Apr 22, 2014 10:43 am
Contact:

Re: Replace the splitter with simpler unit operations

Post by DrNoid »

Ok, my imagination is probably lacking, where would that be useful and reliable? If a set-up like that ever runs out of one of the ingredients, you end up with a stuck system because the other types of ingredient block it.

I have no problem with the current splitter becoming available somewhere after smart inserters, since that is the technology level it has. Personally I still mostly wouldn't use it though, if those simpler unit-operations where available...

Neotix
Filter Inserter
Filter Inserter
Posts: 599
Joined: Sat Nov 23, 2013 9:56 pm
Contact:

Re: Replace the splitter with simpler unit operations

Post by Neotix »

I can use one belt to provide more than 2 types of materials for assembly machines. System will never stuck if I'm using logic network.

Garm
Filter Inserter
Filter Inserter
Posts: 368
Joined: Mon Nov 18, 2013 9:46 pm
Contact:

Re: Replace the splitter with simpler unit operations

Post by Garm »

Imagine belt in giant circle around your entire base. Now imagine it has smart inserters that input items only when specific item is lacking. For example absence of yellow belts will trigger increased output of iron into the system.

With your proposals it will indeed cause multiple jams, but current splitters operate without any problems in such complicated designs.

Reason to use such desings?

- smaller need of buffer
- less amount of belts present in the factory - less space.

In fact I believe i've used such systmes much more often than I've used designs to separate 2 lines from single belt. Which again are easy to do without using "hacky" underground belt

DrNoid
Long Handed Inserter
Long Handed Inserter
Posts: 55
Joined: Tue Apr 22, 2014 10:43 am
Contact:

Re: Replace the splitter with simpler unit operations

Post by DrNoid »

I still don't see how that would not get stuck in case of (temporary) lack of 1 item type. Smart inserters can't detect what's on the belts, so you'd still have more of the other types going to your factories.

What belt types are you using? I'm guessing express belts, to get enough throughput? By that time you'd also have unlocked the current item-type splitter.

But even without the current splitter, you could just use smart inserters in different places then you currently do, and get the same result.

GotLag
Filter Inserter
Filter Inserter
Posts: 532
Joined: Sat May 03, 2014 3:32 pm
Contact:

Re: Replace the splitter with simpler unit operations

Post by GotLag »

I have no problem with current splitter output behaviour. I just wish it had the same attention to detail on the input side. Currently it only takes items from the right side input if there's nothing on the left. I wish it would attempt to alternate first.

Neotix
Filter Inserter
Filter Inserter
Posts: 599
Joined: Sat Nov 23, 2013 9:56 pm
Contact:

Re: Replace the splitter with simpler unit operations

Post by Neotix »

DrNoid, but smart inserter can detect what is inside smart chests and it's enough to setup limitations.

User avatar
ssilk
Global Moderator
Global Moderator
Posts: 12888
Joined: Tue Apr 16, 2013 10:35 pm
Contact:

Re: Replace the splitter with simpler unit operations

Post by ssilk »

There are two things I want to correct.
DrNoid wrote:The current splitter is quite a complex unit operation.
Why is it complex? See definition of complexity: http://en.wikipedia.org/wiki/Complexity
slpwnd wrote:... philosophy of Factorio when you are supposed to work out your solution from simple components ...
Since the fundamental idea behind Factorio is to combine simple unit operations to create complex behaviours, ...
Well, yes, they said it and I used the quote to explain, why it is useful not to add more and more items for special stuff. They said also (I dunno where, but they did), that one item should have more than one function.

My opinion (do not take it so seriously :) ): The splitter isn't complex. Your thinking is. :)
Cool suggestion: Eatable MOUSE-pointers.
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...

robhol
Long Handed Inserter
Long Handed Inserter
Posts: 72
Joined: Sun May 11, 2014 9:57 pm
Contact:

Re: Replace the splitter with simpler unit operations

Post by robhol »

I don't get why this is even an ongoing debate. Why would you want a complex, poorly explained piece of machinery that may or may not be able to do exactly what you want, when you can have a small set of "building blocks" that are easy to understand, do exactly what they say, and enable you to cherry-pick the exact functionality that you want?

I still haven't seen a reason why "single purpose = bad design" is supposed to be a prevalent idea, let alone a good one and certainly not a universal truth.
Swiss army knives can be nifty, but it's not because they're extremely good at being knives, scissors, magnifying glasses, tweezers, can openers and so on. In fact, they're not even a match for the "real" version of those tools - are they badly designed, then?
窮屈そうに身を屈めても今じゃ誰もがそうしてる 天井の無いECHO ROOMに誰かが僕を放り込む
君のSPEEDでもって 同じPHRASEを弾いて 冷たい時に寄り添って

DrNoid
Long Handed Inserter
Long Handed Inserter
Posts: 55
Joined: Tue Apr 22, 2014 10:43 am
Contact:

Re: Replace the splitter with simpler unit operations

Post by DrNoid »

ssilk wrote:There are two things I want to correct.
DrNoid wrote:The current splitter is quite a complex unit operation.
Why is it complex? See definition of complexity: http://en.wikipedia.org/wiki/Complexity
slpwnd wrote:... philosophy of Factorio when you are supposed to work out your solution from simple components ...
Since the fundamental idea behind Factorio is to combine simple unit operations to create complex behaviours, ...
Well, yes, they said it and I used the quote to explain, why it is useful not to add more and more items for special stuff. They said also (I dunno where, but they did), that one item should have more than one function.

My opinion (do not take it so seriously :) ): The splitter isn't complex. Your thinking is. :)
We can argue semantics all day, and in that wikipedia article you can find definitions that fit the splitter quite well, but I think the fact that even you never figured out how the thing really works is enough of an indication that something is wrong... ;)

Also, the proposed simple unit operations have just as much "more than one function" as the current splitter, since together they can replace the current splitter in almost all its uses.

Of course my thinking is complex, that's why I noticed what the splitter does. :lol: Doesn't make the splitter any less complex though...

Garm
Filter Inserter
Filter Inserter
Posts: 368
Joined: Mon Nov 18, 2013 9:46 pm
Contact:

Re: Replace the splitter with simpler unit operations

Post by Garm »

It still doesnt change the fact, that proposed change not only doesnt add anything to the game (you can already achieve now anything this combination does) but at the same time it actually cannot replicate *all* splitter capabilities as mentioned before. Thus making is a poor suggestion for replacement.

Also complexity in this case would be compared between 1 tool with multiple but extremely rigid rules of operation, and 2 tools, one of which would actually have a less rigid rule (randomization due to belt feed being reshuffled). If you compare them as such it doesnt look like new proposed system is less complex, if fact it could be opposite.

DrNoid
Long Handed Inserter
Long Handed Inserter
Posts: 55
Joined: Tue Apr 22, 2014 10:43 am
Contact:

Re: Replace the splitter with simpler unit operations

Post by DrNoid »

Garm wrote:It still doesnt change the fact, that proposed change not only doesnt add anything to the game (you can already achieve now anything this combination does) but at the same time it actually cannot replicate *all* splitter capabilities as mentioned before.
The current splitter can not have a balanced consumption from both lanes of a belt, in a congested situation. It prefers the left lane (or was it the right? too many weird rules for the splitter).
And I already mentioned keeping a version of the current splitter, somewhere after smart inserters in the tech-tree.
Garm wrote:Also complexity in this case would be compared between 1 tool with multiple but extremely rigid rules of operation, and 2 tools, one of which would actually have a less rigid rule (randomization due to belt feed being reshuffled).
The belt rebalancer is not random in any way. Its rule is more rigid than the current splitter, which does a very poor job of rebalancing a belt.
The resulting tools will, combined, have a lot less rules than the current splitter has.

User avatar
ssilk
Global Moderator
Global Moderator
Posts: 12888
Joined: Tue Apr 16, 2013 10:35 pm
Contact:

Re: Replace the splitter with simpler unit operations

Post by ssilk »

Ok, all more or less valid arguments. But I think it doesn't bring anything new into that.

We have had this discussions about new types of splitter every week since January.

It is not so, that I don't like the suggestions you make, and for me they make a bit of sense.

But
- we can be nearly sure, that we won't get a new type of splitter for the next 2-3 versions. And then it is still very questionable.
- you think, that your solution will solve your problem, but will it solve the around 30 problems of the others?
Cool suggestion: Eatable MOUSE-pointers.
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...

robhol
Long Handed Inserter
Long Handed Inserter
Posts: 72
Joined: Sun May 11, 2014 9:57 pm
Contact:

Re: Replace the splitter with simpler unit operations

Post by robhol »

What other problems? The exaggerated "complexity" issue? The - to put it bluntly - bullshit about removing "depth"? Those are pretty much the only two issues I've seen. Where are the remaining 28? I'm sure we could go over them again.
窮屈そうに身を屈めても今じゃ誰もがそうしてる 天井の無いECHO ROOMに誰かが僕を放り込む
君のSPEEDでもって 同じPHRASEを弾いて 冷たい時に寄り添って

User avatar
ssilk
Global Moderator
Global Moderator
Posts: 12888
Joined: Tue Apr 16, 2013 10:35 pm
Contact:

Re: Replace the splitter with simpler unit operations

Post by ssilk »

https://forums.factorio.com/forum/sea ... mit=Search

And that are only those in this board with "splitter" in topic.
I just won't discuss this for the next three month. Nothing else.
Cool suggestion: Eatable MOUSE-pointers.
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...

Post Reply

Return to “Ideas and Suggestions”