|
|
| (18 intermediate revisions by the same user not shown) |
| Line 1: |
Line 1: |
| 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
| |
| | {{Type|Boolean}}
| |
| | True if there is an item in this position; false if it is empty.
| |
| |-
| |
| | Item ID
| |
| | {{Type|Optional}} {{Type|VarInt}}
| |
| | Omitted if present is false. The {{Minecraft Wiki|Java Edition data values#Blocks|item ID}}. Item IDs are distinct from block IDs; see [[Data Generators]] for more information
| |
| |-
| |
| | Item Count
| |
| | {{Type|Optional}} {{Type|Byte}}
| |
| | Omitted if present is false.
| |
| |-
| |
| | NBT
| |
| | {{Type|Optional}} {{Type|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
| |
| LIST 'StoredEnchantments'
| |
| COMPOUND
| |
| STRING 'id'
| |
| SHORT 'lvl'
| |
| END
| |
| COMPOUND
| |
| ...
| |
| END
| |
| ...
| |
| END
| |
| INT 'Unbreakable'
| |
| ...
| |
| END
| |
| </pre>
| |
|
| |
| Note that on old versions, the enchantment id was sent as a SHORT, and not as a STRING.
| |
|
| |
| Since 1.20.2 the root compound also has no name anymore. The NBT data starts with one byte indicating the type, followed by the type-specific data.
| |
|
| |
| 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 ==
| |
|
| |
| <pre>
| |
| 00 | empty slot
| |
| 01 01 01 00 | a stone block
| |
| 01 01 01 03 12 34 56 78 | a stone block with (made-up) NBT data
| |
| </pre>
| |
|
| |
| [[Category:Protocol Details]]
| |
| [[Category:Minecraft Modern]]
| |