Difference between revisions of "Pre-release protocol"

From wiki.vg
Jump to navigation Jump to search
(Updated to 1.4.6)
(Updated to 1.21-pre2)
 
Line 1: Line 1:
This page documents the changes from the [[Protocol|last stable Minecraft release]] (currently 1.4.5, protocol 49) to the current pre-release (or weekly release). 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.20.6, protocol 766]]) to the current pre-release (currently [[Protocol version numbers|1.21-pre2, protocol {{Snapshot PVN|1073742024}}]]). Note that this page contains bleeding-edge information that may not be completely or correctly documented.
  
== New Packets ==
+
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.
-None-
 
  
== Changed Packets ==
+
== Contents ==
=== Held Item Change (0x10) ===
 
  
''Two-Way''
+
<div style="float:right;">__TOC__</div>
  
Sent when the player changes the slot selection, Server sends it when you travel to a different dimension.
+
=== Data types ===
 +
 
 +
No changes documented so far.
 +
 
 +
=== Packets ===
  
 
{| class="wikitable"
 
{| class="wikitable"
|- class="row0"
+
! ID
| class="col0" | Packet ID
+
! Packet name
| class="col1" | Field Name
+
!colspan="2"| Documentation
| class="col2" | Field Type
+
|-
| class="col3" | Example
+
!colspan="4"| Configuration clientbound
| class="col4" | Notes
+
{{PacketList|0x0F|Clientbound Report Details (configuration)|rel=added}}
|- class="row1"
+
{{PacketList|0x10|Clientbound Server Links (configuration)|rel=added}}
| class="col0 centeralign" | 0x10
+
|-
| class="col1 centeralign" | Slot ID
+
!colspan="4"| Play clientbound
| class="col2 centeralign" | short
+
{{PacketList|0x7A|Clientbound Report Details (play)|rel=added}}
| class="col3 centeralign" | <code>1</code>
+
{{PacketList|0x7B|Clientbound Server Links (play)|rel=added}}
| class="col4" | The slot which the player has selected (0-8)
+
|-
|- class="row2"
 
| class="col0" | Total Size:
 
| class="col1 rightalign" colspan="4" | 3 bytes
 
 
|}
 
|}
  
== Changed Data Types ==
+
== Handshake ==
 +
 
 +
No changes so far.
 +
 
 +
== Status ==
 +
 
 +
No changes so far.
 +
 
 +
== Login ==
 +
 
 +
No changes so far.
 +
 
 +
== Configuration ==
 +
 
 +
=== Clientbound ===
 +
 
 +
==== Clientbound Report Details (configuration) ====
 +
 
 +
Contains a list of key-value text entries that are included in any crash or disconnection report generated during connection to the server.
 +
 
 +
{| class="wikitable" {{added}}
 +
! Packet ID
 +
! State
 +
! Bound To
 +
! colspan="2"| Field Name
 +
! colspan="2"| Field Type
 +
! Notes
 +
|-
 +
| rowspan="3"| 0x0F
 +
| rowspan="3"| Configuration
 +
| rowspan="3"| Client
 +
| colspan="2"| Details Count
 +
| colspan="2"| {{Type|VarInt}} (32)
 +
| The number of details in the following array.
 +
|-
 +
| rowspan="2"| Details
 +
| Title
 +
| rowspan="2"| {{Type|Array}}
 +
| {{Type|String}} (128)
 +
|
 +
|-
 +
| Description
 +
| {{Type|String}} (4096)
 +
|
 +
|}
  
=== Spawn Object/Vehicle (0x17) ===
+
==== Clientbound Server Links (configuration) ====
  
''Server to Client''
+
This packet contains a list of links that the Notchian client will display in the menu available from the pause menu. Link labels can be built-in or custom (i.e., any text).
  
{| class="wikitable"
+
{| class="wikitable" {{added}}
|- class="row0"
+
! Packet ID
| class="col0" | Packet ID
+
! State
| class="col1" | Field Name
+
! Bound To
| class="col2" | Field Type
+
! colspan="2"| Field Name
| class="col3" | Example
+
! colspan="2"| Field Type
| class="col4" | Notes
+
! Notes
|- class="row1"
+
|-
| class="col0 centeralign" rowspan="9" | 0x17
+
| rowspan="4"| 0x10
| class="col1 centeralign" | EID
+
| rowspan="4"| Configuration
| class="col2 centeralign" | int
+
| rowspan="4"| Client
| class="col3 centeralign" | <code>62</code>
+
| colspan="2"| Links Count
| class="col4" | Entity ID of the Object
+
| colspan="2"| {{Type|VarInt}}
|- class="row2"
+
| The number of links in the following array.
| class="col0 centeralign" | Type
+
|-
| class="col1 centeralign" | byte
+
| rowspan="3"| Links
| class="col2 centeralign" | <code>11</code>
+
| Is built-in
| class="col3" | The type of object (see [[Entities#Objects]])
+
| rowspan="3"| {{Type|Array}}
|- class="row3"
+
| {{Type|Boolean}}
| class="col0 centeralign" | X
+
| Determines if the following label is built-in (from enum) or custom (text component).
| class="col1 centeralign" | int
+
|-
| class="col2 centeralign" | <code>16080</code>
+
| Label
| class="col3" | The Absolute Integer X Position of the object
+
| {{Type|VarInt}} {{Type|Enum}} / {{Type|Text Component}}
|- class="row4"
+
| See below.
| class="col0 centeralign" | Y
+
|-
| class="col1 centeralign" | int
+
| URL
| class="col2 centeralign" | <code>2299</code>
+
| {{Type|String}}
| class="col3" | The Absolute Integer Y Position of the object
+
| Valid URL.
|- class="row5"
 
| class="col0 centeralign" | Z
 
| class="col1 centeralign" | int
 
| class="col2 centeralign" | <code>592</code>
 
| class="col3" | The Absolute Integer Z Position of the object
 
|- class="row5"
 
| class="col0 centeralign" | '''Yaw'''
 
| class="col1 centeralign" | '''byte'''
 
| class="col2 centeralign" | '''<code>592</code>'''
 
| class="col3" | '''The yaw in steps of 2p/256'''
 
|- class="row5"
 
| class="col0 centeralign" | '''Pitch'''
 
| class="col1 centeralign" | '''byte'''
 
| class="col2 centeralign" | '''<code>592</code>'''
 
| class="col3" | '''The pitch in steps of 2p/256 '''
 
|- class="row6"
 
| class="col0 centeralign" | [[Object Data]]
 
| class="col1 centeralign" |
 
| class="col2 centeralign" |  
 
| class="col3" | [[Object Data]]
 
|- class="row6"
 
| class="col0" | Total Size:
 
| class="col1 rightalign" colspan="4" | 22 or 28 bytes
 
 
|}
 
|}
  
=== Map Chunk Bulk (0x38) ===
 
  
''Server to Client''
+
{| class="wikitable" {{added}}
 +
! ID
 +
! Name
 +
! Notes
 +
|-
 +
| 0
 +
| Bug Report
 +
| Displayed on connection error screen; included as a comment in the disconnection report.
 +
|-
 +
| 1
 +
| Community Guidelines
 +
|
 +
|-
 +
| 2
 +
| Support
 +
|
 +
|-
 +
| 3
 +
| Status
 +
|
 +
|-
 +
| 4
 +
| Feedback
 +
|
 +
|-
 +
| 5
 +
| Community
 +
|
 +
|-
 +
| 6
 +
| Website
 +
|
 +
|-
 +
| 7
 +
| Forums
 +
|
 +
|-
 +
| 8
 +
| News
 +
|
 +
|-
 +
| 9
 +
| Announcements
 +
|
 +
|-
 +
|}
 +
 
 +
=== Serverbound ===
  
{| class="wikitable"
+
No changes so far.
|- class="row0"
+
 
| class="col0" | Packet ID
+
== Play ==
| class="col1" | Field Name
+
 
| class="col2" | Field Type
+
=== Clientbound ===
| class="col3" | Example
+
 
| class="col4" | Notes
+
==== Clientbound Report Details (play) ====
|- class="row1"
+
 
| class="col0 centeralign" rowspan=5 | 0x38
+
Contains a list of key-value text entries that are included in any crash or disconnection report generated during connection to the server.
| class="col1 centeralign" | Chunk Count
+
 
| class="col2 centeralign" | short
+
{| class="wikitable" {{added}}
| class="col3 centeralign" |
+
! Packet ID
| class="col4" | The number of chunks in this packet
+
! State
|- class="row2"
+
! Bound To
| class="col0 centeralign" | Chunk data length
+
! colspan="2"| Field Name
| class="col1 centeralign" | int
+
! colspan="2"| Field Type
| class="col2 centeralign" |  
+
! Notes
| class="col3" | the size of the data field
+
|-
|- class="row2"
+
| rowspan="3"| 0x7A
| class="col0 centeralign" | '''Unknown use'''
+
| rowspan="3"| Configuration
| class="col1 centeralign" | '''boolean'''
+
| rowspan="3"| Client
| class="col2 centeralign" |  
+
| colspan="2"| Details Count
| class="col3" | '''Has only been observed as true when sniffing a vanilla connection.'''
+
| colspan="2"| {{Type|VarInt}} (32)
|- class="row3"
+
| The number of details in the following array.
| class="col0 centeralign" | Data
+
|-
| class="col1 centeralign" | byte array
+
| rowspan="2"| Details
| class="col2 centeralign" |
+
| Title
| class="col3" | Compressed chunk data
+
| rowspan="2"| {{Type|Array}}
|- class="row4"
+
| {{Type|String}} (128)
| class="col0 centeralign" | meta information
+
|
| class="col1 centeralign" | chunk bulk meta information
+
|-
| class="col2 centeralign" |
+
| Description
| class="col3 centeralign" | Chunk count times the Meta information structure (See notes for details)
+
| {{Type|String}} (4096)
|- class="row5"
+
|
| class="col0" | Total Size:
 
| class="col1 rightalign" colspan="4" | 7 + (Chunk data size) + 12 * (Chunk Count) bytes
 
 
|}
 
|}
  
== Removed Packets ==
+
==== Clientbound Server Links (play) ====
  
0x15 "Spawn Dropped Item" has been removed, and its purpose is now handled by 0x17 "Spawn Object/Vehicle". The entity type ID is 0x02. You can set the item type by sending an 0x18 "Entity Metadata" packet with a slot at index 10. [https://gist.github.com/4325656 Vanilla packet dump]
+
This packet contains a list of links that the Notchian client will display in the menu available from the pause menu. Link labels can be built-in or custom (i.e., any text).
  
== Protocol History ==
+
{| class="wikitable" {{added}}
 +
! Packet ID
 +
! State
 +
! Bound To
 +
! colspan="2"| Field Name
 +
! colspan="2"| Field Type
 +
! Notes
 +
|-
 +
| rowspan="4"| 0x7B
 +
| rowspan="4"| Configuration
 +
| rowspan="4"| Client
 +
| colspan="2"| Links Count
 +
| colspan="2"| {{Type|VarInt}}
 +
| The number of links in the following array.
 +
|-
 +
| rowspan="3"| Links
 +
| Is built-in
 +
| rowspan="3"| {{Type|Array}}
 +
| {{Type|Boolean}}
 +
| Determines if the following label is built-in (from enum) or custom (text component).
 +
|-
 +
| Label
 +
| {{Type|VarInt}} {{Type|Enum}} / {{Type|Text Component}}
 +
| See below.
 +
|-
 +
| URL
 +
| {{Type|String}}
 +
| Valid URL.
 +
|}
  
'''1.4.6 Pre-release'''
+
{| class="wikitable" {{added}}
 +
! ID
 +
! Name
 +
! Notes
 +
|-
 +
| 0
 +
| Bug Report
 +
| Displayed on connection error screen; included as a comment in the disconnection report.
 +
|-
 +
| 1
 +
| Community Guidelines
 +
|
 +
|-
 +
| 2
 +
| Support
 +
|
 +
|-
 +
| 3
 +
| Status
 +
|
 +
|-
 +
| 4
 +
| Feedback
 +
|
 +
|-
 +
| 5
 +
| Community
 +
|
 +
|-
 +
| 6
 +
| Website
 +
|
 +
|-
 +
| 7
 +
| Forums
 +
|
 +
|-
 +
| 8
 +
| News
 +
|
 +
|-
 +
| 9
 +
| Announcements
 +
|
 +
|-
 +
|}
  
Protocol version is now 51. Spawn dropped item (0x15) removed, merged into spawn object (0x17). Map chunk bulk (0x38) adds a boolean field with unknown purpose.
+
=== Serverbound ===
  
'''12w49a'''
+
No changes so far.
  
Protocol version is now 50. Packet 0x10 is sent both ways. Packet 0x17 has two new bytes, currently unknown.
+
[[Category:Minecraft Modern]]

Latest revision as of 10:40, 8 June 2024

This page documents the changes from the last stable Minecraft release (currently 1.20.6, protocol 766) to the current pre-release (currently 1.21-pre2, protocol Snapshot 200). 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 documented so far.

Packets

ID Packet name Documentation
Configuration clientbound
0x0F Clientbound Report Details (configuration) Pre
0x10 Clientbound Server Links (configuration) Pre
Play clientbound
0x7A Clientbound Report Details (play) Pre
0x7B Clientbound Server Links (play) Pre

Handshake

No changes so far.

Status

No changes so far.

Login

No changes so far.

Configuration

Clientbound

Clientbound Report Details (configuration)

Contains a list of key-value text entries that are included in any crash or disconnection report generated during connection to the server.

Packet ID State Bound To Field Name Field Type Notes
0x0F Configuration Client Details Count VarInt (32) The number of details in the following array.
Details Title Array String (128)
Description String (4096)

Clientbound Server Links (configuration)

This packet contains a list of links that the Notchian client will display in the menu available from the pause menu. Link labels can be built-in or custom (i.e., any text).

Packet ID State Bound To Field Name Field Type Notes
0x10 Configuration Client Links Count VarInt The number of links in the following array.
Links Is built-in Array Boolean Determines if the following label is built-in (from enum) or custom (text component).
Label VarInt Enum / Text Component See below.
URL String Valid URL.


ID Name Notes
0 Bug Report Displayed on connection error screen; included as a comment in the disconnection report.
1 Community Guidelines
2 Support
3 Status
4 Feedback
5 Community
6 Website
7 Forums
8 News
9 Announcements

Serverbound

No changes so far.

Play

Clientbound

Clientbound Report Details (play)

Contains a list of key-value text entries that are included in any crash or disconnection report generated during connection to the server.

Packet ID State Bound To Field Name Field Type Notes
0x7A Configuration Client Details Count VarInt (32) The number of details in the following array.
Details Title Array String (128)
Description String (4096)

Clientbound Server Links (play)

This packet contains a list of links that the Notchian client will display in the menu available from the pause menu. Link labels can be built-in or custom (i.e., any text).

Packet ID State Bound To Field Name Field Type Notes
0x7B Configuration Client Links Count VarInt The number of links in the following array.
Links Is built-in Array Boolean Determines if the following label is built-in (from enum) or custom (text component).
Label VarInt Enum / Text Component See below.
URL String Valid URL.
ID Name Notes
0 Bug Report Displayed on connection error screen; included as a comment in the disconnection report.
1 Community Guidelines
2 Support
3 Status
4 Feedback
5 Community
6 Website
7 Forums
8 News
9 Announcements

Serverbound

No changes so far.