Enchantment NBT issue.
xannor opened this issue ยท 10 comments
In 1.12.2 I cannot craft any of the factory upgrades. The best I can figure out is that the NBT tags on enchanted items and books in my environment have their level data ending in s i.e.: { lvl: 1s }, but according to JEI the recipies for woot do not expect the s suffix and so they do not match. I also have refined storage and the couple recipes in the that use enchanted items do expect the s suffix. (I think the s stands for short int field)
So for now I have been using the DW20 method of throwing away the recipe items and cheating in the results.
I thought I only had that issue before with Enchantment+ created books in pre 1.12.
Are you using vanilla books or another mod to create the enchanted books?
For my reference #119 is the issue from earlier releases.
I think the forge release did a major change to recipe handling, I am seeing a lot of mods release today, talking about recipes.
I am not aware of a particular mod, as I have created books via a vanilla enchanting table, but I also have books "fished" up from actually additions nets. However, its not that some books have this. Every enchantment listed in JEI has similar NBT tagging. Also other than for Woot, any recipe listed in JEI that requires or uses enchanted items/books also has similar NBT tagging, only Woot does not. I dont know if this is a forge/1.12 change or if a particular mod is forcing it for all enchanted items, but this is the first time I have seen this, though I am leaning towards the former as I would have found something else that doesn't work.
Forge uses the new json recipe format, which I've used for the recipes with the books. It is completely possible that I've screwed it up since I last tested it - or I've not updated the recipes for a recent change.
If it happening with vanilla in enchanting tables that is not good, so I'll retest with that.
Just to help me with debugging - can you tell me another mod that the books are working fine for, that means I can go and look to see if they are using json recipes. (You mention RefinedStorage, but I'm not seeing StoredEnchantment in a search of the gitrepo, but that could be GitHubs fault).
Refined Storage, it has recipes for fortune and silk touch upgrades in it, though they are a machine recipe and not a standard crafting table one. Actually Additions has a crafting recipe for Lens of The killer that requires Sharpness V, though I haven't crafted that.
Looks like I have to work out the json string that goes into the recipe for Forge to pass.
The one I'm using
"nbt": { "StoredEnchantments": [ { "id": 16, "lvl": 2 } ] }
You cannot specify the "16s" and "2s".
But it looks lie
"nbt": "{ StoredEnchantments: [ { id: 16s, lvl: 1s } ] }"
does work and now JEI is showing that book used in Woot and Draconic recipes.
So I just need to move all the recipes over to that format and it should work.
This used to work for me and I don't know why it doesn't anymore :(
However, I'll move all the recipes to the "s" format and ensure that they show up in JEI as enchanted books for use in the anvil.
So there is something funny going on here.
With the "s" style recipe, all recipes look correct and JEI shows them all, however they all end up crafting decapitate upgrades, regardless of what the JEI recipe says.
Out of interest, which Forge version are you on?
Think I've got this working now. I upgraded to the latest Forge, used the "s" style recipes and now I'm getting everything working as expected.