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

Standard-Ressourcen

Aus Minecraft Wiki
Wechseln zu: Navigation, Suche
Die Liste der ausgewählten Ressourcenpakete enthält immer mindestens die Standard-Ressourcen Default

Die Standard-Ressourcen von Minecraft (engl. Default Resources) legen das Aussehen des Spiels fest, so wie es von Mojang vorgesehen ist. Sie sind zu einem Ressourcenpaket zusammengefasst, das grundsätzlich beim Programmstart geladen wird. Wird dann ein zusätzliches Ressourcenpaket aktiviert, überlagert es mit seinen Ressourcen (und nur mit diesen) die Standard-Ressourcen. Alle anderen Ressourcen bleiben Standard. Das heißt, wenn ein Ressourcenpaket z.B. nur Texturen enthält (Texturenpaket oder Texture Pack genannt), bleiben die Sounds unverändert. Anderes Beispiel: ein minimales Ressourcenpaket könnte nur eine einzige Textur enthalten. Alle anderen Texturen werden dadurch nicht beeinflusst, sie bleiben im Standard-Aussehen.

Die Standard-Ressourcen (assets = Bestandsdaten) findet man an drei unterschiedlichen Orten:

  • .minecraft/assets: Sounddaten und alle Übersetzungen der Textdaten für Minecraft und Minecraft Realms.
  • minecraft.jar/assets: Texturdaten, Modelldaten, Shaderdaten, Standard-Beschriftungen für Minecraft (US-Englisch) und einige nicht übersetzte Texte.
  • realms.jar/assets: Texturdaten für Minecraft Realms-Menüs und Standard-Beschriftungen für Minecraft Realms (US-Englisch).

Übersicht[Bearbeiten | Quelltext bearbeiten]

Quelle Standard-Ressource Änderbar mit
Ressourcenpaket
.minecraft/assets Icondaten Nein
Sounddaten Ja
Übersetzte Sprachdaten Ja
minecraft.jar/assets Beutetabellen Nein
Konstruktionsvorlagen Nein
Modelldaten Ja
Schriftdaten Ja
Shaderdaten Ja
Textdaten Ja
Texturdaten Ja
realms.jar/assets Übersetzte Sprachdaten Ja
Texturdaten Ja

.minecraft/assets[Bearbeiten | Quelltext bearbeiten]

Einige Standard-Ressourcen sind im Ordner .minecraft/assets hinterlegt. Wegen der Vielzahl der Dateien (über 700) wurde eine Beschleunigung des Programmzugriffs durch den Einsatz des Hashverfahrens eingeführt. Dabei werden die Dateien nicht mehr wie früher über ihre Ordnerbaumstruktur gefunden, sondern über eine Indexdatei.

Hashverfahren und Indexdatei[Bearbeiten | Quelltext bearbeiten]

Beim Hashverfahren wird der Dateiinhalt für jede Standard-Ressource mithilfe einer mathematischen Funktion in eine hexadezimale Zeichenkette umgewandelt, die Hashwert genannt und als Dateiname verwendet wird. So erhält z.B. die Datei minecraft/sounds/mob/horse/donkey/death.ogg (Sounddatei des sterbenden Esels) den Dateinamen ece3a1417e0eca0a748aafaf6cd9f5e99c314991.

Das Verfahren nennt sich Content-based Indexing und ermöglicht es, einen Inhalt durch sich selbst zu indizieren. Jede Änderung des Inhaltes ergibt einen neuen Hashwert, der als Index verwendet wird. Umgekehrt ergeben identische Inhalte den selben Hashwert. Daher kann das Programm auch Änderungen an den Resourcen bemerken und verwerfen, ohne sie über eine Online-Verbindung vergleichen zu müssen. Es genügt die Feststellung, dass der Dateiinhalt nicht zum Namen passt. Erst dann wird die Original-Ressource nachgeladen. Am deutlichsten wird das Verfahren bei den Skins: Wenn 20 Spieler den selben Skin bei Mojang hochladen, wird für alle auf die selbe Datei zurückgegriffen. Das spart Platz und ermöglicht es, Skins nur anhand ihres Aussehens zu identifizieren und wiederzufinden, egal wer sie gerade trägt. Für Texturen gilt das selbe: Haben 5 Minecraft-Versionen die selbe Textur für Bruchstein und 7 eine andere, gibt es zwei Dateien, die über den Index referenziert werden. Gleichzeitig können alle 12 Versionen die selbe Texturdatei für Sand verwenden, ohne dass diese doppelt abgelegt werden muss.

Der menschliche Betrachter kann mit den Hashwert-Dateinamen allerdings nichts mehr anfangen, insbesondere fehlt ihm die wichtige Information des Dateityps (z.B. .ogg für eine Sounddatei). Nichtsdestotrotz hat sich der Inhalt der Ressourcendatei durch den neuen Namen nicht verändert. Wenn man weiß, um welchen Datentyp es sich handelt, kann man sie daher problemlos mit dem entsprechenden Programm öffnen.

Die Zuordnung von Hashwert zu urspünglichem Dateinamen erfolgt über eine Indexdatei. Darin sind sämtliche Standard-Ressourcen mit Hashwert und urspünglichem Dateinamen aufgelistet. Bei der Weiterentwicklung des Spiels können sich Standard-Ressourcen ändern. Daher gibt es für jede Version des Spiels eine passende Indexdatei, die vom Launcher automatisch heruntergeladen und in den Index-Ordner .minecraft/assets/indexes gestellt wird, sobald man die entsprechende Minecraft-Version das erste Mal startet. Die Indexdateien tragen den zugehörigen Versionsnamen, z.B. 1.7.10.json, 1.8.json oder 1.9.json.

Die eigentlichen Standard-Ressourcen stehen im Ordner .minecraft/assets/objects. Weil ein sehr voller Ordner den Zugriff verlangsamen würde, sind die Ressourcen nach den ersten zwei Zeichen ihrer Hashwerte in Unterordnern gruppiert. Die Sounddatei des sterbenden Esels, deren Name mit ec beginnt, steht also im Unterordner .minecraft/assets/objects/ec.

Ressourcen finden[Bearbeiten | Quelltext bearbeiten]

Um eine bestimmte Ressource zu finden, öffnet man die Indexdatei der gewünschten Minecraft-Version mit einem Texteditor und sucht die Ressource anhand ihres Dateipfades oder Dateinamens. Wenn man beispielsweise nach "donkey" sucht, findet man alle Sounddateien des Esels.

Nun nimmt man die ersten zwei Zeichen des Hashwertes der gesuchten Ressource, geht in den entsprechenden Unterordner von .minecraft/assets/objects und findet dort die Datei. Sie trägt ihren Hashwert als Dateinamen, lässt sich aber mit dem zu ihrem Dateityp passenden Programm öffnen (z.B. Audioprogramm bei Sounddateien). Wenn das Programm die Datei nicht öffnen will, weil der Hashwertname keine Dateiendung hat, kann man die Datei kopieren und dabei entsprechend umbenennen, indem man den Dateityp aus der Indexdatei anhängt (z.B. .ogg für Sounddateien).

Aufbau der Indexdatei[Bearbeiten | Quelltext bearbeiten]

Aufbau einer Indexdatei:


  • Die namenlose Haupteigenschaft.

    • virtual:
      true oder false. Solange im Launcher noch ein Profil mit einer Minecraft-Version vor Vollversion 1.7.3 existiert, werden die Ressourcen zusätzlich noch in der früher verwendeten Baumstruktur erzeugt. Dafür wird vom Spiel der Ordner .minecraft/assets/virtual/legacy angelegt, der alle Ressourcen enthält, die bis zur Vollversion 1.7.2 (inklusive) benötigt wurden. Die zugehörige Indexdatei heißt legacy.json (legacy = Altlast). Sie enthält die Zeile "virtual:true". Der Standardwert ist false und kann weggelassen werden.

    • objects:
      Alle Ressourcen.

      • Eine Ressource. Der Name ist der virtuelle Ordner und Dateiname der Ressource, z.B. "sounds/mob/horse/donkey/death.ogg" für die Sounddatei des sterbenden Esels.

        • hash:
          Der Hashwert der Ressource, der gleichzeitig der Dateiname der Ressource ist, z.B. ece3a1417e0eca0a748aafaf6cd9f5e99c314991 für die Sounddatei des sterbenden Esels.

        • size:
          Die Dateigröße in Byte.

Ressourcenpakete[Bearbeiten | Quelltext bearbeiten]

Bei Ressourcenpaketen funktioniert der Zugriff nicht über Hashverfahren und Indexdatei, sondern über eine Baumstruktur. Ressourcenpakete haben daher keine Indexdatei. Stattdessen werden die Ressourcen in der entsprechenden Baumstruktur bereitgestellt.

Ordnerbaum der Standard-Ressourcen[Bearbeiten | Quelltext bearbeiten]

Die Standard-Ressourcen in .minecraft haben folgenden Aufbau:


  • assets:
    Die Standard-Ressourcen.

    • indexes:
      Enthält die Indexdateien der Standard-Ressourcen. Diese enthalten jeweils Dateiname und Hashwert von folgenden Standard-Ressourcen:

    • objects:
      Enthält die eigentlichen Standard-Ressourcen sortiert nach ihren Hashwerten.

      • 00 bis ff:
        Die Ressourcen stehen in Unterordnern, die die ersten zwei Zeichen ihrer Hashwertes tragen.

    • skins:
      Enthält in Unterordnern die Skins der Spieler, die man auf den Servern, die man besucht hat, gesehen hat. Wie die Standard-Ressourcen haben die Skin-Dateien einen Hashwert als Dateinamen. In Wirklichkeit sind sie aber Bilddateien, die man mit einem Bildanzeigeprogramm öffnen kann.

      • 00 bis ff:
        Die Skins stehen in Unterordnern, die die ersten zwei Zeichen ihrer Hashwerte tragen.

    • virtual:
      Dieser Ordner wird nur angelegt, wenn ein Launcher-Profil mit einer Minecraft-Version vor 1.7.3 existiert. Der Ordner enthält die alten Standard-Ressourcen in der Baumstruktur, die vor Einführung des Hashverfahrens verwendet wurde.

      • legacy:
        Die alten Standard-Ressourcen.

        • icons:
          Die Icondaten für das Spiel.

        • lang:
          Alle übersetzten Sprachdateien. Die Standard-Sprachdatei "en_US.lang" steht weiterhin unter minecraft.jar/assets.

        • music:
          Die Sounddateien für die Hintergrundmusik. Dieser Ordner entspricht der Baumstruktur bis zur Vollversion 1.6.4 inklusive. Ab Vollversion 1.7.2 ist dieser Ordner ein Unterordner des sounds-Ordners.

        • records:
          Die Sounddateien für die Schallplatten. Für diesen Ordner gilt dasselbe, wie für music.

        • sound:
          Die Sounddateien für Geräusche. Für diesen Ordner gilt dasselbe, wie für music.

        • sounds:
          Alle Sounddateien in der Baumstruktur, die mit Vollversion 1.7.2 eingeführt wurde.

        • .lastused:
          Textdatei, die einen Zeitstempel (Datum, Uhrzeit) der letzten Benutzung der alten Ressourcenstruktur enthält.

        • pack.mcmeta:
          Definitionsdatei für das Ressourcenpaket der Standard-Ressourcen.

        • READ_ME_I_AM_VERY_IMPORTANT.txt:
          Textdatei mit dem Hinweis, dass die Standard-Ressourcen automatisch synchronisiert werden, eine Änderung an dieser Stelle also sinnlos ist. Zum Ändern von Ressourcen sei das Konzept der Ressourcenpakete vorgesehen. Der originale Wortlaut des Hinweises steht in diesem Abschnitt.

        • sounds.json:
          Textdatei mit einer Liste sämtlicher Sounddateien.

minecraft.jar/assets[Bearbeiten | Quelltext bearbeiten]

Einige Standard-Ressourcen sind im Programm minecraft.jar direkt hinterlegt. Dadurch existieren sie für jede Programmversion getrennt. Das betrifft die Texturen, die Shader, die Modelldaten und die Standardsprache English (US).

Der Launcher ermöglicht das Spielen mit unterschiedlichen Programmversionen. Sie stehen alle im Ordner .minecraft/versions. Dort wählt man den Ordner mit der gewünschten Version und öffnet die komprimierte jar-Datei mit einem entsprechenden Programm, z.B. dem kostenlosen 7zip. In der jar-Datei befindet sich der Ordner assets, der folgenden Aufbau hat:


  • assets:
    Die Standard-Ressourcen.

    • minecraft:
      Die Minecraft-Standard-Ressourcen.

      • blockstates:
        Die Blockzustandsdateien, die für jeden Blockzustand zu einer passenden Texturdatei verweisen.

      • font:
        Schriftzeichengröße.

      • lang:
        Die Sprachdatei "en_US.lang" mit den Original-Beschriftungen des Spiels in der Standardsprache English (US). Alle anderen Sprachdateien stehen unter .minecraft/assets.

      • loot_tables:
        Die Beutetabellen für die Anwendung bei generierten Truhen, getöteten Kreaturen und beim Angeln.

      • models:
        Die Modelldaten für die dreidimensionale Darstellung von Blöcken und Gegenständen.

      • shaders:
        Die Shaderdaten für grafische Effekte im Spiel.

      • structures:
        Die Konstruktionsvorlagen, die für generierte Bauwerke verwendet werden.

      • texts:
        Die Textdaten, die nicht in der Sprachdateien enthalten sind und für die daher standardmäßig keine Übersetzung existiert. Mit einem Ressourcenpaket kann jedoch eine Übersetzung eingebunden werden.

      • textures:
        Die Texturdaten für die Oberflächen von Blöcken, Gegenständen, Objekten, für die Benutzeroberfläche und für die Schriftdaten.

realms.jar/assets[Bearbeiten | Quelltext bearbeiten]

Die Funktionen und Standard-Ressourcen für Realms sind in dem separaten Java-Archiv realms.jar hinterlegt. Es ist im Ordner .minecraft/libraries/com/mojang/realms zu finden. Dort wählt man den Ordner mit der gewünschten Realms-Version (das ist nicht die Minecraft-Version) und öffnet die komprimierte jar-Datei mit einem entsprechenden Programm, z.B. dem kostenlosen 7zip. In der jar-Datei befindet sich der Ordner assets, der folgenden Aufbau hat:


  • assets:
    Die Standard-Ressourcen.

    • realms:
      Die Minecraft Realms-Standard-Ressourcen.

      • lang:
        Die Sprachdatei "en_US.lang" mit den Original-Beschriftungen für die gesamte Realms-Benutzeroberfläche in der Standardsprache English (US). Alle anderen Sprachdateien stehen unter .minecraft/assets.

      • textures:
        Die Texturdaten für die Benutzeroberfläche von Minecraft Realms.

READ_ME_I_AM_VERY_IMPORTANT.txt[Bearbeiten | Quelltext bearbeiten]

Änderungen an den Standard-Ressourcen von Minecraft haben keine Auswirkung, denn das Programm gleicht alle Standard-Ressourcen bei jedem Programmstart ab und korrigiert sie gegebenenfalls zurück auf den Standard. Darauf wurde bis Vollversion 1.7.2 eigens mit einer Textdatei namens READ_ME_I_AM_VERY_IMPORTANT.txt hingewiesen, die folgenden Inhalt hatte:

 _    _  ___  ______ _   _ _____ _   _ _____ 
| |  | |/ _ \ | ___ \ \ | |_   _| \ | |  __ \
| |  | / /_\ \| |_/ /  \| | | | |  \| | |  \/
| |/\| |  _  ||    /| . ` | | | | . ` | | __ 
\  /\  / | | || |\ \| |\  |_| |_| |\  | |_\ \
 \/  \/\_| |_/\_| \_\_| \_/\___/\_| \_/\____/

(Sorry about the cheesy 90s ASCII art.)

Everything in this folder that does not belong here will be deleted.
This folder will be kept sync with the Launcher at every run.
If you wish to modify assets/resources in any way, use Resource Packs.


Ta,
Dinnerbone of Mojang

Geschichte[Bearbeiten | Quelltext bearbeiten]