Das offizielle Minecraft Wiki twittert hier: Wiki-Twitter  –  Chatte im Wiki-Discord  – Noch keinen Server gefunden? Es gibt einen Wiki-Server

Rezeptdaten

Aus Minecraft Wiki
Wechseln zu: Navigation, Suche

Die Rezeptdaten enthalten alle auf der Werkbank oder im Ofen herstellbaren Rezepte. Die Daten dienen zur Ausübung des Handwerks und des Erhitzens und zur Anzeige im Rezeptbuch.

Herkunft[Bearbeiten]


  • minecraft.jar:
    Die Original-Rezeptdaten stehen in minecraft.jar.

    • data:
      Die Standard-Weltdaten.

      • minecraft:
        Die Minecraft-Standard-Ressourcen.

        • recipes:
          Die Rezeptdaten.

Änderbarkeit[Bearbeiten]

Die Original-Rezeptdaten gehören zu den Standard-Weltdaten und werden mit Datenpaketen geändert. Der Befehl /datapack disable vanilla deaktiviert die Standard-Weltdaten. Damit kann man auch keine Rezepte mehr anwenden. Allerdings hat das auch weitere Auswirkungen (siehe hier).

Die Rezeptdaten haben den Dateityp .json (JavaScript Object Notation), sind aber ganz normale Textdateien, die mit jedem Texteditor gelesen und verändert werden können.

Rezeptdaten ändern[Bearbeiten]

Um ein Rezept zu ändern, platziert man die entsprechende Datei mit dem richtigen Namen im richtigen Ordner. Das bedeutet, man muss nicht alle Rezeptdaten kopieren, sondern nur die, die man verändert hat. Im Minimalfall ist das nur eine einzige Datei. Beispiel:

.minecraft/saves/Name des Weltordners/datapacks/Name des Datenpakets/data/minecraft/recipes/bucket.json

Nach dem nächsten Spielstart oder nach dem Befehl /reload werden die geänderten Rezeptdaten angewendet. Im Beispiel ändert sich das Eimer-Rezept.

Um ein Rezept zu löschen, kopiert man es in ein Datenpaket und entfernt die result-Eigenschaft.

Komplett neues Rezept hinzufügen[Bearbeiten]

Man kann auch beliebige eigene Rezepte hinzufügen. Dies ist nicht nur für Blöcke und Gegenstände möglich, für die es noch kein Rezept gibt, sondern man kann auch zu einem Block- oder Gegenstand-Rezept alternative Rezepte anlegen (Beispiel in den Originaldaten: bone_meal_from_bone.json, bone_meal_from_bone_block.json). Neue Blöcke oder Gegenstände können jedoch nicht erfunden werden, das ist nur mit Modifikationen möglich.

Eigene Rezeptdaten hinterlegt man idealerweise in einem eigenen Namensraum, um sie deutlich von den Minecraft-Rezeptdaten zu unterscheiden. Beispiel:

.minecraft/saves/Name des Weltordners/datapacks/Name des Datenpakets/data/eigener-namensraum/recipes/eigenes-rezept.json

Die Eindeutigkeit eines Rezeptes ergibt sich weder durch den Namen der Rezeptdatei (der kann beliebig sein) noch durch das Ergebnis (es darf alternative Rezepte mit gleichem Ergebnis geben), sondern durch die Zutaten und ihre Anordnung. Hat man in einem Datenpaket mehrere Rezepte mit identischen Zutaten in identischer Anordnung, beachtet das Spiel davon nur die alphabetisch erste Rezeptdatei.

Nach dem nächsten Spielstart oder nach dem Befehl /reload können die geänderten Rezepte angewendet werden. Neue Rezepte erscheinen aber nicht automatisch im Rezeptbuch, wenn die Zutat ins Inventar kommt. Dazu müssen zusätzlich die passenden Rezept-Fortschritte in den Fortschrittsdaten angelegt werden. Oder die neuen Rezepte werden mit dem Befehl /recipe give @p eigener-namensraum:eigenes-rezept für das Rezeptbuch freigeschaltet.

Funktionsweise[Bearbeiten]

Sobald man einen bestimmten Block oder Gegenstand in sein Inventar bekommt, werden alle Rezepte freigeschaltet, die ihn als Zutat haben. Wann ein Rezept freigeschaltet wird, ist jedoch nicht in den Rezeptdaten, sondern in den Fortschrittsdaten hinterlegt. Das Freischalten eines Rezeptes bestimmt, ob es im Rezeptbuch enthalten ist. Dort werden die freigeschalteten Rezepte in der Kategorie und dem Aussehen angezeigt, wie es in den Rezeptdaten hinterlegt ist. Klickt man ein Rezept im Rezeptbuch an, werden die Zutaten genau so im Rezeptfeld angezeigt, wie sie in den Rezeptdaten hinterlegt sind, auch wenn eine andere Anordnung möglich ist.

Um ein Rezept anwenden zu können, muss es nicht freigeschaltet (= im Rezeptbuch enthalten) sein, denn das ist lediglich eine Hilfe, um neue Rezepte kennenzulernen. Voraussetzung für die Anwendung eines Rezeptes ist nur die Existenz einer entsprechenden Rezeptdatei. Wenn ein Block oder Gegenstand in keiner Rezeptdatei als Ergebnis enthalten ist, kann man ihn auch nicht herstellen.

Beim Ablegen von Blöcken oder Gegenständen in ein Handwerksfeld (Spielerinventar oder Werkbank) prüft das Spiel, ob Zutaten und Anordnung zu einem Rezept passen. Wenn ja, wird das Ergebnis mit der entsprechenden Anzahl angezeigt. Diese Prüfung geschieht bei jeder Änderung im Handwerksfeld, so dass sich beim Hinzufügen von weiteren Zutaten das Ergebnis nochmal ändern kann. Bei Ofenrezepten erfolgt ebenfalls eine Prüfung: Nur wenn eine gültige Zutat erkannt wird, beginnt bei Hinzufügung von Brennstoff der Erhitzungsvorgang.

Datenstruktur[Bearbeiten]

Handwerksrezept[Bearbeiten]


  • Die namenlose Haupteigenschaft.

    • type:
      Es gibt zwei Typen von Handwerksrezepten:
      crafting_shaped sind Rezepte mit einem bestimmten Muster,
      crafting_shapeless sind formlose Rezepte, deren Zutaten beliebig angeordnet werden können.
      Im Handwerksfeld ist dabei kein Unterschied zu sehen, daher spielt es keine Rolle, dass Rezepte mit nur einer einzigen Zutat in den Rezeptdaten manchmal formlos sind und manchmal nicht. Das Minecraft Wiki kennzeichnet dagegen formlose Rezepte mit Grid Layout Formlos.png nur dann, wenn es unterschiedliche Zutaten hat.

    • group:
      Optional ein beliebiger Text für eine Gruppe gleichartiger Gegenstände, die im Rezeptbuch zusammen als ein einziges Rezept angezeigt werden, das man rechtsklicken kann, um die Einzelrezepte zu sehen. Beispiele: Es wird nur ein einziges Rezept für die Gruppe der Boote angezeigt. Auch für das Knochenmehl-Rezept gibt es eine Gruppe, da es auf zwei Arten hergestellt werden kann.

    • pattern:
      Das Muster für Rezepte vom Typ "crafting_shaped".

      • Eine Musterzeile. Ein Muster muss mindestens eine Zeile haben, maximal drei. Eine Musterzeile muss mindestens ein Zeichen enthalten, maximal drei. Das Spiel verwendet als Standardzeichen "#", aber man kann jedes Zeichen verwenden. Gibt es mehrere Musterzeilen, müssen sie alle gleich lang sein. Ein Leerzeichen steht für ein Feld, in das keine Zutat gelegt werden darf. Rezepte mit drei Musterzeilen oder mit drei Musterzeichen in einer Zeile werden nur in der Werkbank angezeigt.

    • key:
      Die Zuordnung der Gegenstände zu den Musterzeichen. Jedes Zeichen, das im Muster vorkommt, ist ein Objekt.

      • Musterzeichen:
        Der Name ist das Musterzeichen selbst. Das Leerzeichen als Name ist nicht erlaubt.

        • Liste der Gegenstände, für die das Musterzeichen steht. Normalerweise ist das nur genau ein Gegenstand, dann wird die Liste weggelassen. Das Musterzeichen kann aber auch für mehrere Alternativen stehen, wie z. B. alle Holzbretter im Holzschaufel-Rezept.

          • item:
            ID-Name des Blockes oder des Gegenstandes.

          • tag:
            Alternativ zu item kann hier ein Alias für einen oder mehrere ID-Namen angegeben werden. Beispiel: Im Rezept bookshelf.json wird der Alias minecraft:planks verwendet, der alle Holzbretter enthält. Somit kann man Bücherregale aus allen Holzbretterarten herstellen, auch in beliebiger Mischung.

    • ingredients:
      Die Zutaten für Rezepte vom Typ "crafting_shapeless". Sie werden im Handwerksfeld oben links beginnend in der angegebenen Reihenfolge nacheinander dargestellt. Rezepte mit mehr als vier Zutaten werden nur in der Werkbank angezeigt.

      • Alternative Gegenstände für eine Zutat. Normalerweise ist das nur genau ein Gegenstand, dann wird die Liste weggelassen. Eine Zutat kann aber auch aus mehreren Alternativen bestehen, z. B. die Kohle-Zutat im Feuerkugel-Rezept: Steinkohle oder Holzkohle.

        • Eine Zutat.

          • item:
            ID-Name des Blockes oder Gegenstandes.

          • tag:
            Alternativ zu item kann hier ein Alias für einen oder mehrere ID-Namen angegeben werden.

    • result:
      Das Ergebnis der Herstellung.

      • item:
        ID-Name des Blockes oder Gegenstandes.

      • count:
        Optional die Anzahl. Wenn sie weggelassen wird, ist sie automatisch 1.

Ofenrezept[Bearbeiten]


  • Die namenlose Haupteigenschaft.

    • type:
      Für Ofenrezepte gibt es den Typ smelting.

    • ingredient:
      Alternative Zutaten für ein Ofenrezept. Normalerweise ist das nur genau ein Gegenstand, dann wird die Liste weggelassen.

    • result:
      ID-Name des Ergebnisses der Herstellung.

    • experience:
      Anzahl der Erfahrungspunkte für die Herstellung.

    • cookingtime:
      Erhitzungszeit in Ticks, wenn das Brennmaterial eine Holztür ist. Die Umrechnung für andere Brennmaterialien ist fest programmiert.

Beispiele[Bearbeiten]

Das Rezept red_bed.json:

{
  "type": "crafting_shaped",
  "group": "bed",
  "pattern": [
    "###",
    "XXX"
  ],
  "key": {
    "#": {
      "item": "minecraft:red_wool"
    },
    "X": {
      "tag": "minecraft:planks"
    }
  },
  "result": {
    "item": "minecraft:red_bed"
  }
}

Das Rezept hat ein Muster ("crafting_shaped") und gehört zur Gruppe der Betten, zu der die Betten aller 16 Farben gehören. Das Muster hat zwei Zeilen mit zwei unterschiedlichen Zeichen: Das "#" steht für rote Wolle, das "X" steht für den Alias planks (Bretter). In den Aliasdaten ist hinterlegt, dass das alle Holzbretterarten sind. Durch Verwendung des Alias kann man an jeder X-Stelle ein Brett in beliebiger Holzart einsetzen. Das Ergebnis ist ein rotes Bett.

Das Rezept fire_charge.json:

{
  "type": "crafting_shapeless",
  "ingredients": [
    {
      "item": "minecraft:gunpowder"
    },
    {
      "item": "minecraft:blaze_powder"
    },
    [
      {
        "item": "minecraft:coal"
      },
      {
        "item": "minecraft:charcoal"
      }
    ]
  ],
  "result": {
    "item": "minecraft:fire_charge",
    "count": 3
  }
}

Das Rezept ist formlos ("crafting_shapeless"). Es gibt drei Zutaten: Schießpulver, Lohenstaub und Kohle (entweder Steinkohle oder Holzkohle). Das Ergebnis sind drei Feuerkugeln.

Das Rezept glass.json:

{
  "type": "smelting",
  "ingredient": {
    "tag": "minecraft:sand"
  },
  "result": "minecraft:glass",
  "experience": 0.1,
  "cookingtime": 200
}

Das ist ein Ofenrezept, mit dem aus Sand zu Glas geschmolzen wird. Die Zutaten sind ein Block-Alias, der für Sand und roten Sand steht.

Geschichte[Bearbeiten]