MC Toolkit

Guides / Commandes et données

Recettes personnalisées : avec forme, sans forme, et l'usage des tags au lieu de lister chaque bois

Une recette avec forme qui ne se fabrique pas a généralement une clé erronée. Voici le JSON, ce que le jeu retire automatiquement d'un motif, l'astuce des tags qui réduit treize recettes à une seule, et comment tester.

Les recettes comptent parmi les fichiers de datapack les plus faciles à écrire et parmi les plus faciles à rater subtilement, car une recette cassée échoue en silence — la grille de fabrication ne fait simplement rien.

Avec forme

{
  "type": "minecraft:crafting_shaped",
  "pattern": [ "SSS", "S S", "SSS" ],
  "key": { "S": "minecraft:stone" },
  "result": { "id": "minecraft:furnace", "count": 1 }
}

Trois règles qui causent la plupart des échecs :

  • Chaque caractère de pattern doit exister dans key, sauf un espace, qui signifie vide.
  • Le motif est relatif, pas absolu. Le jeu retire les lignes et colonnes vides sur les bords, donc un 2×2 complété en 3×3 avec des espaces se fabrique quand même n'importe où dans la grille — mais l'écrire sous forme de deux lignes de deux est plus clair.
  • Les lignes doivent toutes avoir la même longueur. ["SS", "S"] est invalide.

Sans forme

{
  "type": "minecraft:crafting_shapeless",
  "ingredients": ["minecraft:stone", "minecraft:coal"],
  "result": { "id": "minecraft:torch", "count": 4 }
}

L'ordre n'a pas d'importance. Les doublons doivent être listés une fois chacun — deux charbons signifie deux entrées.

Les tags réduisent une famille à une seule recette

Au lieu de treize recettes pour treize types de planches :

"key": { "P": "#minecraft:planks" }

Le # marque un tag d'objet. #minecraft:planks, #minecraft:logs, #minecraft:wool, #minecraft:stone_crafting_materials et des dizaines d'autres existent déjà. Définir le vôtre prend un seul fichier :

data/<namespace>/tags/item/my_metals.json
{ "values": ["minecraft:iron_ingot", "minecraft:gold_ingot"] }

Notez tags/item/ — singulier item, pluriel tags. Cette incohérence est bien réelle.

Résultat avec composants

"result": {
  "id": "minecraft:diamond_sword",
  "count": 1,
  "components": { "minecraft:custom_name": "Excalibur", "minecraft:enchantments": { "sharpness": 5 } }
}

C'est ainsi qu'un objet personnalisé devient fabricable sans mod.

Les autres types de recettes

crafting_shaped et crafting_shapeless sont deux parmi tant d'autres. Également disponibles : smelting, blasting, smoking, campfire_cooking, stonecutting, smithing_transform et smithing_trim. Les types de cuisson prennent cookingtime et experience ; la taille de pierre prend un seul ingrédient et une quantité.

Tester

/reload puis essayez la grille. Si rien ne se passe :

  1. Vérifiez le journal du jeu (latest.log) après /reload — le JSON malformé y est signalé, pas dans le chat.
  2. /recipe give @s <namespace>:<recipe> — si l'id de la recette est erroné, cela produit une erreur, ce qui vous indique que le fichier n'est pas lu du tout.
  3. Le déblocage des recettes est distinct de l'existence des recettes. Une recette fonctionne dans la grille même si elle n'apparaît jamais dans le livre de recettes.

Construisez le JSON de recette, de prédicat et de kit avec les clés et tags vérifiés dans le Datapack JSON Builders.

Créateurs de JSON pour packs de données →

Plus de guides

Tout voir →