Ein Rezept ist eine Datei
Es gibt keinen Befehl, der ein Rezept hinzufügt. Wie Loot-Tabellen und Fortschritte ist ein Rezept eine JSON-Datei, die die Welt beim Laden liest, und sie liegt unter data/<Namensraum>/recipe/<name>.json in einem Datapack. Falls das neu ist: die Anleitung Datapacks statt Befehle erklärt warum, und der Datapack-Generator baut den Ordner.
Beachte, dass der Ordner seit 1.21 recipe heißt, im Singular. Vorher war es recipes, und eine im alten Ordner verbliebene Datei wird auf einem aktuellen Spiel nie gelesen.
Auffüllen: der Fehler, der die meiste Zeit kostet
Ein Rezept mit Form wird gegen die kleinste Box geprüft, die es enthält, und das Muster, das du schreibst, ist diese Box. Schreib ein dreizeiliges Muster, obwohl das Rezept nur eine Zeile belegt, und du hast ein dreizeiliges Rezept deklariert.
"pattern": [
"###",
" ",
" "
]
Das lässt sich im 2×2-Raster des Inventars nicht herstellen, und an der Werkbank verlangt es, dass die drei Items genau in der obersten Zeile liegen. Gewollt war mit ziemlicher Sicherheit das hier:
"pattern": [
"###"
]
Jetzt passt es überall, wo die drei Items nebeneinanderliegen. Die Regel ist einfach: schneide alle leeren Zeilen und Spalten an den Rändern weg. Leerzeichen innerhalb der Form sind bedeutungstragend und müssen bleiben — das Loch in der Mitte eines Ring-Rezepts ist echt und beabsichtigt.
Mit Form oder ohne
Ohne Form wird die Anordnung vollständig ignoriert: Es nimmt eine flache Liste und passt, sobald diese Items irgendwo im Raster liegen.
{
"type": "minecraft:crafting_shapeless",
"ingredients": [
"minecraft:paper",
"minecraft:ink_sac"
],
"result": { "id": "minecraft:written_book", "count": 1 }
}
Nimm ohne Form, wenn die Anordnung nichts bedeutet — das trifft auf die meisten Kombinationsrezepte zu. Mit Form lohnt sich, wenn die Form Teil der Idee ist: eine Spitzhacke sollte auf dem Raster wie eine Spitzhacke aussehen.
Zwei Formatwechsel, an denen kopierte Beispiele scheitern
Das Rezept-JSON wurde binnen kurzer Zeit zweimal umgeschrieben — deshalb versagt ein Beispiel aus einer Anleitung oft ohne sichtbaren Grund.
| Version | Zutat | Handwerks-Ergebnis |
|---|---|---|
| vor 1.20.5 | {"item": "minecraft:x"} | {"item": ..., "count": n} |
| 1.20.5 – 1.21.1 | {"item": "minecraft:x"} | {"id": ..., "count": n} |
| 1.21.2 und neuer | "minecraft:x" | {"id": ..., "count": n} |
Auch die Ergebnisse von Schmelzen und Steinsäge sind umgezogen: vor 1.20.5 eine schlichte ID-Zeichenkette, danach ein Objekt. Nichts davon ändert, was das Rezept bedeutet, nur wie es geschrieben wird — genau die Art Unterschied, die man mit bloßem Auge elend schlecht findet.
Eine Zutat, viele Items
Eine Zutat kann statt eines einzelnen Items ein Item-Tag sein, geschrieben mit vorangestelltem #. So akzeptiert ein Rezept jedes Holz:
"key": {
"#": "#minecraft:planks"
}
Vanilla liefert viele nützliche Tags mit — #minecraft:planks, #minecraft:logs, #minecraft:wool — und eigene lassen sich in data/<Namensraum>/tags/item/ definieren. Jede Holzart von Hand aufzuzählen funktioniert auch, altert aber schlecht: das nächste Update fügt ein Holz hinzu und dein Rezept nimmt es stillschweigend nicht mehr an.
Wenn das Rezept läuft, das Buch aber leer bleibt
Dieser Fall verwirrt, weil tatsächlich nichts kaputt ist. Ein eigenes Rezept erscheint erst im Rezeptbuch, wenn es freigeschaltet wurde, und das geschieht über einen Fortschritt mit einer recipe_unlocked-Belohnung. Vanilla macht das für jedes seiner Rezepte, weshalb sie beim Sammeln nach und nach auftauchen.
Solange du das nicht ergänzt, lässt sich das Rezept trotzdem einwandfrei herstellen, wenn der Spieler es selbst auslegt. Lautet dein Test also „es steht nicht im Buch“, bau es erst von Hand, bevor du die Datei verdächtigst.
Checkliste, wenn nichts passiert
- Liegt die Datei auf 1.21+ in
recipe/, im Singular? - Hat das Muster leere Rand-Zeilen oder -Spalten?
- Passt die Zutatenform zu deiner Spielversion?
- Hast du
/reloadausgeführt? - Erscheint das Pack in
/datapack list?
Anders als bei Loot-Tabellen meldet sich ein fehlerhaftes Rezept beim Neuladen meist doch im Server-Log — dieses Log lohnt sich also vor allem anderen.
Wie es weitergeht
Der Rezept-Generator legt das Rezept auf einem Raster aus, schneidet das Muster für dich zu und schreibt Zutaten- und Ergebnisform um, wenn du die Zielversion wechselst. Danach deckt der Loot-Tabellen-Generator ab, was aus Truhen und Mobs herauskommt, statt was in ein Raster hineingeht.