Tutorials/command nbt tags
Содержание:
- Beispiel[]
- To Be Removed[edit | edit source]
- Official software[]
- Интересные факты
- Other NBT Tags
- List of NBT Tags
- Tag Payloads[edit | edit source]
- Examples[]
- Достижения
- Examples[]
- Tag Payloads
- To Be Removed
- Определение тега[]
- Array-Sortierung[]
- Arguments[]
- Node[]
- Огненный шар гаста
- Result[]
- Official software[]
- List of NBT Tags
Beispiel[]
Hier wird kurz anhand eines Beispiels gezeigt, wie man die NBT-Daten aus den Wiki-Artikeln, die alle Informationen zu den Daten besitzen, ausliest und überträgt:
Das Ziel ist es, einen gezähmten und gesattelten Esel, der eine Truhe trägt, mit dem Befehl zu erschaffen. In der Truhe soll sich ein Stein befinden. Zuerst muss unter Kreaturdaten der Esel gefunden werden, dann sucht man sich alle NBT-Daten, die man für die Ziel-Vorgaben benötigt:
-
Esel hat die Objekt-ID «donkey»
- ChestedHorse: true oder false — true wenn die Kreatur Truhen trägt.
-
Items: Nur für Esel, Maultiere und Lamas und nur wenn ChestedHorse true ist: Liste der Gegenstandsdaten, die die Kreatur trägt mit Slot
Ein Gegenstand in der Satteltasche der Kreatur.
. Die Slots haben die Nummern 2 bis 16.
- SaddleItem: Optional und nur für Pferde, Esel und Maultiere. Die Gegenstandsdaten des Sattels, den die Kreatur trägt, ohne Slot.
- Tame: true oder false — true wenn die Kreatur gezähmt ist.
Die Objekt-ID des Esels lautet «donkey», diese wird für den Befehl verwendet. Jetzt werden die NBT-Daten in Form von SNBT eingetragen: Alle Daten, die auf gleicher Ebene liegen, können jetzt direkt als Angaben eingebunden werden. Stehen Angaben in zweiter Ebene, wie bei «Items:», muss herausgefunden werden, welche Klammer hier verwendet wird. Bei «compound» sind das geschwungene Klammern , bei «list» eckige . Dort trägt man dann alle Werte ein.
/summon minecraft:donkey ~ ~ ~ { ChestedHorse:true, Items: , SaddleItem:{ id:"minecraft:saddle", Count:1b }, Tame:true }
Eine ausführliche Anleitung zur Verwendung von NBT-Daten in Befehlen steht im Artikel .Weitere Beispiele mit NBT-Daten siehe: Anleitungen/Befehle mit NBT |
To Be Removed[edit | edit source]
The rest of this page is likely to be removed.
Blocks («» or «»)edit | edit source
Containersedit | edit source
Items: []The ID and other info of an item.
|_ id: {}The ID of the item.
|_ Slot: {}The slot number. Note that this starts at 0, not 1.
|_ tag: {}Other info of the item.
Items ()edit | edit source
All Itemsedit | edit source
Enchantments: Enchantments on the item.
|_ An enchantement. (List)
|_ id: The name of the enchantment. Cannot be a number.
|_ lvl: The level of the enchant. Range is -32768 to 32767.
display: Display properties.
|_ Name: The Custom Name of the item. Range of characters that can be used seems to be infinite.
|_ Name: ["{\"text\":\"enter custom name here\"}"]
|_ color: The Custom Color of Leather Armor.
|_ Lore: The description of an item. Separate lines of text with a comma after the bracket, prior to the last quotation mark
|_ Lore: ["{\"text\":\"a line of text\"}"]
Potionsedit | edit source
CustomPotionEffects: Custom effects that a potion will have.
|_ A potion effect.
|_ Id: The ID of the effect.
|_ Duration: The duration of the potion effect.
|_ Amplifier: The potency (+1) of the effect. Kept at 0 to keep a level 1 effect.
|_ Ambient: (0/1) 0 is false, 1 is true. True if the effect is provided by a beacon and thus should be less intrusive on screen.
Written Bookedit | edit source
author: The author of the book.
title: The title of the book.
pages: The pages in the book.
|_ A page. Separate pages with a comma.
Toolsedit | edit source
Unbreakable: (0b/1b) 0b is false, 1b is true. If value is 1b, the tool will never lose durability.
CanDestroy: What blocks this tool can destroy when in adventure mode.
|_ A block ID.
CanPlaceOn: What blocks can be placed on in adventure mode.
|_ A block ID.
Title and Tellrawedit | edit source
: (PlayerName) {text:»PutTextHere»,color:»PutColorHere»},(Optional){text:»MoreTextHere»,color»PutColorHere»} (Add [] to enclose if doing multiple text tags)
Official software[]
See also: Tutorials/Running the Data Generator
Mojang has provided sample Java NBT classes for developers to use and reference as part of the source code for the MCRegion to Anvil file format converter. Since Java Edition 1.13, Minecraft includes a built-in converter between the SNBT format and compressed NBT format, which comes with both the client and official server.
The data generator from Minecraft is able to convert uncompressed Stringified NBT files with .snbt extension in an input folder to GZip compressed NBT format files with .nbt extension in an output folder, and vice versa.
The vanilla data generator can convert any GZip compressed NBT format to SNBT format. The file extension of a file can simply be changed, such as level.dat to level.nbt and put in the input folder, and the generator then decodes the GZip compressed NBT data.
Интересные факты
- Ифриты могут видеть игрока сквозь стены.
- Если на ифрита наложить эффект Невидимости, то останутся видны только частицы дыма.
- По словам Jeb, ифриты выглядят таким образом, потому что все мобы в Minecraft имеют кубическую форму, а он хотел добавить что-то похожее на пламя и магическое, а потому они выглядят как ядро, вокруг которого вращаются стержни.
- Изначально у ифритов не было глаз и они выглядели «как жёлтый камень». Jeb добавил ему глаза для большей индивидуальности.
- Несмотря на отсутствие ног, у ифритов всё равно присутствуют звуки шагов.
- Ифрит, попавший в паутину, не может стрелять.
- Ифриты появляются не только из спаунеров, но и по всей адской крепости.
- Начиная с версии 1.11, ифрит в игре стал называться «всполохом».
Other NBT Tags
Here are some of the other NBT tags (formerly called data tags) in Minecraft:
NBT Tags
NBT Tags for Player
NBT Tags for Armor Stand
NBT Tags for Bat
NBT Tags for Bee
NBT Tags for Blaze
NBT Tags for Boat
NBT Tags for Cat
NBT Tags for Cave Spider
NBT Tags for Chicken
NBT Tags for Cod
NBT Tags for Cow
NBT Tags for Creeper
NBT Tags for Dolphin
NBT Tags for Donkey
NBT Tags for Drowned
NBT Tags for Elder Guardian
NBT Tags for Ender Crystal
NBT Tags for Ender Dragon
NBT Tags for Enderman
NBT Tags for Endermite
NBT Tags for Evoker
NBT Tags for Fireball
NBT Tags for Firework Rocket
NBT Tags for Fox
NBT Tags for Ghast
NBT Tags for Giant
NBT Tags for Guardian
NBT Tags for Hoglin
NBT Tags for Horse
NBT Tags for Husk
NBT Tags for Illusioner
NBT Tags for Iron Golem
NBT Tags for Llama
NBT Tags for Magma Cube
NBT Tags for Mooshroom
NBT Tags for Mule
NBT Tags for Ocelot
NBT Tags for Panda
NBT Tags for Parrot
NBT Tags for Phantom
NBT Tags for Pig
NBT Tags for Piglin
NBT Tags for Pillager
NBT Tags for Polar Bear
NBT Tags for Pufferfish
NBT Tags for Rabbit
NBT Tags for Ravager
NBT Tags for Salmon
NBT Tags for Sheep
NBT Tags for Shulker
NBT Tags for Shulker Bullet
NBT Tags for Silverfish
NBT Tags for Skeleton
NBT Tags for Skeleton Horse
NBT Tags for Slime
NBT Tags for Snow Man
NBT Tags for Spider
NBT Tags for Squid
NBT Tags for Stray
NBT Tags for Strider
NBT Tags for Trader Llama
NBT Tags for Tropical Fish
NBT Tags for Turtle
NBT Tags for Vex
NBT Tags for Villager
NBT Tags for Vindicator
NBT Tags for Wandering Trader
NBT Tags for Witch
NBT Tags for Wither Boss
NBT Tags for Wither Skeleton
NBT Tags for Wolf
NBT Tags for Zoglin
NBT Tags for Zombie Horse
NBT Tags for Zombie Villager
NBT Tags for Zombified Piglin
List of NBT Tags
Here is a list of the NBT tags that you can use for in Minecraft Java Edition (PC/Mac) 1.16:
NBT Tag | Value (Description) | Works With |
---|---|---|
Owner |
name (The player that owns the wolf. When you set this tag, the Owner tag will automatically be populated with the appropriate UUID value for the player.) Example |
/summon/data |
CollarColor |
0 (The collar is white) 8 (The collar is light gray) Example |
/summon/data |
Sitting |
0 (The wolf is standing) Example |
/summon/data |
InLove |
ticks (The number of game ticks that the wolf is in love mode and will try to breed with another wolf) Example |
/summon/data |
Age |
ticks (The age of the wolf in game ticks. Use 0 or higher for an adult. Use a negative number such as -25000 for a baby.) Example |
/summon/data |
ForcedAge |
ticks (When a baby wolf matures, the Age data tag will be set to ForcedAged. However, there have been bugs with this data tag so it may not work properly.) Example |
/summon/data |
Leash |
Indicates the coordinates of the fence that the wolf is leashed to. Example |
/summon/data |
CustomName |
name (The name to assign to the wolf) Example |
/summon/data |
Health |
number (The number of health points the wolf has) Example |
/summon/data |
AbsorptionAmount |
number (The number of absorption health points the wolf has) Example |
/summon/data |
Invulnerable |
0 (The wolf will take damage like normal) Example |
/summon/data |
PersistenceRequired |
0 (The wolf will despawn naturally) Example |
/summon/data |
NoAI |
0 (The wolf will have artificial intelligence and will move/behave like normal) Example |
/summon/data |
Silent |
0 (The wolf will make its usual noises in the game) Example |
/summon/data |
Fire |
ticks (The number of game ticks until the wolf is no longer on fire — there are 20 ticks in a second) Example |
/summon/data |
PortalCooldown |
ticks (The number of game ticks until the wolf can go through a portal again — there are 20 ticks in a second) Example |
/summon/data |
Air |
ticks (The number of game ticks the wolf has air left for) Example |
/summon/data |
id |
wolf (The entity value used to represent a wolf in the EntityTag or Passengers tag) Example |
/summon/give |
Passengers |
The mob that is riding on the wolf. Use the entity value for the passenger mob Example of skeleton as passenger |
/summon/data |
NBT Tag Examples
To summon a wolf that is tamed, owned by DigMinecraft and has a blue collar:
/summon wolf ~ ~ ~ {Owner:DigMinecraft, CollarColor:11}
To summon a baby wolf named Buddy:
/summon wolf ~ ~ ~ {CustomName:"\"Buddy\"", Age:-25000}
Tag Payloads[edit | edit source]
The payload is the data a Tag carries. It might be a number or, in the case of Compound Tags and List Tags, other Tags. In using commands, one simply needs to avoid mismatching expected data types, keep values within expected ranges, and close all brackets and braces that are opened.
For a deeper understanding of payloads, it might help to look at what an example Compound Tag would look like in data.
ON DISK: 00001010 00000000 00000011 01101000 01100001 01101101 00001000 00000000 00000111 01110000 01101001 01100111 01001110 01100001 01101101 01100101 00000000 00000110 01001000 01100001 01101101 01110000 01110101 01110011 00000011 00000000 00000101 01110110 01100001 01101100 01110101 01100101 00000000 00000000 00000000 01111000 00000000 DEC: 10 0 3 h a m 8 0 7 p i g N a m e 0 6 H a m p u s 3 0 5 v a l u e 0 0 0 120 0 __ ___ _____ _ ___ _____________ ___ ___________ _ ___ _________ _________ _ BYTES: 10 0 3 h a m 8 0 7 p i g N a m e 0 6 H a m p u s 3 0 5 v a l u e 0 0 0 120 0 |8: TAG_String | payload |3: TAG_Int | payload | TAG_End | 10:TAG_Compound| payload |
This is understood in the following way. Recall that all named tags have a (1 byte), a (Unnamed TAG_String), and a payload.
- The first byte of data read is the . Above is , so this represents a TAG_Compound. The next two bytes read are the length of its name. (Two bytes because it expects a short — see above.) The given length is . Those next 3 bytes read . So far it’s been revealed that the first Tag is a Compound Tag named «ham». Its payload is everything that follows, until TAG_End.
- The next byte is , so this is a TAG_String. The upcoming unnamed TAG_String tells us it has the 7-byte name of «pigName». Its payload follows.
- The next byte is , so next is a TAG_Int. It has the 5-byte name of «value». Its payload follows in the next 4 bytes: . The next completed Tag is
- The next byte is , so next is a TAG_End.
The completed Compound Tag is as follows:
TAG_Compound("ham"): TAG_String("pigname"): 6 Hampus, TAG_Int("value"): 120, TAG_End
Using a command to summon a pig with this example tag would look like this:
/summon minecraft:pig ~ ~ ~ {ham:{pigname:"Hampus",value:120}}
Examples[]
- To get the saturation level of the current player:
- To make the nearest item within 10 blocks unable to be picked up by players:
- To get the Y-position of a random item:
- To get the item ID of the item in the first hotbar slot of the nearest player:
- To set the armor attribute of the dolphin closest to coordinates (0, 64, 0) to 20:
- To change the first item in a chest located at coordinates (1, 64, 1) into a diamond block, keeping all NBT data:
- To make the nearest zombie have a 80% chance to drop items in its left hand when it dies, and never drop that in the main hand:
- To make the nearest zombie have a 80% chance to drop items in its left hand when it dies, and never drop that in its main hand, without affecting the chance for main hand:
Достижения
Основная статья: Система достижений
Значок | Достижение | Описание | Задача | Доступность | Очков Xbox | Тип трофея (PS) | |||
---|---|---|---|---|---|---|---|---|---|
Xbox | PS | Bedrock | Nintendo | ||||||
Вернуть отправителю (Return to Sender) | Убейте гаста его же огненным шаром. | Да | PS3 | Да | Да | 30G | Золотой | ||
PS4, Vita | Серебряный |
Основная статья: Система достижений (Java Edition)
Значок | Достижение | Описание | Предок | Задача (если отличается) | Идентификатор |
---|---|---|---|---|---|
Вернуть отправителю | Убейте гаста его же огненным шаром. | Нижний мир | — | ||
Война миров | Заманите гаста в обычный мир… а затем убейте его. | Вернуть отправителю | Убейте гаста в обычном мире. | ||
Приключения | Приключения, исследования, воровство и сражения | — | Убейте сущность или умрите от неё. | ||
Охотник на монстров | Убейте злобного монстра | Приключения | Убейте одного из этих 33 монстров. | ||
Точно в цель | Выстрелите в кого-нибудь из лука | Охотник на монстров | — | ||
Зверобой | Убейте по одному монстру каждого вида | Охотник на монстров | Убейте каждого из этих 34 монстров. |
Examples[]
Mixed path
- —Specifies the root tag
- —Specifies the root tag if the «foo» subtag is set to
- —Specifies the tag named «foo» under the root tag
- or —Specifies foo’s subtag named «bar».
- —Specifies the first element of the list (or array) «bar»
- —Specifies the last element of the list (or array) «bar»
- —Specifies the subtag named «A !» under that first element
- —Specifies the subtag named «baz» under that crazily named tag
- —Specifies all elements of the list (or array) «bar»
- —Specifies the subtags named «baz» under all elements of the list «bar»
- —Specifies all elements of the list «bar», in which the «baz» tag is set to
- —Specifies the «foo» tag if its subtag «bar» has the value
- —Specifies the «bar» tag if it matches the value
Example 1
These names have been arbitrarily picked, for demonstrative purposes.
- —Specifies the subtag named «foo» under the root tag.
- —Specifies foo’s child named «bar».
- —Specifies the first element of the list «bar»
- —Specifies the child named «A !» under that first element
- —Specifies the child named «baz» under that crazily named element
The tree structure
-
The root entity data
-
foo: The «foo» element
-
bar: The «bar» element
-
The first element of list «bar»
-
A !
baz: The «baz» element; the target element of this example.
: The «A !» element
-
A !
- Another unrelated element in list «bar»
-
The first element of list «bar»
-
bar: The «bar» element
-
foo: The «foo» element
Example 2
A player has written a book and placed it inside a chest at their feet, and are going to work up to the above command in stages. Observe the following imaginary chat log:
Tag Payloads
The payload is the data a Tag carries. It might be a number or, in the case of Compound Tags and List Tags, other Tags. In using commands, one simply needs to avoid mismatching expected data types, keep values within expected ranges, and close all brackets and braces that are opened.
For a deeper understanding of payloads, it might help to look at what an example Compound Tag would look like in data.
ON DISK: 00001010 00000000 00000011 01101000 01100001 01101101 00001000 00000000 00000111 01110000 01101001 01100111 01001110 01100001 01101101 01100101 00000000 00000110 01001000 01100001 01101101 01110000 01110101 01110011 00000011 00000000 00000101 01110110 01100001 01101100 01110101 01100101 00000000 00000000 00000000 01111000 00000000 DEC: 10 0 3 h a m 8 0 7 p i g N a m e 0 6 H a m p u s 3 0 5 v a l u e 0 0 0 120 0 __ ___ _____ _ ___ _____________ ___ ___________ _ ___ _________ _________ _ BYTES: 10 0 3 h a m 8 0 7 p i g N a m e 0 6 H a m p u s 3 0 5 v a l u e 0 0 0 120 0 |8: TAG_String | payload |3: TAG_Int | payload | TAG_End | 10:TAG_Compound| payload |
This is understood in the following way. Recall that all named tags have a (1 byte), a (Unnamed TAG_String), and a payload.
- The first byte of data read is the . Above is , so this represents a TAG_Compound. The next two bytes read are the length of its name. (Two bytes because it expects a short — see above.) The given length is . Those next 3 bytes read . So far it’s been revealed that the first Tag is a Compound Tag named «ham». Its payload is everything that follows, until TAG_End.
- The next byte is , so this is a TAG_String. The upcoming unnamed TAG_String tells us it has the 7-byte name of «pigName». Its payload follows.
- The next byte is , so next is a TAG_Int. It has the 5-byte name of «value». Its payload follows in the next 4 bytes: . The next completed Tag is
- The next byte is , so next is a TAG_End.
The completed Compound Tag is as follows:
TAG_Compound("ham"): TAG_String("pigname"): 6 Hampus, TAG_Int("value"): 120, TAG_End
Using a command to summon a pig with this example tag would look like this:
/summon minecraft:pig ~ ~ ~ {ham:{pigname:"Hampus",value:120}}
To Be Removed
The rest of this page is likely to be removed.
Blocks («» or «»)
Containers
Items: []The ID and other info of an item.
|_ id: {}The ID of the item.
|_ Slot: {}The slot number. Note that this starts at 0, not 1.
|_ tag: {}Other info of the item.
Items ()
All Items
Enchantments: Enchantments on the item.
|_ An enchantement. (List)
|_ id: The name of the enchantment. Cannot be a number.
|_ lvl: The level of the enchant. Range is -32768 to 32767.
display: Display properties.
|_ Name: The Custom Name of the item. Range of characters that can be used seems to be infinite.
|_ Name: ["{\"text\":\"enter custom name here\"}"]
|_ color: The Custom Color of Leather Armor.
|_ Lore: The description of an item. Separate lines of text with a comma after the bracket, prior to the last quotation mark
|_ Lore: ["{\"text\":\"a line of text\"}"]
Potions
CustomPotionEffects: Custom effects that a potion will have.
|_ A potion effect.
|_ Id: The ID of the effect.
|_ Duration: The duration of the potion effect.
|_ Amplifier: The potency (+1) of the effect. Kept at 0 to keep a level 1 effect.
|_ Ambient: (0/1) 0 is false, 1 is true. True if the effect is provided by a beacon and thus should be less intrusive on screen.
Written Book
author: The author of the book.
title: The title of the book.
pages: The pages in the book.
|_ A page. Separate pages with a comma.
Tools
Unbreakable: (0b/1b) 0b is false, 1b is true. If value is 1b, the tool will never lose durability.
CanDestroy: What blocks this tool can destroy when in adventure mode.
|_ A block ID.
CanPlaceOn: What blocks can be placed on in adventure mode.
|_ A block ID.
Title and Tellraw
: (PlayerName) {text:»PutTextHere»,color:»PutColorHere»},(Optional){text:»MoreTextHere»,color»PutColorHere»} (Add [] to enclose if doing multiple text tags)
Определение тега[]
Тег — отдельный элемент дерева данных. Первый байт в теге — это тип тега (также называемый идентификатором или ID), затем 2 байта хранят длину названия, затем название в виде строки в формате UTF-8 (следует отметить, что TAG_End не имеет названия и не включает дополнительные 2 байта; предполагается, что название пустое). Названия тегов могут содержать пробелы, хотя сам Minecraft не имеет таких тегов. Наконец, следующие байты — содержимое тега, зависящее от типа тега. Таблица ниже описывает 12 известных тегов в версии NBT 19133:
ID | Иконка | Тип тега | Содержимое | Описание | Ёмкость |
---|---|---|---|---|---|
TAG_End | Нет. | Используется для обозначения конца составных тегов. У этого тега нет названия, поэтому он всегда представлен одним байтом, равным 0. Также этот тип используется в пустых тегах списков. | — | ||
1 | TAG_Byte | 1 байт / 8 битов, со знаком | Целочисленный тип со знаком. Иногда используется для логических переменных. | Весь промежуток от -(27) до (27 — 1)(от -128 до 127) | |
2 | TAG_Short | 2 байта / 16 битов, со знаком, обратный порядок байтов | Целочисленный тип со знаком. | Весь промежуток от -(215) до (215 — 1)(от -32 768 до 32 767) | |
3 | TAG_Int | 4 байта / 32 бита, со знаком, обратный порядок байтов | Целочисленный тип со знаком. | Весь промежуток от -(231) до (231 — 1)(от -2 147 483 648 до 2 147 483 647) | |
4 | TAG_Long | 8 байт / 64 бита, со знаком, обратный порядок байтов. | Целочисленный тип со знаком. | Весь промежуток от -(263) до (263 — 1)(от -9 223 372 036 854 775 808 до 9 223 372 036 854 775 807) | |
5 | TAG_Float | 4 байта / 32 бита, со знаком, обратный порядок байтов, IEEE 754-2008, binary32 | Тип чисел с плавающей точкой со знаком. | Точность меняется на протяжении числовой прямой;см. . | |
6 | TAG_Double | 8 байт / 64 бита, со знаком, обратный порядок байтов, IEEE 754-2008, binary64 | Тип чисел с плавающей точкой со знаком. | Точность меняется на протяжении числовой прямой;см. . | |
7 | TAG_Byte_Array | Один TAG_Int, обозначающий размер, затем размер тегов TAG_Byte. | Массив байтовых переменных. | Максимальное число элементов изменяется от (231 — 9) до (231 — 1) (от 2 147 483 639 до 2 147 483 647) и зависит от текущей JVM. | |
8 | TAG_String | Один TAG_Short, обозначающий длину, затем строка в формате UTF-8 с размером длина. | Строка в формате UTF-8. Она имеет размер, а не завершается нулём. | 32 767 точек кода UTF-8 (см. ; наиболее распространённые символы состоят из одной точки кода. | |
9 | TAG_List | Один TAG_Byte, обозначающий тип, затем TAG_Int, обозначающий размер, затем размер тегов типа тип. | Последовательный список тегов без ID и без названий. | В связи с ограничениями JVM и реализацией ArrayList, максимальный размер списка — (231 — 9) или 2 147 483 639. Также следует отметить, что максимальная глубина размещения списков и составных тегов равна 512. | |
10 | TAG_Compound | Полные теги, затем один тег TAG_End. | Список полных тегов, включающий их типы, названия и содержимые. Все теги должны иметь различные имена. | В отличие от списков, ограничения на количество тегов в составном теге нет (хотя имеется неявное ограничение в виде размера виртуальной памяти). Также следует отметить, что максимальная глубина размещения списков и составных тегов равна 512. | |
11 | TAG_Int_Array | Один TAG_Int, обозначающий размер, затем размер тегов TAG_Int. | Массив тегов TAG_Int. | Максимальное число элементов изменяется от (231 — 9) до (231 — 1) (от 2 147 483 639 до 2 147 483 647) и зависит от текущей JVM. | |
12 | TAG_Long_Array | Одно значение TAG_Int (без заголовка), обозначающий размер, затем набор тегов TAG_Long. | Массив тегов TAG_Long. | Максимальное число элементов изменяется от (231 — 9) до (231 — 1) (от 2 147 483 639 до 2 147 483 647) и зависит от текущей JVM. |
Списки и составные теги могут быть вложены. Следует отметить, что в списке списков подсписки могут иметь разные типы элементов.
Array-Sortierung[]
Oft enthält ein Array die Werte einer Fläche oder eines Raumes der Minecraft-Welt. Die Angabe zur Sortierung der Array-Daten ist entscheidend, um die korrekte Position eines Blockes im Array zu finden. Bei Flächen ist die Sortierung meistens XZ. Das bedeutet, dass erst alle X-Werte für Z=0 aufgeführt sind, gefolgt von allen X-Werten für Z=1 etc. Beispiel: die Position X=4 / Z=7 befindet sich in einem 16×16-XZ-Array an Position 7×16+4 = 116.
Die seltenere ZX-Sortierung bedeutet, dass erst alle Z-Werte für X=0 aufgeführt sind, gefolgt von allen Z-Werten für X=1 etc. Beispiel: die Position X=4 / Z=7 befindet sich in einem 16×16-ZX-Array an Position 4×16+7 = 71.
Chunk-Sektionen werden in einem Array in XZY-Sortierung abgelegt. Das bedeutet, dass erst alle XZ-Flächen für Y=0 aufgeführt sind, gefolgt von allen XZ-Flächen für Y=1 etc. Beispiel: die Position X=4 / Y=5 / Z=7 befindet sich in einem 16×16×16-XZY-Array an Position 5×256+7×16+4 = 1396.
Arguments[]
- The position of the target block entity whose NBT is to be operated on.
- It must be a composed of <x>, <y> and <z>, each of which must be an integer or a .
: (in mode)
- Specifies an entity whose NBT is to be operated on.
- Must be a player name, a target selector or a UUID. And the target selector must be of single type.
: (in mode)
- Specifies a storage to be operated on.
- Must be a resource location.
- Specifies the NBT to retrieve or remove.
- Must be an NBT path.
- Scalar for the command’s return value.
- Must be a Double-precision floating-point format number.
- Specifies a compound tag to be merged into somewhere.
- Must be a compound NBT in SNBT format.
- Specifies target NBT to modify.
- Must be an NBT path.
- Specifies an item’s index within a list.
- Must be a 32-bit integer number.
- The position of the target block entity whose NBT is to be used.
- It must be a composed of <x>, <y> and <z>, each of which must be an integer or a .
: (in mode)
- Speciafies an entity whose NBT is to be used by .
- Must be a player name, a target selector or a UUID. And the target selector must be of single type.
: (in mode)
- Specifies a storage to be used by .
- Must be a resource location.
- Specifies the source NBT to be used by .
- Must be an NBT path.
- Value used in modifying the target NBT. Should match its data type.
- Must be an NBT tag of any type in SNBT format.
Node[]
These are all seven types of nodes available.
The tags collection start with only one element (i.e. the root tag) and changes along the nodes on the path. NBT path consumers operate on the final collection of the tags.
Name | Format | Description | Selection Result | Example | Example Description |
---|---|---|---|---|---|
Root Compound Tag | , where tag is the compound NBT content and can be empty. | Selects the starting tag only if it matches the compound tag given (if given).Only applicable as the first element in the path. | The starting tag, or nothing if matching fails. | Selects the root tag if it has a subtag Invisible with value . | |
Selects the root tag. | |||||
Named Tag | , where name can be a plain or an escaped string | Selects the subtags named name in the previous tags. | A collection of tags; no more elements than the previous tag collection. May be nothing. | Selects the VillagerData subtag. | |
Selects the A cool name[] subtag. | |||||
Named Compound Tag | , where name can be a plain or an escaped string, and tag is the compound NBT content which can be empty. | Selects the sub compound tags matching the compound tag given (if given) and named name in the previous tags. | A collection of compound tags; no more elements than the previous tag collection. May be nothing. | Select the VillagerData tag only if it has a subtag profession with value . | |
Selects the VillagerData tag if it is a compound tag. | |||||
Element of Named List or Array Tag | , where name can be a plain or an escaped string and index is an integer. | Selects elements at index (or if index is negative) of the lists (or array) named name in the previous tags. | A collection of tags; no more elements than the previous tag collection. May be nothing. | Selects the first child tag in the «Pos» sublist (or array). | |
Selects the last child tag in the «Inventory» sublist (or array). | |||||
All Elements of Named List or Array Tag | Selects all elements of the sub-lists (or array) named name in the previous tags. | A collection of tags; may have more elements than the previous tag collection. May be nothing. | Select all the elements in the «ActiveEffects» subtag of the last tag. | ||
Compound Elements of Named List Tag | , where name can be a plain or an escaped string and tag is the compound NBT content which can be empty. | Selects the compound elements matching the compound tag given (if given) and in the lists named name in the previous tags. | A collection of compound tags; may have more elements than the previous tag collection. May be nothing. | Select the elements of Inventory tag that has a subtag Count with value . | |
Selects the elements of Foo tag. | |||||
Elements of Sub-List (or Array) of Named List Tag | , where name can be a plain or an escaped string, index is an integer, and tag is the compound NBT content which can be empty. | Selects the child elements of the child elements in the lists named name in the previous tags. | A collection of tags; may have more elements than the previous tag collection. May be nothing. | Select the elements of the sub-lists in foo tag. | |
Select the baz tag in the first element of the first element of the bar list in the foo tag. |
In the path, (dot/period) characters separate the nodes. The nodes can be mixed and matched, except the root node with object must be the first in the path when it is present.
Огненный шар гаста
Огненный шар гаста
Внутренний ID |
JE: 12BE: 85 |
---|---|
ID сетевой игры | JE: 63 |
ID сохранения | fireball |
Огненный шар гаста имеет прямую траекторию, не поддающуюся гравитации, теоретически обладает бесконечным диапазоном, хотя он исчезает через 1 минуту после запуска. Огненный шар не преследует игрока после выстрела, он медлителен и может быть отражён, если игрок ударит его каким-либо снарядом, поплавком или атакой ближнего боя. На близкой дистанции это одна из самых мощных атак мобов в Minecraft, четвёртая после взрыва крипера, атаки железного голема и взрыва иссушителя. Прямое попадание наносит 6 () единиц урона от удара и до 9 (), 17 ( × 8.5) или 25 ( × 12.5) единиц урон от взрыва, в зависимости от сложности игры. Когда два огненных шара сталкиваются, один отклоняется в случайном направлении, а другой взрывается при ударе. Блоки поджигаются взрывом. Если гаст погибает, выпущенные им огненные шары исчезают. Огненный шар наносит 1000 ( × 500) единиц урона гасту, если его же огненный шар был отражён в него игроком.
Минимальная взрывоустойчивость, необходимая для поглощения всей силы взрыва огненного шара гаста, составляет 20.17 (эквивалент примерно равен взрывоустойчивости паутины). Именно поэтому огненный шар гаста не может разрушить булыжник, который имеет взрывоустойчивость, равную 30.
Данные сущности
Огненный шар имеет связанные с ним данные сущности, которые содержат различные свойства.
-
NBT данные сущности
- Общие теги для всех сущностей see Шаблон:Nbt наследование/сущность/шаблон
Формат чанка/Снаряды
-
-
Item: Элемент для отображения, может отсутствовать.
- Теги, общие для всех предметов see Шаблон:Nbt наследование/предмет вне слота/шаблон
- ExplosionPower: Мощность и размер взрыва, создаваемого огненным шаром при ударе. По умолчанию — 1.
-
Item: Элемент для отображения, может отсутствовать.
Result[]
Command | Trigger | Java Edition |
---|---|---|
any | the arguments are not specified correctly | Unparseable |
is unloaded or out of the world | Failed | |
the block at is not a block entity | ||
(in mode) fails to resolve to an entity (named player must be online) | ||
more than one tag is got | ||
does not exist | ||
the obtained tag is not a numeric tag | ||
nothing is changed | ||
try to edit player’s data | ||
is the root compound tag | ||
is unloaded or out of the world | ||
the block at is not a block entity | ||
fails to resolve to an entity (named player must be online) | ||
does not exist | ||
the target tag isn’t a list or array | ||
source data isn’t of an item type appropriate for the list | ||
the index is invalid | ||
the target path does not specify a compound tag | ||
the source data is not a compound tag | ||
any | On success | Get, merge, modify, and remove NBT data. |
Official software[]
- See also: Tutorials/Running the Data Generator
Mojang has provided sample Java NBT classes for developers to use and reference as part of the source code for the MCRegion to Anvil file format converter. Since Java Edition 1.13, Minecraft includes a built-in converter between the SNBT format and compressed NBT format, which comes with both the client and official server.
The data generator from Minecraft is able to convert uncompressed Stringified NBT files with .snbt extension in an input folder to GZip compressed NBT format files with .nbt extension in an output folder, and vice versa.
The vanilla data generator can convert any GZip compressed NBT format to SNBT format. The file extension of a file can simply be changed, such as level.dat to level.nbt and put in the input folder, and the generator then decodes the GZip compressed NBT data.
List of NBT Tags
Here is a list of the NBT tags that you can use for in Minecraft Java Edition (PC/Mac) 1.16:
NBT Tag | Value (Description) | Works With |
---|---|---|
Invul |
ticks (The number of game ticks until the invincibility shield for the wither boss wears off) Example |
/summon/data |
CustomName |
name (The name to assign to the wither boss) Example |
/summon/data |
Health |
number (The number of health points the wither boss has) Example |
/summon/data |
AbsorptionAmount |
number (The number of absorption health points the wither boss has) Example |
/summon/data |
Invulnerable |
0 (The wither boss will take damage like normal) Example |
/summon/data |
PersistenceRequired |
0 (The wither boss will despawn naturally) Example |
/summon/data |
NoAI |
0 (The wither boss will have artificial intelligence and will move/behave like normal) Example |
/summon/data |
Silent |
0 (The wither boss will make its usual noises in the game) Example |
/summon/data |
Fire |
ticks (The number of game ticks until the wither boss is no longer on fire — there are 20 ticks in a second) Example |
/summon/data |
PortalCooldown |
ticks (The number of game ticks until the wither boss can go through a portal again — there are 20 ticks in a second) Example |
/summon/data |
Air |
ticks (The number of game ticks the wither boss has air left for) Example |
/summon/data |
id |
wither (The entity value used to represent a wither boss in the EntityTag or Passengers tag) Example |
/summon/give |
Passengers |
The mob that is riding on the wither boss. Use the entity value for the passenger mob Example of skeleton as passenger |
/summon/data |
NBT Tag Examples
To summon a wither boss that is named Destruction:
/summon wither ~ ~ ~ {CustomName:"\"Destruction\""}
To summon a wither boss that is named Destruction and has no artificial intelligence:
/summon wither ~ ~ ~ {CustomName:"\"Destruction\"", NoAI:1}