• Es freut uns dass du in unser Minecraft Forum gefunden hast. Hier kannst du mit über 130.000 Minecraft Fans über Minecraft diskutieren, Fragen stellen und anderen helfen. In diesem Minecraft Forum kannst du auch nach Teammitgliedern, Administratoren, Moderatoren , Supporter oder Sponsoren suchen. Gerne kannst du im Offtopic Bereich unseres Minecraft Forums auch über nicht Minecraft spezifische Themen reden. Wir hoffen dir gefällt es in unserem Minecraft Forum!
  • Dies ist ein moderiertes Forum. Dein Beitrag ist für dich und andere erst sichtbar, wenn er von einem Teammitglied moderiert wurde! Wird dein Beitrag abgelehnt erhältst du eine Meldung. Bitte erstelle so lange keine neuen Beiträge! Die Freischaltung wird auch nicht durch Nachfragen bei einem Teammitglied beschleunigt.

Ingame Minecrafts CustomModelData-Tag

Valaron

Kuhfänger
Registriert
20 Februar 2017
Beiträge
73
Diamanten
302
Minecraft
ValaronGraubart
- Minecraft 1.14 - CustomModelData Tag -

Mit der Version 1.14 wurde zu Minecrafts NBT-Daten der CustomModelData-Tag hinzugefügt.
Dieser ermöglicht es aktuell ausschließlich Items verschiedene eigene Texturen und Models zu geben, ohne dass dafür Optifine benötigt wird.

Die CustomModelData ist dabei eine bis zu achtstellige Nummer in Form eines NBT-Tags auf einem Item.

Im Folgenden erkläre ich wie ihr diesen in euren eigenen Texturepacks verwenden könnt:


Inhalt:

1. Was brauchst du um in einem Texturepack CustomModelData zu verwenden?
2. Wie werden die Texturen eingebunden und was musst du dafür im Texturepack beachten?
3. Wie bekomme ich meine Texturen/Models jetzt Ingame angezeigt?
4. Tipps und Tricks


1. Was brauchst du um in einem Texturepack CustomModelData zu verwenden?


- Zunächst einmal brauchst du ein eigenes Texturepack für die 1.14+, dafür gibt es einen Haufen Tutorials auf Youtube.

- Dann brauchst du ein Programm um die .json Dateien von Minecraft zu bearbeiten und eigene zu erstellen, dazu empfehle ich Notepad++.

- Ebenso brauchst du WinRar oder 7Zip um die Minecraft.jar öffnen zu können.

- Als letztes fehlen nur noch die Texturen die du hinzufügen möchtest und schon kannst du starten.


2. Wie werden die Texturen eingebunden und was musst du dafür im Texturepack beachten?

Schritt 1:

Zum Start musst du erstmal ein paar Ordner in dein Texturepack einfügen, sofern diese nicht schon vorhanden sind.

Dazu erstellst du im Ordner “assets” deines Texturepacks den Ordner “minecraft” und darin den Ordner “textures” und in diesem einen Unterordner “item”.
Jetzt hast du also den Ordner um die Texturen in deinem Texturepack einzuspeichern, fehlt noch der Ordner in dem du definierst wann welche Texturen benutzt werden sollen.

Dafür erstellst du in deinem Ordner “minecraft” einen neuen Ordner “models” und auch darin einen Unterordner “item”.
In diesen Ordnern speicherst du später die Dateien mit denen du die neuen Texturen und Models auswählst.

Wichtig! Die Namen aller Ordner müssen klein geschrieben werden und dürfen keine Sonderzeichen enthalten!


Schritt 2:

Hast du alle Ordner erstellt geht es nun daran die nötigen Dateien zu erstellen und einzufügen:

Als erstes fügst du die von dir gewünschte neue Textur in den Ordner minecraft/textures/item ein und benennst sie - falls noch nicht geschehen - so, dass du sie später wiederfindest.

In diesem Fall will ich die Textur von Mörser und Stößel hinzufügen, daher heißt meine Textur „mortar.png“


Schritt 3:

Jetzt muss diese Textur für Minecraft als ein Model definiert werden, dabei erkennt Minecraft automatisch dass es sich hier um ein 2D Model handelt.

Um das zu erreichen öffnest du den Ordner minecraft/models/item und erstellst eine Textdatei.
Diese benennst du wie deine Textur und änderst die Endung von „.txt“ auf „.json“.

Nun öffnest du diese Datei mit Notepad++ und kopierst die folgenden Zeilen hinein:

model.json:
{
    "parent": "item/generated",
    "textures": {
        "layer0": "item/[Name der Textur]"
    }
}

Dann speicherst du die Datei und fertig ist dein 2D Model eines neuen Items.

Die Beispieldatei heißt nun mortar.json und beinhaltet:

mortar.json:
{
    "parent": "item/generated",
    "textures": {
        "layer0": "item/mortar"
    }
}


Schritt 4:

Die Textur ist jetzt also in deinem Texturepack, doch noch kann sie nicht angezeigt werden, du musst also noch festlegen wann die Textur denn angezeigt werden soll.

Dazu brauchst du die .json Datei des Minecraft Items, welches du wie dein neues Item aussehen lassen willst.
Diese Dateien sind alle in Minecraft zu finden, ich erkläre für alle die das noch nie gemacht haben einmal wie man an sie heran kommt.

Eine .json Datei in Minecraft finden

Jetzt kommt WinRar ins Spiel, denn du musst auf die .jar Datei deiner Minecraft-Version zugreifen.

Dazu öffnest du deinen “.minecraft” Ordner und öffnest den Ordner “versions”.
Darin sollten einige Unterordner liegen, die nach den verschiedenen Minecraft Versionen benannt sind.

Du suchst also am besten den Ordner mit der 1.14-Version auf der du gerade spielst (alle anderen 1.14 Versionsdateien sollten aber auch ohne Probleme funktionieren) und entpackst die darin enthaltene .jar Datei mit WinRar in einen Ordner in dem du sie immer schnell wieder findest.

Nun kannst du in deinem entpackten Minecraft Ordner nach den .json Dateien der Items suchen. Diese liegen im Ordner assets/minecraft/models/item.

Hier kannst du nun die .json Datei des Items kopieren, welches du bearbeiten möchtest, und es in deinem Texturepack unter genau diesem Pfad abspeichern.

Die "bowl.json" die ich als Beispiel nutze sieht so aus:

bowl.json:
{
    "parent": "item/generated",
    "textures": {
        "layer0": "item/bowl"
    }
}


Schritt 5:

Nun hast du die .json Datei im passenden Ordner des Texturepacks, sie ist aber noch identisch mit der Datei in Minecraft und daher würdest du noch keine Veränderung sehen.

Aus diesem Grund öffnest du nun die "Item.json" und fügst diese Zeilen ein:

override:
"overrides":[
    {
        "predicate": {"custom_model_data":[Nummer]},
        "model":"item/[Name der Model.json]"
    }
]


Doch was tun diese Zeilen denn jetzt?

Nehmen wir sie einmal Stück für Stück auseinander:

Die Option "overrides":[ ] sorgt dafür, dass die Standarttextur "textures" überschrieben wird wenn:

"predicate": {"custom_model_data":[Zahl]}

also die CustomModelData gleich 1 ist, dann wird also das eigene Model:

"model": "item/[Model.json]"

ausgewählt und angezeigt.


An unserem Beispiel sieht das ganze nun so aus:

bowl.json:
{
    "parent": "item/generated",
    "textures": {
        "layer0": "item/bowl"
    },
    "overrides":[
        {
        "predicate": {"custom_model_data":1}, "model":"item/mortar"
        }
    ]
}

Wichtig! Achte darauf, dass die Option "overrides" an der richtigen Stelle hinter "textures" steht und mit einem Komma davon getrennt ist!
Funktioniert dein Model später nicht ist eine fehlerhafte .json eine häufige Ursache.

Sind die Zeilen nun richtig eingefügt und deine .json Datei ist abgespeichert kannst du Minecraft starten und das Texturepack laden.


3. Wie bekomme ich meine Texturen/Models jetzt Ingame angezeigt?

Um deine neuen Texturen jetzt zu testen musst du sie natürlich noch in Minecraft laden.

Dazu braucht es nur einen simplen /give Befehl und schon siehst du ob du alles richtig gemacht hast:

/give @p minecraft:[ItemName]{CustomModelData:[Zahl]}

Im Beispiel würde der Befehl so aussehen:

/give @p minecraft:bowl{CustomModelData:1}

Hast du alles richtig gemacht wird dir nun deine neue Textur angezeigt!


4. Tipps und Tricks und Hinweise

Abschließend gibt es noch einige Tipps und Kniffe die du benutzen kannst um dir die Arbeit mit den ganzen Dateien zu erleichtern:

Ordner anlegen

Innerhalb der "item" Ordner kannst du eigene Unterordner anlegen in denen du die Model.json und die Texturen abspeicherst.
Wenn du das tust musst du allerdings die Pfade in den .json Dateien wie folgt anpassen:

"item/[Ordnername]/[Textur/Modelname]"

Wichtig! Die Namen der Ordner müssen ebenfalls klein geschrieben werden und die Item.json, also die Datei die bestimmt wann welches Model ausgewählt wird muss im "item" Ordner verbleiben.


ModelData Sortieren

Verwendest du auf eine Item viele verschiedene Texturen kann der Zahlenwust schnell unübersichtlich werden.
Überlege dir also ein System wie du deine Texturen aufteilst.

Möglichkeiten gibt es viele, hier nur ein Beispiel:

"CustomModelData:100"
"CustomModelData:101"
"CustomModelData:102"
...

beschreiben verschiedene Eisenschwerter.

"CustomModelData:200"
"CustomModelData:201"
"CustomModelData:202"
...

beschreiben auch verschiedene Schwerter, doch zerbrochene Eisenschwerter.

Wichtig! Hast du dich für ein System entschieden versuche dieses überall einzuhalten, damit du nicht irgendwann durcheinander kommst!


Pfade überprüfen!

Sollten deine Texturen nicht Ingame angezeigt werden, könnte ein Fehler in den .json Dateien vorliegen.
Kontrolliere vor allem die Pfade und die Formatierung, sowie ob vielleicht Anführungszeichen oder Kommata fehlen!



So, damit dürfte ich dir die Grundlagen dieses neuen Features mit an die Hand gegeben haben, experimentiere damit herum und sieh selbst was noch alles damit möglich ist...

Je nach verfügbarer Zeit werde ich dieses Tutorial auch noch um einige Dinge erweitern, aber schon jetzt freue ich mich auf Feedback und Kritik und hoffe ich konnte einigen damit stundenlanges Suchen sowie Trial and Error ersparen.

gezeichnet
Valaron/Jakob
 
Zuletzt bearbeitet:

Valaron

Kuhfänger
Registriert
20 Februar 2017
Beiträge
73
Diamanten
302
Minecraft
ValaronGraubart
Nein, der CustomModelData-Tag ist bisher nur für Items, um Entities zu verändern braucht man nach wie vor Optifine, dazu einfach mal mein erstes Tutorial anschauen ;P
 

Valaron

Kuhfänger
Registriert
20 Februar 2017
Beiträge
73
Diamanten
302
Minecraft
ValaronGraubart
#Update
- Auf den Hinweis von LucasMine wurden zwei Fehler in den Pfaden der Items behoben.
 

Gilyz

Minecrafter
Registriert
6 August 2017
Beiträge
1
Alter
23
Diamanten
201
Minecraft
Gilyz
Hey
Danke für die Coole erklärung aber meine Frage ist wie es mit 3D Modelle aussieht ^^
 

Valaron

Kuhfänger
Registriert
20 Februar 2017
Beiträge
73
Diamanten
302
Minecraft
ValaronGraubart
3D Modelle sind auch möglich, dazu empfehle ich Blockbenchs Itemmodel zu nutzen.
Einfach ein 3D Item erstellen und statt der Model/Mortar.json in meinem Beispiel das selbst erstellte Modell plus Textur einfügen.

Ich denke ich werde dieses Tutorial dahingehend erweitern sobald ich das was aktuell in Arbeit ist veröffentlicht habe.
 

Herr_Man

Minecrafter
Registriert
22 Juni 2020
Beiträge
3
Diamanten
203
Hey!

Ich habe neulich auch etwas angefangen mit der CustomModelData herumzuprobieren usw. und ich bin auf ein kleines Problem gestoßen. Nämlich wollte ich, dass in dem Texture Pack nur das spezielle Item, welches ich über die CustomModelData erstellt habe, einen anderen Namen hat, nicht das normale Item. Hast du dafür eventuell eine Lösung?
 

Valaron

Kuhfänger
Registriert
20 Februar 2017
Beiträge
73
Diamanten
302
Minecraft
ValaronGraubart
Nein, dort kannst du nur die Benennungen der normalen Items anpassen. Aber du kannst doch ein Item mit CustomModelData einfach auch mit einem custom Namen erzeugen.
 
Oben