Jump to content

Retrievers accepting same items in parallel... how to distribute items?


klazen108

Recommended Posts

Hi everyone,

First time using Tekkit here, and I'm pretty much enamored with these mods. Been watching direwolf20's season 2 SMP on youtube to get some ideas on how to use all of this stuff. Love everything these developers have done!

Alright, with that aside, I'm having some trouble working with an modular automatic crafting system. I initially intended to design these one wide, x deep and x tall modules with a pneumatic tube in the back of the room for them to connect to my entire collection of chests. Then I could drop these in side by side and have them pull the ingredients for crafting using retrievers.

However, I've noticed a problem. Take this example: one of the modules is building sticks (for gears, of course) and another module is building pistons. Both of these recipes require wood. However, when either module's retriever pulls wood, all of the wood goes to only one of the retrievers. I read online that the items go for the nearest acceptable inventory instead of the inventory of the retriever that requested them, and this is exactly what happens here, so it's not a bug. I just don't know how to work with this - I want both of the retrievers to get the items they need.

--TL;DR: Is there a way to get items into the inventory of the retriever that requested them instead of the nearest inventory that can accept them?

If that's just how it has to be, I would be OK with being able to "disable" some of the modules, effectively cutting them off from the tube network. Is there a way to shut off retrievers/pneumatic tubes, making them no longer accept items?

Link to comment
Share on other sites

You could turn off a module by block breaking a tube, and then deploying it back again.

You could also have 2 tubes, one to each retriever, so there only IS one inventory for each.

You could use sorting machines and paint to color code stuff somehow, perhaps? Like, filters right next to the wood chest, then straight into sorting machines, then into a common tube out to the modules, and color coded tubes right at insertion points.

Link to comment
Share on other sites

Thanks for your reply,

A sorting machine would actually work fine, if the input side of the pipe was only one chest. As it is, it is a network of chests, and there's no way of getting the items from the chests to the sorting machine. I don't want the sorting machines/filters right next to the chests themselves, as then I would have to break into my walls and set them every time I need to auto-build some new recipe. We really need a retriever/sorting machine combo... if only...

I think what I'm going to have to do is make a "hopper" chest, where I drop all possible ingredients I'll need. Next, I'll put a sorting machine to paint the specific ingredients in their specific amounts and send them to the crafting modules. The outputs will be dumped back into the hopper chest if they are intermediate products (to be used in another recipe), or pushed back into my main tube network to be sorted if they are final products.

Link to comment
Share on other sites

You could probably also use timing as "channels." So for instance, you set up a system where you have green, red, and blue tagged wood in a storage chest. A system of filters and colored tubes and timers pushes these into a second storage chest, with precise timing (perhaps controlled by a computer, more easily), such that the second chest has ONLY green things in it for 2 seconds, then those all leave and it gets ONLY red things in it for 2 seconds, then ONLY blue things for 2 seconds.

This is synchronized with retrievers down the line, which could request items during the valid timeframes only, and the items would be guaranteed to go where you want them (with colored tubes at insertions points). E.g., if you retrieve a piece of wood during seconds 3-4, you will get red-tagged wood, which can be set to specifically go to your stick module. The retriever for the pistons then retrieves wood specifically during seconds 5-6, and is guaranteed to get blue-tagged wood, which will go to that module.

The second storage chest (the one color coded by time) could hold a few of almost everything, so the whole computer system only needs to be built once for all of your stores, not once for every single type of raw item.

Also, you'd never have to break into your walls when changing a recipe. You'd have a "budget" of 3-4 colors to work with, and any modules (new or old) down the line could just have one tube repainted and a new timing interval given to them, and they would plugin to the system successfully.

Yet another option:

Filters and transposers can be used as gates. A transposer placed in-line will act as an open gate when unpowered, and as a close gate when powered. So if you have T-intersections with filters or transposers going in both directions, you can use redstone signals to route items to the left or right or neither or 50/50 chance of both, as desired.

This would act as an alternate, perhaps somewhat simpler timing based system (depending). E.g., you close one gate and open the other and then your retriever requests, and after the item goes through, you switch gates and the other one requests.

The downside to this is that unlike color tagged items, you would probably have to wait for the item to make its whole journey before the next module could request, or it would get all mixed up. Magtubes might help.

Link to comment
Share on other sites

Transposer can act as "valves" on a tube system. Hook them up in front of each retriever, and set it up so that when a retriever requests an item, a redstone current is sent to the transposers in front of the other retrievers. This removes them from being valid inventories, allowing the item to only go to the retriever that called it.

Link to comment
Share on other sites

Actually update: Apparently items dont keep their tags in a chest, so my idea further up wouldn't work as I wrote it.

=(

It will still work without color coding. But it would be slower, and thus not have any advantages over the transposers/filters used as gates idea proposed by myself and by greenwolf, and easier to build. So just go with that, I guess.

EDIT: NEW IDEA:

Have a CC computer, with a retriever on its top, bottom, left, and right. All four filter for the same material, but have different color tags. The computer has a modem on one side. Each retriever tubes into the same storage chest (for that material) and tubes into a single output tube (going toward the modules).

If you want wood to go to your gear module, then you send a rednet signal that makes the CC computer output on its top side, which sends a green tagged wood on over. If you want wood to go to your piston module, you send a rednet signal to make it output on the right, which sends a red-tagged wood over, etc.

Total cost = 1 computer, 1 modem, 4 retrievers, per basic raw resource, and a bit of paint + one computer and 1 modem for each module. Not too horrible.

Unfortunately, retrievers don't have BUS codes, or you would be able to do an even cooler version of this with rednet computers and a single retriever per resource (with all 16 colors available). But sadly, they can't be controlled by ribbon cable.

Link to comment
Share on other sites

There's actually a pretty easy way to fix this. Have the wood sent to a chest with a sorting machine taking from it. Have wood in the different output columns in anystack sequential and color code them to go to the two crafting tables. Using this method you can also make it send just enough wood to each table for each recipe. Ex: while the sorting machine is getting pulses is sends two planks to red and three planks to blue.

Link to comment
Share on other sites

There's actually a pretty easy way to fix this. Have the wood sent to a chest with a sorting machine taking from it. Have wood in the different output columns in anystack sequential and color code them to go to the two crafting tables. Using this method you can also make it send just enough wood to each table for each recipe. Ex: while the sorting machine is getting pulses is sends two planks to red and three planks to blue.

Yes, but what if he has another retriever in the same line requesting cobblestone? The transposer/filter as valve works.

Link to comment
Share on other sites

If you use transposers as valves for filters then you can start running into some rather annoying problems with the timing. After all you have to factor in how long it takes for items to move through tubes. So if a transposer is unpowered for the time it takes for a plank to go through it might not stay unpowered for the time it takes the cobblestone. It would be possible to use the transposers as valves if you set up items detectors to turn on the other retrievers, however that would still add a lot more components then really necessary and would require a large amount of space. Setting up a factory like this would be much easier if you just consider it as a large sorting machine. Having a line of sorting machines with one transposer at the start would allow each machine to send the items exactly where they need to go.

Link to comment
Share on other sites

There's actually a pretty easy way to fix this. Have the wood sent to a chest with a sorting machine taking from it. Have wood in the different output columns in anystack sequential and color code them to go to the two crafting tables. Using this method you can also make it send just enough wood to each table for each recipe. Ex: while the sorting machine is getting pulses is sends two planks to red and three planks to blue.

Doesnt address the problem that the OP stated. He wants to be able to sort RETRIEVED items to the desired locations, not PUSHED items to the desired locations. The difference is significant, since retriever systems are vastly more flexible and modular and easy to swap in and out for new production lines all on the same factory floor. Pushing systems only make one thing before you have to completely re-engineer everything.

Link to comment
Share on other sites

If you remove the transposer you can place several retrievers to pull items through the entire process. If the retriever pulls to a sorting machine mid-route then the sorting machine will redirect it to the necessary location still allowing for a long line of sorting machines. This would remove of the problem of all items getting sent to the closest inventory and would allow for more complex systems to make a long line of products. Adding ender chests that connect to the input would also remove of the need to have tubes return to the input. So yes this system still retrieves items and it could be setup to require a much smaller space than most methods.

EDIT: Sorry i was wrong about sorting machines being able to redirect with a tube input(with items of the same type that is). That can be avoided by adding chests in front of each sorting machine allowing it to take the items needed and send the rest through to further machines

Link to comment
Share on other sites

If you remove the transposer you can place several retrievers to pull items through the entire process. If the retriever pulls to a sorting machine mid-route then the sorting machine will redirect it to the necessary location still allowing for a long line of sorting machines. This would remove of the problem of all items getting sent to the closest inventory and would allow for more complex systems to make a long line of products. Adding ender chests that connect to the input would also remove of the need to have tubes return to the input. So yes this system still retrieves items and it could be setup to require a much smaller space than most methods.

EDIT: Sorry i was wrong about sorting machines being able to redirect with a tube input(with items of the same type that is). That can be avoided by adding chests in front of each sorting machine allowing it to take the items needed and send the rest through to further machines

Don't see how your system would work. Since the item does not know WHICH receiver requested it, then all items would have to be sent through the same sorting machine regardless of which retriever requested it. So they'd all get the same color tag, both the wood intended for the gear factory, and the one intended for the piston factory. Which puts you back at square one.

Link to comment
Share on other sites

If the sorting machine has wood in two columns and is on sequential then it would take the wood and have each change to a different color, it just would require a few chests throughout the machine

First of all, all the advantages of a retriever system are based on the concept that your ENTIRE storage facility and your ENTIRE manufacturing facility all share exactly one tube between them. So "having multiple chests throughout the machine" defeats the whole purpose of the much superior retrieval-based system. Two or even three chests for one raw good all within the storage facility? Sure. But they all need to go in the end through that one single tube for it to not become a bowl of tube spaghetti.

With this in mind, the "two columns in a sorting machine" idea will not work. Items do not maintain their color tags after being put in a chest, so no matter how many chests you have in your storage facility, the retrievers in the manufacturing plants will ALL pull from the same one - the one that is closest and has wood in it, period. If there is a tie for closest, they will randomly choose. Neither of these outcomes solves the problem of reliably requesting at site A as many times as you want and having wood always go to A, and then being able to request from B.

It WOULD work to have two columns, and sequentially send wood to the gear factory and then to the piston factory, in required proportions. But that also defeats the purpose of a retrieval-based system. Because this way, your storage facility will ONLY work for making gears and pistons in one specific ratio. it will break if you suddenly want 5 gears: 1 piston instead of 3 gears : 2 pistons. To do that, you'd have to go dig into the guts of your storag facility and switch all the columns around. No no no. A proper system should be able to serve any arbitrary number of requests to A, and then to B, and back and forth with any ratios at any time, without ever having to touch the storage facility.

The CC computer design is set up to do exactly that. If the module A factory requests wood, then the computer at the storage facility will pull wood along a dedicated line (2 blocks long or whatever) into a retriever that only tags things green. Then the green wood will flow into the single tube to the factories, and be sorted later to module A. You can do this any arbitrary number of times, and then suddenly switch to B - the storage computer will then send wood through a different tiny route to a retriever that only tags things blue. This will then flow into that same, single line to the factories, and be properly sorted to module B upon arrival.

This way,m you can set up any ratio of goods you want to build, with any timings, and then switch to something else later, and back and forth, whatever you want, without ever touching your storage facility's tubing ever again.

Link to comment
Share on other sites

First off i meant 1 input chest with each machine in the factory drawing from a chest infront of it to avoid item rebound. Also a computer design would be a very useful and versatile. However the person who originally asked for help might not know how to properly program it to control the factory. Yes, I know a computer setup is easier and more efficient to those who can program. I was merely trying to suggest a setup for people who want to make a factory without learning to program. Generally i make my entire base controlled by a computer so it's easier to get items. As i already stated though i was suggesting an alternative method for people who don't program.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...