Open josephcsible opened 7 years ago
Yes, this should indeed be improved.
I think option 2 would be a clean solution. Perhaps we could do this by adding "Input" and "Output" toggles to the interface part settings, which directly correspond to the item (and fluid and energy) interface methods.
Another motivating example: Storage subnetting. In Applied Energistics or Refined Storage, a common pattern is to construct a storage subnet: The subnet "Expose"s the storages it manages, while the supernet "Attaches" the exposed storage. The analog in Integrated Tunnels would be having 2 item interfaces facing each other.
Currently, of course, this just causes the counted number of items in the system to double indefinitely, as the item interfaces expose each other's items to each other.
One benefit of such an arrangement would be to count storage capacity of designated storage areas, without polluting the counts with the capacities of, eg, storage drawers (or deep storage units, etc. -- any kind of storage that stores a lot of one item)
Note: Everything I say here applies equally to items, fluids, and energy, but for simplicity, I'll talk only about items.
Our item interfaces currently perform two distinct functions:
You really only ever want one of these to happen at a time, and weird things can happen when both affect the same block. For example, suppose you point a hopper into an item interface, with the intent that anything you throw into the hopper ends up in the network. This works, but the hopper's inventory also counts as part of the network, so if all of the attached chests fill up, items will end up staying in the hopper. Further, if you were to add a second hopper like this, items would continually bounce between them as they were pushed out of one, then into the network, which is just the other one.
Two ways we can resolve this: