Difference between revisions of "Slot Data"

From wiki.vg
Jump to navigation Jump to search
(Improved formatting, correct if necessary)
(Update to 1.13)
Line 1: Line 1:
 
The '''Slot''' data structure is how Minecraft represents an item and its associated data in the [[Protocol|Minecraft Protocol]].
 
The '''Slot''' data structure is how Minecraft represents an item and its associated data in the [[Protocol|Minecraft Protocol]].
  
== Format ==
+
=== [[Slot]] ===
  
 
{| class="wikitable"
 
{| class="wikitable"
Line 8: Line 8:
 
  ! Meaning
 
  ! Meaning
 
  |-
 
  |-
  | Block ID
+
  | Item ID
 
  | Short
 
  | Short
  | The {{Minecraft Wiki|Data values#Block IDs|item/block ID}}. A value of <code>-1</code> signifies that the slot is empty, and no further data follows.
+
  | The {{Minecraft Wiki|Data values#Block IDs|item ID}}. A value of <code>-1</code> signifies that the slot is empty, and no further data follows. Item IDs are distinct from block IDs; see [
 
  |-
 
  |-
 
  | Item Count
 
  | Item Count
 
  | Optional Byte
 
  | Optional Byte
  | Not present if Block ID is <code>-1</code>.
+
  | Not present if Item ID is <code>-1</code>.
|-
 
| Item Damage
 
| Optional Short
 
| Not present if Block ID is <code>-1</code>.
 
 
  |-
 
  |-
 
  | NBT
 
  | NBT
 
  | Optional NBT
 
  | Optional NBT
  | Not present if Block ID is <code>-1</code>. If 0, there is no NBT data, and no further data follows. Otherwise the byte is the start of an NBT blob as shown below:
+
  | Not present if Item ID is <code>-1</code>. If 0, there is no NBT data, and no further data follows. Otherwise the byte is the start of an NBT blob as shown below:
 
  |}
 
  |}
  
Line 42: Line 38:
 
</pre>
 
</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.
+
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>
 
<pre>
   ff ff                           | empty slot
+
   ff ff                     | empty slot
   01 16 01 00 00 00                | a diamond pickaxe
+
   01 16 01 00                | a diamond pickaxe
   01 16 01 00 00 01 04 CA FE BA BE | a diamond pickaxe with (made-up) NBT data
+
   01 16 01 01 04 CA FE BA BE | a diamond pickaxe with (made-up) NBT data
 
</pre>
 
</pre>
  
 
[[Category:Protocol Details]]
 
[[Category:Protocol Details]]
 
[[Category:Minecraft Modern]]
 
[[Category:Minecraft Modern]]

Revision as of 18:27, 3 September 2018

The Slot data structure is how Minecraft represents an item and its associated data in the Minecraft Protocol.

Slot

Name Type Meaning
Item ID Short The item ID. A value of -1 signifies that the slot is empty, and no further data follows. Item IDs are distinct from block IDs; see [
Item Count Optional Byte Not present if Item ID is -1.
NBT Optional NBT Not present if Item ID is -1. If 0, 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

  ff ff                      | empty slot
  01 16 01 00                | a diamond pickaxe
  01 16 01 01 04 CA FE BA BE | a diamond pickaxe with (made-up) NBT data