Difference between revisions of "Slot Data"

From wiki.vg
Jump to: navigation, search
(Updated to 1.3.1)
(Packets)
Line 3: Line 3:
 
== Packets ==
 
== Packets ==
  
* [[Protocol#Player_Block_Placement_.280x0F.29|0x0F player block placement]]
+
* [[Protocol#Entity_Equipment_.280x05.29|0x05 Entity Equipment]]
* [[Protocol#Window_click_.280x66.29|0x66 window click]]
+
* [[Protocol#Player_Block_Placement_.280x0F.29|0x0F Player Block Placement]]
* [[Protocol#Set_slot_.280x67.29|0x67 set slot]]
+
* [[Protocol#Window_click_.280x66.29|0x66 Window Click]]
* [[Protocol#Window_items_.280x68.29|0x68 window items]] (as an array)
+
* [[Protocol#Set_slot_.280x67.29|0x67 Set Slot]]
* [[Protocol#Creative_inventory_action_.280x6B.29|0x6B creative inventory action]]
+
* [[Protocol#Window_items_.280x68.29|0x68 Window Items]] (as an array)
 +
* [[Protocol#Creative_inventory_action_.280x6B.29|0x6B Creative Inventory Action]]
  
 
== Format ==
 
== Format ==

Revision as of 08:45, 29 August 2012

The slot data structure is how minecraft represents an item and its associated data in the minecraft protocol

Packets

Format

The structure consists of at least a short, which gives the item/block ID [1]. A value of -1 signifies that the slot is empty, and no further data follows.

For non-empty slots, at least two further fields follow. These fields are a byte (item count) and a short (damage/block metadata)

For every block ID, except -1, further data follows. First, a short gives the length of a proceeding byte array. A value of -1 signifies no further data.

The byte array (if present) contains gzipped (that is RFC 1952 rather than RFC 1950) NBT data. The format of this data is as follows:

 COMPOUND: ''
   LIST: 'ench'
     COMPOUND
       SHORT: 'id'
       SHORT: 'lvl'
     END
     COMPOUND
       ...etc
     END
 END

Each of the inner, untagged COMPOUNDs represents an enchantment, with its ID[2] and level given as child SHORT elements.