diff --git a/patches/server/0377-Prevent-teleporting-dead-entities.patch b/patches/server/0377-Prevent-teleporting-dead-entities.patch index f55c8fa69..51fc4ad83 100644 --- a/patches/server/0377-Prevent-teleporting-dead-entities.patch +++ b/patches/server/0377-Prevent-teleporting-dead-entities.patch @@ -5,17 +5,20 @@ Subject: [PATCH] Prevent teleporting dead entities diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index a0aa9be6ee16109c68c2c75b2a150982f2ab3d62..52448f75d093a4880ce619036af00c8a1772ad80 100644 +index a0aa9be6ee16109c68c2c75b2a150982f2ab3d62..3bfa07fb3f41752dc8de82afd78a48ccc9015664 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -1495,6 +1495,10 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -1495,6 +1495,13 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser } private void internalTeleport(double d0, double d1, double d2, float f, float f1, Set set, boolean flag) { ++ // Paper start + if (player.isRemoved()) { + LOGGER.info("Attempt to teleport removed player {} restricted", player.getScoreboardName()); ++ if (server.isDebugging()) io.papermc.paper.util.TraceUtil.dumpTraceForThread("Attempt to teleport removed player"); + return; + } ++ // Paper end // CraftBukkit start if (Float.isNaN(f)) { f = 0; diff --git a/patches/server/0448-Add-and-implement-PlayerRecipeBookClickEvent.patch b/patches/server/0448-Add-and-implement-PlayerRecipeBookClickEvent.patch index 505933753..23de49416 100644 --- a/patches/server/0448-Add-and-implement-PlayerRecipeBookClickEvent.patch +++ b/patches/server/0448-Add-and-implement-PlayerRecipeBookClickEvent.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add and implement PlayerRecipeBookClickEvent diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index ba2fef9d01d54ad590535532a4f44ab5918d7135..3e7d09445ed0679b962a226364b7aedba0fb2d74 100644 +index 852da9f18f503829b8d4ee9223f9d5a63e7c01b0..5985a26b7e5a19567561a6dd869527f36c60e7f8 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -2774,9 +2774,14 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -2777,9 +2777,14 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser PacketUtils.ensureRunningOnSameThread(packet, this, this.player.getLevel()); this.player.resetLastActionTime(); if (!this.player.isSpectator() && this.player.containerMenu.containerId == packet.getContainerId() && this.player.containerMenu instanceof RecipeBookMenu) { diff --git a/patches/server/0452-Fix-Per-World-Difficulty-Remembering-Difficulty.patch b/patches/server/0452-Fix-Per-World-Difficulty-Remembering-Difficulty.patch index 1e824670c..37a8fae37 100644 --- a/patches/server/0452-Fix-Per-World-Difficulty-Remembering-Difficulty.patch +++ b/patches/server/0452-Fix-Per-World-Difficulty-Remembering-Difficulty.patch @@ -94,10 +94,10 @@ index 2f13055a39c26fe12d2c1094103186635e536166..6b0cb662d9163c360035e19c5faad59f playerlist.sendPlayerPermissionLevel(this); diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 62deb7cc804b97528a74600b1918fc88d71e2966..acffb2c8a4f864da16c65b83a320d8b181bdc2d7 100644 +index 0b9728eec5d2037b28febc7f1bf2e4bb2cb51d86..f5e78a5e416552fcd180790bc890c9af6898af2e 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -3029,7 +3029,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -3032,7 +3032,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser public void handleChangeDifficulty(ServerboundChangeDifficultyPacket packet) { PacketUtils.ensureRunningOnSameThread(packet, this, this.player.getLevel()); if (this.player.hasPermissions(2) || this.isSingleplayerOwner()) { diff --git a/patches/server/0477-Move-range-check-for-block-placing-up.patch b/patches/server/0477-Move-range-check-for-block-placing-up.patch index 5f4bf6215..7a9e8a810 100644 --- a/patches/server/0477-Move-range-check-for-block-placing-up.patch +++ b/patches/server/0477-Move-range-check-for-block-placing-up.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Move range check for block placing up diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index acffb2c8a4f864da16c65b83a320d8b181bdc2d7..938e6ee89bdb398dc4e2ce1682727c0e63f28c26 100644 +index f5e78a5e416552fcd180790bc890c9af6898af2e..30433da90db7c905c752213220ed01cdadad6b72 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -1667,6 +1667,14 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -1670,6 +1670,14 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser } // Spigot end @@ -23,7 +23,7 @@ index acffb2c8a4f864da16c65b83a320d8b181bdc2d7..938e6ee89bdb398dc4e2ce1682727c0e @Override public void handleUseItemOn(ServerboundUseItemOnPacket packet) { PacketUtils.ensureRunningOnSameThread(packet, this, this.player.getLevel()); -@@ -1679,17 +1687,22 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -1682,17 +1690,22 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser BlockPos blockposition = movingobjectpositionblock.getBlockPos(); Direction enumdirection = movingobjectpositionblock.getDirection(); diff --git a/patches/server/0486-Brand-support.patch b/patches/server/0486-Brand-support.patch index c86dbfdaa..78bb6a291 100644 --- a/patches/server/0486-Brand-support.patch +++ b/patches/server/0486-Brand-support.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Brand support diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 938e6ee89bdb398dc4e2ce1682727c0e63f28c26..4065a1cb1b4b68aa3ff9f1c3e86c270e1509f93f 100644 +index 30433da90db7c905c752213220ed01cdadad6b72..acaa1c367806e8ba10838ca1058c917c7ab7a04c 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -4,6 +4,7 @@ import com.google.common.collect.Lists; @@ -33,7 +33,7 @@ index 938e6ee89bdb398dc4e2ce1682727c0e63f28c26..4065a1cb1b4b68aa3ff9f1c3e86c270e public ServerGamePacketListenerImpl(MinecraftServer server, Connection connection, ServerPlayer player) { this.server = server; this.connection = connection; -@@ -2997,6 +3001,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -3000,6 +3004,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser private static final ResourceLocation CUSTOM_REGISTER = new ResourceLocation("register"); private static final ResourceLocation CUSTOM_UNREGISTER = new ResourceLocation("unregister"); @@ -42,7 +42,7 @@ index 938e6ee89bdb398dc4e2ce1682727c0e63f28c26..4065a1cb1b4b68aa3ff9f1c3e86c270e @Override public void handleCustomPayload(ServerboundCustomPayloadPacket packet) { PacketUtils.ensureRunningOnSameThread(packet, this, this.player.getLevel()); -@@ -3024,6 +3030,15 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -3027,6 +3033,15 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser try { byte[] data = new byte[packet.data.readableBytes()]; packet.data.readBytes(data); @@ -58,7 +58,7 @@ index 938e6ee89bdb398dc4e2ce1682727c0e63f28c26..4065a1cb1b4b68aa3ff9f1c3e86c270e this.cserver.getMessenger().dispatchIncomingMessage(this.player.getBukkitEntity(), packet.identifier.toString(), data); } catch (Exception ex) { ServerGamePacketListenerImpl.LOGGER.error("Couldn\'t dispatch custom payload", ex); -@@ -3033,6 +3048,12 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -3036,6 +3051,12 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser } diff --git a/patches/server/0505-Fix-Entity-Teleportation-and-cancel-velocity-if-tele.patch b/patches/server/0505-Fix-Entity-Teleportation-and-cancel-velocity-if-tele.patch index 896ba470c..177d35559 100644 --- a/patches/server/0505-Fix-Entity-Teleportation-and-cancel-velocity-if-tele.patch +++ b/patches/server/0505-Fix-Entity-Teleportation-and-cancel-velocity-if-tele.patch @@ -9,7 +9,7 @@ as this is how Vanilla teleports entities. Cancel any pending motion when teleported. diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 4065a1cb1b4b68aa3ff9f1c3e86c270e1509f93f..70c1f6d91d1792ef713e46b93897a94fc50e08eb 100644 +index acaa1c367806e8ba10838ca1058c917c7ab7a04c..a1948acde83b1cd70fb8fa5fb89535c34833a680 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -681,7 +681,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser @@ -21,7 +21,7 @@ index 4065a1cb1b4b68aa3ff9f1c3e86c270e1509f93f..70c1f6d91d1792ef713e46b93897a94f this.lastGoodX = this.awaitingPositionFromClient.x; this.lastGoodY = this.awaitingPositionFromClient.y; this.lastGoodZ = this.awaitingPositionFromClient.z; -@@ -1555,7 +1555,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -1558,7 +1558,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser // CraftBukkit end this.awaitingTeleportTime = this.tickCount; diff --git a/patches/server/0546-Limit-recipe-packets.patch b/patches/server/0546-Limit-recipe-packets.patch index 713eedab7..49633c2f3 100644 --- a/patches/server/0546-Limit-recipe-packets.patch +++ b/patches/server/0546-Limit-recipe-packets.patch @@ -23,7 +23,7 @@ index ec42fb00b6f4a691fa710c68131f80b242e3e6e8..d5ae781d65016e0382cb3497cb8cac20 public static boolean velocityOnlineMode; public static byte[] velocitySecretKey; diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index f62f2c0bf9a9d280ed68de8c1afc382b561f31ec..fa4ce1c0f2d1f0204aa6db7503e8c5bd4c605d16 100644 +index be3ba42c1aada1dab05bc531bd9c7956fa25fe8e..88beed5a93bc849fa0a97654ce668ca30b080f1a 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -230,6 +230,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser @@ -42,7 +42,7 @@ index f62f2c0bf9a9d280ed68de8c1afc382b561f31ec..fa4ce1c0f2d1f0204aa6db7503e8c5bd /* Use thread-safe field access instead if (this.chatSpamTickCount > 0) { --this.chatSpamTickCount; -@@ -2811,6 +2813,14 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -2814,6 +2816,14 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser @Override public void handlePlaceRecipe(ServerboundPlaceRecipePacket packet) { diff --git a/patches/server/0563-Fix-interact-event-not-being-called-in-adventure.patch b/patches/server/0563-Fix-interact-event-not-being-called-in-adventure.patch index c577168e7..da4a14826 100644 --- a/patches/server/0563-Fix-interact-event-not-being-called-in-adventure.patch +++ b/patches/server/0563-Fix-interact-event-not-being-called-in-adventure.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Fix interact event not being called in adventure Call PlayerInteractEvent when left-clicking on a block in adventure mode diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index fa4ce1c0f2d1f0204aa6db7503e8c5bd4c605d16..5a334dd83f3585c61fafd85fd581dbf79051910d 100644 +index 88beed5a93bc849fa0a97654ce668ca30b080f1a..161b5d3382070ef54233a87c735e91b0d907704f 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -1740,7 +1740,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -1743,7 +1743,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser MutableComponent ichatmutablecomponent = (new TranslatableComponent("build.tooHigh", new Object[]{i - 1})).withStyle(ChatFormatting.RED); this.player.sendMessage(ichatmutablecomponent, ChatType.GAME_INFO, Util.NIL_UUID); @@ -18,7 +18,7 @@ index fa4ce1c0f2d1f0204aa6db7503e8c5bd4c605d16..5a334dd83f3585c61fafd85fd581dbf7 this.player.swing(enumhand, true); } } -@@ -2212,7 +2212,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -2215,7 +2215,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser Vec3 vec3d1 = vec3d.add((double) f7 * d3, (double) f6 * d3, (double) f8 * d3); HitResult movingobjectposition = this.player.level.clip(new ClipContext(vec3d, vec3d1, ClipContext.Block.OUTLINE, ClipContext.Fluid.NONE, this.player)); diff --git a/patches/server/0615-Allow-using-signs-inside-spawn-protection.patch b/patches/server/0615-Allow-using-signs-inside-spawn-protection.patch index c799932a1..9ce67a9a4 100644 --- a/patches/server/0615-Allow-using-signs-inside-spawn-protection.patch +++ b/patches/server/0615-Allow-using-signs-inside-spawn-protection.patch @@ -19,10 +19,10 @@ index 83d5bbf0a819d6a75d148de5a7f3679e3faad9ec..f372caad76d5f59f37d073bb245fca3a + } } diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 5a334dd83f3585c61fafd85fd581dbf79051910d..cd1a06338cebfc6cc65a2545a882c59949635061 100644 +index 161b5d3382070ef54233a87c735e91b0d907704f..706ac5e8fc14e94c750ba6c475541257cad65db7 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -1729,7 +1729,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -1732,7 +1732,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser int i = this.player.level.getMaxBuildHeight(); if (blockposition.getY() < i) { diff --git a/patches/server/0638-fix-PlayerItemHeldEvent-firing-twice.patch b/patches/server/0638-fix-PlayerItemHeldEvent-firing-twice.patch index 0354ab8a8..f02b69b35 100644 --- a/patches/server/0638-fix-PlayerItemHeldEvent-firing-twice.patch +++ b/patches/server/0638-fix-PlayerItemHeldEvent-firing-twice.patch @@ -5,10 +5,10 @@ Subject: [PATCH] fix PlayerItemHeldEvent firing twice diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 9178614b456cf528e910e9fe991300ce24e92158..7851595980ea4d26325cfb1e98a347c4985baa93 100644 +index 5150211773d8a6f189bd800cede2ba19c398d438..0a954a84079cda9f79d897ba97e4e882652d0a6c 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -1933,6 +1933,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -1936,6 +1936,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser PacketUtils.ensureRunningOnSameThread(packet, this, this.player.getLevel()); if (this.player.isImmobile()) return; // CraftBukkit if (packet.getSlot() >= 0 && packet.getSlot() < Inventory.getSelectionSize()) { diff --git a/patches/server/0645-add-RespawnFlags-to-PlayerRespawnEvent.patch b/patches/server/0645-add-RespawnFlags-to-PlayerRespawnEvent.patch index 01902436d..9eed10fb0 100644 --- a/patches/server/0645-add-RespawnFlags-to-PlayerRespawnEvent.patch +++ b/patches/server/0645-add-RespawnFlags-to-PlayerRespawnEvent.patch @@ -5,10 +5,10 @@ Subject: [PATCH] add RespawnFlags to PlayerRespawnEvent diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 7851595980ea4d26325cfb1e98a347c4985baa93..d16de053be28cb7d31f431e56cd7f6c01311e2fd 100644 +index 0a954a84079cda9f79d897ba97e4e882652d0a6c..6cef84775f3b20564181a2ba562b8cd1a127da57 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -2471,7 +2471,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -2474,7 +2474,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser case PERFORM_RESPAWN: if (this.player.wonGame) { this.player.wonGame = false; diff --git a/patches/server/0658-additions-to-PlayerGameModeChangeEvent.patch b/patches/server/0658-additions-to-PlayerGameModeChangeEvent.patch index 1866cdbe2..88885774e 100644 --- a/patches/server/0658-additions-to-PlayerGameModeChangeEvent.patch +++ b/patches/server/0658-additions-to-PlayerGameModeChangeEvent.patch @@ -126,10 +126,10 @@ index e39e16f0b3a0d168b3049c37f5a2a9dc8f15a652..1ca6dc1e9334bf7e03eab4c2a75f4c86 } diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index d16de053be28cb7d31f431e56cd7f6c01311e2fd..16ab98df5f5f538fa48feb9de32d06c8396b8013 100644 +index 6cef84775f3b20564181a2ba562b8cd1a127da57..985f6102bf84f661d57af622ae168840f3252ab1 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -2480,7 +2480,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -2483,7 +2483,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser this.player = this.server.getPlayerList().respawn(this.player, false); if (this.server.isHardcore()) { diff --git a/patches/server/0669-Add-PlayerKickEvent-causes.patch b/patches/server/0669-Add-PlayerKickEvent-causes.patch index f8a1240b9..0ca9f8a83 100644 --- a/patches/server/0669-Add-PlayerKickEvent-causes.patch +++ b/patches/server/0669-Add-PlayerKickEvent-causes.patch @@ -57,7 +57,7 @@ index 708ac03d5a849bf09c49547306e4a8c5a5ef8d91..5a8df368a4a25839cd4ac9be6972da2e } diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 16ab98df5f5f538fa48feb9de32d06c8396b8013..1c303677bac4df134ee7eeda71bd0b5118358cb3 100644 +index 985f6102bf84f661d57af622ae168840f3252ab1..73137c51df60df0ead588a585098cf3e564e49c9 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -320,7 +320,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser @@ -200,7 +200,7 @@ index 16ab98df5f5f538fa48feb9de32d06c8396b8013..1c303677bac4df134ee7eeda71bd0b51 } else { ServerLevel worldserver = this.player.getLevel(); -@@ -1638,7 +1646,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -1641,7 +1649,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser this.dropCount++; if (this.dropCount >= 20) { ServerGamePacketListenerImpl.LOGGER.warn(this.player.getScoreboardName() + " dropped their items too quickly!"); @@ -209,7 +209,7 @@ index 16ab98df5f5f538fa48feb9de32d06c8396b8013..1c303677bac4df134ee7eeda71bd0b51 return; } } -@@ -1845,7 +1853,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -1848,7 +1856,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser PacketUtils.ensureRunningOnSameThread(packet, this, this.player.getLevel()); if (packet.getAction() == ServerboundResourcePackPacket.Action.DECLINED && this.server.isResourcePackRequired()) { ServerGamePacketListenerImpl.LOGGER.info("Disconnecting {} due to resource pack rejection", this.player.getName()); @@ -218,7 +218,7 @@ index 16ab98df5f5f538fa48feb9de32d06c8396b8013..1c303677bac4df134ee7eeda71bd0b51 } // Paper start PlayerResourcePackStatusEvent.Status packStatus = PlayerResourcePackStatusEvent.Status.values()[packet.action.ordinal()]; -@@ -1950,7 +1958,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -1953,7 +1961,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser this.player.resetLastActionTime(); } else { ServerGamePacketListenerImpl.LOGGER.warn("{} tried to set an invalid carried item", this.player.getName().getString()); @@ -227,7 +227,7 @@ index 16ab98df5f5f538fa48feb9de32d06c8396b8013..1c303677bac4df134ee7eeda71bd0b51 } } -@@ -1966,7 +1974,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -1969,7 +1977,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser for (int i = 0; i < s.length(); ++i) { if (!SharedConstants.isAllowedChatCharacter(s.charAt(i))) { @@ -236,7 +236,7 @@ index 16ab98df5f5f538fa48feb9de32d06c8396b8013..1c303677bac4df134ee7eeda71bd0b51 return; } } -@@ -2039,7 +2047,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -2042,7 +2050,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser Waitable waitable = new Waitable() { @Override protected Object evaluate() { @@ -245,7 +245,7 @@ index 16ab98df5f5f538fa48feb9de32d06c8396b8013..1c303677bac4df134ee7eeda71bd0b51 return null; } }; -@@ -2054,7 +2062,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -2057,7 +2065,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser throw new RuntimeException(e); } } else { @@ -254,7 +254,7 @@ index 16ab98df5f5f538fa48feb9de32d06c8396b8013..1c303677bac4df134ee7eeda71bd0b51 } // CraftBukkit end } -@@ -2327,7 +2335,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -2330,7 +2338,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser // Spigot Start if ( entity == this.player && !this.player.isSpectator() ) { @@ -263,7 +263,7 @@ index 16ab98df5f5f538fa48feb9de32d06c8396b8013..1c303677bac4df134ee7eeda71bd0b51 return; } // Spigot End -@@ -2422,7 +2430,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -2425,7 +2433,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser } // CraftBukkit end } else { @@ -272,7 +272,7 @@ index 16ab98df5f5f538fa48feb9de32d06c8396b8013..1c303677bac4df134ee7eeda71bd0b51 ServerGamePacketListenerImpl.LOGGER.warn("Player {} tried to attack an invalid entity", ServerGamePacketListenerImpl.this.player.getName().getString()); } } -@@ -2822,7 +2830,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -2825,7 +2833,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser // Paper start if (!org.bukkit.Bukkit.isPrimaryThread()) { if (recipeSpamPackets.addAndGet(com.destroystokyo.paper.PaperConfig.autoRecipeIncrement) > com.destroystokyo.paper.PaperConfig.autoRecipeLimit) { @@ -281,7 +281,7 @@ index 16ab98df5f5f538fa48feb9de32d06c8396b8013..1c303677bac4df134ee7eeda71bd0b51 return; } } -@@ -3007,7 +3015,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -3010,7 +3018,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser } else if (!this.isSingleplayerOwner()) { // Paper start - This needs to be handled on the main thread for plugins server.submit(() -> { @@ -290,7 +290,7 @@ index 16ab98df5f5f538fa48feb9de32d06c8396b8013..1c303677bac4df134ee7eeda71bd0b51 }); // Paper end } -@@ -3053,7 +3061,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -3056,7 +3064,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser } } catch (Exception ex) { ServerGamePacketListenerImpl.LOGGER.error("Couldn\'t register custom payload", ex); @@ -299,7 +299,7 @@ index 16ab98df5f5f538fa48feb9de32d06c8396b8013..1c303677bac4df134ee7eeda71bd0b51 } } else if (packet.identifier.equals(CUSTOM_UNREGISTER)) { try { -@@ -3063,7 +3071,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -3066,7 +3074,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser } } catch (Exception ex) { ServerGamePacketListenerImpl.LOGGER.error("Couldn\'t unregister custom payload", ex); @@ -308,7 +308,7 @@ index 16ab98df5f5f538fa48feb9de32d06c8396b8013..1c303677bac4df134ee7eeda71bd0b51 } } else { try { -@@ -3081,7 +3089,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -3084,7 +3092,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser this.cserver.getMessenger().dispatchIncomingMessage(this.player.getBukkitEntity(), packet.identifier.toString(), data); } catch (Exception ex) { ServerGamePacketListenerImpl.LOGGER.error("Couldn\'t dispatch custom payload", ex); diff --git a/patches/server/0690-Adds-PlayerArmSwingEvent.patch b/patches/server/0690-Adds-PlayerArmSwingEvent.patch index 74eee7020..462a915d9 100644 --- a/patches/server/0690-Adds-PlayerArmSwingEvent.patch +++ b/patches/server/0690-Adds-PlayerArmSwingEvent.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Adds PlayerArmSwingEvent diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 818d3b0d149354381be896b294d2be1901c8af10..b3d877ca2eec03dfc0d507993eb41857ad1a6f78 100644 +index 61569455eeb264f82096f563078967b2f4908f88..de02aa3c97b68f03c1f09c5b56eed3ac9ec96227 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -2231,7 +2231,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -2234,7 +2234,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser } // Arm swing animation diff --git a/patches/server/0691-Fixes-kick-event-leave-message-not-being-sent.patch b/patches/server/0691-Fixes-kick-event-leave-message-not-being-sent.patch index ab1a07ff9..aeb033827 100644 --- a/patches/server/0691-Fixes-kick-event-leave-message-not-being-sent.patch +++ b/patches/server/0691-Fixes-kick-event-leave-message-not-being-sent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fixes kick event leave message not being sent diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index b3d877ca2eec03dfc0d507993eb41857ad1a6f78..5646f3ca3f2e0493a4d9d4feaacf1449f4a6a0c5 100644 +index de02aa3c97b68f03c1f09c5b56eed3ac9ec96227..0a4d39f25e8ffe82a6a2f4e27a25bc34df9ce560 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -457,7 +457,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser @@ -17,7 +17,7 @@ index b3d877ca2eec03dfc0d507993eb41857ad1a6f78..5646f3ca3f2e0493a4d9d4feaacf1449 this.connection.setReadOnly(); MinecraftServer minecraftserver = this.server; Connection networkmanager = this.connection; -@@ -1878,6 +1878,11 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -1881,6 +1881,11 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser @Override public void onDisconnect(Component reason) { @@ -29,7 +29,7 @@ index b3d877ca2eec03dfc0d507993eb41857ad1a6f78..5646f3ca3f2e0493a4d9d4feaacf1449 // CraftBukkit start - Rarely it would send a disconnect line twice if (this.processedDisconnect) { return; -@@ -1894,7 +1899,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -1897,7 +1902,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser this.player.disconnect(); // Paper start - Adventure