Difference between revisions of "Slot Data"
Jump to navigation
Jump to search
Barneygale (talk | contribs) (→Format: We shouldn't call the NBT data "metadata", as people already use that to refer to the damage) |
m (Replaced "Not present" with "Omitted" to avoid confusion between the field "Present" and weather the current field "is present" in the payload.) |
||
(16 intermediate revisions by 12 users not shown) | |||
Line 1: | Line 1: | ||
− | The ''' | + | The '''Slot''' data structure is how Minecraft represents an item and its associated data in the [[Protocol|Minecraft Protocol]]. |
− | == | + | === Slot === |
− | + | {| class="wikitable" | |
− | + | ! Name | |
− | + | ! Type | |
− | + | ! Meaning | |
− | + | |- | |
− | + | | Present | |
− | + | | Boolean | |
+ | | True if there is an item in this position; false if it is empty. | ||
+ | |- | ||
+ | | Item ID | ||
+ | | Optional VarInt | ||
+ | | The {{Minecraft Wiki|Java Edition data values#Blocks|item ID}}. Omitted if present is false. Item IDs are distinct from block IDs; see [[Data Generators]] for more information | ||
+ | |- | ||
+ | | Item Count | ||
+ | | Optional Byte | ||
+ | | Omitted if present is false. | ||
+ | |- | ||
+ | | NBT | ||
+ | | Optional NBT | ||
+ | | Omitted if present is false. If 0 (TAG_End), there is no NBT data, and no further data follows. Otherwise the byte is the start of an NBT blob as shown below: | ||
+ | |} | ||
− | + | <pre> | |
− | + | COMPOUND <nowiki>''</nowiki> | |
− | + | LIST 'StoredEnchantments' | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | < | ||
− | COMPOUND | ||
− | LIST | ||
COMPOUND | COMPOUND | ||
− | SHORT | + | SHORT 'id' |
− | SHORT | + | SHORT 'lvl' |
END | END | ||
COMPOUND | COMPOUND | ||
− | ... | + | ... |
END | END | ||
+ | ... | ||
+ | END | ||
+ | INT 'Unbreakable' | ||
+ | ... | ||
END | END | ||
− | </ | + | </pre> |
− | + | See [[NBT]] for more information about the NBT format, and {{Minecraft Wiki|Player.dat format#Item structure|here}} for the contained information and its format. Note that tool durability is included in NBT, among other things. | |
== Examples == | == Examples == | ||
− | < | + | <pre> |
− | + | 00 | empty slot | |
− | 01 | + | 01 01 01 00 | a stone block |
− | 01 | + | 01 01 01 04 CA FE BA BE | a stone block with (made-up) NBT data |
− | </ | + | </pre> |
+ | |||
+ | [[Category:Protocol Details]] | ||
+ | [[Category:Minecraft Modern]] |
Revision as of 23:53, 17 March 2020
The Slot data structure is how Minecraft represents an item and its associated data in the Minecraft Protocol.
Slot
Name | Type | Meaning |
---|---|---|
Present | Boolean | True if there is an item in this position; false if it is empty. |
Item ID | Optional VarInt | The item ID. Omitted if present is false. Item IDs are distinct from block IDs; see Data Generators for more information |
Item Count | Optional Byte | Omitted if present is false. |
NBT | Optional NBT | Omitted if present is false. If 0 (TAG_End), there is no NBT data, and no further data follows. Otherwise the byte is the start of an NBT blob as shown below: |
COMPOUND '' LIST 'StoredEnchantments' COMPOUND SHORT 'id' SHORT 'lvl' END COMPOUND ... END ... END INT 'Unbreakable' ... END
See NBT for more information about the NBT format, and here for the contained information and its format. Note that tool durability is included in NBT, among other things.
Examples
00 | empty slot 01 01 01 00 | a stone block 01 01 01 04 CA FE BA BE | a stone block with (made-up) NBT data