Minecraft Wiki
Advertisement
Information icon
Dieser Inhalt ist nur für Minecraft: Java Edition.

Gegenstandsmodifizierer sind technische JSON-Dateien, die in Datenpaketen erstellt werden können. Sie werden dazu genutzt, um mit Beutetabellen-Funktionen zu existierenden Gegenstände neue (NBT-)Eigenschaften hinzuzufügen. Sie können nur mit dem Befehl /item verwendet werden.

Struktur[]

Mit Datenpaketen können neue Gegenstandsmodifizierer eingefügt werden:

  • Weltordner
    • datapacks
      • <Datenpaket>
        • data
          • <Eigener-Namensraum>
            • item_modifiers
              • <gegenstandsmodifzierer>.json

Verwendung[]

Ein Gegenstandsmodifizierer ist eine Beutetabellenfunktion oder eine Liste von Funktionen, welche nur mit dem Befehl /item benutzt werden können.

item modify (block <Koordinaten> | entity <Selektor>) <Slot> <Gegenstandsmodifizierer>
item replace (block <Koordinaten> | entity <Selektor>) <Slot> from (block <Koordinaten> | entity <Selektor>) [<Gegenstandsmodifizierer>]

JSON-Struktur[]

Gegenstandsmodifizierer werden im JSON-Format definiert.

  • Die Wurzel-Eigenschaft.
    • function: Der Namensraum der Funktion
    • Andere Teile der Funktion, siehe unten.

  • apply_bonus - Wendet eine vordefinierte Bonusformel an.
    • enchantment: Verzauberung-IDs werden zur Levelberechnung verwendet.
    • formula: Kann binomial_with_bonus_count für eine Binomialverteilung sein (mit n=level + extra, p=probability), uniform_bonus_count für eine gleichmäßige Verteilung (von 0 bis level * bonusMultiplier), oder ore_drops wird für eine spezielle Funktion für das Droppen von Erzen im Spiel verwendet (Count * (max(0; random(0..Level + 2) - 1)+1)).
    • parameters: Werte, die für die Formel benötigt werden.
      • extra: Für die Formel 'binomial_with_bonus_count', der zusätzliche Wert.
      • probability: Für die Formel 'binomial_with_bonus_count' die Wahrscheinlichkeit.
      • bonusMultiplier: Für die Formel 'uniform_bonus_count' der Bonusmultiplikator.

  • copy_name - Kopiert für den Beutetabellentyp 'block' die CustomName-Eigenschaft eines Blockobjekts in die display.Name-Eigenschaft des Gegenstands.
    • source:"block_entity" - Muss auf "block_entity" gesetzt werden.

  • copy_nbt - Kopiert die NBT-Daten in den Gegenstand.
    • source: Spezifiziert die Quelle.
    • source:
      • type: NBT-Provider-Typ. Kann entweder context oder storage sein.
        • Wenntype context ist:
          • target: Spezifiziert die Quelle.
        • Wenntype storage ist:
          • source: Die Datenspeicher-ID
    • ops: Eine Liste von Kopier-Operationen.
      • Eine Operation
        • source: Der NBT-Pfad, von welchem kopiert werden soll.
        • target: Der NBT-Pfad, in welchem kopiert werden soll. Startet mit der tag-Eigenschaft.
        • op: Kann replace sein, wenn jegliche Daten überschrieben werden sollen, append zum hinzufügen, oder merge zum Zusammenführen.

  • copy_state - Kopiert Zustandseigenschaften aus dem abgelegten Block in die BlockStateTag-Eigenschaft des Gegenstands.
    • block: Eine Block-ID. Die Funktion schlägt fehl, wenn der Block nicht übereinstimmt.
    • properties: Eine Liste der zu kopierenden Eigenschaftsnamen.
      • Ein zu kopierender Blockzustandsname.

  • enchant_randomly - Verzaubert den Gegenstand mit einer zufällig ausgewählten Verzauberung. Die Stufe der Verzauberung ist, falls zutreffend, zufällig.
    • enchantments: Liste von Verzauberung-IDs zur Auswahl. Wenn weggelassen, sind alle auf den Gegenstand anwendbaren Verzauberungen möglich.

  • enchant_with_levels - Verzaubert den Gegenstand mit der angegebenen Verzauberungsstufe (entspricht in etwa der Verwendung eines Zaubertischs auf dieser Stufe).
    • treasure: Legt fest, ob Schatzverzauberungen für diesen Gegenstand erlaubt sind.
    • levels: Nummernanbieter von Beutetabellen. Gibt die genaue Verzauberungsstufe an, die verwendet werden soll.

  • exploration_map - Wandelt eine leere Karte in eine Entdeckerkarte um, die zu einer nahe gelegenen generierten Struktur führt.
    • destination: Der Typ der zu lokalisierenden generierten Struktur. Akzeptiert alle StructureType-Eigenschaften, die vom Befehl /locate verwendet werden (Groß-/Kleinschreibung wird nicht beachtet).
    • decoration: Das Symbol, das verwendet wird, um das Ziel auf der Karte zu markieren. Akzeptiert alle Markierungssymbole der Karte (Groß-/Kleinschreibung wird nicht beachtet). Wenn mansion oder monument verwendet wird, ändert sich die Farbe der Linien auf der Gegenstandstextur, um sie an die entsprechende Entdeckerkarte anzupassen.
    • zoom: Die Zoomstufe der resultierenden Karte. Standardmäßig 2.
    • search_radius: Die Größe des Bereichs, in dem nach Bauwerken gesucht werden soll, in Blöcken. Der überprüfte Bereich ist quadratisch, nicht kreisförmig. Radius 0 bewirkt, dass nur der aktuelle Chunk durchsucht wird, Radius 1 bewirkt, dass der aktuelle Chunk und acht benachbarte Chunks durchsucht werden, und so weiter. Standardmäßig 50.
    • skip_existing_chunks: Suche nicht in Chunks, die bereits generiert wurden. Standardmäßig true.

  • explosion_decay - Entfernt bei Beutetabellen vom Typ 'Block' einige Gegenstände von einem Stapel, wenn es eine Explosion gab. Jeder Gegenstand hat eine Chance von 1/Explosionsradius, verloren zu gehen.

  • furnace_smelt - erhitzt den Gegenstand wie in einem Schmelzofen. Wird in Kombination mit der Bedingung entity_properties verwendet, um Nahrung von getöteten Tieren zu braten.

  • fill_player_head - Fügt erforderliche Gegenstands-Eigenschaft eines Spielerkopfes hinzu
    • entity: Gibt ein Objekt an, die für den Spielerkopf verwendet werden soll. Auf this setzen, um die gestorbene Kreatur oder den Spieler zu verwenden, der den Fortschritt erlangte, den Behälter öffnete oder den Block abbaute, killer für den Mörder oder killer_player für einen Mörder, der ein Spieler ist.

  • limit_count - Begrenzt die Anzahl jedes Gegenstandsstapels.
    • limit: Nummernanbieter von Beutetabellen. Gibt das genaue zu verwendende Limit an.
    • limit: Begrenzt die Zählung zwischen einem Minimal- und Maximalwert. Beides ist nicht erforderlich.
      • min: Nummernanbieter von Beutetabellen. Mindestnutzungslimit.
      • max: Nummernanbieter von Beutetabellen. Höchstgrenze für die Verwendung.

  • looting_enchant - Passt die Stapelgröße basierend auf dem Level der Plünderung-Verzauberung auf dem Objekt killer an.
    • count: Nummernanbieter von Beutetabellen. Gibt die Anzahl zusätzlicher Gegenstände pro Plünderungsstufe an. Man sollte beachten, dass die Zahl nach der Multiplikation mit der Plünderungsstufe gerundet sein kann.
    • limit: Gibt die maximale Menge an Gegenständen im Stapel nach der Plünderungsberechnung an. Wenn der Wert 0 ist, wird keine Begrenzung angewendet.

  • set_attributes - Fügt Attribut-Modifikatoren zum Gegenstand hinzu.
    • modifiers:
      • : Ein Modifikator.
        • name: Name des Modifikators.
        • attribute: Der Name des Attributs, auf das dieser Modifikator wirken soll.
        • operation: Muss entweder "addition", "multiply_base" oder "multiply_total" sein.
        • amount: Nummernanbieter von Beutetabellen. Gibt die Menge des Modifikators an.
        • id: Optional : UUID des folgenden Modifikators. Wenn keine angegeben ist, wird eine neue UUID generiert.
        • slot: Slots, in denen sich der Gegenstand befinden muss, damit der Modifikator wirksam wird, dieser Wert kann einer der folgenden sein: „mainhand“, „sidehand“, „feet“, „legs“, „chest“ oder „head“.
        • slot: Einer der aufgelisteten Slots wird zufällig ausgewählt.

  • set_banner_pattern Setzt ein Bannermuster
    • patterns: Die Liste der Bannermuster
        • pattern: Das Bannermuster.
        • color: Die Farbe des Bannermuster.
    • append: Optional. Wenn true, wird das Bannermuster relativ zur aktuellen verändert.

  • set_contents - Setzt für Beutetabellen des Typs 'Block' den Inhalt eines Behälter-Blockobjekts auf eine Liste von Einträgen.
    • entries: Die als Inhalt zu verwendenden Einträge.

  • set_count - Setzt die Stapelgröße für den Gegenstand.
    • count: Die Stapelgröße für den Gegenstand.
    • add: Optional. Wenn true, wird die Stapelgröße relativ zur aktuellen verändert.

  • set_damage - Setzt die Haltbarkeit für Werkzeuge.
    • damage: Die Gegenstandshaltbarkeit, prozentual (1.0 ist volle Haltbarkeit, während 0.0 keine Haltbarkeit wäre)
    • add: Optional. Wenn true, wird die Gegenstandshaltbarkeit relativ zur aktuellen verändert.

  • set_enchantments Setzt eine Verzauberung für den Gegenstand.
    • enchantments: Die Verzauberung, welche hinzugefügt werden soll.
      • An enchantment: Schlüsselname ist die Verzauberung-ID. Dahinter folgt das Level für die Verzauberung.
    • add: Optional. Wenn true, wird die Verzauberung relativ zur aktuellen verändert.

  • set_loot_table - Setzt eine Beutetabelle für einen Behälter.
    • name: Der Name der Beutetabelle.
    • seed: Der Startwert für die Beutetabelle. Wenn es freigelassen wurde, wird ein zufälliger Startwert verwendet.

  • set_lore - Fügt hinzu / oder ändert die Beschreibung des Gegenstands.
    • lore: Die Beschreibung des Gegenstands, geschrieben in JSON. Jede Eintrag ist eine Zeile in der Beschreibung.
    • entity: Ein Objekt, welches beim JSON-Text mit @s ermittelt werden kann.
    • replace: Ein Boolean, welcher angibt ob die aktuelle Beschreibung überschrieben werden soll oder nicht.

  • set_name - Fügt hinzu / oder ändert den Namen des Gegenstandes.
    • name: Der Namen des Gegenstands, geschrieben in JSON.
    • entity: Ein Objekt, welches beim JSON-Text mit @s ermittelt werden kann.

  • set_nbt - Fügt dem Gegenstand NBT-Daten hinzu.
    • tag: Die NBT-Daten, welche hinzugefügt werden.

  • set_potion - Setzt die Potion-Eigenschaft eines Gegenstands.
    • id: Die Trank-ID.

  • set_stew_effect - Setzt den Statuseffekt für die Seltsame Suppe.
    • effects: Die Effekte
      • Der Effekt
        • type: Die Effekt-ID.
        • duration: Die Dauer des Effektes.

Geschichte[]

Versionsgeschichte der Java Edition
Vollversion 1.17 (20w46a)
  • Gegenstandsmodifizierer hinzugefügt, die im Befehl /item ... modify verwendet werden können.
Vollversion 1.18 (21w39a)
  • set_potion-Funktion hinzugefügt.
Advertisement