Custom recipe multiple output, ghost input
drakray opened this issue · 22 comments
Issue Description:
Custom recipe give a second output, and if InvTweak is installed, shift-clicking custom recipe give infinite result.
For example, using my script, putting a wood pressure plate on a crafting table, taking the 2 planks, 2 other plank will appear in the result slot. taking those 2 planks will stop behaviour. If using InvTweak, shift-clicking result slot will give 2 planks each time slot is shift-clicked.
Happens when using only CT and script, no other mod installed. (also with other mods)
Seems like there is a ghost input, as putting 1 stack of 1 stick with 1 stack of 2 stick will give a total of 3 planks. 1 click will consume 1 stick per stack, remain 1 stick; you can move the remaining stick in grid, plank will show in result slot as long as you don't overwrite the ghost stick.
What you expected to happen:
To not do that? Custom recipe should only give 1 output.
Script used (Please Pastebin or gist your script, posting an unpasted or ungist'd script will automatically close this issue):
Minetweaker.log file (Please Pastebin or gist your file, posting an unpasted or ungist'd file will automatically close this issue):
Affected Versions:
- Minecraft: 1.11.2
- Forge: 2233
- Crafttweaker: 3.0.22
Your most recent log file where the issue was present:
Functionality error, not a logged error
I have been able to repeat this issue.
Forge: 13.20.0.2252
Crafttweaker: 3.0.22
I'm having the same issue, but with other items.
Forge: 13.20.0.2252
Crafttweaker: 3.0.22
Sorry, but... Can you CraftTweaker's guys re-upload this version of the mod again? (Or someone else)
Crafttweaker: 3.0.22 for Minecraft 1.11.2.
I was almost finishing my modpack today, but my curse app just deleted the mod because it was telling me that the mod wasn't in curse forge anymore.
But the point is: I was able to "solve" this problem in my modpack, but if don't have the mod in curse forge, I can't upload it. And I don't have it anymore due to curse app deleting the mod.
How I was able to "solve" the problem? I simply add ".noReturn()" in all the items were this issue was happening. Cause this is not happening in all the items. Only in specific ones. And, when this happens to me, I added this ".noReturn()".
I'm using CT 3.0.22 on Forge 2233, and I can say that ALL my custom recipe are showing the ghost behaviour
Well... I can't say if this is also true for me because I don't have the mod anymore. T.T
Can someone re-upload it for me, PLEASE??? T.T
For testing purpose
i'll bring it down on demand or when a new one comes out
edit: link removed
Take it down please.
It is obvious that he plans on actually releasing that version, which is a huge no go. There was a dupe bug in the old 1.11 versions, that is why they were taken down.
First: I can't release it, if you don't re-upload it to the curse forge. (And no, I don't want to release it in the Technic Launcher)
Second: Thanks for your upload.
Third: I test it out and, yes... As you said, all the items seems to be duplicating.
Last: The only thing that I can do for now is go back playing some more "The Hunter - Call of the wild" until the CraftTweaker Guys fix the problem.
Thanks for your attention.
@jaredlll08 I deleted the file and removed the link
1-Your trick is not a bug fix, it's a workaround, which I am not here for.
2-This trick is flawed, proof by using this script where crafting a slab will leave a pressure plate, and worse, if you put 2 row of stick, you will get all 3 item one after the other, +1 button. This example could cause trouble if it where not about wooden thing
Finally, I for one am using 27 zs file, with most having between 25 and 50 recipes, some close to 100, so adding noReturn after everything is tedious at least.
I understand that it work as a temporary workaround, but one must report that the supposedly fixed bug is not.
Oh, man! Come on! I was so happy seconds ago, before I come here read you saying that. You just need to use that ".noReturn()" in one of the input items. Then it will works! Trust me! You only just need to write this in only one of the input items! And, for all the other recipes, you just need to remember to place this.
For example:
recipes.addShaped(<convenientadditions:ironwrench>, [[null, <ore:ingotIron>.noReturn(), null], [null, <ore:ingotIron>, <ore:ingotIron>], [<ore:ingotIron>, null, null]]);
As you can see, this recipe uses only iron Ingot. But, because I used the .noReturn() in one of the the input items, the recipe do not duplicate it self. Try it!
This works for me.
Btw: thanks Craft Tweaker's Guys, for the update!
Here is it on my side, using the first script @raspopov posted
http://i.blamejared.com/Pm8PA.gif
Like I really cannot reproduce this, right now I'm thinking that maybe the build got messed, I'll take a look at that now
Are you guys testing this on a SSP world or multiplayer?
I can't reproduce this at all, having made 0 code changes since .23, this is what happens when I craft
http://i.blamejared.com/azz7F.webm
I tested this in SSP and SMP. I'm using Forge 2233, if that may be a fault(more recent version crash some mods)
I will retry live
edit: may I see your script file, to compare with mine to see if I do something that could explain behaviour?(though since I'm not the only one to get this, problem might come from mod compat maybe)
Video using .23, Forge 2233, and a bunch of mods showing bug
edit: updating to Forge 2255 didn't fix
My modList
Mine duplicated recipes are:
recipes.addShapeless( <minecraft:paper> * 3, [ <minecraft:written_book:*> ] );
and
recipes.addShaped( <spartanshields:shield_basic_iron>, [ [ null, null, null ], [ <minecraft:iron_ingot>, <minecraft:shield:*>, <minecraft:iron_ingot> ], [ null, <minecraft:iron_ingot>, null ] ] );
In fact all custom recipes produces dupes.
Sooo....
Seems the original build 23 didn't catch the new code.
Mind trying this one?
http://ci.blamejared.com/job/CraftTweaker/74/