diff --git a/api/src/main/java/com/velocitypowered/api/network/ProtocolVersion.java b/api/src/main/java/com/velocitypowered/api/network/ProtocolVersion.java index e803c3024..3062c63c1 100644 --- a/api/src/main/java/com/velocitypowered/api/network/ProtocolVersion.java +++ b/api/src/main/java/com/velocitypowered/api/network/ProtocolVersion.java @@ -94,7 +94,8 @@ public enum ProtocolVersion implements Ordered { MINECRAFT_1_21_6(771, "1.21.6"), MINECRAFT_1_21_7(772, "1.21.7", "1.21.8"), MINECRAFT_1_21_9(773, "1.21.9", "1.21.10"), - MINECRAFT_1_21_11(774, "1.21.11"); + MINECRAFT_1_21_11(774, "1.21.11"), + MINECRAFT_26_1(775, "26.1"); private static final int SNAPSHOT_BIT = 30; diff --git a/proxy/src/main/java/com/velocitypowered/proxy/protocol/StateRegistry.java b/proxy/src/main/java/com/velocitypowered/proxy/protocol/StateRegistry.java index 67b010879..297108768 100644 --- a/proxy/src/main/java/com/velocitypowered/proxy/protocol/StateRegistry.java +++ b/proxy/src/main/java/com/velocitypowered/proxy/protocol/StateRegistry.java @@ -46,6 +46,7 @@ import static com.velocitypowered.api.network.ProtocolVersion.MINECRAFT_1_7_2; import static com.velocitypowered.api.network.ProtocolVersion.MINECRAFT_1_8; import static com.velocitypowered.api.network.ProtocolVersion.MINECRAFT_1_9; import static com.velocitypowered.api.network.ProtocolVersion.MINECRAFT_1_9_4; +import static com.velocitypowered.api.network.ProtocolVersion.MINECRAFT_26_1; import static com.velocitypowered.api.network.ProtocolVersion.MINIMUM_VERSION; import static com.velocitypowered.api.network.ProtocolVersion.SUPPORTED_VERSIONS; import static com.velocitypowered.proxy.protocol.ProtocolUtils.Direction; @@ -278,7 +279,8 @@ public enum StateRegistry { map(0x0A, MINECRAFT_1_20_2, false), map(0x0B, MINECRAFT_1_20_5, false), map(0x0D, MINECRAFT_1_21_2, false), - map(0x0E, MINECRAFT_1_21_6, false)); + map(0x0E, MINECRAFT_1_21_6, false), + map(0x0F, MINECRAFT_26_1, false)); serverbound.register( LegacyChatPacket.class, LegacyChatPacket::new, @@ -292,7 +294,8 @@ public enum StateRegistry { ChatAcknowledgementPacket::new, map(0x03, MINECRAFT_1_19_3, false), map(0x04, MINECRAFT_1_21_2, false), - map(0x05, MINECRAFT_1_21_6, false)); + map(0x05, MINECRAFT_1_21_6, false), + map(0x06, MINECRAFT_26_1, false)); serverbound.register(KeyedPlayerCommandPacket.class, KeyedPlayerCommandPacket::new, map(0x03, MINECRAFT_1_19, false), map(0x04, MINECRAFT_1_19_1, MINECRAFT_1_19_1, false)); @@ -303,18 +306,21 @@ public enum StateRegistry { map(0x04, MINECRAFT_1_19_3, false), map(0x05, MINECRAFT_1_20_5, false), map(0x06, MINECRAFT_1_21_2, false), - map(0x07, MINECRAFT_1_21_6, false)); + map(0x07, MINECRAFT_1_21_6, false), + map(0x08, MINECRAFT_26_1, false)); serverbound.register(UnsignedPlayerCommandPacket.class, UnsignedPlayerCommandPacket::new, map(0x04, MINECRAFT_1_20_5, false), map(0x05, MINECRAFT_1_21_2, false), - map(0x06, MINECRAFT_1_21_6, false)); + map(0x06, MINECRAFT_1_21_6, false), + map(0x07, MINECRAFT_26_1, false)); serverbound.register( SessionPlayerChatPacket.class, SessionPlayerChatPacket::new, map(0x05, MINECRAFT_1_19_3, false), map(0x06, MINECRAFT_1_20_5, false), map(0x07, MINECRAFT_1_21_2, false), - map(0x08, MINECRAFT_1_21_6, false)); + map(0x08, MINECRAFT_1_21_6, false), + map(0x09, MINECRAFT_26_1, false)); serverbound.register( ClientSettingsPacket.class, ClientSettingsPacket::new, @@ -330,12 +336,14 @@ public enum StateRegistry { map(0x09, MINECRAFT_1_20_2, false), map(0x0A, MINECRAFT_1_20_5, false), map(0x0C, MINECRAFT_1_21_2, false), - map(0x0D, MINECRAFT_1_21_6, false)); + map(0x0D, MINECRAFT_1_21_6, false), + map(0x0E, MINECRAFT_26_1, false)); serverbound.register( ServerboundCookieResponsePacket.class, ServerboundCookieResponsePacket::new, map(0x11, MINECRAFT_1_20_5, false), map(0x13, MINECRAFT_1_21_2, false), - map(0x14, MINECRAFT_1_21_6, false)); + map(0x14, MINECRAFT_1_21_6, false), + map(0x15, MINECRAFT_26_1, false)); serverbound.register( PluginMessagePacket.class, PluginMessagePacket::new, @@ -354,7 +362,8 @@ public enum StateRegistry { map(0x10, MINECRAFT_1_20_3, false), map(0x12, MINECRAFT_1_20_5, false), map(0x14, MINECRAFT_1_21_2, false), - map(0x15, MINECRAFT_1_21_6, false)); + map(0x15, MINECRAFT_1_21_6, false), + map(0x16, MINECRAFT_26_1, false)); serverbound.register( KeepAlivePacket.class, KeepAlivePacket::new, @@ -374,7 +383,8 @@ public enum StateRegistry { map(0x15, MINECRAFT_1_20_3, false), map(0x18, MINECRAFT_1_20_5, false), map(0x1A, MINECRAFT_1_21_2, false), - map(0x1B, MINECRAFT_1_21_6, false)); + map(0x1B, MINECRAFT_1_21_6, false), + map(0x1C, MINECRAFT_26_1, false)); serverbound.register( ResourcePackResponsePacket.class, ResourcePackResponsePacket::new, @@ -392,13 +402,15 @@ public enum StateRegistry { map(0x2B, MINECRAFT_1_20_5, false), map(0x2D, MINECRAFT_1_21_2, false), map(0x2F, MINECRAFT_1_21_4, false), - map(0x30, MINECRAFT_1_21_6, false)); + map(0x30, MINECRAFT_1_21_6, false), + map(0x31, MINECRAFT_26_1, false)); serverbound.register( FinishedUpdatePacket.class, () -> FinishedUpdatePacket.INSTANCE, map(0x0B, MINECRAFT_1_20_2, false), map(0x0C, MINECRAFT_1_20_5, false), map(0x0E, MINECRAFT_1_21_2, false), - map(0x0F, MINECRAFT_1_21_6, false)); + map(0x0F, MINECRAFT_1_21_6, false), + map(0x10, MINECRAFT_26_1, false)); clientbound.register( BossBarPacket.class, @@ -459,7 +471,8 @@ public enum StateRegistry { map(0x67, MINECRAFT_1_20_5, true), map(0x6E, MINECRAFT_1_21_2, true), map(0x6D, MINECRAFT_1_21_5, true), - map(0x72, MINECRAFT_1_21_9, true)); + map(0x72, MINECRAFT_1_21_9, true), + map(0x74, MINECRAFT_26_1, true)); clientbound.register( ClientboundStopSoundPacket.class, ClientboundStopSoundPacket::new, map(0x5F, MINECRAFT_1_19_3, true), @@ -469,7 +482,8 @@ public enum StateRegistry { map(0x6A, MINECRAFT_1_20_5, true), map(0x71, MINECRAFT_1_21_2, true), map(0x70, MINECRAFT_1_21_5, true), - map(0x75, MINECRAFT_1_21_9, true)); + map(0x75, MINECRAFT_1_21_9, true), + map(0x77, MINECRAFT_26_1, true)); clientbound.register( PluginMessagePacket.class, PluginMessagePacket::new, @@ -526,7 +540,8 @@ public enum StateRegistry { map(0x26, MINECRAFT_1_20_5, false), map(0x27, MINECRAFT_1_21_2, false), map(0x26, MINECRAFT_1_21_5, false), - map(0x2B, MINECRAFT_1_21_9, false)); + map(0x2B, MINECRAFT_1_21_9, false), + map(0x2C, MINECRAFT_26_1, false)); clientbound.register( JoinGamePacket.class, JoinGamePacket::new, @@ -546,7 +561,8 @@ public enum StateRegistry { map(0x2B, MINECRAFT_1_20_5, false), map(0x2C, MINECRAFT_1_21_2, false), map(0x2B, MINECRAFT_1_21_5, false), - map(0x30, MINECRAFT_1_21_9, false)); + map(0x30, MINECRAFT_1_21_9, false), + map(0x31, MINECRAFT_26_1, false)); clientbound.register( RespawnPacket.class, RespawnPacket::new, @@ -569,7 +585,8 @@ public enum StateRegistry { map(0x47, MINECRAFT_1_20_5, true), map(0x4C, MINECRAFT_1_21_2, true), map(0x4B, MINECRAFT_1_21_5, true), - map(0x50, MINECRAFT_1_21_9, true)); + map(0x50, MINECRAFT_1_21_9, true), + map(0x52, MINECRAFT_26_1, true)); clientbound.register( RemoveResourcePackPacket.class, RemoveResourcePackPacket::new, @@ -577,7 +594,8 @@ public enum StateRegistry { map(0x45, MINECRAFT_1_20_5, false), map(0x4A, MINECRAFT_1_21_2, false), map(0x49, MINECRAFT_1_21_5, false), - map(0x4E, MINECRAFT_1_21_9, false)); + map(0x4E, MINECRAFT_1_21_9, false), + map(0x50, MINECRAFT_26_1, false)); clientbound.register( ResourcePackRequestPacket.class, ResourcePackRequestPacket::new, @@ -600,7 +618,8 @@ public enum StateRegistry { map(0x46, MINECRAFT_1_20_5, false), map(0x4B, MINECRAFT_1_21_2, false), map(0x4A, MINECRAFT_1_21_5, false), - map(0x4F, MINECRAFT_1_21_9, false)); + map(0x4F, MINECRAFT_1_21_9, false), + map(0x51, MINECRAFT_26_1, false)); clientbound.register( HeaderAndFooterPacket.class, HeaderAndFooterPacket::new, @@ -624,7 +643,8 @@ public enum StateRegistry { map(0x6D, MINECRAFT_1_20_5, true), map(0x74, MINECRAFT_1_21_2, true), map(0x73, MINECRAFT_1_21_5, true), - map(0x78, MINECRAFT_1_21_9, true)); + map(0x78, MINECRAFT_1_21_9, true), + map(0x7A, MINECRAFT_26_1, true)); clientbound.register( LegacyTitlePacket.class, LegacyTitlePacket::new, @@ -647,7 +667,8 @@ public enum StateRegistry { map(0x63, MINECRAFT_1_20_5, true), map(0x6A, MINECRAFT_1_21_2, true), map(0x69, MINECRAFT_1_21_5, true), - map(0x6E, MINECRAFT_1_21_9, true)); + map(0x6E, MINECRAFT_1_21_9, true), + map(0x70, MINECRAFT_26_1, true)); clientbound.register( TitleTextPacket.class, TitleTextPacket::new, @@ -661,7 +682,8 @@ public enum StateRegistry { map(0x65, MINECRAFT_1_20_5, true), map(0x6C, MINECRAFT_1_21_2, true), map(0x6B, MINECRAFT_1_21_5, true), - map(0x70, MINECRAFT_1_21_9, true)); + map(0x70, MINECRAFT_1_21_9, true), + map(0x72, MINECRAFT_26_1, true)); clientbound.register( TitleActionbarPacket.class, TitleActionbarPacket::new, @@ -675,7 +697,8 @@ public enum StateRegistry { map(0x4C, MINECRAFT_1_20_5, true), map(0x51, MINECRAFT_1_21_2, true), map(0x50, MINECRAFT_1_21_5, true), - map(0x55, MINECRAFT_1_21_9, true)); + map(0x55, MINECRAFT_1_21_9, true), + map(0x57, MINECRAFT_26_1, true)); clientbound.register( TitleTimesPacket.class, TitleTimesPacket::new, @@ -689,7 +712,8 @@ public enum StateRegistry { map(0x66, MINECRAFT_1_20_5, true), map(0x6D, MINECRAFT_1_21_2, true), map(0x6C, MINECRAFT_1_21_5, true), - map(0x71, MINECRAFT_1_21_9, true)); + map(0x71, MINECRAFT_1_21_9, true), + map(0x73, MINECRAFT_26_1, true)); clientbound.register( TitleClearPacket.class, TitleClearPacket::new, @@ -720,7 +744,8 @@ public enum StateRegistry { map(0x3D, MINECRAFT_1_20_5, false), map(0x3F, MINECRAFT_1_21_2, false), map(0x3E, MINECRAFT_1_21_5, false), - map(0x43, MINECRAFT_1_21_9, false)); + map(0x43, MINECRAFT_1_21_9, false), + map(0x45, MINECRAFT_26_1, false)); clientbound.register( UpsertPlayerInfoPacket.class, UpsertPlayerInfoPacket::new, @@ -730,13 +755,15 @@ public enum StateRegistry { map(0x3E, MINECRAFT_1_20_5, false), map(0x40, MINECRAFT_1_21_2, false), map(0x3F, MINECRAFT_1_21_5, false), - map(0x44, MINECRAFT_1_21_9, false)); + map(0x44, MINECRAFT_1_21_9, false), + map(0x46, MINECRAFT_26_1, false)); clientbound.register( ClientboundStoreCookiePacket.class, ClientboundStoreCookiePacket::new, map(0x6B, MINECRAFT_1_20_5, false), map(0x72, MINECRAFT_1_21_2, false), map(0x71, MINECRAFT_1_21_5, false), - map(0x76, MINECRAFT_1_21_9, false)); + map(0x76, MINECRAFT_1_21_9, false), + map(0x78, MINECRAFT_26_1, false)); clientbound.register( SystemChatPacket.class, SystemChatPacket::new, @@ -749,7 +776,8 @@ public enum StateRegistry { map(0x6C, MINECRAFT_1_20_5, true), map(0x73, MINECRAFT_1_21_2, true), map(0x72, MINECRAFT_1_21_5, true), - map(0x77, MINECRAFT_1_21_9, true)); + map(0x77, MINECRAFT_1_21_9, true), + map(0x79, MINECRAFT_26_1, true)); clientbound.register( PlayerChatCompletionPacket.class, PlayerChatCompletionPacket::new, @@ -771,7 +799,8 @@ public enum StateRegistry { map(0x4B, MINECRAFT_1_20_5, false), map(0x50, MINECRAFT_1_21_2, false), map(0x4F, MINECRAFT_1_21_5, false), - map(0x54, MINECRAFT_1_21_9, false)); + map(0x54, MINECRAFT_1_21_9, false), + map(0x56, MINECRAFT_26_1, false)); clientbound.register( StartUpdatePacket.class, () -> StartUpdatePacket.INSTANCE, @@ -780,7 +809,8 @@ public enum StateRegistry { map(0x69, MINECRAFT_1_20_5, false), map(0x70, MINECRAFT_1_21_2, false), map(0x6F, MINECRAFT_1_21_5, false), - map(0x74, MINECRAFT_1_21_9, false)); + map(0x74, MINECRAFT_1_21_9, false), + map(0x76, MINECRAFT_26_1, false)); clientbound.register( BundleDelimiterPacket.class, () -> BundleDelimiterPacket.INSTANCE, @@ -790,19 +820,22 @@ public enum StateRegistry { TransferPacket::new, map(0x73, MINECRAFT_1_20_5, false), map(0x7A, MINECRAFT_1_21_2, false), - map(0x7F, MINECRAFT_1_21_9, false)); + map(0x7F, MINECRAFT_1_21_9, false), + map(0x81, MINECRAFT_26_1, false)); clientbound.register( ClientboundCustomReportDetailsPacket.class, ClientboundCustomReportDetailsPacket::new, map(0x7A, MINECRAFT_1_21, false), map(0x81, MINECRAFT_1_21_2, false), - map(0x86, MINECRAFT_1_21_9, false)); + map(0x86, MINECRAFT_1_21_9, false), + map(0x88, MINECRAFT_26_1, false)); clientbound.register( ClientboundServerLinksPacket.class, ClientboundServerLinksPacket::new, map(0x7B, MINECRAFT_1_21, false), map(0x82, MINECRAFT_1_21_2, false), - map(0x87, MINECRAFT_1_21_9, false)); + map(0x87, MINECRAFT_1_21_9, false), + map(0x89, MINECRAFT_26_1, false)); } }, LOGIN { @@ -831,7 +864,7 @@ public enum StateRegistry { map(0x01, MINECRAFT_1_7_2, false)); clientbound.register( ServerLoginSuccessPacket.class, ServerLoginSuccessPacket::new, - map(0x02, MINECRAFT_1_7_2, false)); + map(0x02, MINECRAFT_1_7_2, false)); clientbound.register( SetCompressionPacket.class, SetCompressionPacket::new, map(0x03, MINECRAFT_1_8, false));