Files
minecraft-bedrock-json-schemas/behavior/recipes/recipes.json
2021-06-08 17:06:03 +02:00

180 lines
7.5 KiB
JSON
Vendored

{
"$id": "blockception.minecraft.behavior.recipes",
"examples": [
{
"format_version": "1.12.0",
"minecraft:recipe_shaped": {
"description": { "identifier": "minecraft:item" },
"tags": ["crafting_table"],
"pattern": [],
"key": {},
"result": { "item": "minecraft:boat", "data": 4 }
}
}
],
"allOf": [
{ "if": { "properties": { "format_version": { "type": "string", "const": "1.12" } } }, "then": { "$ref": "#/definitions/A" } },
{ "if": { "properties": { "format_version": { "type": "string", "const": "1.12.0" } } }, "then": { "$ref": "#/definitions/A" } },
{ "properties": { "format_version": { "$ref": "#/definitions/J" } } }
],
"definitions": {
"C": {
"description": "Recipe definition 1.12.0",
"title": "Definition",
"type": "object",
"properties": {
"identifier": { "type": "string", "pattern": "[a-z0-9_:\\-]+", "title": "Recipe Identifier", "description": "TODO description" }
},
"additionalProperties": false
},
"D": { "description": "Recipe tags 1.12.0", "title": "Tags", "type": "array", "items": { "type": "string", "title": "Tag" } },
"B": {
"description": "Represents a furnace recipe for a furnace.'Input` items will burn and transform into items specified in `output`..",
"title": "Furnace Recipe 1.12.0",
"additionalProperties": false,
"required": ["description"],
"type": "object",
"properties": {
"description": { "$ref": "#/definitions/C" },
"tags": { "$ref": "#/definitions/D" },
"input": { "type": "string", "description": "Items used as input for the furnace recipe.", "title": "Input" },
"output": { "type": "string", "description": "Items used as output for the furnace recipe.", "title": "Output" }
}
},
"E": {
"description": "Represents a Potion Brewing Container Recipe..",
"title": "Brewing Recipe 1.12.0",
"additionalProperties": false,
"required": ["description"],
"type": "object",
"properties": {
"description": { "$ref": "#/definitions/C" },
"tags": { "$ref": "#/definitions/D" },
"input": { "type": "string", "description": "Input potion used on the brewing stand.", "title": "Input" },
"output": {
"type": "string",
"description": "Output potion from mixing the input potion with the reagent on the brewing stand.",
"title": "Output"
},
"reagent": { "type": "string", "description": "Item used to mix with the input potion.", "title": "Reagent" }
}
},
"F": {
"description": "Represents a Potion Brewing Container Recipe..",
"title": "Brewing Recipe 1.12.0",
"additionalProperties": false,
"required": ["description"],
"type": "object",
"properties": {
"description": { "$ref": "#/definitions/C" },
"tags": { "$ref": "#/definitions/D" },
"input": { "type": "string", "description": "Input potion used on the brewing stand.", "title": "Input" },
"output": {
"type": "string",
"description": "Output potion from mixing the input potion with the reagent on the brewing stand.",
"title": "Output"
},
"reagent": { "type": "string", "description": "Item used to mix with the input potion.", "title": "Reagent" }
}
},
"H": {
"description": "Recipe item 1.12.0",
"title": "Item",
"oneOf": [
{ "type": "string", "title": "Item Identifier" },
{
"additionalProperties": false,
"type": "object",
"required": ["item"],
"properties": {
"item": { "type": "string", "title": "Item Identifier" },
"data": { "type": "integer", "minimum": 0, "title": "Item Data Value" },
"count": { "type": "integer", "minimum": 1, "default": 1, "title": "Count" }
}
}
]
},
"G": {
"description": "Represents a shaped crafting recipe for a crafting table. The key used in the pattern may be any single character except the `space` character, which is reserved for empty slots in a recipe..",
"title": "Shaped Recipe 1.12.0",
"additionalProperties": false,
"required": ["description"],
"type": "object",
"properties": {
"description": { "$ref": "#/definitions/C" },
"tags": { "$ref": "#/definitions/D" },
"key": {
"type": "object",
"description": "Patten key character mapped to item names.",
"title": "Key",
"minProperties": 1,
"additionalProperties": { "$ref": "#/definitions/H" }
},
"group": { "type": "string", "title": "UNDOCUMENTATED", "description": "UNDOCUMENTATED" },
"pattern": {
"type": "array",
"description": "Characters that represent a pattern to be defined by keys.",
"title": "Pattern",
"maxItems": 3,
"minItems": 1,
"items": { "type": "string", "title": "Pattern" }
},
"priority": { "type": "integer", "description": "Item used as output for the furnace recipe.", "title": "Priority" },
"result": {
"description": "When input items match the pattern then these items are the result.",
"title": "Result",
"oneOf": [{ "$ref": "#/definitions/H" }, { "type": "array", "items": { "$ref": "#/definitions/H" } }]
}
}
},
"I": {
"description": "Represents a shapeless crafting recipe..",
"title": "Shapeless Recipe 1.12.0",
"additionalProperties": false,
"required": ["description"],
"type": "object",
"properties": {
"description": { "$ref": "#/definitions/C" },
"tags": { "$ref": "#/definitions/D" },
"ingredients": {
"description": "Items used as input (without a shape) for the recipe.",
"title": "Ingredients",
"oneOf": [{ "$ref": "#/definitions/H" }, { "type": "array", "items": { "$ref": "#/definitions/H" } }]
},
"group": { "type": "string", "title": "UNDOCUMENTATED", "description": "UNDOCUMENTATED" },
"priority": { "type": "integer", "description": "Item used as output for the furnace recipe.", "title": "Priority" },
"result": {
"description": "When input items match the pattern then these items are the result.",
"title": "Result",
"oneOf": [{ "$ref": "#/definitions/H" }, { "type": "array", "items": { "$ref": "#/definitions/H" } }]
}
}
},
"A": {
"description": "Minecraft recipe 1.12.0",
"required": ["format_version"],
"additionalProperties": false,
"minProperties": 2,
"title": "Recipe",
"properties": {
"format_version": {
"type": "string",
"description": "A version that tells minecraft what type of data format can be expected when reading this file.",
"title": "Format Version"
},
"minecraft:recipe_furnace": { "$ref": "#/definitions/B" },
"minecraft:recipe_brewing_container": { "$ref": "#/definitions/E" },
"minecraft:recipe_brewing_mix": { "$ref": "#/definitions/F" },
"minecraft:recipe_shaped": { "$ref": "#/definitions/G" },
"minecraft:recipe_shapeless": { "$ref": "#/definitions/I" }
}
},
"J": {
"title": "Format Version",
"description": "A version that tells minecraft what type of data format can be expected when reading this file.",
"pattern": "^(1)\\.([0-9]+)\\.([0-9]+)$",
"type": "string"
}
}
}