Der NBT-Datenspeicher bietet für Befehle eine effiziente Möglichkeit, NBT-Daten für die spätere Verwendung zwischenzuspeichern.
Funktionsweise[]
Der NBT-Datenspeicher ist in einzelne Wertspeicher gegliedert, die unabhängig voneinander sind und jeweils durch einen eigenen ID-Namen angesprochen werden können. Es können beliebige ID-Namen als Bezeichnung für einen Wertspeicher verwendet werden.
Wird beim Speichern von Daten ein ID-Name eines noch nicht vorhandenen Wertspeichers angegeben, so wird ein Wertspeicher mit diesem ID-Namen angelegt und die Daten werden dort gespeichert.
Wird beim Lesen von Daten ein ID-Name eines noch nicht vorhandenen Wertspeichers angegeben, so wird als Inhalt {}
geliefert (Befehl /data get storage nicht_da
). Ist dabei ein Pfad innerhalb des Wertspeichers angegeben, so gibt dies einen Fehler, da der Pfad nicht existiert.
Der ID-Name des Wertspeichers erlaubt die Verwendung von Namensräumen. Wird kein Namensraum explizit angegeben, so wird der Namensraum minecraft
verwendet. Insbesondere in Datenpaketen ist die Verwendung eines eigenen Namensraums zu empfehlen, damit die Daten nicht durch andere Datenpakete überschrieben werden.
Der Inhalt des NBT-Datenspeichers wird mit der Minecraft-Welt gespeichert und bleibt so auch beim Verlassen des Spiels gespeichert.
Verwendung in Befehlen[]
In die Befehlen /data und /execute store
sowie /execute if data
erlauben den Zugriff auf den NBT-Datenspeicher durch Angabe von storage <wertspeicher>
, wobei <wertspeicher> der ID-Name des zu verwendenden Wertspeichers ist.
Wie bei Objekt- oder Blockdaten folgt auf die Angabe dieses Wertspeichers ein NBT-Pfad, um auf einzelne Untereinträge der NBT-Daten zuzugreifen.
Der Befehl /data
ermöglicht das Kopieren beliebiger NBT-Datenstrukturen zwischen dem NBT-Datenspeicher und Objekten und Blöcken sowie das Zusammenfügen (merge
) von Daten.
Der Befehl /execute store
dagegen kann nur Zahlenwerte in den NBT-Datenspeicher schreiben.
Durch den Befehl /execute store ... run data get storage <wertspeicher> <pfad>
können Zahlenwerte aus dem NBT-Datenspeicher auch in die Anzeigetafel oder in Bossleisten übertragen werden.
Während Marker es ebenfalls erlauben, beliebige NBT-Daten zu speichern (siehe Marker#Nutzung als Datenspeicher), ist die Speicherung im NBT-Datenspeicher generell effizienter.
Datenquelle[]
- .minecraft: Der im Launcher-Profil eingestellte Spielordner (Standard: .minecraft).
- saves: Speicherordner für alle Minecraft-Welten
- Name des Weltordners: Der Weltordner enthält alle Daten einer Welt.
- data: Ordner mit verschiedene Dateien mit Daten dieser Welt
- Name des Weltordners: Der Weltordner enthält alle Daten einer Welt.
- saves: Speicherordner für alle Minecraft-Welten
Datenstruktur[]
- command_storage_<namensraum>.dat: Diese Datei enthält die durch Befehle gespeicherten NBT-Daten im Namensraum <namensraum>.
- die namenslose Haupteigenschaft
- DataVersion: die Datenversion, in der die Datei zuletzt gespeichert wurde
- data
- contents: enthält einen Eintrag für jeden Wertspeicher in diesem Namensraum
- <name>: die im Wertspeicher
<namensraum>:<name>
gespeicherten NBT-Daten- Daten, die durch die Befehle gespeichert wurden
- <name>: die im Wertspeicher
- contents: enthält einen Eintrag für jeden Wertspeicher in diesem Namensraum
- die namenslose Haupteigenschaft
Geschichte[]
Versionsgeschichte der Java Edition | ||||||
---|---|---|---|---|---|---|
|
Standard-Ressourcen |
| ||||
---|---|---|---|---|---|
Standard-Weltdaten |
| ||||
Spielwelt | |||||
Software | |||||
Speicherformate | |||||
Einstellungen | |||||
Mehrspieler | |||||
Historisch |