Difference between revisions of "Pre-release protocol"

From wiki.vg
Jump to navigation Jump to search
(2 intermediate revisions by the same user not shown)
Line 36: Line 36:
 
Four packets changed:
 
Four packets changed:
  
*<div class="li"> [[Protocol#Player_Block_Placement_.280x0F.29|0x0F player block placement]]
+
* [[Protocol#Player_Block_Placement_.280x0F.29|0x0F player block placement]]
 
* [[Protocol#Window_click_.280x66.29|0x66 window click]]
 
* [[Protocol#Window_click_.280x66.29|0x66 window click]]
 
* [[Protocol#Set_slot_.280x67.29|0x67 set slot]]
 
* [[Protocol#Set_slot_.280x67.29|0x67 set slot]]
 
* [[Protocol#Window_items_.280x68.29|0x68 window items]]
 
* [[Protocol#Window_items_.280x68.29|0x68 window items]]
 +
* 0x6B Create Inventory
  
 
This change affects the "slot" datatype. This type consists of at least a short (item_id). If this id isn't <code>-1</code>, a byte (count) and a short (uses) follow.
 
This change affects the "slot" datatype. This type consists of at least a short (item_id). If this id isn't <code>-1</code>, a byte (count) and a short (uses) follow.
Line 56: Line 57:
 
</code>
 
</code>
  
=== [[#Experience_.280x2B.29|Experience (0x2B)]] ===
+
=== Experience (0x2B) ===
  
 
Now float, short, short
 
Now float, short, short
Line 71: Line 72:
  
 
Provided below is a changelog of the server protocol starting on 2010-08-20.  The wiki history feature may also be used to investigate changes.
 
Provided below is a changelog of the server protocol starting on 2010-08-20.  The wiki history feature may also be used to investigate changes.
 +
 +
=== 2011-10-27 ===
 +
* Beta 1.9 pre5-release.
 +
* Protocol version is now 21
 +
* Packet 0x6B (Create Inventory) changed: uses Slot datatype.
  
 
=== 2011-10-13 ===
 
=== 2011-10-13 ===

Revision as of 22:35, 28 October 2011

This page documents the changes from the last stable Minecraft release (currently 1.8.1) to the current pre-release (currently 1.9pre4)

New packets

Enchant Item (0x6C)

Client to Server only

Packet ID Field Name Field Type Example Notes
0x6C Window ID byte 1 The ID sent by 0x64
Enchantment byte 0 The position of the enchantment on the enchantment table window, starting with 0 as the topmost one.
Total Size: 3 bytes

Changed packets

"Slot" type change

Four packets changed:

This change affects the "slot" datatype. This type consists of at least a short (item_id). If this id isn't -1, a byte (count) and a short (uses) follow.

From 1.9pre2 onward, additional data is sent but only for certain item_ids. This means the protocol is no longer context free. The additional data is at least a short. If this short isn't -1, a byte[] array follows, containing gzipped NBT data

As of 1.9pre3, the format of the NBT is as follows

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

Experience (0x2B)

Now float, short, short

Other changes

Protocol version is 20, as of 1.9pre4

New mobs: Blaze, Magma Cube, Ender Dragon, Snowman, Villager

Notchian server features two new protocols: RCON (server class: o.java) and Query (server class: su.java)

Protocol History

Provided below is a changelog of the server protocol starting on 2010-08-20. The wiki history feature may also be used to investigate changes.

2011-10-27

  • Beta 1.9 pre5-release.
  • Protocol version is now 21
  • Packet 0x6B (Create Inventory) changed: uses Slot datatype.

2011-10-13

  • Beta 1.9 pre4-release.
  • Protocol version is now 20
  • Packet 0x2B (Experience) changed: now (float, short, short)
  • New packet 0x6C (Enchant item) added: (byte, byte)
  • Flint and steel no longer enchantable (see 1.9pre3 changes). Might be others, too.
  • Notchian server now features an RCON server (server class: o.java)
  • Notchian server now features "G4S" server [1]

2011-9-29

  • Beta 1.9 pre2-release.
  • Protocol version is now 19
  • Four packets changed:
  • The change affects the "slot" datatype. This type consists of at least a short (item_id). If this id isn't -1, a byte (count) and a short (uses) follow.
  • From 1.9pre2 onward, additional data is sent but only for certain item_ids. This means the protocol is no longer context free. The additional data is at least a short. If this short isn't -1, a byte[] array follows, containing gzipped NBT data
  • The format of the NBT is as follows

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

  • So far only this format, with 'id' and 'lvl' set to 2 and 1 respectively, has been seen.

2011-9-22

  • Beta 1.9 pre-release.
  • Protocol version is now 18