Difference between revisions of "Protocol History"
Jump to navigation
Jump to search
(2 intermediate revisions by the same user not shown) | |||
Line 4: | Line 4: | ||
* 1.2.2 | * 1.2.2 | ||
* Protocol version is now 28 | * Protocol version is now 28 | ||
− | * New packet: [[#Entity_Head_Look_.280x23.29|0x23 entity head look]] | + | * New packet: [[Protocol#Entity_Head_Look_.280x23.29|0x23 entity head look]] |
− | * New packet: [[#Update_Tile_Entity_.280x84.29|0x84 update tile entity]] | + | * New packet: [[Protocol#Update_Tile_Entity_.280x84.29|0x84 update tile entity]] |
− | * [[#Handshake_.280x02.29|0x02 handshake]] when sent C->S now additionally contains the hostname/port the client is connecting to | + | * [[Protocol#Handshake_.280x02.29|0x02 handshake]] when sent C->S now additionally contains the hostname/port the client is connecting to |
− | * [[#Login_Request_.280x01.29|0x01 login request]]: map seed (long) parameter removed and dimension changed from byte to int | + | * [[Protocol#Login_Request_.280x01.29|0x01 login request]]: map seed (long) parameter removed and dimension changed from byte to int |
− | * [[#Respawn_.280x09.29|0x09 respawn]] has the same changes (dimension changed from byte to int and seed removed) | + | * [[Protocol#Respawn_.280x09.29|0x09 respawn]] has the same changes (dimension changed from byte to int and seed removed) |
− | * [[#Mob_Spawn_.280x18.29|0x18 mob spawn]] has a new byte field: head yaw | + | * [[Protocol#Mob_Spawn_.280x18.29|0x18 mob spawn]] has a new byte field: head yaw |
− | * [[#Map_Chunks_.280x33.29|0x33 map chunks]] packet was completely changed to use the new 16x16x16 chunk format | + | * [[Protocol#Map_Chunks_.280x33.29|0x33 map chunks]] packet was completely changed to use the new 16x16x16 chunk format |
− | * [[#Multi_Block_Change_.280x34.29|0x34 multi block change]] has a new format also | + | * [[Protocol#Multi_Block_Change_.280x34.29|0x34 multi block change]] has a new format also |
=== 2012-01-12 === | === 2012-01-12 === | ||
− | * 1.1 | + | * [http://www.wiki.vg/wiki/index.php?title=Protocol&oldid=1826 1.1] |
* Protocol version is now 23 | * Protocol version is now 23 | ||
* New packet: [[Protocol#Plugin_message_.280xFA.29|0xFA Plugin message]] | * New packet: [[Protocol#Plugin_message_.280xFA.29|0xFA Plugin message]] | ||
− | * [[#Login_Request_.280x01.29|0x01 login request]] has a new string field: level-type (DEFAULT or SUPERFLAT) | + | * [[Protocol#Login_Request_.280x01.29|0x01 login request]] has a new string field: level-type (DEFAULT or SUPERFLAT) |
− | * [[#Respawn_.280x09.29|0x09 respawn]] has the same change | + | * [[Protocol#Respawn_.280x09.29|0x09 respawn]] has the same change |
* Packet removed: 0x1B stance update (had been unused for some time) | * Packet removed: 0x1B stance update (had been unused for some time) | ||
Line 41: | Line 41: | ||
* <div class="li">Beta 1.9 pre4.</div> | * <div class="li">Beta 1.9 pre4.</div> | ||
* Protocol version is now 20 | * Protocol version is now 20 | ||
− | * Packet 0x2B ([[#Experience_.280x2B.29|Experience]]) changed: now (float, short, short) | + | * Packet 0x2B ([[Protocol#Experience_.280x2B.29|Experience]]) changed: now (float, short, short) |
− | * New packet 0x6C ([[#Enchant_Item_.280x6C.29|Enchant item]]) added: (byte, byte) | + | * New packet 0x6C ([[Protocol#Enchant_Item_.280x6C.29|Enchant item]]) added: (byte, byte) |
* Flint and steel no longer enchantable (see 1.9pre3 changes). Might be others, too. | * Flint and steel no longer enchantable (see 1.9pre3 changes). Might be others, too. | ||
* Notchian server now features an [[Rcon|RCON]] server (server class: o.java) | * Notchian server now features an [[Rcon|RCON]] server (server class: o.java) | ||
Line 79: | Line 79: | ||
* <div class="li">Beta 1.8 pre2-release.</div> | * <div class="li">Beta 1.8 pre2-release.</div> | ||
* Protocol version is now 16 | * Protocol version is now 16 | ||
− | * Packet 0x01 ([[#Login_Request_.280x01.29|Login]]) changed (added byte, world height now unsigned) | + | * Packet 0x01 ([[Protocol#Login_Request_.280x01.29|Login]]) changed (added byte, world height now unsigned) |
− | * Packet 0x09 ([[#Respawn_.280x09.29|Respawn]]) changed (added byte) | + | * Packet 0x09 ([[Protocol#Respawn_.280x09.29|Respawn]]) changed (added byte) |
− | * Packet 0x64 ([[#Open_window_.280x64.29|Open Window]]) changed (Window title changed from string8 to string16) | + | * Packet 0x64 ([[Protocol#Open_window_.280x64.29|Open Window]]) changed (Window title changed from string8 to string16) |
− | * New packet 0x1a ([[#Experience_Orb_.280x1A.29|Experience Orb]]) added | + | * New packet 0x1a ([[Protocol#Experience_Orb_.280x1A.29|Experience Orb]]) added |
− | * Assumedly 0x17 ([[#Add_Object.2FVehicle_.280x17.29|Add Object/Vehicle]]) is no longer used for exp orbs. | + | * Assumedly 0x17 ([[Protocol#Add_Object.2FVehicle_.280x17.29|Add Object/Vehicle]]) is no longer used for exp orbs. |
=== 2011-9-10 === | === 2011-9-10 === | ||
* <div class="li">Beta 1.8 pre-release.</div> | * <div class="li">Beta 1.8 pre-release.</div> | ||
* Protocol version is now 15 | * Protocol version is now 15 | ||
− | * Packet 0x00 ([[#Keep_Alive_.280x00.29|Keep Alive]]) changed (added keep-alive id) | + | * Packet 0x00 ([[Protocol#Keep_Alive_.280x00.29|Keep Alive]]) changed (added keep-alive id) |
− | * Packet 0x01 ([[#Login_Request_.280x01.29|Login]]) changed (added server mode, height limit, and an unknown field) | + | * Packet 0x01 ([[Protocol#Login_Request_.280x01.29|Login]]) changed (added server mode, height limit, and an unknown field) |
− | * Packet 0x08 ([[#Update_Health_.280x08.29|Health]]) changed (added food bar and food saturation) | + | * Packet 0x08 ([[Protocol#Update_Health_.280x08.29|Health]]) changed (added food bar and food saturation) |
− | * Packet 0x09 ([[#Respawn_.280x09.29|Respawn]]) changed (added map seed, server mode, height limit) | + | * Packet 0x09 ([[Protocol#Respawn_.280x09.29|Respawn]]) changed (added map seed, server mode, height limit) |
− | * Packet 0x13 ([[#Entity_Action_.280x13.29|Entity Action]]) has new values for starting/stopping sprinting. | + | * Packet 0x13 ([[Protocol#Entity_Action_.280x13.29|Entity Action]]) has new values for starting/stopping sprinting. |
− | * Packet 0x46 ([[#New.2FInvalid_State_.280x46.29|New/invalid state]]) changed (added game mode reason, and a game mode byte) | + | * Packet 0x46 ([[Protocol#New.2FInvalid_State_.280x46.29|New/invalid state]]) changed (added game mode reason, and a game mode byte) |
− | * New packet 0x29 ([[#Entity_Effect_.280x29.29|Entity Effect]]) added | + | * New packet 0x29 ([[Protocol#Entity_Effect_.280x29.29|Entity Effect]]) added |
− | * New packet 0x2a ([[#Remove_Entity_Effect_.280x2A.29|Remove Entity Effect]]) added | + | * New packet 0x2a ([[Protocol#Remove_Entity_Effect_.280x2A.29|Remove Entity Effect]]) added |
− | * New packet 0x2b ([[#Experience_.280x2B.29|Experience update]]) added | + | * New packet 0x2b ([[Protocol#Experience_.280x2B.29|Experience update]]) added |
− | * New packet 0x6b ([[#Creative_inventory_action_.280x6B.29|Creative item get]]) added | + | * New packet 0x6b ([[Protocol#Creative_inventory_action_.280x6B.29|Creative item get]]) added |
− | * New packet 0xc9 ([[#Player_List_Item_.280xC9.29|Player list item]]) added | + | * New packet 0xc9 ([[Protocol#Player_List_Item_.280xC9.29|Player list item]]) added |
− | * New packet 0xfe ([[#Server_List_Ping_.280xFE.29|Server list ping]]) added | + | * New packet 0xfe ([[Protocol#Server_List_Ping_.280xFE.29|Server list ping]]) added |
− | * New values for 0x13 ([[#Entity_Action_.280x13.29|Entity Action]]): start sprinting, stop sprinting | + | * New values for 0x13 ([[Protocol#Entity_Action_.280x13.29|Entity Action]]): start sprinting, stop sprinting |
− | * New value for 0x17 ([[#Add_Object.2FVehicle_.280x17.29|Add Object/Vehicle]]): experience orb | + | * New value for 0x17 ([[Protocol#Add_Object.2FVehicle_.280x17.29|Add Object/Vehicle]]): experience orb |
Line 108: | Line 108: | ||
* Protocol version number is now 14 | * Protocol version number is now 14 | ||
* No new packets | * No new packets | ||
− | * Packet 0x36 ([[#Block_Action_.280x36.29|Block Action]]) is now used for pistons too. | + | * Packet 0x36 ([[Protocol#Block_Action_.280x36.29|Block Action]]) is now used for pistons too. |
=== 2011-5-26 === | === 2011-5-26 === | ||
* <div class="li">Beta 1.6 released.</div> | * <div class="li">Beta 1.6 released.</div> | ||
* Protocol increase by 2: 13 | * Protocol increase by 2: 13 | ||
− | * Packet 0x09 ([[#Respawn_.280x09.29|Respawn]]) changed (added world byte) | + | * Packet 0x09 ([[Protocol#Respawn_.280x09.29|Respawn]]) changed (added world byte) |
− | * Packet 0x17 ([[#Add_Object.2FVehicle_.280x17.29|Add Object]]) changed. | + | * Packet 0x17 ([[Protocol#Add_Object.2FVehicle_.280x17.29|Add Object]]) changed. |
− | * Packet 0x3d ([[#Sound_effect_.280x3D.29|Sound effect]]) added | + | * Packet 0x3d ([[Protocol#Sound_effect_.280x3D.29|Sound effect]]) added |
− | * Packet 0x83 ([[#Map_Data_.280x83.29|Map Data]]) added | + | * Packet 0x83 ([[Protocol#Map_Data_.280x83.29|Map Data]]) added |
=== 2011-4-19 === | === 2011-4-19 === | ||
* <div class="li">Beta 1.5 released.</div> | * <div class="li">Beta 1.5 released.</div> | ||
* Some packet info at https://gist.github.com/929803 | * Some packet info at https://gist.github.com/929803 | ||
− | * Packet 0x01 ([[#Login_Request_.280x01.29|Login Request]]) changed (removed second string) | + | * Packet 0x01 ([[Protocol#Login_Request_.280x01.29|Login Request]]) changed (removed second string) |
* Packet 0x66 (Window Click) changed (added bool for shift) | * Packet 0x66 (Window Click) changed (added bool for shift) | ||
− | * Added two new packets: 0x47 ([[#Thunderbolt_.280x47.29|Thunderbolt]]) and 0xC8 ([[#Increment_Statistic_.280xC8.29|Increment Statistic]]) (classes eq and nj, respectively) | + | * Added two new packets: 0x47 ([[Protocol#Thunderbolt_.280x47.29|Thunderbolt]]) and 0xC8 ([[Protocol#Increment_Statistic_.280xC8.29|Increment Statistic]]) (classes eq and nj, respectively) |
* Protocol version number is now 11 | * Protocol version number is now 11 | ||
* All of the strings are now UCS-2, except for Open window (0x64), which is still UTF-8 | * All of the strings are now UCS-2, except for Open window (0x64), which is still UTF-8 | ||
Line 148: | Line 148: | ||
=== 2010-12-01 === | === 2010-12-01 === | ||
* <div class="li"> Protocol version changed to 6</div> | * <div class="li"> Protocol version changed to 6</div> | ||
− | * <div class="li"> Packet 0x12 ([[#Animation_.280x12.29|Animation]]) got a lot more new values</div> | + | * <div class="li"> Packet 0x12 ([[Protocol#Animation_.280x12.29|Animation]]) got a lot more new values</div> |
* <div class="li"> Packet 0x26 changed, now indicates entity damage, death and explosion (for creepers, TNT not tested)</div> | * <div class="li"> Packet 0x26 changed, now indicates entity damage, death and explosion (for creepers, TNT not tested)</div> | ||
* <div class="li"> Packet 0x3B now being sent from client</div> | * <div class="li"> Packet 0x3B now being sent from client</div> | ||
Line 156: | Line 156: | ||
=== 2010-11-24 === | === 2010-11-24 === | ||
* <div class="li"> Protocol version changed to 5</div> | * <div class="li"> Protocol version changed to 5</div> | ||
− | * <div class="li"> Packet 0x07 ([[#Use_Entity.3F_.280x07.29|Use Entity]]) got a new field (byte)</div> | + | * <div class="li"> Packet 0x07 ([[Protocol#Use_Entity.3F_.280x07.29|Use Entity]]) got a new field (byte)</div> |
− | * <div class="li"> Packet 0x08 ([[#Update Health (0x08)|Update Health]]) added</div> | + | * <div class="li"> Packet 0x08 ([[Protocol#Update Health (0x08)|Update Health]]) added</div> |
− | * <div class="li"> Packet 0x09 ([[#Respawn (0x09)|Respawn]]) added</div> | + | * <div class="li"> Packet 0x09 ([[Protocol#Respawn (0x09)|Respawn]]) added</div> |
− | * <div class="li"> Packet 0x12 ([[#Animation_.280x12.29|Animation]]) started getting non-boolean values for the Animation field</div> | + | * <div class="li"> Packet 0x12 ([[Protocol#Animation_.280x12.29|Animation]]) started getting non-boolean values for the Animation field</div> |
* <div class="li"> Packet 0x26 (Entity Death) added</div> | * <div class="li"> Packet 0x26 (Entity Death) added</div> | ||
=== 2010-11-10 === | === 2010-11-10 === | ||
* <div class="li"> Protocol version changed to 4</div> | * <div class="li"> Protocol version changed to 4</div> | ||
− | * <div class="li"> Packet 0x01 ([[#Login_Request_.280x01.29|login request]]) changed</div> | + | * <div class="li"> Packet 0x01 ([[Protocol#Login_Request_.280x01.29|login request]]) changed</div> |
− | * <div class="li"> Packet 0x07 ([[#Use Entity? (0x07)|Use Entity?]]) added</div> | + | * <div class="li"> Packet 0x07 ([[Protocol#Use Entity? (0x07)|Use Entity?]]) added</div> |
− | * <div class="li"> Packet 0x1C ([[#Entity Velocity? (0x1C)|Entity Velocity?]]) added</div> | + | * <div class="li"> Packet 0x1C ([[Protocol#Entity Velocity? (0x1C)|Entity Velocity?]]) added</div> |
− | * <div class="li"> Packet 0x27 ([[#Attach Entity? (0x27)|Attach Entity?]]) added</div> | + | * <div class="li"> Packet 0x27 ([[Protocol#Attach Entity? (0x27)|Attach Entity?]]) added</div> |
=== 2010-10-31 === | === 2010-10-31 === | ||
* <div class="li"> Protocol version changed to 3</div> | * <div class="li"> Protocol version changed to 3</div> | ||
− | * <div class="li"> Packet 0x01 ([[#Login_Request_.280x01.29|login request]]) changed</div> | + | * <div class="li"> Packet 0x01 ([[Protocol#Login_Request_.280x01.29|login request]]) changed</div> |
=== 2010-09-10 === | === 2010-09-10 === | ||
Line 181: | Line 181: | ||
=== 2010-08-20 === | === 2010-08-20 === | ||
* <div class="li"> Protocol version reset from 14 to 1</div> | * <div class="li"> Protocol version reset from 14 to 1</div> | ||
− | * <div class="li"> Packet 0x04 ([[#Time_Update_.280x04.29|time update]]) added</div> | + | * <div class="li"> Packet 0x04 ([[Protocol#Time_Update_.280x04.29|time update]]) added</div> |
[[Category:Protocol Details]] | [[Category:Protocol Details]] | ||
[[Category:Minecraft Beta]] | [[Category:Minecraft Beta]] |
Revision as of 15:56, 20 March 2012
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.
Contents
- 1 2012-03-01
- 2 2012-01-12
- 3 2011-11-13
- 4 2011-11-11
- 5 2011-10-27
- 6 2011-10-13
- 7 2011-9-29
- 8 2011-9-22
- 9 2011-9-14
- 10 2011-9-13
- 11 2011-9-10
- 12 2011-6-30
- 13 2011-5-26
- 14 2011-4-19
- 15 2011-3-31
- 16 2011-2-22
- 17 2011-1-13
- 18 2010-12-20
- 19 2010-12-01
- 20 2010-11-24
- 21 2010-11-10
- 22 2010-10-31
- 23 2010-09-10
- 24 2010-08-20
2012-03-01
- 1.2.2
- Protocol version is now 28
- New packet: 0x23 entity head look
- New packet: 0x84 update tile entity
- 0x02 handshake when sent C->S now additionally contains the hostname/port the client is connecting to
- 0x01 login request: map seed (long) parameter removed and dimension changed from byte to int
- 0x09 respawn has the same changes (dimension changed from byte to int and seed removed)
- 0x18 mob spawn has a new byte field: head yaw
- 0x33 map chunks packet was completely changed to use the new 16x16x16 chunk format
- 0x34 multi block change has a new format also
2012-01-12
- 1.1
- Protocol version is now 23
- New packet: 0xFA Plugin message
- 0x01 login request has a new string field: level-type (DEFAULT or SUPERFLAT)
- 0x09 respawn has the same change
- Packet removed: 0x1B stance update (had been unused for some time)
2011-11-13
- 1.0rc2
- Protocol version is not changed
- Client gives invalid server key when authentication hash is 8 bytes and the first byte is > 0x80
- Bow has extra metadata as slot item.
2011-11-11
- Beta 1.9 pre6.
- Protocol version is now 22
- NewState: Reason 4 = Enter scrolling text mode after slaying the dragon.
- New entity: EnderCrystal (Spawned using the Add Object/Vehicle (0x17) packet with type 51)
2011-10-27
- Beta 1.9 pre5.
- Protocol version is now 21
- Packet 0x6B (Create Inventory) changed: uses Slot datatype.
2011-10-13
- Beta 1.9 pre4.
- 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.
- 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
and1
respectively, has been seen.
2011-9-22
- Beta 1.9 pre1.
- Protocol version is now 18
2011-9-14
- Beta 1.8 release.
- Protocol version is now 17
2011-9-13
- Beta 1.8 pre2-release.
- Protocol version is now 16
- Packet 0x01 (Login) changed (added byte, world height now unsigned)
- Packet 0x09 (Respawn) changed (added byte)
- Packet 0x64 (Open Window) changed (Window title changed from string8 to string16)
- New packet 0x1a (Experience Orb) added
- Assumedly 0x17 (Add Object/Vehicle) is no longer used for exp orbs.
2011-9-10
- Beta 1.8 pre-release.
- Protocol version is now 15
- Packet 0x00 (Keep Alive) changed (added keep-alive id)
- Packet 0x01 (Login) changed (added server mode, height limit, and an unknown field)
- Packet 0x08 (Health) changed (added food bar and food saturation)
- Packet 0x09 (Respawn) changed (added map seed, server mode, height limit)
- Packet 0x13 (Entity Action) has new values for starting/stopping sprinting.
- Packet 0x46 (New/invalid state) changed (added game mode reason, and a game mode byte)
- New packet 0x29 (Entity Effect) added
- New packet 0x2a (Remove Entity Effect) added
- New packet 0x2b (Experience update) added
- New packet 0x6b (Creative item get) added
- New packet 0xc9 (Player list item) added
- New packet 0xfe (Server list ping) added
- New values for 0x13 (Entity Action): start sprinting, stop sprinting
- New value for 0x17 (Add Object/Vehicle): experience orb
2011-6-30
- Beta 1.7 released.
- Protocol version number is now 14
- No new packets
- Packet 0x36 (Block Action) is now used for pistons too.
2011-5-26
- Beta 1.6 released.
- Protocol increase by 2: 13
- Packet 0x09 (Respawn) changed (added world byte)
- Packet 0x17 (Add Object) changed.
- Packet 0x3d (Sound effect) added
- Packet 0x83 (Map Data) added
2011-4-19
- Beta 1.5 released.
- Some packet info at https://gist.github.com/929803
- Packet 0x01 (Login Request) changed (removed second string)
- Packet 0x66 (Window Click) changed (added bool for shift)
- Added two new packets: 0x47 (Thunderbolt) and 0xC8 (Increment Statistic) (classes eq and nj, respectively)
- Protocol version number is now 11
- All of the strings are now UCS-2, except for Open window (0x64), which is still UTF-8
2011-3-31
- Beta 1.4 released.
- New packet 0x46.
- Protocol version number is now 10
- TODO: The protocol itself does not seem to have changed much, but what about possible data values and stuff like that?
2011-2-22
- Beta 1.3 released.
- New packets 0x11, 0x1B: Some information at https://gist.github.com/841590
- Protocol number is now 9 (updated)
2011-1-13
- Beta 1.2 released.
- More packet changes (pastebin): 0x05, 0x0F, 0x13, 0x15, 0x18, 0x19, 0x28, 0x36, 0x66, 0x67.
2010-12-20
- Notch released Beta on time! Amazing! Refactored the page to be slightly smaller and easier to navigate.
- A whole host of packet changes. 0x05, 0x08, 0x10, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, and 0x82. Packets 0x11 and 0x3b removed.
2010-12-01
- Protocol version changed to 6
- Packet 0x12 (Animation) got a lot more new values
- Packet 0x26 changed, now indicates entity damage, death and explosion (for creepers, TNT not tested)
- Packet 0x3B now being sent from client
- Packet 0x3C added
- (need info on other changes)
2010-11-24
- Protocol version changed to 5
- Packet 0x07 (Use Entity) got a new field (byte)
- Packet 0x08 (Update Health) added
- Packet 0x09 (Respawn) added
- Packet 0x12 (Animation) started getting non-boolean values for the Animation field
- Packet 0x26 (Entity Death) added
2010-11-10
- Protocol version changed to 4
- Packet 0x01 (login request) changed
- Packet 0x07 (Use Entity?) added
- Packet 0x1C (Entity Velocity?) added
- Packet 0x27 (Attach Entity?) added
2010-10-31
- Protocol version changed to 3
- Packet 0x01 (login request) changed
2010-09-10
- Protocol version changed to 2
- Packets 0x05, 0x06, 0x3B added
- Server-side inventory (no verification)
- Vanilla adds experimental monsters (only damaged by fire)
2010-08-20
- Protocol version reset from 14 to 1
- Packet 0x04 (time update) added