Page 1 of 1

Modular Splitters [Exact details and example included.]

Posted: Mon Jun 22, 2020 3:28 am
by Xenthana
The actual request will be below the dotted line. However I have found that Miniloaders are more versatile than I gave them credit for, and capable of most of what I had in mind for the mod, so I just wanted to spread the information I learned, for those who wanted something similar;

To those not so familiar, it is possible to insert and extract resources from the sides of a miniloader, as well as pass resources through both ends via conveyor belt. Placing the back of another miniloader against the side of one will pull resources from it! If the resources are entering through the closed side of the miniloader being pulled from, both lanes will be taken. However, if they are entering through the open side, it will only pull the closest lane. Furthermore, it is possible to insert resources in this same way via conveyor belt, using the same logic in reverse. If the output is the closed side, inserted resources will be distributed to both lanes, if the output is the open side, they will stay on the lane closest to the conveyor belt.

There is no lane preservation, or output balancing for more than one output belt, but you can still chain loaders together and use filters to direct them in a general manner, allowing you to be much more compact in how you interact with them from different directions.

Additionally, loaders can be pulled from and inserted into directly by inserters, as if it were a normal belt.

So what's missing from my originally posted idea?
- Lane preservation.
- Internal lane rearrangement/filtering.
- Not needing to rotate the block for any reason.
- Not needing multiple blocks to have multiple belt-compatible outputs.


------------------------------------------------
I have not edited the below post to reflect what I've discovered above, so bear that in mind.
------------------------------------------------

I've been looking for a mod that takes the effect of a Splitter to a much more flexible level. Having single, modular objects that can optionally accept inputs and outputs on any side, while also retaining the lane preservation and filtering effects of splitters as options.


-- Best Match --
So far, Belt Balancer is very close to what I'm looking for, save for a few qualms.

- The higher research is useless. It has no throughput limit from the start, meaning there's no progression. The research only gives you bulk recipes with ingredient scaling that doesn't make any sense.
- They don't interface with inserters, miniloaders or anything similar, only belts - input or output - and only output to belts that are facing directly away.
- They only balance belts, they have no method of lane preservation or filters.
- The visual design is very simple, to the point of being out of place, though that's fairly irrelevant

-- Others I've Tried --
Belt Sorter - The interface is unintuitive, and requires manual adjusting just to output at all. And the blocks can't be chained with one another.
Smart Splitter - The functional usage is good, and it can be chained, but only side by side in the same direction.
Compound Splitters - I couldn't even get it to do anything whatsoever, and the yellow block in the preview image has a ludicrous crafting recipe.

-- What exactly am I looking for? --
- Single block. The idea is to reduce footprint, while retaining versatility.
- Upgrade research that is in line with the Miniloader mod. Faster throughput, higher recipe costs.
- Modular. From two blocks being side by side, to making branching paths out of them.
- Inclusive. Functions like a splitter in that it accepts input from inserters, loaders, belts and eachother, and outputs to the same.
- Automatic. It needs to work upon being placed. See Configuration UI example for default settings.
- Configurable via a simple UI. Something that looks like this. Refuse/accept input, enable/disable output, enable/disable output to lanes not facing directly away, and preserve/balance input layout, with and a filter for left/right output lanes of each side. Perhaps include input/output priority tick boxes for those that use that splitter function.

Here's an example of how I use Belt Balancer.
Here's an example of what the mod I'm proposing would be capable of, including direct modular connection allowing multiple inputs and varied outputs with lane preservation, lane re-organizing, single lane outputs, output onto parallel lanes, and single resource belt saturation.

Re: Modular Splitters [Exact details and example included.]

Posted: Mon Jun 22, 2020 7:30 am
by darkfrei
How looks like the GUI of modular chest? 2, 3, 4?

Re: Modular Splitters [Exact details and example included.]

Posted: Mon Jun 22, 2020 5:54 pm
by Xenthana
darkfrei wrote:
Mon Jun 22, 2020 7:30 am
How looks like the GUI of modular chest? 2, 3, 4?
I'm not sure I understand the question. I didn't mention chests at all in my post, and splitters don't have an inventory as far as I'm aware. They're just conveyor belts that rearrange/redistribute items, aren't they?

Re: Modular Splitters [Exact details and example included.]

Posted: Mon Jun 22, 2020 7:15 pm
by darkfrei
Xenthana wrote:
Mon Jun 22, 2020 5:54 pm
darkfrei wrote:
Mon Jun 22, 2020 7:30 am
How looks like the GUI of modular chest? 2, 3, 4?
I'm not sure I understand the question. I didn't mention chests at all in my post, and splitters don't have an inventory as far as I'm aware. They're just conveyor belts that rearrange/redistribute items, aren't they?
Sorry, my bad. It was actually the solution how to make it UPS-friendly.

How looks the GUI of double/triple/quadruple omni-directional modular splitter?

Re: Modular Splitters [Exact details and example included.]

Posted: Mon Jun 22, 2020 10:17 pm
by Xenthana
darkfrei wrote:
Mon Jun 22, 2020 7:15 pm
Xenthana wrote:
Mon Jun 22, 2020 5:54 pm
darkfrei wrote:
Mon Jun 22, 2020 7:30 am
How looks like the GUI of modular chest? 2, 3, 4?
I'm not sure I understand the question. I didn't mention chests at all in my post, and splitters don't have an inventory as far as I'm aware. They're just conveyor belts that rearrange/redistribute items, aren't they?
Sorry, my bad. It was actually the solution how to make it UPS-friendly.

How looks the GUI of double/triple/quadruple omni-directional modular splitter?
There's an example of what I imagine the UI to look like linked in the last - point of the post. But here, this is what I was thinking of. What I imagine is, a block that takes code from a splitter in terms of how it receives items, then for every side ticked as input, have it able to receive on those sides. Then, for every side ticked as output, output equally using the the same code for which splitters displace items to the opposite side, but instead in that direction rather than parallel. And since input and output act similar to conveyor belts, that should allow them to chain without too much trouble.

For clarity, 'parallel' would check if the adjacent block is not facing away, and simply refuse to output on that side if it isn't and the option isn't ticked. Meanwhile 'preserve' would retain the code of splitters, while unticking it would change to the effect of belt balancer type mods.

Mind you, I'm not at all familiar with the code of this game, or how splitters work exactly, so I'm not sure what type of hoops would have to be leapt through to achieve it.
If it ends up being too complicated, I wont be upset if no one takes up the project. Perhaps one day I'll take the time to learn to code and try my hand at it.

Re: Modular Splitters [Exact details and example included.]

Posted: Mon Jun 22, 2020 11:11 pm
by ZombieMooose
Why not just use miniloaders and put things in chests? There's filters you can use that have white and blacklisting items.

Re: Modular Splitters [Exact details and example included.]

Posted: Tue Jun 23, 2020 4:55 am
by Xenthana
ZombieMooose wrote:
Mon Jun 22, 2020 11:11 pm
Why not just use miniloaders and put things in chests? There's filters you can use that have white and blacklisting items.
This is for creating conveyor branches and item path distribution in ways that aren't normally possible in a compact manner, at the speed that conveyors offer.

Inserting things into chests and then use loaders to branch from there is no more compact than using splitters normally, as you still require a minimum, 3x3 space to achieve this. And while you can filter things with loaders, that only works for individual belts that you don't mind having both lanes taken by the same material.

Edit: I added a visual example of what the mod would be capable of, if it worked how I envision, to the end of my post.
Edit2: So, you're right actually, there is more to loaders than I realized. I didn't know loaders could pull from other loaders if placed correctly, which solves a few of my interests. There are still limitations with lane preservation and multi-filtering however, but this will do for now.

Re: Modular Splitters [Exact details and example included.]

Posted: Tue Jun 23, 2020 8:48 am
by darkfrei
:idea: Hidden inserters inbuilt in the chest/ chests, that can be adjusted via GUI.
:arrow: Like miniloaders, but with chests.

Re: Modular Splitters [Exact details and example included.]

Posted: Tue Jun 23, 2020 10:42 pm
by Xenthana
After a sudden realization, I've found that miniloaders can (kind of) achieve some of the functionality I'm looking for. I wasn't aware that miniloaders could interact with the sides of other miniloaders, if placed correctly. This does solve some of my interests, though the filtering and lane preservation still isn't there.