speed machine continue to speed up if output is full with a multiple output recipe
Trinsdar opened this issue · 2 comments
I found a bug in the thermal washer that I was able to replicate in the rotary maceraor by making it have multiple outputs in one of the recipes:
{
"input": {
"tag": "forge:ores/iron",
"size": 1,
"type": "ic2:tag"
},
"output": {
"xp": 0.7,
"outputs": [
{
"item": "ic2c_extras:crushed_iron_ore",
"size": 2,
"type": "ic2:nbt"
},
{
"item": "ic2:dust_iron",
"size": 1,
"type": "ic2:nbt"
}
],
"type": "ic2:simple"
}
}
Peek.2024-04-21.18-36.mp4
Note: the recipe outputs must differ in amounts.
seems to be caused by the output queue still containing items in it.
@Trinsdar technically this intended behavior.
Since the machine checks if it can work and not if it can operate.
(Can work => valid recipe + has energy, while can operate means that it actually can increase the progressbar)
Though I can see why you see that as a bug.
I don't plan to change this behavior.
But if you want to fix this yourself.
Simply override the pre tick function which has 3 parameters.
HasRecipe, CanWork, CanOperate.
That logic is simply there just for adv machines :)