Difference between revisions of "Pre-release protocol"

From wiki.vg
Jump to navigation Jump to search
m (pre2)
(Clear page for next update)
Line 1: Line 1:
This page documents the changes from the [[Protocol|last stable Minecraft release]] (currently [[Protocol version numbers|1.12.1, protocol 338]]) to the current pre-release (currently [[Protocol version numbers|1.12.2-pre2, protocol 339]]). Note that this page contains bleeding-edge information that may not be completely or correctly documented.
+
This page documents the changes from the [[Protocol|last stable Minecraft release]] (currently [[Protocol version numbers|1.12.2, protocol 340]]) to the current pre-release (currently [[Protocol version numbers|1.12.2, protocol 340]]). Note that this page contains bleeding-edge information that may not be completely or correctly documented.
  
 
One who wishes to commandeer the merging of this into [[Protocol]] when an update is made must be sure to respect any changes that may have occurred to the respective packets there.
 
One who wishes to commandeer the merging of this into [[Protocol]] when an update is made must be sure to respect any changes that may have occurred to the respective packets there.
Line 13: Line 13:
 
=== Packets ===
 
=== Packets ===
  
 +
<!--
 
{| class="wikitable"
 
{| class="wikitable"
 
  ! ID
 
  ! ID
Line 20: Line 21:
 
!colspan="4"| Handshaking serverbound
 
!colspan="4"| Handshaking serverbound
 
{{PacketList|0x00|Handshake}}
 
{{PacketList|0x00|Handshake}}
|-
 
!colspan="4"| Play clientbound
 
{{PacketList|0x1F|Keep Alive (clientbound)}}
 
|-
 
!colspan="4"| Play serverbound
 
{{PacketList|0x0B|Keep Alive (serverbound)}}
 
 
  |}
 
  |}
 +
-->
  
 
== New/modified data types ==
 
== New/modified data types ==
Line 40: Line 36:
 
=== Clientbound ===
 
=== Clientbound ===
  
==== Keep Alive (clientbound) ====
+
No changes so far.
 
 
{{Need Info|"random ID" and such seem to no longer actually be the case. For the client, this doesn't matter (just parrot back the same data), but what the numbers actually mean and how the server uses them seem to be different now.}}
 
 
 
The server will frequently send out a keep-alive, each containing a random ID. The client must respond with the same packet. If the client does not respond to them for over 30 seconds, the server kicks the client. Vice versa, if the server does not send any keep-alives for 20 seconds, the client will disconnect and yields a "Timed out" exception.
 
 
 
{| class="wikitable"
 
! Packet ID
 
! State
 
! Bound To
 
! Field Name
 
! Field Type
 
! Notes
 
|-
 
|rowspan="1"| 0x1F
 
|rowspan="1"| Play
 
|rowspan="1"| Client
 
| Keep Alive ID
 
| {{Change|VarInt|Long}}
 
|
 
|}
 
  
 
=== Serverbound ===
 
=== Serverbound ===
  
==== Keep Alive (serverbound) ====
+
No changes so far.
 
 
The server will frequently send out a keep-alive, each containing a random ID. The client must respond with the same packet.
 
 
 
{| class="wikitable"
 
! Packet ID
 
! State
 
! Bound To
 
! Field Name
 
! Field Type
 
! Notes
 
|-
 
| 0x0B
 
| Play
 
| Server
 
| Keep Alive ID
 
| {{Change|VarInt|Long}}
 
|
 
|}
 
 
 
  
 
== Handshaking ==
 
== Handshaking ==
Line 89: Line 46:
 
=== Clientbound ===
 
=== Clientbound ===
  
No changes so far.
+
There are no clientbound packets in the Handshaking state, since the protocol immediately switches to a different state after the client sends the first packet.  
  
 
=== Serverbound ===
 
=== Serverbound ===
  
 +
<!--
 
==== Handshake ====
 
==== Handshake ====
  
Line 110: Line 68:
 
  | Protocol Version
 
  | Protocol Version
 
  | VarInt
 
  | VarInt
  | See [[protocol version numbers]] (currently {{change|338|339}})
+
  | See [[protocol version numbers]] (currently {{change|340|341}})
 
  |-
 
  |-
 
  | Server Address
 
  | Server Address
Line 124: Line 82:
 
  | 1 for [[#Status|status]], 2 for [[#Login|login]]
 
  | 1 for [[#Status|status]], 2 for [[#Login|login]]
 
  |}
 
  |}
 +
-->
  
 
== Status ==
 
== Status ==

Revision as of 17:07, 18 September 2017

This page documents the changes from the last stable Minecraft release (currently 1.12.2, protocol 340) to the current pre-release (currently 1.12.2, protocol 340). Note that this page contains bleeding-edge information that may not be completely or correctly documented.

One who wishes to commandeer the merging of this into Protocol when an update is made must be sure to respect any changes that may have occurred to the respective packets there.

Contents

Data types

No changes so far.

Packets

New/modified data types

No changes so far.

Block Actions

No changes so far.

Play

Clientbound

No changes so far.

Serverbound

No changes so far.

Handshaking

Clientbound

There are no clientbound packets in the Handshaking state, since the protocol immediately switches to a different state after the client sends the first packet.

Serverbound

Status

Clientbound

No changes so far.

Serverbound

No changes so far.

Login

Clientbound

No changes so far.

Serverbound

No changes so far.