Vollversion | |||||||||
---|---|---|---|---|---|---|---|---|---|
1.13 |
|
||||||||
1.14 (18w43a) |
|
||||||||
1.14.1 (1.14.1-pre1) |
|
||||||||
1.17 (20w49a) |
|
||||||||
1.18.2 |
|
||||||||
1.19.4 (23w06a) |
|
||||||||
1.21 (24w19a) |
|
Gruppendefinition
Die Gruppendefinitionen (engl. tags) enthalten alternative ID-Namen, auch Alias genannt. Insbesondere lassen sich damit mehrere ID-Namen zu einer Gruppe zusammenfassen (z. B. alle bunten Wollen zu minecraft:wool), die dann als alternativer ID-Name in Rezeptdefinitionen und Befehlen verwendet werden kann. Natürlich ist es auch möglich, nur einen einzigen ID-Namen mit einer Gruppe zu versehen, z.B. "hwpp" statt "heavy_weighted_pressure_plate".
Arten[Bearbeiten | Quelltext bearbeiten]
- Block-Gruppen: Sie werden im Befehl
/execute
verwendet, um einen Block in der Welt zu prüfen. Beispiel: Der Befehl/execute if block ~ ~-1 ~ #minecraft:wool run say Wolle
schreibt "Wolle" in den Chat, wenn sich unter der Befehlsquelle ein Wollblock gleich welcher Farbe befindet. Die Gruppe, zu denen ein Block gehört, sieht man im Debug-Bildschirm, wenn man den Block fokussiert. Spezielle Block-Gruppen:- enderman_holdable.json: Diese Blöcke können von einem Enderman aufgenommen werden.
- impermeable.json: Diese Blöcke tropfen nicht, wenn Wasser darüber ist.
- logs.json: Diese Blöcke verhindern, dass natürlich generiertes Laub in der Nähe zerfällt.
- underwater_bonemeals.json: Diese Blöcke werden im Biom warmer Ozean unter Wasser durch Knochenmehl erzeugt.
- valid_spawn.json: Beim Generieren einer Standard-Welt setzt das Spiel den Welt-Spawnpunkt nur auf diese Blöcke.
- Gegenstand-Gruppen: Sie werden zum Entfernen von Gegenständen aus Spieler-Inventaren und in den Rezeptdefinitionen verwendet. Beispiel: Der Befehl
/clear @s #minecraft:wool
entfernt sämtliche Wolle aus dem Inventar des nächsten Spielers. In den Rezeptdefinitionen werden Gruppen mit der tag-Eigenschaft anstelle der item-Eigenschaft angesprochen. - Funktions-Gruppen: Sie fassen Befehls-Funktionen zusammen. Beispiel: Der Befehl
/function #eigener-namensraum:eigene-gruppe
führt nacheinander alle Funktionen aus, die in dieser Gruppe enthalten sind. Spezielle Funktions-Gruppen:- minecraft:tick.json: Diese Funktionen werden automatisch mit jedem Tick ausgeführt, d. h. 20 Mal pro Sekunde.
- minecraft:load.json: Diese Funktionen werden einmal ausgeführt:
- Objekt-Gruppen: Sie werden vom Spiel zu unterschiedlichen Zwecken verwendet, zum Beispiel:
- Festlegen von Kreaturen, die über Pulverschnee laufen können (
#minecraft:powder_snow_walkable_mobs
) - Festlegen von Geschossen, die beim Treffen den "Zielübungen"-Fortschritt auslösen (
#minecraft:arrows
) - Festlegen von Kreaturen, die an einem Überfall Teilnehmen können (
#minecraft:raiders
)
- Festlegen von Kreaturen, die über Pulverschnee laufen können (
- Konstruktions-Gruppen: Können im Befehl
/locate structure
verwendet werden. - Biom-Gruppen: Können im Befehl
/locate biome
verwendet werden. - Trank-Gruppen: Haben zurzeit noch keine Verwendung.
- Spielereignis-Gruppen: Werden zur Bewegungserkennung vom Sculk-Sensor verwendet.
- Schadensarten-Gruppen: Sie können mit dem Befehl
/damage
verwendet werden.
Datenquelle[Bearbeiten | Quelltext bearbeiten]

- client.jar: Die originalen Gruppendefinitionen stehen in der client.jar.
- data: Die Standard-Weltdaten.
- minecraft: Die Minecraft-Standard-Weltdaten.
- tags: Die Gruppendefinitionen.
- block: Gruppen für Blöcke.
- fluid: Gruppen für flüssige Blöcke.
- function: Das Originalspiel hat im
minecraft
-Namenraum keine Funktions-Gruppen. Möchte man jedoch die speziellen Funktions-Gruppen tick.json oder load.json nutzen, funktionieren diese nur im minecraft-Namensraum (siehe unten). - item: Gruppen für Gegenstände.
- potion: Gruppen für Tränke.
- entity_type: Gruppen für Objekte.
- worldgen: Alle Gruppen, die mit der Weltgenerierung zu tuen haben.
- biome: Gruppen für Biome.
- configured_structure_feature: Gruppen für Konstruktionen und Merkmale.
- tags: Die Gruppendefinitionen.
- minecraft: Die Minecraft-Standard-Weltdaten.
- data: Die Standard-Weltdaten.
Definition[Bearbeiten | Quelltext bearbeiten]

- <Name des Datenpakets>
- pack.mcmeta Die Definitionsdatei.
- data
- <namensraum>
- tags
- <namensraum>
Änderbarkeit[Bearbeiten | Quelltext bearbeiten]
Die Original-Gruppendaten gehören zu den Standard-Weltdaten und können mit Datenpaketen geändert werden. Der Befehl /datapack disable vanilla
deaktiviert die Standard-Weltdaten. Damit kann man keine Original-Gruppen mehr verwenden. Allerdings hat das auch weitere Auswirkungen (siehe hier).
Die Gruppen haben den Dateityp .json (JavaScript Object Notation), sind aber ganz normale Textdateien, die mit jedem Texteditor gelesen und verändert werden können.
Gruppendaten ändern[Bearbeiten | Quelltext bearbeiten]

Um Gruppendaten zu ändern, platziert man die entsprechende Datei mit dem richtigen Namen im richtigen Ordner. Das bedeutet, man muss nicht alle Gruppendaten kopieren, sondern nur die, die man verändert hat. Im Minimalfall ist das nur eine einzige Datei. Beispiel:
.minecraft/saves/Name des Weltordners/datapacks/Name des Datenpakets/data/minecraft/tags/item/planks.json
Nach dem nächsten Spielstart oder nach dem Befehl /reload
werden die geänderten Gruppendefinitionen angewendet. Im Beispiel ändern sich alle Rezepte, in denen das planks-Gruppe verwendet wird. Schreibt man in die Datei z. B. "minecraft:stone", können Betten je nach Einstellung (siehe unten) auch oder nur noch aus Wolle mit Stein hergestellt werden. (Beachte, dass für Rezepte die Gegenstand-Gruppen verwendet werden, nicht die Block-Gruppen).
Komplett neue Gruppendefinitionen hinzufügen[Bearbeiten | Quelltext bearbeiten]
Man kann auch beliebige eigene Gruppendefinitionen hinzufügen. Diese hinterlegt man idealerweise in einem eigenen Namensraum, um sie deutlich von den Minecraft-Gruppendaten zu unterscheiden.
.minecraft/saves/Name des Weltordners/datapacks/Name des Datenpakets/data/eigener-namensraum/tags/block/eigene-gruppe.json
.minecraft/saves/Name des Weltordners/datapacks/Name des Datenpakets/data/eigener-namensraum/tags/function/eigene-gruppe.json
Nach dem nächsten Spielstart oder nach dem Befehl /reload
können die geänderten Gruppen verwendet werden. Beispiele:
Befehl /execute at @p if block ~ ~-1 ~ #eigener-namensraum:eigene-gruppe run setblock ~ ~-1 ~ stone replace
Dieser Befehl prüft, ob sich unter dem nächsten Spieler ein Block aus der Gruppe befindet und wenn ja, ersetzt er ihn durch einen Stein.
Befehl /function #eigener-namensraum:eigene-gruppe
Dieser Befehl ruft nacheinander alle Funktionen auf, die in der Gruppe zusammengefasst sind.
tick.json und load.json[Bearbeiten | Quelltext bearbeiten]
Die speziellen Funktions-Gruppen minecraft:tick.json und minecraft:load.json funktionieren nur im minecraft-Namensraum.
Die Befehle in der hinterlegten Funktion werden vom Spawnbereich-Mittelpunkt (siehe Befehl /setworldspawn
) aus ausgeführt, wenn die Position nicht durch den Befehl /execute
geändert wird.
Beispiel für load.json: In der Funktion .minecraft/saves/Name des Weltordners/datapacks/Name des Datenpakets/data/eigener-namensraum/function/eigene-funktion.mcfunction
steht nur eine Zeile: setblock 0 70 0 stone
.
Die Funktions-Gruppe .minecraft/saves/Name des Weltordners/datapacks/Name des Datenpakets/data/minecraft/tags/function/load.json
sieht so aus:
{
"replace": false,
"values": [
"eigener-namensraum:eigene-funktion"
]
}
Bei jedem Betreten der Welt im Einzelspielermodus wird die Funktion einmal ausgelöst und setzt an die Position (0,70,0) einen Stein.
Funktionsweise[Bearbeiten | Quelltext bearbeiten]
In bestimmten Befehlen kann man statt eines ID-Namens für Block, Gegenstand oder Funktion eine Gruppe angeben. Gruppen werden mit einer vorangestellten Raute #
von normalen ID-Namen unterschieden. Das Spiel führt den Befehl dann für alle in Gruppen eingetragenen Blöcke, Gegenstände oder Funktionen aus.
Die Tab-Vorschau bei der Befehlseingabe zeigt die Eingabemöglichkeiten: Wenn die Eingabe von Gruppen möglich ist, werden sie in der Auflistung immer vor den anderen ID-Namen angezeigt.
Datenstruktur[Bearbeiten | Quelltext bearbeiten]
- Die namenlose Haupteigenschaft.
- replace: true oder false. Bei true ersetzt die Gruppe eine bisher geladene Gruppe gleichen Namens. Das bedeutet, dass bei der standardmäßigen Datenpaket-Ladereihenfolge "Vanilla + eigenes Datenpaket" eine replace-Gruppe die Vanilla-Gruppe gleichen Namens ersetzt. Bei umgekehrter Ladereihenfolge "eigenes Datenpaket + Vanilla" ersetzt eine replace-Gruppe dagegen nichts, weil es in diesem Beispiel vor dem eigenen Datenpaket kein weiteres Datenpaket gibt; danach wird die Vanilla-Gruppe die eigene Gruppe gleichen Namens hinzugefügt, weil alle Vanilla-Gruppen die replace-Einstellung false haben.
- values: Liste von ID-Namen von entweder Blöcken, Gegenständen, Objekten oder Funktionen. Die Liste darf nicht gemischt sein, ihr Inhalt muss zum Gruppentyp passen, der durch den Gruppen-Ordner festgelegt ist. In jeder Liste ist auch die Angabe von Gruppendaten möglich. Sie werden mit einem vorangestellten
#
gekennzeichnet, z. B.#minecraft:planks
. Eine Gruppe, die direkt oder über Umwege sich selbst enthält, ist jedoch nicht möglich.
Beispiele[Bearbeiten | Quelltext bearbeiten]
Eigenschaft | Beispiel |
---|---|
tags/block
|
{
"replace": false,
"values": [
"minecraft:acacia_planks",
"minecraft:oak_planks",
"minecraft:dark_oak_planks",
"minecraft:jungle_planks",
"minecraft:birch_planks",
"minecraft:spruce_planks"
]
}
|
Standard-Vorlagen[Bearbeiten | Quelltext bearbeiten]

Geschichte[Bearbeiten | Quelltext bearbeiten]
[Einklappen] Versionen der Java Edition |
---|
[Einklappen] | |||||
---|---|---|---|---|---|
Ressourcen |
| ||||
Weltdaten | |||||
Spielwelt | |||||
Software | |||||
Speicherformate | |||||
Server | |||||
Historisch |