21w19a (probably)

This commit is contained in:
KennyTV 2021-05-12 14:27:56 +02:00
parent 2df57bc37c
commit 2588c6ecc8
No known key found for this signature in database
GPG Key ID: 6BE3B555EBC5982B
7 changed files with 1122 additions and 1110 deletions

View File

@ -35,7 +35,7 @@ import java.util.function.Function;
public abstract class PacketRemapper { public abstract class PacketRemapper {
private final List<Pair<ValueReader, ValueWriter>> valueRemappers = new ArrayList<>(); private final List<Pair<ValueReader, ValueWriter>> valueRemappers = new ArrayList<>();
public PacketRemapper() { protected PacketRemapper() {
registerMap(); registerMap();
} }

View File

@ -76,7 +76,7 @@ public class ProtocolVersion {
public static final ProtocolVersion v1_16_2 = register(751, "1.16.2"); public static final ProtocolVersion v1_16_2 = register(751, "1.16.2");
public static final ProtocolVersion v1_16_3 = register(753, "1.16.3"); public static final ProtocolVersion v1_16_3 = register(753, "1.16.3");
public static final ProtocolVersion v1_16_4 = register(754, "1.16.4/5", new VersionRange("1.16", 4, 5)); public static final ProtocolVersion v1_16_4 = register(754, "1.16.4/5", new VersionRange("1.16", 4, 5));
public static final ProtocolVersion v1_17 = register(755, 26, "1.17"); public static final ProtocolVersion v1_17 = register(755, 27, "1.17");
public static final ProtocolVersion unknown = register(-1, "UNKNOWN"); public static final ProtocolVersion unknown = register(-1, "UNKNOWN");
public static ProtocolVersion register(int version, String name) { public static ProtocolVersion register(int version, String name) {

View File

@ -8,7 +8,7 @@ plugins {
allprojects { allprojects {
group = "com.viaversion" group = "com.viaversion"
version = "4.0.0-21w18a" version = "4.0.0-21w19a"
description = "Allow newer clients to join older server versions." description = "Allow newer clients to join older server versions."
} }

View File

@ -69,60 +69,61 @@ public enum ClientboundPackets1_17 implements ClientboundPacketType {
OPEN_BOOK, // 0x2D OPEN_BOOK, // 0x2D
OPEN_WINDOW, // 0x2E OPEN_WINDOW, // 0x2E
OPEN_SIGN_EDITOR, // 0x2F OPEN_SIGN_EDITOR, // 0x2F
CRAFT_RECIPE_RESPONSE, // 0x30 PING, // 0x30
PLAYER_ABILITIES, // 0x31 CRAFT_RECIPE_RESPONSE, // 0x31
COMBAT_END, // 0x32 PLAYER_ABILITIES, // 0x32
COMBAT_ENTER, // 0x33 COMBAT_END, // 0x33
COMBAT_KILL, // 0x34 COMBAT_ENTER, // 0x34
PLAYER_INFO, // 0x35 COMBAT_KILL, // 0x35
FACE_PLAYER, // 0x36 PLAYER_INFO, // 0x36
PLAYER_POSITION, // 0x37 FACE_PLAYER, // 0x37
UNLOCK_RECIPES, // 0x38 PLAYER_POSITION, // 0x38
REMOVE_ENTITY, // 0x39 UNLOCK_RECIPES, // 0x39
REMOVE_ENTITY_EFFECT, // 0x3A REMOVE_ENTITY, // 0x3A
RESOURCE_PACK, // 0x3B REMOVE_ENTITY_EFFECT, // 0x3B
RESPAWN, // 0x3C RESOURCE_PACK, // 0x3C
ENTITY_HEAD_LOOK, // 0x3D RESPAWN, // 0x3D
MULTI_BLOCK_CHANGE, // 0x3E ENTITY_HEAD_LOOK, // 0x3E
SELECT_ADVANCEMENTS_TAB, // 0x3F MULTI_BLOCK_CHANGE, // 0x3F
ACTIONBAR, // 0x40 SELECT_ADVANCEMENTS_TAB, // 0x40
WORLD_BORDER_CENTER, // 0x41 ACTIONBAR, // 0x41
WORLD_BORDER_LERP_SIZE, // 0x42 WORLD_BORDER_CENTER, // 0x42
WORLD_BORDER_SIZE, // 0x43 WORLD_BORDER_LERP_SIZE, // 0x43
WORLD_BORDER_WARNING_DELAY, // 0x44 WORLD_BORDER_SIZE, // 0x44
WORLD_BORDER_WARNING_DISTANCE, // 0x45 WORLD_BORDER_WARNING_DELAY, // 0x45
CAMERA, // 0x46 WORLD_BORDER_WARNING_DISTANCE, // 0x46
HELD_ITEM_CHANGE, // 0x47 CAMERA, // 0x47
UPDATE_VIEW_POSITION, // 0x48 HELD_ITEM_CHANGE, // 0x48
UPDATE_VIEW_DISTANCE, // 0x49 UPDATE_VIEW_POSITION, // 0x49
SPAWN_POSITION, // 0x4A UPDATE_VIEW_DISTANCE, // 0x4A
DISPLAY_SCOREBOARD, // 0x4B SPAWN_POSITION, // 0x4B
ENTITY_METADATA, // 0x4C DISPLAY_SCOREBOARD, // 0x4C
ATTACH_ENTITY, // 0x4D ENTITY_METADATA, // 0x4D
ENTITY_VELOCITY, // 0x4E ATTACH_ENTITY, // 0x4E
ENTITY_EQUIPMENT, // 0x4F ENTITY_VELOCITY, // 0x4F
SET_EXPERIENCE, // 0x50 ENTITY_EQUIPMENT, // 0x50
UPDATE_HEALTH, // 0x51 SET_EXPERIENCE, // 0x51
SCOREBOARD_OBJECTIVE, // 0x52 UPDATE_HEALTH, // 0x52
SET_PASSENGERS, // 0x53 SCOREBOARD_OBJECTIVE, // 0x53
TEAMS, // 0x54 SET_PASSENGERS, // 0x54
UPDATE_SCORE, // 0x55 TEAMS, // 0x55
TITLE_SUBTITLE, // 0x56 UPDATE_SCORE, // 0x56
TIME_UPDATE, // 0x57 TITLE_SUBTITLE, // 0x57
TITLE_TEXT, // 0x58 TIME_UPDATE, // 0x58
TITLE_TIMES, // 0x59 TITLE_TEXT, // 0x59
ENTITY_SOUND, // 0x5A TITLE_TIMES, // 0x5A
SOUND, // 0x5B ENTITY_SOUND, // 0x5B
STOP_SOUND, // 0x5C SOUND, // 0x5C
TAB_LIST, // 0x5D STOP_SOUND, // 0x5D
NBT_QUERY, // 0x5E TAB_LIST, // 0x5E
COLLECT_ITEM, // 0x5F NBT_QUERY, // 0x5F
ENTITY_TELEPORT, // 0x60 COLLECT_ITEM, // 0x60
ADVANCEMENTS, // 0x61 ENTITY_TELEPORT, // 0x61
ENTITY_PROPERTIES, // 0x62 ADVANCEMENTS, // 0x62
ENTITY_EFFECT, // 0x63 ENTITY_PROPERTIES, // 0x63
DECLARE_RECIPES, // 0x64 ENTITY_EFFECT, // 0x64
TAGS; // 0x65 DECLARE_RECIPES, // 0x65
TAGS; // 0x66
@Override @Override
public int getId() { public int getId() {

View File

@ -203,6 +203,9 @@ public class Protocol1_17To1_16_4 extends AbstractProtocol<ClientboundPackets1_1
}); });
} }
}); });
// Ping
cancelServerbound(ServerboundPackets1_17.PONG);
} }
@Override @Override
@ -215,10 +218,17 @@ public class Protocol1_17To1_16_4 extends AbstractProtocol<ClientboundPackets1_1
"minecraft:snow_step_sound_blocks", "minecraft:inside_step_sound_blocks", "minecraft:occludes_vibration_signals", "minecraft:dripstone_replaceable_blocks", "minecraft:snow_step_sound_blocks", "minecraft:inside_step_sound_blocks", "minecraft:occludes_vibration_signals", "minecraft:dripstone_replaceable_blocks",
"minecraft:cave_vines", "minecraft:moss_replaceable", "minecraft:deepslate_ore_replaceables", "minecraft:lush_ground_replaceable", "minecraft:cave_vines", "minecraft:moss_replaceable", "minecraft:deepslate_ore_replaceables", "minecraft:lush_ground_replaceable",
"minecraft:diamond_ores", "minecraft:iron_ores", "minecraft:lapis_ores", "minecraft:redstone_ores", "minecraft:stone_ore_replaceables", "minecraft:diamond_ores", "minecraft:iron_ores", "minecraft:lapis_ores", "minecraft:redstone_ores", "minecraft:stone_ore_replaceables",
"minecraft:coal_ores", "minecraft:copper_ores", "minecraft:emerald_ores", "minecraft:dirt", "minecraft:snow", "minecraft:small_dripleaf_placeable"); "minecraft:coal_ores", "minecraft:copper_ores", "minecraft:emerald_ores", "minecraft:dirt", "minecraft:snow", "minecraft:small_dripleaf_placeable",
"minecraft:needs_stone_tool", "minecraft:needs_diamond_tool", "minecraft:needs_iron_tool");
tagRewriter.addEmptyTags(RegistryType.ENTITY, "minecraft:powder_snow_walkable_mobs", "minecraft:axolotl_always_hostiles", "minecraft:axolotl_tempted_hostiles", tagRewriter.addEmptyTags(RegistryType.ENTITY, "minecraft:powder_snow_walkable_mobs", "minecraft:axolotl_always_hostiles", "minecraft:axolotl_tempted_hostiles",
"minecraft:axolotl_hunt_targets", "minecraft:freeze_hurts_extra_types", "minecraft:freeze_immune_entity_types"); "minecraft:axolotl_hunt_targets", "minecraft:freeze_hurts_extra_types", "minecraft:freeze_immune_entity_types");
// Mmmm numbers
tagRewriter.addTag(RegistryType.BLOCK, "minecraft:mineable/axe", 74, 246, 245, 622, 668, 730, 731, 497, 138, 238, 132, 680, 306, 671, 202, 147, 492, 491, 267, 728, 151, 697, 333, 97, 96, 672, 95, 203, 190, 162, 415, 674, 254, 667, 248, 244, 240, 258, 307, 247, 192, 239, 133, 666, 675, 681, 189, 682, 414, 329, 702, 701, 249, 688, 700, 699, 152);
tagRewriter.addTag(RegistryType.BLOCK, "minecraft:mineable/hoe", 504, 689, 390, 576, 729, 698, 65, 66, 62, 59, 60, 64, 63, 61);
tagRewriter.addTag(RegistryType.BLOCK, "minecraft:mineable/pickaxe", 1, 2, 3, 4, 5, 6, 7, 12, 31, 32, 33, 34, 68, 69, 70, 71, 72, 73, 134, 135, 136, 139, 140, 145, 149, 150, 154, 164, 172, 173, 180, 193, 196, 197, 228, 229, 230, 231, 241, 242, 251, 252, 255, 256, 257, 259, 260, 264, 268, 269, 270, 273, 330, 331, 334, 335, 336, 337, 338, 339, 340, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 407, 408, 448, 449, 450, 451, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 493, 494, 495, 496, 503, 505, 506, 508, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 598, 599, 600, 601, 602, 608, 609, 610, 611, 612, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 669, 670, 673, 676, 677, 678, 679, 687, 696, 734, 735, 736, 737, 742, 743, 744, 746, 747, 748, 749, 750, 751, 752, 754, 755, 756, 757, 760, 761, 762, 185, 409, 619, 183, 100, 93, 101, 233, 237, 236, 232, 235, 234);
tagRewriter.addTag(RegistryType.BLOCK, "minecraft:mineable/shovel", 188, 9, 10, 11, 153, 8, 30, 253, 28, 29, 186, 184, 194, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 195);
tagRewriter.addTag(RegistryType.BLOCK, "minecraft:cauldrons", 261); tagRewriter.addTag(RegistryType.BLOCK, "minecraft:cauldrons", 261);
tagRewriter.addTag(RegistryType.ITEM, "minecraft:fox_food", 948); tagRewriter.addTag(RegistryType.ITEM, "minecraft:fox_food", 948);
} }

View File

@ -50,24 +50,25 @@ public enum ServerboundPackets1_17 implements ServerboundPacketType {
PLAYER_DIGGING, // 0x1A PLAYER_DIGGING, // 0x1A
ENTITY_ACTION, // 0x1B ENTITY_ACTION, // 0x1B
STEER_VEHICLE, // 0x1C STEER_VEHICLE, // 0x1C
RECIPE_BOOK_DATA, // 0x1D PONG, // 0x1D
SEEN_RECIPE, // 0x1E RECIPE_BOOK_DATA, // 0x1E
RENAME_ITEM, // 0x1F SEEN_RECIPE, // 0x1F
RESOURCE_PACK_STATUS, // 0x20 RENAME_ITEM, // 0x20
ADVANCEMENT_TAB, // 0x21 RESOURCE_PACK_STATUS, // 0x21
SELECT_TRADE, // 0x22 ADVANCEMENT_TAB, // 0x22
SET_BEACON_EFFECT, // 0x23 SELECT_TRADE, // 0x23
HELD_ITEM_CHANGE, // 0x24 SET_BEACON_EFFECT, // 0x24
UPDATE_COMMAND_BLOCK, // 0x25 HELD_ITEM_CHANGE, // 0x25
UPDATE_COMMAND_BLOCK_MINECART, // 0x26 UPDATE_COMMAND_BLOCK, // 0x26
CREATIVE_INVENTORY_ACTION, // 0x27 UPDATE_COMMAND_BLOCK_MINECART, // 0x27
UPDATE_JIGSAW_BLOCK, // 0x28 CREATIVE_INVENTORY_ACTION, // 0x28
UPDATE_STRUCTURE_BLOCK, // 0x29 UPDATE_JIGSAW_BLOCK, // 0x29
UPDATE_SIGN, // 0x2A UPDATE_STRUCTURE_BLOCK, // 0x2A
ANIMATION, // 0x2B UPDATE_SIGN, // 0x2B
SPECTATE, // 0x2C ANIMATION, // 0x2C
PLAYER_BLOCK_PLACEMENT, // 0x2D SPECTATE, // 0x2D
USE_ITEM; // 0x2E PLAYER_BLOCK_PLACEMENT, // 0x2E
USE_ITEM; // 0x2F
@Override @Override
public int getId() { public int getId() {