|
|
(35 intermediate revisions by 6 users not shown) |
Line 1: |
Line 1: |
− | This page documents the changes from the [[Protocol|last stable Minecraft release]] (currently [[Protocol version numbers|1.20.2, protocol 764]]) to the current pre-release (currently [[Protocol version numbers|23w45a, protocol {{Snapshot PVN|1073741986}}]]). 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. |
| | | |
| 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 9: |
Line 9: |
| === Data types === | | === Data types === |
| | | |
− | ==== NBT ====
| + | No changes documented so far. |
− | | |
− | The NBT specification was changed so that the root tag is no longer required to be a [[NBT#Specification:compound_tag|Compound Tag]] when sent over the network.
| |
− | | |
− | Presently in the pre-release, only [[NBT#Specification:compound_tag|Compound Tag]] and [[NBT#Specification:string_tag|String Tag]] types are used as root, but the Notchian server/client implementation is able to handle [[NBT#Specification|NBT Tags]] of any type.
| |
− | | |
− | ==== Chat ====
| |
− | | |
− | The [[Chat]] type is now serialized as a [[NBT#Specification|NBT Tag]] instead of a JSON String, unless explicitly stated otherwise.
| |
− | | |
− | {| class="wikitable"
| |
− | |-
| |
− | ! Name
| |
− | ! Size (bytes)
| |
− | ! Encodes
| |
− | ! Notes
| |
− | |- {{removed}}
| |
− | ! id=Definitions:chat | [[#Definitions:chat|Chat]]
| |
− | | ≥ 1 <br />≤ (262144×4) + 3
| |
− | | See [[Chat]]
| |
− | | Encoded as a String with max length of 262144.
| |
− | |- {{added}}
| |
− | ! id=Definitions:chat | [[#Definitions:chat|Chat]]
| |
− | | Varies
| |
− | | See [[Chat]]
| |
− | | Encoded as a [[NBT|NBT Tag]], with the type of tag used depending on the case:
| |
− | * As a [[NBT#Specification:string_tag|String Tag]]: For components only containing text (no styling, no events etc.).
| |
− | * As a [[NBT#Specification:compound_tag|Compound Tag]]: Every other case.
| |
− | |}
| |
− | | |
− | This affects the following packets and data types containing Chat fields:
| |
− | * [[Protocol#Disconnect (configuration)|Disconnect (configuration)]]
| |
− | * [[Protocol#Resource Pack (configuration)|Resource Pack (configuration)]]
| |
− | * [[Protocol#Boss Bar|Boss Bar]]
| |
− | * [[Protocol#Command Suggestions Response|Command Suggestions Response]]
| |
− | * [[Protocol#Disconnect (play)|Disconnect (play)]]
| |
− | * [[Protocol#Disguised Chat Message|Disguised Chat Message]]
| |
− | * [[Protocol#Map Data|Map Data]]
| |
− | * [[Protocol#Open Screen|Open Screen]]
| |
− | * [[Protocol#Player Chat Message|Player Chat Message]]
| |
− | * [[Protocol#Combat Death|Combat Death]]
| |
− | * [[Protocol#Player Info Update|Player Info Update]]
| |
− | * [[Protocol#Resource Pack (play)|Resource Pack (play)]]
| |
− | * [[Protocol#Server Data|Server Data]]
| |
− | * [[Protocol#Set Action Bar Text|Set Action Bar Text]]
| |
− | * [[Protocol#Update Objectives|Update Objectives]]
| |
− | * [[Protocol#Update Teams|Update Teams]]
| |
− | * [[Protocol#Set Subtitle Text|Set Subtitle Text]]
| |
− | * [[Protocol#Set Title Text|Set Title Text]]
| |
− | * [[Protocol#System Chat Message|System Chat Message]]
| |
− | * [[Protocol#Set Tab List Header And Footer|Set Tab List Header And Footer]]
| |
− | * [[Protocol#Update Advancements|Update Advancements]]
| |
− | <br>
| |
− | * [[Slot|Slot data type (values in the item NBT field)]]
| |
− | * [[Entity_metadata#Entity_Metadata_Format|Chat entity metadata type]]
| |
− | * [[Entity_metadata#Entity_Metadata_Format|OptChat entity metadata type]]
| |
− | <br>
| |
− | However, the following are '''NOT''' affected, as to maintain backwards compatibility with older versions:
| |
− | * [[Protocol#Disconnect (login)|Disconnect (login)]]
| |
− | * [[Server_List_Ping#Status_Response|Server List status response (the description field)]]
| |
− | | |
− | ==== Particle ====
| |
− | | |
− | {| class="wikitable"
| |
− | |-
| |
− | ! Particle Name
| |
− | ! Particle ID
| |
− | ! Data
| |
− | |-
| |
− | | <code>minecraft:ambient_entity_effect</code>
| |
− | | 0
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:angry_villager</code>
| |
− | | 1
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:block</code>
| |
− | | 2
| |
− | |
| |
− | {| class="wikitable"
| |
− | ! Field Name
| |
− | ! Field Type
| |
− | ! Meaning
| |
− | |-
| |
− | | BlockState
| |
− | | VarInt
| |
− | | The ID of the block state.
| |
− | |}
| |
− | |-
| |
− | | <code>minecraft:block_marker</code>
| |
− | | 3
| |
− | |
| |
− | {| class="wikitable"
| |
− | ! Field Name
| |
− | ! Field Type
| |
− | ! Meaning
| |
− | |-
| |
− | | BlockState
| |
− | | VarInt
| |
− | | The ID of the block state.
| |
− | |}
| |
− | |-
| |
− | | <code>minecraft:bubble</code>
| |
− | | 4
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:cloud</code>
| |
− | | 5
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:crit</code>
| |
− | | 6
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:damage_indicator</code>
| |
− | | 7
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:dragon_breath</code>
| |
− | | 8
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:dripping_lava</code>
| |
− | | 9
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:falling_lava</code>
| |
− | | 10
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:landing_lava</code>
| |
− | | 11
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:dripping_water</code>
| |
− | | 12
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:falling_water</code>
| |
− | | 13
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:dust</code>
| |
− | | 14
| |
− | |
| |
− | {| class="wikitable"
| |
− | ! Field Name
| |
− | ! Field Type
| |
− | ! Meaning
| |
− | |-
| |
− | | Red
| |
− | | Float
| |
− | | The red RGB value, between 0 and 1. Divide actual RGB value by 255.
| |
− | |-
| |
− | | Green
| |
− | | Float
| |
− | | The green RGB value, between 0 and 1. Divide actual RGB value by 255.
| |
− | |-
| |
− | | Blue
| |
− | | Float
| |
− | | The blue RGB value, between 0 and 1. Divide actual RGB value by 255.
| |
− | |-
| |
− | | Scale
| |
− | | Float
| |
− | | The scale, will be clamped between 0.01 and 4.
| |
− | |}
| |
− | |-
| |
− | | <code>minecraft:dust_color_transition</code>
| |
− | | 15
| |
− | |
| |
− | {| class="wikitable"
| |
− | ! Field Name
| |
− | ! Field Type
| |
− | ! Meaning
| |
− | |-
| |
− | | From Red
| |
− | | Float
| |
− | | The start red RGB value, between 0 and 1. Divide actual RGB value by 255.
| |
− | |-
| |
− | | From Green
| |
− | | Float
| |
− | | The start green RGB value, between 0 and 1. Divide actual RGB value by 255.
| |
− | |-
| |
− | | From Blue
| |
− | | Float
| |
− | | The start blue RGB value, between 0 and 1. Divide actual RGB value by 255.
| |
− | |-
| |
− | | Scale
| |
− | | Float
| |
− | | The scale, will be clamped between 0.01 and 4.
| |
− | |-
| |
− | | To Red
| |
− | | Float
| |
− | | The end red RGB value, between 0 and 1. Divide actual RGB value by 255.
| |
− | |-
| |
− | | To Green
| |
− | | Float
| |
− | | The end green RGB value, between 0 and 1. Divide actual RGB value by 255.
| |
− | |-
| |
− | | To Blue
| |
− | | Float
| |
− | | The end blue RGB value, between 0 and 1. Divide actual RGB value by 255.
| |
− | |}
| |
− | |-
| |
− | | <code>minecraft:effect</code>
| |
− | | 16
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:elder_guardian</code>
| |
− | | 17
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:enchanted_hit</code>
| |
− | | 18
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:enchant</code>
| |
− | | 19
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:end_rod</code>
| |
− | | 20
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:entity_effect</code>
| |
− | | 21
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:explosion_emitter</code>
| |
− | | 22
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:explosion</code>
| |
− | | 23
| |
− | | None
| |
− | |- {{added}}
| |
− | | <code>minecraft:gust</code>
| |
− | | 24
| |
− | | None
| |
− | |- {{added}}
| |
− | | <code>minecraft:gust_emitter</code>
| |
− | | 25
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:sonic_boom</code>
| |
− | | {{change|24|26}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:falling_dust</code>
| |
− | | {{change|25|27}}
| |
− | |
| |
− | {| class="wikitable"
| |
− | ! Field Name
| |
− | ! Field Type
| |
− | ! Meaning
| |
− | |-
| |
− | | BlockState
| |
− | | VarInt
| |
− | | The ID of the block state.
| |
− | |}
| |
− | |-
| |
− | | <code>minecraft:firework</code>
| |
− | | {{change|26|28}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:fishing</code>
| |
− | | {{change|27|29}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:flame</code>
| |
− | | {{change|28|30}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:cherry_leaves</code>
| |
− | | {{change|29|31}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:sculk_soul</code>
| |
− | | {{change|30|32}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:sculk_charge</code>
| |
− | | {{change|31|33}}
| |
− | |
| |
− | {| class="wikitable"
| |
− | ! Field Name
| |
− | ! Field Type
| |
− | ! Meaning
| |
− | |-
| |
− | | Roll
| |
− | | Float
| |
− | | How much the particle will be rotated when displayed.
| |
− | |}
| |
− | |-
| |
− | | <code>minecraft:sculk_charge_pop</code>
| |
− | | {{change|32|34}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:soul_fire_flame</code>
| |
− | | {{change|33|35}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:soul</code>
| |
− | | {{change|34|36}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:flash</code>
| |
− | | {{change|35|37}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:happy_villager</code>
| |
− | | {{change|36|38}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:composter</code>
| |
− | | {{change|37|39}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:heart</code>
| |
− | | {{change|38|40}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:instant_effect</code>
| |
− | | {{change|39|41}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:item</code>
| |
− | | {{change|40|42}}
| |
− | |
| |
− | {| class="wikitable"
| |
− | ! Field Name
| |
− | ! Field Type
| |
− | ! Meaning
| |
− | |-
| |
− | | Item
| |
− | | [[Slot]]
| |
− | | The item that will be used.
| |
− | |}
| |
− | |-
| |
− | | <code>minecraft:vibration</code>
| |
− | | {{change|41|43}}
| |
− | |
| |
− | {| class="wikitable"
| |
− | ! Field Name
| |
− | ! Field Type
| |
− | ! Meaning
| |
− | |-
| |
− | | Position Source Type
| |
− | | Identifier
| |
− | | The type of the vibration source
| |
− | |-
| |
− | | Block Position
| |
− | | Position
| |
− | | The position of the block the vibration originated from. Only present if Position Type is <code>minecraft:block</code>.
| |
− | |-
| |
− | | Entity ID
| |
− | | VarInt
| |
− | | The ID of the entity the vibration originated from. Only present if Position Type is <code>minecraft:entity</code>.
| |
− | |-
| |
− | | Entity eye height
| |
− | | Float
| |
− | | The height of the entity's eye relative to the entity. Only present if Position Type is <code>minecraft:entity</code>.
| |
− | |-
| |
− | | Ticks
| |
− | | VarInt
| |
− | | The amount of ticks it takes for the vibration to travel from its source to its destination.
| |
− | |}
| |
− | |-
| |
− | | <code>minecraft:item_slime</code>
| |
− | | {{change|42|44}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:item_snowball</code>
| |
− | | {{change|43|45}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:large_smoke</code>
| |
− | | {{change|44|46}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:lava</code>
| |
− | | {{change|45|47}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:mycelium</code>
| |
− | | {{change|46|48}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:note</code>
| |
− | | {{change|47|49}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:poof</code>
| |
− | | {{change|48|50}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:portal</code>
| |
− | | {{change|49|51}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:rain</code>
| |
− | | {{change|50|52}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:smoke</code>
| |
− | | {{change|51|53}}
| |
− | | None
| |
− | |- {{added}}
| |
− | | <code>minecraft:white_smoke</code>
| |
− | | 54
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:sneeze</code>
| |
− | | {{change|52|55}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:spit</code>
| |
− | | {{change|53|56}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:squid_ink</code>
| |
− | | {{change|54|57}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:sweep_attack</code>
| |
− | | {{change|55|58}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:totem_of_undying</code>
| |
− | | {{change|56|59}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:underwater</code>
| |
− | | {{change|57|60}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:splash</code>
| |
− | | {{change|58|61}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:witch</code>
| |
− | | {{change|59|62}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:bubble_pop</code>
| |
− | | {{change|60|63}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:current_down</code>
| |
− | | {{change|61|64}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:bubble_column_up</code>
| |
− | | {{change|62|65}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:nautilus</code>
| |
− | | {{change|63|66}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:dolphin</code>
| |
− | | {{change|64|67}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:campfire_cosy_smoke</code>
| |
− | | {{change|65|68}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:campfire_signal_smoke</code>
| |
− | | {{change|66|69}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:dripping_honey</code>
| |
− | | {{change|67|70}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:falling_honey</code>
| |
− | | {{change|68|71}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:landing_honey</code>
| |
− | | {{change|69|72}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:falling_nectar</code>
| |
− | | {{change|70|73}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:falling_spore_blossom</code>
| |
− | | {{change|71|74}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:ash</code>
| |
− | | {{change|72|75}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:crimson_spore</code>
| |
− | | {{change|73|76}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:warped_spore</code>
| |
− | | {{change|74|77}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:spore_blossom_air</code>
| |
− | | {{change|75|78}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:dripping_obsidian_tear</code>
| |
− | | {{change|76|79}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:falling_obsidian_tear</code>
| |
− | | {{change|77|80}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:landing_obsidian_tear</code>
| |
− | | {{change|78|81}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:reverse_portal</code>
| |
− | | {{change|79|82}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:white_ash</code>
| |
− | | {{change|80|83}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:small_flame</code>
| |
− | | {{change|81|84}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:snowflake</code>
| |
− | | {{change|82|85}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:dripping_dripstone_lava</code>
| |
− | | {{change|83|86}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:falling_dripstone_lava</code>
| |
− | | {{change|84|87}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:dripping_dripstone_water</code>
| |
− | | {{change|85|88}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:falling_dripstone_water</code>
| |
− | | {{change|86|89}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:glow_squid_ink</code>
| |
− | | {{change|87|90}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:glow</code>
| |
− | | {{change|88|91}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:wax_on</code>
| |
− | | {{change|89|92}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:wax_off</code>
| |
− | | {{change|90|93}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:electric_spark</code>
| |
− | | {{change|91|94}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:scrape</code>
| |
− | | {{change|92|95}}
| |
− | | None
| |
− | |-
| |
− | | <code>minecraft:shriek</code>
| |
− | | {{change|93|96}}
| |
− | |
| |
− | {| class="wikitable"
| |
− | ! Field Name
| |
− | ! Field Type
| |
− | ! Meaning
| |
− | |-
| |
− | | Delay
| |
− | | VarInt
| |
− | | The time in ticks before the particle is displayed
| |
− | |}
| |
− | |-
| |
− | | <code>minecraft:egg_crack</code>
| |
− | | {{change|94|97}}
| |
− | | None
| |
− | |- {{added}}
| |
− | | <code>minecraft:dust_plume</code>
| |
− | | 98
| |
− | | None
| |
− | |- {{added}}
| |
− | | <code>minecraft:gust_dust</code>
| |
− | | 99
| |
− | | None
| |
− | |- {{added}}
| |
− | | <code>minecraft:trial_spawner_detection</code>
| |
− | | 100
| |
− | | None
| |
− | |}
| |
| | | |
| === Packets === | | === Packets === |
Line 624: |
Line 19: |
| |- | | |- |
| !colspan="4"| Configuration clientbound | | !colspan="4"| Configuration clientbound |
− | {{PacketList|0x07|Feature Flags}} | + | {{PacketList|0x0F|Clientbound Report Details (configuration)|rel=added}} |
| + | {{PacketList|0x10|Clientbound Server Links (configuration)|rel=added}} |
| |- | | |- |
| !colspan="4"| Play clientbound | | !colspan="4"| Play clientbound |
− | {{PacketList|0x1E|Explosion}} | + | {{PacketList|0x7A|Clientbound Report Details (play)|rel=added}} |
− | {{PacketList|0x20|Game Event}}
| + | {{PacketList|0x7B|Clientbound Server Links (play)|rel=added}} |
− | {{PacketList|0x6C|Set Ticking State|rel=added}}
| |
− | {{PacketList|0x6D|Step Tick|rel=added}}
| |
− | {{PacketList|{{change|0x6C|0x6E}}|Update Advancements|pre=unchanged}}
| |
− | {{PacketList|{{change|0x6D|0x6F}}|Update Attributes|pre=unchanged}}
| |
− | {{PacketList|{{change|0x6E|0x70}}|Entity Effect|pre=unchanged}}
| |
− | {{PacketList|{{change|0x6F|0x71}}|Update Recipes|pre=unchanged}}
| |
− | {{PacketList|{{change|0x70|0x72}}|Update Tags|pre=unchanged}}
| |
− | |-
| |
− | !colspan="4"| Play serverbound
| |
− | {{PacketList|0x0F|Change Container Slot State|rel=added}}
| |
− | {{PacketList|{{change|0x0F|0x10}}|Serverbound Plugin Message (play)|pre=unchanged}}
| |
− | {{PacketList|{{change|0x10|0x11}}|Edit Book|pre=unchanged}}
| |
− | {{PacketList|{{change|0x11|0x12}}|Query Entity Tag|pre=unchanged}} | |
− | {{PacketList|{{change|0x12|0x13}}|Interact|pre=unchanged}}
| |
− | {{PacketList|{{change|0x13|0x14}}|Jigsaw Generate|pre=unchanged}}
| |
− | {{PacketList|{{change|0x14|0x15}}|Serverbound Keep Alive (play)|pre=unchanged}}
| |
− | {{PacketList|{{change|0x15|0x16}}|Lock Difficulty|pre=unchanged}}
| |
− | {{PacketList|{{change|0x16|0x17}}|Set Player Position|pre=unchanged}}
| |
− | {{PacketList|{{change|0x17|0x18}}|Set Player Position and Rotation|pre=unchanged}}
| |
− | {{PacketList|{{change|0x18|0x19}}|Set Player Rotation|pre=unchanged}}
| |
− | {{PacketList|{{change|0x19|0x1A}}|Set Player On Ground|pre=unchanged}}
| |
− | {{PacketList|{{change|0x1A|0x1B}}|Move Vehicle|pre=unchanged}}
| |
− | {{PacketList|{{change|0x1B|0x1C}}|Paddle Boat|pre=unchanged}}
| |
− | {{PacketList|{{change|0x1C|0x1D}}|Pick Item|pre=unchanged}}
| |
− | {{PacketList|{{change|0x1D|0x1E}}|Ping Request (play)|pre=unchanged}}
| |
− | {{PacketList|{{change|0x1E|0x1F}}|Place Recipe|pre=unchanged}}
| |
− | {{PacketList|{{change|0x1F|0x20}}|Player Abilities|pre=unchanged}}
| |
− | {{PacketList|{{change|0x20|0x21}}|Player Action|pre=unchanged}}
| |
− | {{PacketList|{{change|0x21|0x22}}|Player Command|pre=unchanged}}
| |
− | {{PacketList|{{change|0x22|0x23}}|Player Input|pre=unchanged}}
| |
− | {{PacketList|{{change|0x23|0x24}}|Pong (play)|pre=unchanged}}
| |
− | {{PacketList|{{change|0x24|0x25}}|Change Recipe Book Settings|pre=unchanged}}
| |
− | {{PacketList|{{change|0x25|0x26}}|Set Seen Recipe|pre=unchanged}}
| |
− | {{PacketList|{{change|0x26|0x27}}|Rename Item|pre=unchanged}}
| |
− | {{PacketList|{{change|0x27|0x28}}|Resource Pack Response (play)|pre=unchanged}}
| |
− | {{PacketList|{{change|0x28|0x29}}|Seen Advancements|pre=unchanged}}
| |
− | {{PacketList|{{change|0x29|0x2A}}|Select Trade|pre=unchanged}}
| |
− | {{PacketList|{{change|0x2A|0x2B}}|Set Beacon Effect|pre=unchanged}}
| |
− | {{PacketList|{{change|0x2B|0x2C}}|Set Held Item|pre=unchanged}}
| |
− | {{PacketList|{{change|0x2C|0x2D}}|Program Command Block|pre=unchanged}}
| |
− | {{PacketList|{{change|0x2D|0x2E}}|Program Command Block Minecart|pre=unchanged}}
| |
− | {{PacketList|{{change|0x2E|0x2F}}|Set Creative Mode Slot|pre=unchanged}}
| |
− | {{PacketList|{{change|0x2F|0x30}}|Program Jigsaw Block}}
| |
− | {{PacketList|{{change|0x30|0x31}}|Program Structure Block|pre=unchanged}}
| |
− | {{PacketList|{{change|0x31|0x32}}|Update Sign|pre=unchanged}}
| |
− | {{PacketList|{{change|0x32|0x33}}|Swing Arm|pre=unchanged}}
| |
− | {{PacketList|{{change|0x33|0x34}}|Teleport To Entity|pre=unchanged}}
| |
− | {{PacketList|{{change|0x34|0x35}}|Use Item On|pre=unchanged}}
| |
− | {{PacketList|{{change|0x35|0x36}}|Use Item|pre=unchanged}}
| |
− | |}
| |
− | | |
− | == New/modified data types ==
| |
− | | |
− | No changes so far.
| |
− | | |
− | == Entity Metadata ==
| |
− | | |
− | {| class="wikitable"
| |
− | ! Type ([[Data Types#Definitions:varint|VarInt]] Enum)
| |
− | ! Value (Varies)
| |
− | ! Notes
| |
− | |-
| |
− | | 0
| |
− | | [[Data Types#Definitions:byte|Byte]]
| |
− | |
| |
− | |-
| |
− | | 1
| |
− | | [[Data Types#Definitions:varint|VarInt]]
| |
− | |
| |
− | |-
| |
− | | 2
| |
− | | [[Data Types#Definitions:varlong|VarLong]]
| |
− | |
| |
− | |-
| |
− | | 3
| |
− | | [[Data Types#Definitions:float|Float]]
| |
− | |
| |
− | |-
| |
− | | 4
| |
− | | [[Data Types#Definitions:string|String]]
| |
− | |
| |
− | |-
| |
− | | 5
| |
− | | [[Data Types#Definitions:chat|Chat]]
| |
− | |
| |
− | |-
| |
− | | 6
| |
− | | OptChat (Boolean + [[Data Types#Definitions:chat|Chat]])
| |
− | | [[Data Types#Definitions:chat|Chat]] is present if the Boolean is set to true
| |
− | |-
| |
− | | 7
| |
− | | [[Data Types#Definitions:slot|Slot]]
| |
− | |
| |
− | |-
| |
− | | 8
| |
− | | [[Data Types#Definitions:boolean|Boolean]]
| |
− | |
| |
− | |-
| |
− | | 9
| |
− | | [[Data Types#Definitions:rotation|Rotation]]
| |
− | | 3 [[Data Types#Definitions:float|Floats]]: rotation on x, rotation on y, rotation on z
| |
− | |-
| |
− | | 10
| |
− | | [[Data Types#Position|Position]]
| |
− | |
| |
− | |-
| |
− | | 11
| |
− | | OptPosition (Boolean + Position)
| |
− | | Position is present if the Boolean is set to true
| |
− | |-
| |
− | | 12
| |
− | | Direction ([[Data Types#Definitions:varint|VarInt]])
| |
− | | (Down = 0, Up = 1, North = 2, South = 3, West = 4, East = 5)
| |
− | |-
| |
− | | 13
| |
− | | OptUUID (Boolean + UUID)
| |
− | | UUID is present if the Boolean is set to true
| |
− | |-
| |
− | | 14
| |
− | | BlockID ([[Data Types#Definitions:varint|VarInt]])
| |
− | |-
| |
− | | 15
| |
− | | OptBlockID ([[Data Types#Definitions:varint|VarInt]])
| |
− | | 0 for absent (implies air); otherwise, a block state ID as per the global palette
| |
− | |-
| |
− | | 16
| |
− | | [[Data_types#Definitions:nbt|NBT]]
| |
− | |
| |
− | |-
| |
− | | 17
| |
− | | [[Data Types#Particle|Particle]]
| |
− | |
| |
− | |-
| |
− | | 18
| |
− | | Villager Data
| |
− | | 3 [[Data Types#Definitions:varint|VarInts]]: villager type, villager profession, level
| |
− | |-
| |
− | | 19
| |
− | | OptVarInt
| |
− | | 0 for absent; 1 + actual value otherwise. Used for entity IDs.
| |
− | |-
| |
− | | 20
| |
− | | Pose
| |
− | | A [[Data Types#Definitions:varint|VarInt]] enum: 0: STANDING, 1: FALL_FLYING, 2: SLEEPING, 3: SWIMMING, 4: SPIN_ATTACK, 5: SNEAKING, 6: LONG_JUMPING, 7: DYING, 8: CROAKING, 9: USING_TONGUE, 10: SITTING, 11: ROARING, 12: SNIFFING, 13: EMERGING, 14: DIGGING{{change||, 15: SLIDING, 16: SHOOTING, 17: INHALING}}
| |
− | |-
| |
− | | 21
| |
− | | Cat Variant
| |
− | | A [[Data Types#Definitions:varint|VarInt]] that points towards the CAT_VARIANT registry.
| |
− | |-
| |
− | | 22
| |
− | | Frog Variant
| |
− | | A [[Data Types#Definitions:varint|VarInt]] that points towards the FROG_VARIANT registry.
| |
− | |-
| |
− | | 23
| |
− | | OptGlobalPos (Boolean + GlobalPos)
| |
− | | GlobalPos consists of a dimension identifier and [[Data Types#Position|Position]].
| |
− | |-
| |
− | | 24
| |
− | | Painting Variant
| |
− | | A [[Data Types#Definitions:varint|VarInt]] that points towards the PAINTING_VARIANT registry.
| |
− | |-
| |
− | | 25
| |
− | | Sniffer State
| |
− | | A [[Data Types#Definitions:varint|VarInt]] enum: IDLING = 0, FEELING_HAPPY = 1, SCENTING = 2, SNIFFING = 3, SEARCHING = 4, DIGGING = 5, RISING = 6
| |
− | |-
| |
− | | 26
| |
− | | Vector3
| |
− | | 3 [[Data Types#Definitions:float|Floats]]: x, y, z
| |
− | |-
| |
− | | 27
| |
− | | Quaternion
| |
− | | 4 [[Data Types#Definitions:float|Floats]]: x, y, z, w
| |
− | |-
| |
− | |}
| |
− | | |
− | === Abstract Vehicle ===
| |
− | | |
− | {{Metadata inherit|Abstract Vehicle|inherits=Entity|start_at=8}}
| |
− | | |
− | {| class="wikitable"
| |
− | ! Index
| |
− | ! Type
| |
− | !style="width: 250px;" colspan="2"| Meaning
| |
− | ! Default
| |
− | |- {{added}}
| |
− | | {{Metadata id|}}
| |
− | | VarInt
| |
− | |colspan="2"| Shaking power
| |
− | | 0
| |
− | |- {{added}}
| |
− | | {{Metadata id|}}
| |
− | | VarInt
| |
− | |colspan="2"| Shaking direction
| |
− | | 1
| |
− | |- {{added}}
| |
− | | {{Metadata id|}}
| |
− | | Float
| |
− | |colspan="2"| Shaking multiplier
| |
− | | 0.0
| |
− | |-
| |
− | |}
| |
− | | |
− | === Abstract Minecart===
| |
− | | |
− | {{Metadata inherit|Abstract Minecart|inherits=Abstract Vehicle}}
| |
− | | |
− | {| class="wikitable"
| |
− | ! Index
| |
− | ! Type
| |
− | !style="width: 250px;" colspan="2"| Meaning
| |
− | ! Default
| |
− | |- {{removed}}
| |
− | | 8
| |
− | | VarInt
| |
− | |colspan="2"| Shaking power
| |
− | | 0
| |
− | |- {{removed}}
| |
− | | 9
| |
− | | VarInt
| |
− | |colspan="2"| Shaking direction
| |
− | | 1
| |
− | |- {{removed}}
| |
− | | 10
| |
− | | Float
| |
− | |colspan="2"| Shaking multiplier
| |
− | | 0.0
| |
− | |-
| |
− | | 11
| |
− | | VarInt
| |
− | |colspan="2"| Custom block ID and damage
| |
− | | 0
| |
− | |-
| |
− | | 12
| |
− | | VarInt
| |
− | |colspan="2"| Custom block Y position (in 16ths of a block)
| |
− | | 6
| |
− | |-
| |
− | | 13
| |
− | | Boolean
| |
− | |colspan="2"| Show custom block
| |
− | | false
| |
− | |}
| |
− | | |
− | === Boat ===
| |
− | | |
− | {{Metadata inherit|Boat|inherits=Abstract Vehicle}}
| |
− | | |
− | {| class="wikitable"
| |
− | ! Index
| |
− | ! Type
| |
− | !style="width: 250px;" colspan="2"| Meaning
| |
− | ! Default
| |
− | |- {{removed}}
| |
− | | 8
| |
− | | VarInt
| |
− | |colspan="2"| Time since last hit
| |
− | | 0
| |
− | |- {{removed}}
| |
− | | 9
| |
− | | VarInt
| |
− | |colspan="2"| Forward direction
| |
− | | 1
| |
− | |- {{removed}}
| |
− | | 10
| |
− | | Float
| |
− | |colspan="2"| Damage taken
| |
− | | 0.0
| |
− | |-
| |
− | | 11
| |
− | | VarInt
| |
− | |colspan="2"| Type (0=oak, 1=spruce, 2=birch, 3=jungle, 4=acacia, 5=dark oak)
| |
− | | 0
| |
− | |-
| |
− | | 12
| |
− | | Boolean
| |
− | |colspan="2"| Is left paddle turning
| |
− | | false
| |
| |- | | |- |
− | | 13
| + | |} |
− | | Boolean
| |
− | |colspan="2"| Is right paddle turning
| |
− | | false
| |
− | |-
| |
− | | 14
| |
− | | VarInt
| |
− | |colspan="2"| Splash timer
| |
− | | 0
| |
− | |}
| |
− | | |
− | == Block Actions ==
| |
− | | |
− | No changes so far.
| |
− | | |
− | == Inventories ==
| |
− | | |
− | No changes so far.
| |
| | | |
− | == Plugin Channels == | + | == Handshake == |
| | | |
| No changes so far. | | No changes so far. |
| | | |
| == Status == | | == Status == |
− |
| |
− | === Clientbound ===
| |
− |
| |
− | No changes so far.
| |
− |
| |
− | === Serverbound ===
| |
| | | |
| No changes so far. | | No changes so far. |
| | | |
| == Login == | | == Login == |
− |
| |
− | === Clientbound ===
| |
− |
| |
− | No changes so far.
| |
− |
| |
− | === Serverbound ===
| |
| | | |
| No changes so far. | | No changes so far. |
Line 954: |
Line 44: |
| === Clientbound === | | === Clientbound === |
| | | |
− | ==== Feature Flags ==== | + | ==== Clientbound Report Details (configuration) ==== |
| | | |
− | Used to enable and disable features, generally experimental ones, on the client.
| + | 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" | + | {| class="wikitable" {{added}} |
| ! Packet ID | | ! Packet ID |
| ! State | | ! State |
| ! Bound To | | ! Bound To |
− | ! Field Name | + | ! colspan="2"| Field Name |
− | ! Field Type | + | ! colspan="2"| Field Type |
| ! Notes | | ! Notes |
| |- | | |- |
− | | rowspan="2"| 0x07 | + | | rowspan="3"| 0x0F |
− | | rowspan="2"| Configuration | + | | rowspan="3"| Configuration |
− | | rowspan="2"| Client | + | | rowspan="3"| Client |
− | | Total Features | + | | colspan="2"| Details Count |
− | | VarInt | + | | colspan="2"| {{Type|VarInt}} (32) |
− | | Number of features that appear in the array below. | + | | The number of details in the following array. |
| |- | | |- |
− | | Feature Flags | + | | rowspan="2"| Details |
− | | Identifier Array | + | | Title |
| + | | rowspan="2"| {{Type|Array}} |
| + | | {{Type|String}} (128) |
| | | | | |
− | |} | + | |- |
| + | | Description |
| + | | {{Type|String}} (4096) |
| + | | |
| + | |} |
| | | |
− | As of {{change|1.20.2|1.20.3}}, the following feature flags are available:
| + | ==== Clientbound Server Links (configuration) ==== |
| | | |
− | * minecraft:vanilla - enables vanilla features</li>
| + | 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). |
− | * minecraft:bundle - enables support for the bundle</li>
| |
− | * minecraft:trade_rebalance - enables support for the rebalanced villager trades</li>
| |
− | * {{change||minecraft:update_1_21 - enables support for 1.21 features}}</li>
| |
| | | |
− | === Serverbound ===
| + | {| class="wikitable" {{added}} |
− | | |
− | No changes so far.
| |
− | | |
− | == Play ==
| |
− | | |
− | === Clientbound ===
| |
− | | |
− | ==== Explosion ====
| |
− | | |
− | Sent when an explosion occurs (creepers, TNT, and ghast fireballs).
| |
− | | |
− | Each block in Records is set to air. Coordinates for each axis in record is int(X) + record.x
| |
− | | |
− | {{warning2|There is currently a disparity in the Notchian implementation between the data that is read from and written to the network. The write logic only serializes the particle id for the fields <code>Small explosion particle</code> and <code>Large explosion particle</code>, while the read logic expects the particle id and [[Protocol#Particle|extra required data]]. See [https://bugs.mojang.com/browse/MC-266537 MC-266537] for more information.}}
| |
− | | |
− | {| class="wikitable" | |
| ! Packet ID | | ! Packet ID |
| ! State | | ! State |
| ! Bound To | | ! Bound To |
− | ! colspan="2" | Field Name | + | ! colspan="2"| Field Name |
− | ! Field Type | + | ! colspan="2"| Field Type |
| ! Notes | | ! Notes |
| |- | | |- |
− | | rowspan="15"| 0x1E | + | | rowspan="4"| 0x10 |
− | | rowspan="15"| Play | + | | rowspan="4"| Configuration |
− | | rowspan="15"| Client | + | | rowspan="4"| Client |
− | | colspan="2" | X | + | | colspan="2"| Links Count |
− | | Double
| + | | colspan="2"| {{Type|VarInt}} |
− | |
| + | | The number of links in the following array. |
− | |-
| |
− | | colspan="2" | Y | |
− | | Double
| |
− | | | |
| |- | | |- |
− | | colspan="2" | Z | + | | rowspan="3"| Links |
− | | Double | + | | Is built-in |
− | | | + | | rowspan="3"| {{Type|Array}} |
| + | | {{Type|Boolean}} |
| + | | Determines if the following label is built-in (from enum) or custom (text component). |
| |- | | |- |
− | | colspan="2" | Strength | + | | Label |
− | | Float | + | | {{Type|VarInt}} {{Type|Enum}} / {{Type|Text Component}} |
− | | {{change|A strength greater than or equal to 2.0 spawns a <code>minecraft:explosion_emitter</code> particle, while a lesser strength spawns a <code>minecraft:explosion</code> particle.}}
| + | | See below. |
− | {{change||If the strength is greater or equal to 2.0, or the block interaction is not 0 (keep), large explosion particles are used. Otherwise, small explosion particles are used.}} | |
| |- | | |- |
− | | colspan="2" | Record Count | + | | URL |
− | | VarInt
| + | | {{Type|String}} |
− | | Number of elements in the following array.
| + | | Valid URL. |
− | |-
| + | |} |
− | | colspan="2" | Records
| |
− | | Array of (Byte, Byte, Byte)
| |
− | | Each record is 3 signed bytes long; the 3 bytes are the XYZ (respectively) signed offsets of affected blocks.
| |
− | |-
| |
− | | colspan="2" | Player Motion X | |
− | | Float
| |
− | | X velocity of the player being pushed by the explosion.
| |
− | |-
| |
− | | colspan="2" | Player Motion Y
| |
− | | Float
| |
− | | Y velocity of the player being pushed by the explosion.
| |
− | |-
| |
− | | colspan="2" | Player Motion Z
| |
− | | Float
| |
− | | Z velocity of the player being pushed by the explosion.
| |
− | |- {{added}}
| |
− | | colspan="2" | Block interaction
| |
− | | VarInt Enum
| |
− | | 0 = keep, 1 = destroy, 2 = destroy_with_decay, 3 = trigger_block.
| |
− | |- {{added}}
| |
− | | colspan="2" | Small explosion particle | |
− | | VarInt
| |
− | | The particle ID listed in [[#Particle|the particle data type]].
| |
− | |- {{added}}
| |
− | | colspan="2" | Large explosion particle
| |
− | | VarInt
| |
− | | The particle ID listed in [[#Particle|the particle data type]].
| |
− | |- {{added}}
| |
− | | rowspan="3" | Explosion sound
| |
− | | Sound Name
| |
− | | Identifier
| |
− | | The name of the sound played.
| |
− | |- {{added}}
| |
− | | Has Fixed Range
| |
− | | Optional Boolean
| |
− | | Whether is has fixed range.
| |
− | |- {{added}}
| |
− | | Range
| |
− | | Optional Float
| |
− | | The fixed range of the sound. Only present if previous boolean is true.
| |
− | |}
| |
| | | |
− | ==== Game Event ====
| |
| | | |
− | Used for a wide variety of game events, from weather to bed use to game mode to demo messages.
| + | {| class="wikitable" {{added}} |
− | | + | ! ID |
− | {| class="wikitable" | + | ! Name |
− | ! Packet ID | |
− | ! State | |
− | ! Bound To
| |
− | ! Field Name
| |
− | ! Field Type
| |
| ! Notes | | ! Notes |
− | |-
| |
− | | rowspan="2"| 0x20
| |
− | | rowspan="2"| Play
| |
− | | rowspan="2"| Client
| |
− | | Event
| |
− | | Unsigned Byte
| |
− | | See below.
| |
− | |-
| |
− | | Value
| |
− | | Float
| |
− | | Depends on Event.
| |
− | |}
| |
− |
| |
− | ''Events'':
| |
− |
| |
− | {| class="wikitable"
| |
− | ! Event
| |
− | ! Effect
| |
− | ! Value
| |
| |- | | |- |
| | 0 | | | 0 |
− | | No respawn block available | + | | Bug Report |
− | | Note: Displays message 'block.minecraft.spawn.not_valid' (You have no home bed or charged respawn anchor, or it was obstructed) to the player. | + | | Displayed on connection error screen; included as a comment in the disconnection report. |
| |- | | |- |
| | 1 | | | 1 |
− | | Begin raining | + | | Community Guidelines |
− | | | + | | |
| |- | | |- |
| | 2 | | | 2 |
− | | End raining | + | | Support |
− | | | + | | |
| |- | | |- |
| | 3 | | | 3 |
− | | Change game mode | + | | Status |
− | | 0: Survival, 1: Creative, 2: Adventure, 3: Spectator. | + | | |
| |- | | |- |
| | 4 | | | 4 |
− | | Win game | + | | Feedback |
− | | 0: Just respawn player.<br>1: Roll the credits and respawn player.<br>Note that 1 is only sent by notchian server when player has not yet achieved advancement "The end?", else 0 is sent. | + | | |
| |- | | |- |
| | 5 | | | 5 |
− | | Demo event | + | | Community |
− | | 0: Show welcome to demo screen.<br>101: Tell movement controls.<br>102: Tell jump control.<br>103: Tell inventory control.<br>104: Tell that the demo is over and print a message about how to take a screenshot. | + | | |
| |- | | |- |
| | 6 | | | 6 |
− | | Arrow hit player | + | | Website |
− | | Note: Sent when any player is struck by an arrow. | + | | |
| |- | | |- |
| | 7 | | | 7 |
− | | Rain level change | + | | Forums |
− | | Note: Seems to change both sky color and lighting.<br>Rain level ranging from 0 to 1. | + | | |
| |- | | |- |
| | 8 | | | 8 |
− | | Thunder level change | + | | News |
− | | Note: Seems to change both sky color and lighting (same as Rain level change, but doesn't start rain). It also requires rain to render by notchian client.<br>Thunder level ranging from 0 to 1. | + | | |
| |- | | |- |
| | 9 | | | 9 |
− | | Play pufferfish sting sound | + | | Announcements |
| + | | |
| |- | | |- |
− | | 10
| |
− | | Play elder guardian mob appearance (effect and sound)
| |
− | |
| |
− | |-
| |
− | | 11
| |
− | | Enable respawn screen
| |
− | | 0: Enable respawn screen.<br>1: Immediately respawn (sent when the <code>doImmediateRespawn</code> gamerule changes).
| |
− | |-
| |
− | | 12
| |
− | | Limited crafting
| |
− | | 0: Disable limited crafting.<br>1: Enable limited crafting (sent when the <code>doLimitedCrafting</code> gamerule changes).
| |
− | |- {{added}}
| |
− | | 13
| |
− | | Start waiting for level chunks
| |
− | | Instructs the client to begin the waiting process for the level chunks.<br>Sent by the server after the level is cleared on the client and is being re-sent (either during the first, or subsequent reconfigurations).
| |
| |} | | |} |
| | | |
− | ==== Set Ticking State ==== | + | === Serverbound === |
| + | |
| + | No changes so far. |
| + | |
| + | == Play == |
| + | |
| + | === Clientbound === |
| | | |
− | Used to adjust the ticking rate of the client, and whether it's frozen.
| + | ==== 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. |
| | | |
| {| class="wikitable" {{added}} | | {| class="wikitable" {{added}} |
Line 1,170: |
Line 172: |
| ! State | | ! State |
| ! Bound To | | ! Bound To |
− | ! Field Name | + | ! colspan="2"| Field Name |
− | ! Field Type | + | ! colspan="2"| Field Type |
| ! Notes | | ! Notes |
| |- | | |- |
− | | rowspan="2" | 0x6C | + | | rowspan="3"| 0x7A |
− | | rowspan="2" | Play | + | | rowspan="3"| Configuration |
− | | rowspan="2" | Server | + | | rowspan="3"| Client |
− | | Tick rate | + | | colspan="2"| Details Count |
− | | Float | + | | colspan="2"| {{Type|VarInt}} (32) |
| + | | The number of details in the following array. |
| + | |- |
| + | | rowspan="2"| Details |
| + | | Title |
| + | | rowspan="2"| {{Type|Array}} |
| + | | {{Type|String}} (128) |
| | | | | |
| |- | | |- |
− | | Is frozen | + | | Description |
− | | Boolean | + | | {{Type|String}} (4096) |
| | | | | |
− | |}
| + | |} |
| | | |
− | ==== Step Tick ==== | + | ==== Clientbound Server Links (play) ==== |
| | | |
− | Advances the client processing by the specified number of ticks. Has no effect is the client ticking is not frozen.
| + | 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" {{added}} | | {| class="wikitable" {{added}} |
Line 1,194: |
Line 202: |
| ! State | | ! State |
| ! Bound To | | ! Bound To |
− | ! Field Name | + | ! colspan="2"| Field Name |
− | ! Field Type | + | ! colspan="2"| Field Type |
| ! Notes | | ! Notes |
| |- | | |- |
− | | 0x6D | + | | rowspan="4"| 0x7B |
− | | Play | + | | rowspan="4"| Configuration |
− | | Client | + | | rowspan="4"| Client |
− | | Tick steps | + | | colspan="2"| Links Count |
− | | VarInt | + | | colspan="2"| {{Type|VarInt}} |
− | | | + | | The number of links in the following array. |
− | |} | + | |- |
− | | + | | rowspan="3"| Links |
− | === Serverbound === | + | | Is built-in |
− | | + | | rowspan="3"| {{Type|Array}} |
− | ==== Change Container Slot State ==== | + | | {{Type|Boolean}} |
− | | + | | Determines if the following label is built-in (from enum) or custom (text component). |
− | This packet is sent by the client when toggling the state of a Crafter.
| + | |- |
| + | | Label |
| + | | {{Type|VarInt}} {{Type|Enum}} / {{Type|Text Component}} |
| + | | See below. |
| + | |- |
| + | | URL |
| + | | {{Type|String}} |
| + | | Valid URL. |
| + | |} |
| | | |
| {| class="wikitable" {{added}} | | {| class="wikitable" {{added}} |
− | ! Packet ID | + | ! ID |
− | ! State | + | ! Name |
− | ! Bound To
| |
− | ! Field Name
| |
− | ! Field Type
| |
| ! Notes | | ! Notes |
| |- | | |- |
− | | rowspan="3"| 0x0F | + | | 0 |
− | | rowspan="3"| Play | + | | Bug Report |
− | | rowspan="3"| Server | + | | Displayed on connection error screen; included as a comment in the disconnection report. |
− | | Slot ID | + | |- |
− | | VarInt | + | | 1 |
− | | This is the ID of the slot that was changed. | + | | Community Guidelines |
| + | | |
| + | |- |
| + | | 2 |
| + | | Support |
| + | | |
| |- | | |- |
− | | Window ID | + | | 3 |
− | | VarInt | + | | Status |
− | | This is the ID of the window that was changed. | + | | |
| |- | | |- |
− | | State | + | | 4 |
− | | Boolean | + | | Feedback |
− | | The new state of the slot. True for enabled, false for disabled. | + | | |
− | |}
| |
− | | |
− | ==== Program Jigsaw Block ====
| |
− | | |
− | Sent when Done is pressed on the {{Minecraft Wiki|Jigsaw Block}} interface.
| |
− | | |
− | {| class="wikitable"
| |
− | ! Packet ID
| |
− | ! State
| |
− | ! Bound To
| |
− | ! Field Name
| |
− | ! Field Type
| |
− | ! Notes
| |
| |- | | |- |
− | | rowspan="8"| 0x2F | + | | 5 |
− | | rowspan="8"| Play
| + | | Community |
− | | rowspan="8"| Server
| + | | |
− | | Location
| |
− | | Position | |
− | | Block entity location | |
| |- | | |- |
− | | Name | + | | 6 |
− | | Identifier | + | | Website |
− | | | + | | |
| |- | | |- |
− | | Target | + | | 7 |
− | | Identifier | + | | Forums |
− | | | + | | |
| |- | | |- |
− | | Pool | + | | 8 |
− | | Identifier | + | | News |
− | | | + | | |
| |- | | |- |
− | | Final state | + | | 9 |
− | | String (32767) | + | | Announcements |
− | | "Turns into" on the GUI, <code>final_state</code> in NBT. | + | | |
| |- | | |- |
− | | Joint type
| |
− | | String (32767)
| |
− | | <code>rollable</code> if the attached piece can be rotated, else <code>aligned</code>.
| |
− | |- {{added}}
| |
− | | Selection priority
| |
− | | VarInt
| |
− | |
| |
− | |- {{added}}
| |
− | | Placement priority
| |
− | | VarInt
| |
− | |
| |
| |} | | |} |
| + | |
| + | === Serverbound === |
| + | |
| + | No changes so far. |
| | | |
| [[Category:Minecraft Modern]] | | [[Category:Minecraft Modern]] |