
Problem when multiple craft recipe uses same machine
Water-Moon opened this issue ยท 4 comments
As it is possible to use crafting modules with chassis, one may attempt to use multiple crafting modules on the same machine to save resources.
This would generally work, but if items in this recipe are in the following situation, problems will appear:
- when the amount of item to be processed will overfill the machine input
- when the machine is already in use by another recipe
- when there are different items that use the same machine to craft
- Worst of all, when item A uses machine 1, and then item B requires item A to be also processed in machine 1
In general, when an item can not get sent into a machine, there will be a problem.
This will cause the following incorrect behaviour:
- The item gets sent back to the storage, and no future attempt is made to send the item back to the machine
- The item is visually inserted into the machine, and then get voided
- The item routes to an incorrect machine, and then either inserted into the wrong machine or get voided
- The item glitched out of existence
Besides, in all of the above cases, there is no attempt to pull another item from inventory/craft another item to complete the request.
Also, at the end of all the crafting behaviour, the chassis still display the 'crafting pending' (purple) particle, just as if the crafting/processing is not finished.
In the GUI of the requesting table, if crafting monitoring upgrade is installed, the craft step will still be displayed there, even after a server restart.
It is expected that one of the following behaviour is added:
- The item that can't be processed gets stored in the chassis or nearest Basic Logistic Pipe until the machine can accept them (either through a special handler, or attempt to insert the item after a set interval)
- Add a "buffer upgrade" thing, which allows a basic logistic pipe to temporarily put the failed item into an attached chest (or a buffer pipe that does the same thing but is a pipe by itself?), and if no such thing is available in the network, the item gets pushed out of the pipe
- The jammed item gets sent back into the storage, and the recipe gets cached. After the current pending crafting on the machine is done, the item gets sent to the machine again for another crafting attempt
Sorry for writing this huge wall of text, but thank you again for making such a great mod!
Hope this could be fixed soon!
P.S. this error is first observed in the Omni Factory mod pack on a big server when we attempt to use one GregTech machine for multiple recipes. However, later tests on 1.12.2 single-player game using forge 2854 and LP 0.10.3.40 also shows similar behaviour, no matter what machine is used.
Currently, machines from the following mods all cause the same incorrect behaviour when under the aforementioned setup:
GregTech; EnderIO; Mekanism; Thermal Expansion; Pyrotech; Extra Utils2; Industrial Craft 2 Exp and Classic; Prodigy tech; Modular machinery.
Currently, we tackle the problem by attaching a buffer chest and a satellite pipe. Thus, items get pushed to the buffer chest by the satellite pipe and then hoppered into machines. After that, the crafting result gets extracted by the crafting module in the chassis.
However, we would love to see a real fix instead of this buffer chest + satellite pipe setup.
Anyway, if this can't be fixed, it's still not a big deal!
P.S. P.S. This problem becomes much more outstanding when the path to the storage area is long (in the real case, it is a long pipeline that connects the ore depot and the factory, with a length that added up to around 160+ blocks).
(We are sure that we changed the I:detectionLength=
and I:detectionCount=
term in the config to 512, but the problem does not get solved.
Edit: ignore the last comment about path length, I just checked with my group members and they said the HS pipes had failed. I think I gotta go fix that first...
Thanks for your effort of putting this together. However the mentioned bugs and feature requests are not new. Please have a look at #1336 #1291 #1284 #843 and https://github.com/RS485/LogisticsPipes/wiki/Feature-Requests (see Buffer Pipe, etc)
Please point out what is missing from the existing information, if there is anything :)