I don't know what causes it, or if it is blocks only because for me, it works fine for vanilla items. Here's my json file...
{
"result": {
"item": "am:line_button"
},
"pattern": [
" s ",
"sbs",
"sss"
],
"type": "minecraft:crafting_shaped",
"key": {
"s": {
"item": "am:steel_ingot"
},
"b": {
"item": "minecraft:stone_button"
}
}
}
Let me try changing it to stone...
Nope, doesn't work for stone... Maybe it has something to do with the block metadata? Because sand and stone both have other blocks using meta...
Jup, that was it.. Actually looking at the code printing the error in the console that's exactly the thing... Take a look:
if (item.getHasSubtypes() && !json.has("data"))
throw new JsonParseException("Missing data for item '" + itemName + "'");
So, you need to add "data": 0 to your file.