Jump to content

Custom Crafting recipes MInecraft Problem


RocaTeithmore

Recommended Posts

I have a weird behavior and I am not sure what I am doing wrong. so maybe one of you can help me.

 

I try to make a custom recipe in minecraft.

 

When I use only one Item like here;

 

{
    "type": "crafting_shaped",
    "pattern": [
        "###",
        "###",
        "###"
    ],
    "key": {
        "#": {
            "item": "minecraft:stone"
        }
    },
    
    "result":
    {
        "item": "dstm:pot_block",
        "count": 1
    }
}

 

The recipe works just fine. But when I try to make a variation of it it doesn't work anymore. I checked in in a json validator the second code should be correct.

:( but it doesn't work anymore. Sooo it's not okay?

 

{
    "type": "crafting_shaped",
    "pattern": [
        "###",
        "/ /",
        "/C/"
    ],
    "key": {
        "#": {
            "item": "minecraft:stone"
        },
        "/": {
            "item": "minecraft:stick"
        },
        "C": {
            "item": "minecraft:coal_block"
        }
    },
    
    "result":
    {
        "item": "dstm:pot_block",
        "count": 1
    }
}

 

So I am happy for any help :) thx you :D

Link to comment
Share on other sites

10 minutes ago, Lumby said:

as / is an escape character in java. 

No it isn't. / is as valid of a character as any other one in java. \ is the escape character.

 

3 hours ago, RocaTeithmore said:

The recipe works just fine.

It can't work just fine because it's syntax is invalid. Stone has subtypes and uses metadata to differentiate between variants and as such a data property must be specified in the ingredient. You are not specifying one.

Link to comment
Share on other sites

Hi Lumby thx for the answer but unfortunately it makes no difference :/ 

 

{
    "type": "crafting_shaped",
    "pattern": [
        "SSS",
        "W W",
        "WCW"
    ],
    "key": {
        "S": {
            "item": "minecraft:stone"
        },
        "W": {
            "item": "minecraft:stick"
        },
        "C": {
            "item": "minecraft:coal_block"
        }
    },
    
    "result":
    {
        "item": "dstm:pot_block",
        "count": 1
    }
}

 

doLimitedCrafting is set to false as well...

Link to comment
Share on other sites

2 hours ago, V0idWa1k3r said:

It can't work just fine because it's syntax is invalid. Stone has subtypes and uses metadata to differentiate between variants and as such a data property must be specified in the ingredient. You are not specifying one.

https://minecraft.gamepedia.com/Recipe#JSON_format

you need to add

"data": metadata

underneath

"item": "minecraft:stone"

and make sure your JSON is valid (add a , after minecraft:stone")

Edited by Cadiboo

About Me

Spoiler

My Discord - Cadiboo#8887

My WebsiteCadiboo.github.io

My ModsCadiboo.github.io/projects

My TutorialsCadiboo.github.io/tutorials

Versions below 1.14.4 are no longer supported on this forum. Use the latest version to receive support.

When asking support remember to include all relevant log files (logs are found in .minecraft/logs/), code if applicable and screenshots if possible.

Only download mods from trusted sites like CurseForge (minecraft.curseforge.com). A list of bad sites can be found here, with more information available at stopmodreposts.org

Edit your own signature at www.minecraftforge.net/forum/settings/signature/ (Make sure to check its compatibility with the Dark Theme)

Link to comment
Share on other sites

Ah! thank you very much :)

That makes sense! This must be it.

 

Though what do I have to do when I want to allow all stone or wood types for a recipe?

I thought it was possible with the overall ID.

 

So just to be sure - since I am an absolute newcommer to Java - when I want only the normal stone I should write within the brackets:

 

 "S": 
{
"item": "minecraft:stone",
"data": "0"
}

 

Or is the syntax different for the DVs? And do I need within brackets as well a comma at the last paragraph or is it enough to set one behind the closing bracket one?

 

 

Edited by RocaTeithmore
add question
Link to comment
Share on other sites

19 minutes ago, RocaTeithmore said:

Though what do I have to do when I want to allow all stone or wood types for a recipe?

You need to specify all of those variants in the ingredient. Or if you want stuff from other mods to be accepted as well you'd need to use the ore dictionary. Here is an example of using ore dict(I specify stuff in the _constants file but you can specify them directly in your ingredients, having a _constants just allows you to reuse ingredients instead of having to type them over and over again)

 

19 minutes ago, RocaTeithmore said:

is the syntax different for the DVs?

The recipes use json. the "data" is just a json property of the object named after your ingredient key.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.