Nomifactory

Nomifactory

143k Downloads

Recipe conflict Steel gear box casing, solid steel machine casing in assembler

Gammelkebab opened this issue · 9 comments

commented

2020-02-23@125859
2020-02-23@125821

commented

Hello,

This issue is not resolved in dev-be11bb0. Placing items for Gear Box in assembler starts producing Machine Casing even if I've never produced Machine Casing before on that assembler and also it doesn't matter if you put gears and circuit before plates in the assembler - Machine Casing starts anyway. Machine Casing recipe seems to need its own integrated circuit ID to disambiguate these recipes.

You can still make them on crafting table, so it's not a game breaking bug, but an issue nevertheless.

commented

At current, the Steel Gear Box Casing requires Circuit 8 in its recipe, which was not the case back in early 2020 when this issue was opened. It was fixed in #385 back in March of 2020.

I am unable to reproduce this issue. Do you perhaps not have a Circuit 8 in your assembler?

commented

I repeated it on my testing (creative) world, here's a recording - I hope it works. Using MV assembler, I insert the circuit and gears first, then frames and plates. As soon as both frames and plates are in, production of machine casings starts. I can try to download newest snapshot to check if this still happens if you need, since be11bb0 was 3.5 months ago.

Animation

commented

Ah, I think the difference is I set up a test bench world with an AE2 crafting system and used blocking mode when crafting the recipe. I guess it's resolving the first valid recipe, which happens to be the machine casings since there are 6 plates and a frame available.

commented

...is there even a single thing you need steel gearbox casings for?

commented

I'm pretty sure the steel gearboxes aren't even used anywhere 🤔

More noteworthy, this affects the Titanium Gear Box and Stable Titanium Machine Casing, which is relevant for the EV Diesel Engine multiblock (not that Diesel power is good, but it's available).

commented

So I've looked into this a bit and I don't think it's a big deal. In addition to the gearboxes being extremely niche items that are disambiguated by having gears in their recipe, there's also the following:

The only way you can run into this is by filling the Assembler with the ingredients for casings, then while it is still crafting casings, throwing in gears. In this circumstance the Assembler will not automatically switch recipes, as that's now how it's programmed to function.

Assemblers will always craft the recipe they are working on until they do not have the ingredients to do so anymore. They don't re-determine the recipe between every craft, but rather when the Assembler stops being able to make the current recipe.

Using an AE pattern, on-demand crafting the gearbox worked perfectly fine. Passive auto-crafting using the slowest Robot Arm (LV) set to Keep Exact two crafts worth of ingredients (8 plates / 4 gears / 2 frames) in an IV Assembler also worked perfectly fine.

TL;DR:
Some universal wisdom for GTCE: make another machine. Don't put recipes that can conflict - or where subsets of ingredients can be interpreted as a different recipe if the input clogs with partials - in the same machine.

commented

The gearboxes are used in the Oil Drilling Rig multiblock btw.

commented

Ah, right. That would explain why I wasn't seeing any use cases. I looked through everything from GTCE multiblocks but forgot to check the MM structure blueprints.