Difference between revisions of "User:WinX64/Slot Data"

From wiki.vg
Jump to navigation Jump to search
(Starting template for the updated slot data page)
 
(Content moved to the page on the main namespace)
Tag: Blanking
 
(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]]
 

Latest revision as of 13:53, 14 June 2024