MC Toolkit

Anleitungen / Fehlerbehebung

Ein Bedrock-Addon ist eine Zip-Datei – und das Manifest ist der Grund, warum es fehlschlägt

Die meisten abgelehnten .mcaddon-Importe sind eine gültige Zip-Datei mit einer falschen Header-Zeile, und die Fehlermeldung nennt nie das Feld, das den Fehler verursacht hat.

Ein .mcaddon ist ein Zip-Archiv mit einer anderen Dateiendung, und das Spiel lehnt es aus Gründen ab, die nichts mit der Zip-Datei zu tun haben. Der übliche Übeltäter ist manifest.json – eine kleine Datei mit einer Header-UUID und einer Modul-UUID, die sich voneinander unterscheiden müssen, sowie einer format_version, die nicht die Spielversion ist, auf die du abzielst.

Zwei UUIDs, niemals dieselbe

Ein Manifest enthält eine header und ein modules-Array. Jede braucht ihre eigene uuid, und dieselbe in beiden zu verwenden, ist die mit Abstand häufigste Ablehnung:

{
  "format_version": 2,
  "header": {
    "name": "My Pack",
    "description": "Example",
    "uuid": "aaaaaaaa-0000-0000-0000-000000000000",
    "version": [1, 0, 0],
    "min_engine_version": [1, 21, 0]
  },
  "modules": [
    {
      "type": "data",
      "uuid": "bbbbbbbb-0000-0000-0000-000000000001",
      "version": [1, 0, 0]
    }
  ]
}

UUIDs sind 128-Bit-Werte, geschrieben als 32 Hexadezimalziffern in fünf durch Bindestriche getrennten Gruppen. Jeder Generator ist in Ordnung; ein Duplikat nicht. version und min_engine_version sind Arrays aus drei Ganzzahlen, keine Strings – "1.0.0" wird abgelehnt.

Java hat überhaupt kein Manifest

Das ist der Unterschied, der Leute beim Wechsel zwischen den Editionen stolpern lässt. Ein Java-Ressourcenpaket enthält eine pack.mcmeta, die die unterstützten Formate deklariert (min_format und max_format in aktuellen Versionen). Bedrock enthält manifest.json mit UUIDs und einer Modulliste. Keine der beiden Dateien wird von der anderen Edition gelesen, und ein Paket lässt sich nicht durch Umbenennen des Archivs portieren.

Prüfen, bevor du importierst

Entpacke das Archiv und sieh dir die oberste Ebene an. Ein Paket, das eine Ordnerebene zu tief verschachtelt ist – MyPack/manifest.json statt manifest.json –, wird überhaupt nicht importiert, ohne Fehlermeldung. Das Manifest muss im Stammverzeichnis jedes Pakets liegen, neben den Ordnern, die es beschreibt.

Blockmodelle sind ein eigenes Format

Ein Java-Blockmodell-JSON ist keine Bedrock-Geometriedatei, und die beiden sind nicht austauschbar. Ein Java-Modell ist normalerweise nur ein parent plus eine textures-Zuordnung – eine elements-Liste von Quadern wird nur für eine eigene Form benötigt –, während Bedrock Formen in seinem eigenen minecraft:geometry-Format beschreibt. Beide messen 16 Einheiten pro Block, weshalb ein Modell in der einen Edition richtig aussehen und in der anderen als nichts importiert werden kann.

Registry-Namen sind nicht austauschbar

Bedrock und Java sind sich bei den Bezeichnern für denselben Inhalt uneinig. Ein Paket, das einen Java-Namen für eine Verzauberung, einen Effekt oder ein Biom referenziert, wird geladen und dann stillschweigend nichts tun, weil der Name zu keinem Eintrag aufgelöst wird. Die Registries selbst unterscheiden sich in ihrer Größe zwischen den Editionen, sodass ein Paket, das gegen die Liste einer Edition erstellt wurde, nicht als vollständig in der anderen angenommen werden kann.

Validiere das Manifest, prüfe den Aufbau des Archivs und generiere ein Blockmodell in den Bedrock & Pack Tools.

Bedrock- und Paket-Werkzeuge →

Weitere Anleitungen

Alle ansehen →