MC Toolkit

Anleitungen / Bauen & Ressourcen

Benutzerdefinierte Modelldaten: Ein Gegenstand, viele Modelle – ohne etwas zu ersetzen

Das Gegenstandsmodell-System hat das alte CustomModelData-Prädikat abgelöst. Hier ist der Ordneraufbau, das JSON, das Werte auf Modelle abbildet, und warum deine Textur als lila Würfel erscheint.

Benutzerdefinierte Gegenstandsmodelle ermöglichen es einem Server, einen „Zauberstab" auszugeben, der eigentlich eine Karottenrute mit einem anderen Modell ist. Der Mechanismus hat sich geändert, und die meisten Tutorials beschreiben noch den alten.

Was sich geändert hat

Alte Methode — ein predicate-Block innerhalb der Modelldatei des Basisgegenstands, gesteuert über custom_model_data als Zahl:

{ "predicate": { "custom_model_data": 1 }, "model": "item/wand" }

Aktuelle Methode — eine items/-Definition, die ein Modell auswählt:

assets/minecraft/items/carrot_on_a_stick.json
{
  "model": {
    "type": "minecraft:range_dispatch",
    "property": "minecraft:custom_model_data",
    "fallback": { "type": "minecraft:model", "model": "minecraft:item/carrot_on_a_stick" },
    "entries": [
      { "threshold": 1, "model": { "type": "minecraft:model", "model": "minecraft:item/wand" } }
    ]
  }
}

Das fallback ist das, was eine normale Karottenrute weiterhin darstellt. Ohne es wird jede unveränderte Karottenrute in der Welt als lila-schwarzer Fehlermodell-Würfel gerendert.

Der Ordneraufbau

pack.mcmeta
assets/minecraft/
├── items/carrot_on_a_stick.json      the dispatch
├── models/item/wand.json             the model
└── textures/item/wand.png            the texture

models/item/wand.json in seiner einfachsten Form:

{ "parent": "minecraft:item/generated", "textures": { "layer0": "minecraft:item/wand" } }

Beachte, dass der Texturpfad kein textures/-Präfix und kein .png enthält — das ist die mit Abstand häufigste Ursache für einen lila-schwarzen Würfel.

Den Gegenstand vergeben

/give @p carrot_on_a_stick[custom_model_data={floats:[1]}]

Die Komponente nimmt jetzt ein Objekt mit typisierten Listen entgegen, keine bloße Ganzzahl. custom_model_data=1 ist die alte Syntax, und der Befehl lehnt sie jetzt als fehlerhaft ab.

Warum er als lila Würfel erscheint

Nach Wahrscheinlichkeit geordnet:

  1. Texturpfad falsch — enthält textures/ oder .png, oder die Datei liegt nicht dort, wo der Pfad angibt.
  2. Groß-/Kleinschreibung des Dateinamens — das Spiel unterscheidet Groß- und Kleinschreibung, auch wenn dein Betriebssystem das nicht tut.
  3. Veraltete pack.mcmeta — 26.x verlangt min_format und max_format; eine aktuelle Formatnummer in einer bloßen pack_format lässt das Paket als inkompatibel erscheinen.
  4. Falsch gezippt — pack.mcmeta muss im Stammverzeichnis der Zip-Datei liegen, nicht in einem Ordner innerhalb der Zip-Datei.

Weitere Selektoren

range_dispatch anhand einer Zahl ist nur eine Möglichkeit. Du kannst auch nach minecraft:display_context (anderes Modell in der Hand als in einem Rahmen), minecraft:using_item oder minecraft:selected unterscheiden — so zeigt ein Bogen einen gespannten Zustand.

Baue das Dispatch-JSON, die Modelldatei und den Give-Befehl gemeinsam in den Custom Model & Item Component Tools.

Modell- und Komponenten-Werkzeuge →

Weitere Anleitungen

Alle ansehen →