summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorNassim Jahnke <[email protected]>2022-07-27 23:50:05 +0200
committerNassim Jahnke <[email protected]>2022-07-27 23:50:05 +0200
commitc8f3d9ee8c193d1486ab264caebb3ad4d0366e9b (patch)
treeef171c9065ce0d5254a28918621166138ccf3867
parent6b80b342d91e757052a626d4b20fc06fe2560021 (diff)
downloadPaper-c8f3d9ee8c193d1486ab264caebb3ad4d0366e9b.tar.gz
Paper-c8f3d9ee8c193d1486ab264caebb3ad4d0366e9b.zip
More more more more more more more work
-rw-r--r--patches/removed/1.19.1/0906-Untrash-chat-handling.patch (renamed from patches/unapplied/server/0906-Untrash-chat-handling.patch)0
-rw-r--r--patches/server/0879-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch (renamed from patches/unapplied/server/0880-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch)6
-rw-r--r--patches/server/0880-Fix-StructureGrowEvent-species-for-RED_MUSHROOM.patch (renamed from patches/unapplied/server/0881-Fix-StructureGrowEvent-species-for-RED_MUSHROOM.patch)0
-rw-r--r--patches/server/0881-Prevent-tile-entity-copies-loading-chunks.patch24
-rw-r--r--patches/server/0882-Use-username-instead-of-display-name-in-PlayerList-g.patch (renamed from patches/unapplied/server/0883-Use-username-instead-of-display-name-in-PlayerList-g.patch)4
-rw-r--r--patches/server/0883-Fix-slime-spawners-not-spawning-outside-slime-chunks.patch (renamed from patches/unapplied/server/0884-Fix-slime-spawners-not-spawning-outside-slime-chunks.patch)0
-rw-r--r--patches/server/0884-Pass-ServerLevel-for-gamerule-callbacks.patch (renamed from patches/unapplied/server/0885-Pass-ServerLevel-for-gamerule-callbacks.patch)6
-rw-r--r--patches/server/0885-Add-pre-unbreaking-amount-to-PlayerItemDamageEvent.patch (renamed from patches/unapplied/server/0886-Add-pre-unbreaking-amount-to-PlayerItemDamageEvent.patch)2
-rw-r--r--patches/server/0886-WorldCreator-keepSpawnLoaded.patch (renamed from patches/unapplied/server/0887-WorldCreator-keepSpawnLoaded.patch)0
-rw-r--r--patches/server/0887-Fix-NPE-for-BlockDataMeta-getBlockData.patch (renamed from patches/unapplied/server/0888-Fix-NPE-for-BlockDataMeta-getBlockData.patch)0
-rw-r--r--patches/server/0888-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch (renamed from patches/unapplied/server/0889-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch)0
-rw-r--r--patches/server/0889-Add-EntityDyeEvent-and-CollarColorable-interface.patch (renamed from patches/unapplied/server/0890-Add-EntityDyeEvent-and-CollarColorable-interface.patch)0
-rw-r--r--patches/server/0890-Fire-CauldronLevelChange-on-initial-fill.patch (renamed from patches/unapplied/server/0891-Fire-CauldronLevelChange-on-initial-fill.patch)0
-rw-r--r--patches/server/0891-fix-powder-snow-cauldrons-not-turning-to-water.patch (renamed from patches/unapplied/server/0892-fix-powder-snow-cauldrons-not-turning-to-water.patch)0
-rw-r--r--patches/server/0892-Add-PlayerStopUsingItemEvent.patch (renamed from patches/unapplied/server/0893-Add-PlayerStopUsingItemEvent.patch)4
-rw-r--r--patches/server/0893-FallingBlock-auto-expire-setting.patch (renamed from patches/unapplied/server/0894-FallingBlock-auto-expire-setting.patch)0
-rw-r--r--patches/server/0894-Don-t-tick-markers.patch (renamed from patches/unapplied/server/0895-Don-t-tick-markers.patch)4
-rw-r--r--patches/server/0895-Do-not-accept-invalid-client-settings.patch (renamed from patches/unapplied/server/0896-Do-not-accept-invalid-client-settings.patch)4
-rw-r--r--patches/server/0896-Add-support-for-Proxy-Protocol.patch (renamed from patches/unapplied/server/0897-Add-support-for-Proxy-Protocol.patch)6
-rw-r--r--patches/server/0897-Fix-OfflinePlayer-getBedSpawnLocation.patch (renamed from patches/unapplied/server/0898-Fix-OfflinePlayer-getBedSpawnLocation.patch)0
-rw-r--r--patches/server/0898-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch (renamed from patches/unapplied/server/0899-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch)0
-rw-r--r--patches/server/0899-Sanitize-Sent-BlockEntity-NBT.patch (renamed from patches/unapplied/server/0900-Sanitize-Sent-BlockEntity-NBT.patch)0
-rw-r--r--patches/server/0900-Prevent-entity-loading-causing-async-lookups.patch (renamed from patches/unapplied/server/0901-Prevent-entity-loading-causing-async-lookups.patch)2
-rw-r--r--patches/server/0901-Disable-component-selector-resolving-in-books-by-def.patch (renamed from patches/unapplied/server/0902-Disable-component-selector-resolving-in-books-by-def.patch)0
-rw-r--r--patches/server/0902-Throw-exception-on-world-create-while-being-ticked.patch (renamed from patches/unapplied/server/0903-Throw-exception-on-world-create-while-being-ticked.patch)4
-rw-r--r--patches/server/0903-Add-Alternate-Current-redstone-implementation.patch (renamed from patches/unapplied/server/0904-Add-Alternate-Current-redstone-implementation.patch)6
-rw-r--r--patches/server/0904-Dont-resent-entity-on-art-update.patch (renamed from patches/unapplied/server/0905-Dont-resent-entity-on-art-update.patch)0
-rw-r--r--patches/server/0905-Add-missing-spawn-eggs.patch (renamed from patches/unapplied/server/0907-Add-missing-spawn-eggs.patch)0
-rw-r--r--patches/server/0906-Add-WardenAngerChangeEvent.patch (renamed from patches/unapplied/server/0909-Add-WardenAngerChangeEvent.patch)0
-rw-r--r--patches/server/0907-Add-option-for-strict-advancement-dimension-checks.patch (renamed from patches/unapplied/server/0910-Add-option-for-strict-advancement-dimension-checks.patch)4
-rw-r--r--patches/server/0908-Add-missing-important-BlockStateListPopulator-method.patch (renamed from patches/unapplied/server/0911-Add-missing-important-BlockStateListPopulator-method.patch)0
-rw-r--r--patches/server/0909-Nameable-Banner-API.patch (renamed from patches/unapplied/server/0912-Nameable-Banner-API.patch)0
-rw-r--r--patches/server/0910-Don-t-broadcast-messages-to-command-blocks.patch (renamed from patches/unapplied/server/0914-Don-t-broadcast-messages-to-command-blocks.patch)0
-rw-r--r--patches/server/0911-Prevent-empty-items-from-being-added-to-world.patch (renamed from patches/unapplied/server/0915-Prevent-empty-items-from-being-added-to-world.patch)8
-rw-r--r--patches/server/0912-Fix-CCE-for-SplashPotion-and-LingeringPotion-spawnin.patch (renamed from patches/unapplied/server/0917-Fix-CCE-for-SplashPotion-and-LingeringPotion-spawnin.patch)0
-rw-r--r--patches/server/0913-Don-t-print-component-in-resource-pack-rejection-mes.patch (renamed from patches/unapplied/server/0918-Don-t-print-component-in-resource-pack-rejection-mes.patch)4
-rw-r--r--patches/server/0914-Add-Player-getFishHook.patch (renamed from patches/unapplied/server/0919-Add-Player-getFishHook.patch)0
-rw-r--r--patches/server/0915-Do-not-sync-load-chunk-for-dynamic-game-event-listen.patch (renamed from patches/unapplied/server/0920-Do-not-sync-load-chunk-for-dynamic-game-event-listen.patch)0
-rw-r--r--patches/server/0916-Add-various-missing-EntityDropItemEvent-calls.patch (renamed from patches/unapplied/server/0921-Add-various-missing-EntityDropItemEvent-calls.patch)4
-rw-r--r--patches/server/0917-Add-some-minimal-debug-information-to-chat-packet-er.patch (renamed from patches/unapplied/server/0922-Add-some-minimal-debug-information-to-chat-packet-er.patch)21
-rw-r--r--patches/server/0918-Fix-Bee-flower-NPE.patch (renamed from patches/unapplied/server/0923-Fix-Bee-flower-NPE.patch)0
-rw-r--r--patches/server/0919-Fix-Spigot-Config-not-using-commands.spam-exclusions.patch (renamed from patches/unapplied/server/0924-Fix-Spigot-Config-not-using-commands.spam-exclusions.patch)10
-rw-r--r--patches/server/0920-Add-SpawnReason-to-Tadpoles-spawned-by-Frogspawn.patch (renamed from patches/unapplied/server/0925-Add-SpawnReason-to-Tadpoles-spawned-by-Frogspawn.patch)0
-rw-r--r--patches/server/0921-More-Teleport-API.patch (renamed from patches/unapplied/server/0926-More-Teleport-API.patch)6
-rw-r--r--patches/server/0922-Add-EntityPortalReadyEvent.patch (renamed from patches/unapplied/server/0927-Add-EntityPortalReadyEvent.patch)6
-rw-r--r--patches/server/0923-Don-t-use-level-random-in-entity-constructors.patch (renamed from patches/unapplied/server/0928-Don-t-use-level-random-in-entity-constructors.patch)2
-rw-r--r--patches/unapplied/server/0882-Prevent-tile-entity-copies-loading-chunks.patch24
-rw-r--r--patches/unapplied/server/0908-Remove-invalid-signature-login-stacktrace.patch19
-rw-r--r--patches/unapplied/server/0913-Fix-MC-252439.patch18
-rw-r--r--patches/unapplied/server/0916-Fix-missing-null-check-in-ChunkGenerator-findNearest.patch19
50 files changed, 81 insertions, 136 deletions
diff --git a/patches/unapplied/server/0906-Untrash-chat-handling.patch b/patches/removed/1.19.1/0906-Untrash-chat-handling.patch
index c10fea24a7..c10fea24a7 100644
--- a/patches/unapplied/server/0906-Untrash-chat-handling.patch
+++ b/patches/removed/1.19.1/0906-Untrash-chat-handling.patch
diff --git a/patches/unapplied/server/0880-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch b/patches/server/0879-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch
index 7cec15c2aa..9ef13e101f 100644
--- a/patches/unapplied/server/0880-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch
+++ b/patches/server/0879-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch
@@ -9,10 +9,10 @@ is not a WorldGenRegion, we can bypass the deadlock entirely.
See https://bugs.mojang.com/browse/MC-246262
diff --git a/src/main/java/net/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate.java b/src/main/java/net/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate.java
-index fcd6b2a438ffc2f039036a45ff88ba46017981f7..b667663ea0dbac0bc59cee9090e9769770934b06 100644
+index 4aac9be67a073e60272a68b52c2cda026d4ee28f..30c44b39f9b7a434bb77d6307d2514f2ce9d2857 100644
--- a/src/main/java/net/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate.java
+++ b/src/main/java/net/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate.java
-@@ -265,7 +265,11 @@ public class StructureTemplate {
+@@ -266,7 +266,11 @@ public class StructureTemplate {
if (definedstructure_blockinfo.nbt != null) {
tileentity = world.getBlockEntity(blockposition2);
@@ -25,7 +25,7 @@ index fcd6b2a438ffc2f039036a45ff88ba46017981f7..b667663ea0dbac0bc59cee9090e97697
world.setBlock(blockposition2, Blocks.BARRIER.defaultBlockState(), 20);
}
-@@ -380,7 +384,11 @@ public class StructureTemplate {
+@@ -381,7 +385,11 @@ public class StructureTemplate {
if (pair1.getSecond() != null) {
tileentity = world.getBlockEntity(blockposition6);
if (tileentity != null) {
diff --git a/patches/unapplied/server/0881-Fix-StructureGrowEvent-species-for-RED_MUSHROOM.patch b/patches/server/0880-Fix-StructureGrowEvent-species-for-RED_MUSHROOM.patch
index 4b39ce4dc3..4b39ce4dc3 100644
--- a/patches/unapplied/server/0881-Fix-StructureGrowEvent-species-for-RED_MUSHROOM.patch
+++ b/patches/server/0880-Fix-StructureGrowEvent-species-for-RED_MUSHROOM.patch
diff --git a/patches/server/0881-Prevent-tile-entity-copies-loading-chunks.patch b/patches/server/0881-Prevent-tile-entity-copies-loading-chunks.patch
new file mode 100644
index 0000000000..8978b507f8
--- /dev/null
+++ b/patches/server/0881-Prevent-tile-entity-copies-loading-chunks.patch
@@ -0,0 +1,24 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Shane Freeder <[email protected]>
+Date: Wed, 13 Apr 2022 08:25:42 +0100
+Subject: [PATCH] Prevent tile entity copies loading chunks
+
+
+diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+index 8ac6bba7a4427733f9f03835480fd574fe17dd93..ae83029dc0a3b5e6d511dd4e0140d4f19c325a42 100644
+--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
++++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+@@ -3392,7 +3392,12 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
+ BlockPos blockposition = BlockEntity.getPosFromTag(nbttagcompound);
+
+ if (this.player.level.isLoaded(blockposition)) {
+- BlockEntity tileentity = this.player.level.getBlockEntity(blockposition);
++ // Paper start
++ BlockEntity tileentity = null;
++ if (this.player.distanceToSqr(blockposition.getX(), blockposition.getY(), blockposition.getZ()) < 32 * 32 && this.player.getLevel().isLoadedAndInBounds(blockposition)) {
++ tileentity = this.player.level.getBlockEntity(blockposition);
++ }
++ // Paper end
+
+ if (tileentity != null) {
+ tileentity.saveToItem(itemstack);
diff --git a/patches/unapplied/server/0883-Use-username-instead-of-display-name-in-PlayerList-g.patch b/patches/server/0882-Use-username-instead-of-display-name-in-PlayerList-g.patch
index 3f13a2e598..e04d9e2d8e 100644
--- a/patches/unapplied/server/0883-Use-username-instead-of-display-name-in-PlayerList-g.patch
+++ b/patches/server/0882-Use-username-instead-of-display-name-in-PlayerList-g.patch
@@ -6,10 +6,10 @@ Subject: [PATCH] Use username instead of display name in
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
-index c247d27e516d1d7c5dc1e4b50ff6c81cbc54b0cc..20cdfdb3b9351f74e89bc45b3ab972384165659a 100644
+index 685f3375a825c1ce88fb7d066153d69dd6090ac3..0f064faa7d03960f9babfb99785e8c88eeb814a9 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
-@@ -1449,7 +1449,7 @@ public abstract class PlayerList {
+@@ -1469,7 +1469,7 @@ public abstract class PlayerList {
// CraftBukkit start
public ServerStatsCounter getPlayerStats(ServerPlayer entityhuman) {
ServerStatsCounter serverstatisticmanager = entityhuman.getStats();
diff --git a/patches/unapplied/server/0884-Fix-slime-spawners-not-spawning-outside-slime-chunks.patch b/patches/server/0883-Fix-slime-spawners-not-spawning-outside-slime-chunks.patch
index 951baf9062..951baf9062 100644
--- a/patches/unapplied/server/0884-Fix-slime-spawners-not-spawning-outside-slime-chunks.patch
+++ b/patches/server/0883-Fix-slime-spawners-not-spawning-outside-slime-chunks.patch
diff --git a/patches/unapplied/server/0885-Pass-ServerLevel-for-gamerule-callbacks.patch b/patches/server/0884-Pass-ServerLevel-for-gamerule-callbacks.patch
index 880809e015..18f4812c04 100644
--- a/patches/unapplied/server/0885-Pass-ServerLevel-for-gamerule-callbacks.patch
+++ b/patches/server/0884-Pass-ServerLevel-for-gamerule-callbacks.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Pass ServerLevel for gamerule callbacks
diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
-index 2cc45ec6a5f0b0d5c1ba44551d9a126176dfa8f6..b42327dcf0cc9feaf4fdb67de949dd36cf71bbaa 100644
+index 20670bc075c387ee0422eb1014207e26105efccd..bdd6560fe85950b0a857a949cb38c044da44ca6b 100644
--- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
+++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
@@ -309,7 +309,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface
@@ -18,10 +18,10 @@ index 2cc45ec6a5f0b0d5c1ba44551d9a126176dfa8f6..b42327dcf0cc9feaf4fdb67de949dd36
if (dedicatedserverproperties.enableQuery) {
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
-index e08e6091dc0b885275045260386c88b368954fe6..e8069222397f7143ffd662e554904ff811b386d4 100644
+index ae83029dc0a3b5e6d511dd4e0140d4f19c325a42..9f574e4425e73826b969302cf85025fc63b66f4a 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
-@@ -2785,7 +2785,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
+@@ -2988,7 +2988,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
this.player = this.server.getPlayerList().respawn(this.player, false);
if (this.server.isHardcore()) {
this.player.setGameMode(GameType.SPECTATOR, org.bukkit.event.player.PlayerGameModeChangeEvent.Cause.HARDCORE_DEATH, null); // Paper
diff --git a/patches/unapplied/server/0886-Add-pre-unbreaking-amount-to-PlayerItemDamageEvent.patch b/patches/server/0885-Add-pre-unbreaking-amount-to-PlayerItemDamageEvent.patch
index 02e3a789cb..fff84c5a62 100644
--- a/patches/unapplied/server/0886-Add-pre-unbreaking-amount-to-PlayerItemDamageEvent.patch
+++ b/patches/server/0885-Add-pre-unbreaking-amount-to-PlayerItemDamageEvent.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Add pre-unbreaking amount to PlayerItemDamageEvent
diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java
-index 30b307076e61c183acd5a1d900043b09f54734fc..6b3cfc19c4fd1382ddf534265a1114995a4f6b55 100644
+index 67626e7faa4d0854d31b41c0a702edbeb6ce4270..c18a0bc94d0210396046f4475e49a739088593f3 100644
--- a/src/main/java/net/minecraft/world/item/ItemStack.java
+++ b/src/main/java/net/minecraft/world/item/ItemStack.java
@@ -563,10 +563,11 @@ public final class ItemStack {
diff --git a/patches/unapplied/server/0887-WorldCreator-keepSpawnLoaded.patch b/patches/server/0886-WorldCreator-keepSpawnLoaded.patch
index 0bc5d393e7..0bc5d393e7 100644
--- a/patches/unapplied/server/0887-WorldCreator-keepSpawnLoaded.patch
+++ b/patches/server/0886-WorldCreator-keepSpawnLoaded.patch
diff --git a/patches/unapplied/server/0888-Fix-NPE-for-BlockDataMeta-getBlockData.patch b/patches/server/0887-Fix-NPE-for-BlockDataMeta-getBlockData.patch
index d33dabf6c9..d33dabf6c9 100644
--- a/patches/unapplied/server/0888-Fix-NPE-for-BlockDataMeta-getBlockData.patch
+++ b/patches/server/0887-Fix-NPE-for-BlockDataMeta-getBlockData.patch
diff --git a/patches/unapplied/server/0889-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch b/patches/server/0888-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch
index 79c74b0a57..79c74b0a57 100644
--- a/patches/unapplied/server/0889-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch
+++ b/patches/server/0888-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch
diff --git a/patches/unapplied/server/0890-Add-EntityDyeEvent-and-CollarColorable-interface.patch b/patches/server/0889-Add-EntityDyeEvent-and-CollarColorable-interface.patch
index 8eacb2217e..8eacb2217e 100644
--- a/patches/unapplied/server/0890-Add-EntityDyeEvent-and-CollarColorable-interface.patch
+++ b/patches/server/0889-Add-EntityDyeEvent-and-CollarColorable-interface.patch
diff --git a/patches/unapplied/server/0891-Fire-CauldronLevelChange-on-initial-fill.patch b/patches/server/0890-Fire-CauldronLevelChange-on-initial-fill.patch
index c0fcd53f55..c0fcd53f55 100644
--- a/patches/unapplied/server/0891-Fire-CauldronLevelChange-on-initial-fill.patch
+++ b/patches/server/0890-Fire-CauldronLevelChange-on-initial-fill.patch
diff --git a/patches/unapplied/server/0892-fix-powder-snow-cauldrons-not-turning-to-water.patch b/patches/server/0891-fix-powder-snow-cauldrons-not-turning-to-water.patch
index aef5bd0551..aef5bd0551 100644
--- a/patches/unapplied/server/0892-fix-powder-snow-cauldrons-not-turning-to-water.patch
+++ b/patches/server/0891-fix-powder-snow-cauldrons-not-turning-to-water.patch
diff --git a/patches/unapplied/server/0893-Add-PlayerStopUsingItemEvent.patch b/patches/server/0892-Add-PlayerStopUsingItemEvent.patch
index 67e5737362..3d11c6c6d8 100644
--- a/patches/unapplied/server/0893-Add-PlayerStopUsingItemEvent.patch
+++ b/patches/server/0892-Add-PlayerStopUsingItemEvent.patch
@@ -5,10 +5,10 @@ Subject: [PATCH] Add PlayerStopUsingItemEvent
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
-index ea54c429c170c9aca68a96f38ae4dfc3a23b0f5e..279051442ac6cf288a03a16a35ddbf66d1cd1e90 100644
+index 44c0f77bdeeb9061b1dfcd904ed2c63910e30e42..cff7993bdafd2f69e46c9985c7601a69ae47f452 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
-@@ -3901,6 +3901,7 @@ public abstract class LivingEntity extends Entity {
+@@ -3904,6 +3904,7 @@ public abstract class LivingEntity extends Entity {
public void releaseUsingItem() {
if (!this.useItem.isEmpty()) {
diff --git a/patches/unapplied/server/0894-FallingBlock-auto-expire-setting.patch b/patches/server/0893-FallingBlock-auto-expire-setting.patch
index a7b0c20dd6..a7b0c20dd6 100644
--- a/patches/unapplied/server/0894-FallingBlock-auto-expire-setting.patch
+++ b/patches/server/0893-FallingBlock-auto-expire-setting.patch
diff --git a/patches/unapplied/server/0895-Don-t-tick-markers.patch b/patches/server/0894-Don-t-tick-markers.patch
index 7c5f605b79..848b3dc5fb 100644
--- a/patches/unapplied/server/0895-Don-t-tick-markers.patch
+++ b/patches/server/0894-Don-t-tick-markers.patch
@@ -22,10 +22,10 @@ index 68f99e93ed3e843b4001a7a27620f88a48b85e67..0dc96c39151ec4dbeec3947cb17606f5
}
});
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
-index c89e85c1fe37c8fba54825be76bb1caa15d84dcd..458ebb5dabd1f24ea3d49ef57eea687ce61f0fc0 100644
+index 802b929a16b6a8aeee608caeb524e268f8df53bd..5b3a7626579ff6bcf3ad32f7193bf905aa1b70bc 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
-@@ -2489,6 +2489,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
+@@ -2490,6 +2490,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
}
public void onTickingStart(Entity entity) {
diff --git a/patches/unapplied/server/0896-Do-not-accept-invalid-client-settings.patch b/patches/server/0895-Do-not-accept-invalid-client-settings.patch
index 12ba26b4ad..7b5e08d12c 100644
--- a/patches/unapplied/server/0896-Do-not-accept-invalid-client-settings.patch
+++ b/patches/server/0895-Do-not-accept-invalid-client-settings.patch
@@ -5,10 +5,10 @@ Subject: [PATCH] Do not accept invalid client settings
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
-index e8069222397f7143ffd662e554904ff811b386d4..28c76e7b3260ce56421057b88c3555f18b29da06 100644
+index 9f574e4425e73826b969302cf85025fc63b66f4a..c5278cc28eaba16d6adc31fc5f276e0c972fd8dc 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
-@@ -3354,6 +3354,13 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
+@@ -3571,6 +3571,13 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
@Override
public void handleClientInformation(ServerboundClientInformationPacket packet) {
PacketUtils.ensureRunningOnSameThread(packet, this, this.player.getLevel());
diff --git a/patches/unapplied/server/0897-Add-support-for-Proxy-Protocol.patch b/patches/server/0896-Add-support-for-Proxy-Protocol.patch
index 0092abc62a..1cf43fbbe8 100644
--- a/patches/unapplied/server/0897-Add-support-for-Proxy-Protocol.patch
+++ b/patches/server/0896-Add-support-for-Proxy-Protocol.patch
@@ -17,10 +17,10 @@ index effc19371309a1af44e1b660b547b58530a8df3c..2374cc9bab5039d0a0dc11d4b2ec573a
implementation("org.apache.logging.log4j:log4j-iostreams:2.17.1") // Paper
implementation("org.apache.logging.log4j:log4j-slf4j18-impl:2.17.1") // Paper
diff --git a/src/main/java/net/minecraft/server/network/ServerConnectionListener.java b/src/main/java/net/minecraft/server/network/ServerConnectionListener.java
-index 597c7660bd517322d8bc9c5acef6956c40067405..c2d7f0ca042882e1bf76f150e9c9be9044ef887c 100644
+index cfdbcd024de6ad0f9d4e83b2f912b36ef3299458..abcc3266d18f34d160eac87fdea153dce24c60b8 100644
--- a/src/main/java/net/minecraft/server/network/ServerConnectionListener.java
+++ b/src/main/java/net/minecraft/server/network/ServerConnectionListener.java
-@@ -110,6 +110,12 @@ public class ServerConnectionListener {
+@@ -111,6 +111,12 @@ public class ServerConnectionListener {
ServerConnectionListener.LOGGER.info("Paper: Using " + com.velocitypowered.natives.util.Natives.cipher.getLoadedVariant() + " cipher from Velocity.");
// Paper end
@@ -33,7 +33,7 @@ index 597c7660bd517322d8bc9c5acef6956c40067405..c2d7f0ca042882e1bf76f150e9c9be90
this.channels.add(((ServerBootstrap) ((ServerBootstrap) (new ServerBootstrap()).channel(oclass)).childHandler(new ChannelInitializer<Channel>() {
protected void initChannel(Channel channel) {
try {
-@@ -123,6 +129,30 @@ public class ServerConnectionListener {
+@@ -124,6 +130,30 @@ public class ServerConnectionListener {
int j = ServerConnectionListener.this.server.getRateLimitPacketsPerSecond();
Object object = j > 0 ? new RateKickingConnection(j) : new Connection(PacketFlow.SERVERBOUND);
diff --git a/patches/unapplied/server/0898-Fix-OfflinePlayer-getBedSpawnLocation.patch b/patches/server/0897-Fix-OfflinePlayer-getBedSpawnLocation.patch
index b11ce011a5..b11ce011a5 100644
--- a/patches/unapplied/server/0898-Fix-OfflinePlayer-getBedSpawnLocation.patch
+++ b/patches/server/0897-Fix-OfflinePlayer-getBedSpawnLocation.patch
diff --git a/patches/unapplied/server/0899-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch b/patches/server/0898-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch
index 59fabed7e4..59fabed7e4 100644
--- a/patches/unapplied/server/0899-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch
+++ b/patches/server/0898-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch
diff --git a/patches/unapplied/server/0900-Sanitize-Sent-BlockEntity-NBT.patch b/patches/server/0899-Sanitize-Sent-BlockEntity-NBT.patch
index fb3c8b1818..fb3c8b1818 100644
--- a/patches/unapplied/server/0900-Sanitize-Sent-BlockEntity-NBT.patch
+++ b/patches/server/0899-Sanitize-Sent-BlockEntity-NBT.patch
diff --git a/patches/unapplied/server/0901-Prevent-entity-loading-causing-async-lookups.patch b/patches/server/0900-Prevent-entity-loading-causing-async-lookups.patch
index 9527752d66..1b4a2b432d 100644
--- a/patches/unapplied/server/0901-Prevent-entity-loading-causing-async-lookups.patch
+++ b/patches/server/0900-Prevent-entity-loading-causing-async-lookups.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Prevent entity loading causing async lookups
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
-index ae30cfb8681e474af1236411a7ec8e8f99d045ca..172016efc07d12fa0bbafe3c45410ffd72acd984 100644
+index 6a1f11a2519cc320407696cc7165404a43d0b961..33ec6c1e942a7f852e4726683918ed06cde2e16a 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -788,6 +788,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
diff --git a/patches/unapplied/server/0902-Disable-component-selector-resolving-in-books-by-def.patch b/patches/server/0901-Disable-component-selector-resolving-in-books-by-def.patch
index d79b7fb1b1..d79b7fb1b1 100644
--- a/patches/unapplied/server/0902-Disable-component-selector-resolving-in-books-by-def.patch
+++ b/patches/server/0901-Disable-component-selector-resolving-in-books-by-def.patch
diff --git a/patches/unapplied/server/0903-Throw-exception-on-world-create-while-being-ticked.patch b/patches/server/0902-Throw-exception-on-world-create-while-being-ticked.patch
index 662f08ef95..04a443d1d1 100644
--- a/patches/unapplied/server/0903-Throw-exception-on-world-create-while-being-ticked.patch
+++ b/patches/server/0902-Throw-exception-on-world-create-while-being-ticked.patch
@@ -7,10 +7,10 @@ There are no plans to support creating worlds while worlds are
being ticked themselvess.
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
-index 104428d032721fc488c2931c06e802e9b00e47bd..35a5cc8ed861401d3dd28b08ebc5d40aad82b0df 100644
+index ad9609ccb33bbe9bdda94a50900258ad3e0339f0..6a81076239080ae6457308ca2e3628c3d32691bf 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
-@@ -295,6 +295,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
+@@ -297,6 +297,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
public volatile Thread shutdownThread; // Paper
public volatile boolean abnormalExit = false; // Paper
diff --git a/patches/unapplied/server/0904-Add-Alternate-Current-redstone-implementation.patch b/patches/server/0903-Add-Alternate-Current-redstone-implementation.patch
index 4ab0be6c35..f31a5eb32a 100644
--- a/patches/unapplied/server/0904-Add-Alternate-Current-redstone-implementation.patch
+++ b/patches/server/0903-Add-Alternate-Current-redstone-implementation.patch
@@ -2008,10 +2008,10 @@ index 0000000000000000000000000000000000000000..33cd90c30c22200a4e1ae64f40a0bf78
+ }
+}
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
-index 458ebb5dabd1f24ea3d49ef57eea687ce61f0fc0..aa3c6f18d817826e9af2a3047b0b683dd16ea7f7 100644
+index 5b3a7626579ff6bcf3ad32f7193bf905aa1b70bc..c09cdc4b717bcd7b3096a068d6abc90efc486529 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
-@@ -217,6 +217,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
+@@ -218,6 +218,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
public final UUID uuid;
public boolean hasPhysicsEvent = true; // Paper
public boolean hasEntityMoveEvent = false; // Paper
@@ -2019,7 +2019,7 @@ index 458ebb5dabd1f24ea3d49ef57eea687ce61f0fc0..aa3c6f18d817826e9af2a3047b0b683d
public static Throwable getAddToWorldStackTrace(Entity entity) {
return new Throwable(entity + " Added to world at " + new java.util.Date());
}
-@@ -2478,6 +2479,13 @@ public class ServerLevel extends Level implements WorldGenLevel {
+@@ -2479,6 +2480,13 @@ public class ServerLevel extends Level implements WorldGenLevel {
return this.entityManager.canPositionTick(pos.toLong()); // Paper
}
diff --git a/patches/unapplied/server/0905-Dont-resent-entity-on-art-update.patch b/patches/server/0904-Dont-resent-entity-on-art-update.patch
index ff4ac47ad6..ff4ac47ad6 100644
--- a/patches/unapplied/server/0905-Dont-resent-entity-on-art-update.patch
+++ b/patches/server/0904-Dont-resent-entity-on-art-update.patch
diff --git a/patches/unapplied/server/0907-Add-missing-spawn-eggs.patch b/patches/server/0905-Add-missing-spawn-eggs.patch
index 5be733c857..5be733c857 100644
--- a/patches/unapplied/server/0907-Add-missing-spawn-eggs.patch
+++ b/patches/server/0905-Add-missing-spawn-eggs.patch
diff --git a/patches/unapplied/server/0909-Add-WardenAngerChangeEvent.patch b/patches/server/0906-Add-WardenAngerChangeEvent.patch
index cfe1a98c72..cfe1a98c72 100644
--- a/patches/unapplied/server/0909-Add-WardenAngerChangeEvent.patch
+++ b/patches/server/0906-Add-WardenAngerChangeEvent.patch
diff --git a/patches/unapplied/server/0910-Add-option-for-strict-advancement-dimension-checks.patch b/patches/server/0907-Add-option-for-strict-advancement-dimension-checks.patch
index 729882ed8d..c75fc2682d 100644
--- a/patches/unapplied/server/0910-Add-option-for-strict-advancement-dimension-checks.patch
+++ b/patches/server/0907-Add-option-for-strict-advancement-dimension-checks.patch
@@ -11,10 +11,10 @@ distance trigger. This adds a config option to ignore that
and use the exact dimension key of the worlds involved.
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
-index 4a28aeee2235690da28337605bba40417138c360..5f0d934399991ae94795ad0a94da689c242ffeba 100644
+index a6e999b7698948564f6b7e1852a87acf389d60d7..94944ba458178f9e5b772224da329bb5d85f4394 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
-@@ -1253,6 +1253,12 @@ public class ServerPlayer extends Player {
+@@ -1251,6 +1251,12 @@ public class ServerPlayer extends Player {
// CraftBukkit start
ResourceKey<Level> maindimensionkey = CraftDimensionUtil.getMainDimensionKey(origin);
ResourceKey<Level> maindimensionkey1 = CraftDimensionUtil.getMainDimensionKey(this.level);
diff --git a/patches/unapplied/server/0911-Add-missing-important-BlockStateListPopulator-method.patch b/patches/server/0908-Add-missing-important-BlockStateListPopulator-method.patch
index 25aee4a60d..25aee4a60d 100644
--- a/patches/unapplied/server/0911-Add-missing-important-BlockStateListPopulator-method.patch
+++ b/patches/server/0908-Add-missing-important-BlockStateListPopulator-method.patch
diff --git a/patches/unapplied/server/0912-Nameable-Banner-API.patch b/patches/server/0909-Nameable-Banner-API.patch
index 78f176be32..78f176be32 100644
--- a/patches/unapplied/server/0912-Nameable-Banner-API.patch
+++ b/patches/server/0909-Nameable-Banner-API.patch
diff --git a/patches/unapplied/server/0914-Don-t-broadcast-messages-to-command-blocks.patch b/patches/server/0910-Don-t-broadcast-messages-to-command-blocks.patch
index f27d75afb1..f27d75afb1 100644
--- a/patches/unapplied/server/0914-Don-t-broadcast-messages-to-command-blocks.patch
+++ b/patches/server/0910-Don-t-broadcast-messages-to-command-blocks.patch
diff --git a/patches/unapplied/server/0915-Prevent-empty-items-from-being-added-to-world.patch b/patches/server/0911-Prevent-empty-items-from-being-added-to-world.patch
index 815d0659ac..e9a2983b08 100644
--- a/patches/unapplied/server/0915-Prevent-empty-items-from-being-added-to-world.patch
+++ b/patches/server/0911-Prevent-empty-items-from-being-added-to-world.patch
@@ -7,10 +7,10 @@ The previous solution caused a bunch of bandaid fixes inorder to resolve edge ca
Just simply prevent them from being added to the world instead.
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
-index aa3c6f18d817826e9af2a3047b0b683dd16ea7f7..1a918eabbaaed26d9bdf5c01e0488b5a117ba516 100644
+index c09cdc4b717bcd7b3096a068d6abc90efc486529..083349794d5ceb50322c5a645dd33fbfcc1c8155 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
-@@ -1433,6 +1433,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
+@@ -1434,6 +1434,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
// WorldServer.LOGGER.warn("Tried to add entity {} but it was marked as removed already", EntityTypes.getKey(entity.getType())); // CraftBukkit
return false;
} else {
@@ -19,10 +19,10 @@ index aa3c6f18d817826e9af2a3047b0b683dd16ea7f7..1a918eabbaaed26d9bdf5c01e0488b5a
if (captureDrops != null && entity instanceof net.minecraft.world.entity.item.ItemEntity) {
captureDrops.add((net.minecraft.world.entity.item.ItemEntity) entity);
diff --git a/src/main/java/net/minecraft/world/entity/item/ItemEntity.java b/src/main/java/net/minecraft/world/entity/item/ItemEntity.java
-index ae4b251e10babb07055d031ff48ac7dd5d4be4a0..08f15739dd7e2ab80718ab8d983b483a46309deb 100644
+index 30c417c3169c1df43662fd77ac6816db64a42802..4c78c04ed031ec2e04642ebe5d79527e848d95f6 100644
--- a/src/main/java/net/minecraft/world/entity/item/ItemEntity.java
+++ b/src/main/java/net/minecraft/world/entity/item/ItemEntity.java
-@@ -509,7 +509,7 @@ public class ItemEntity extends Entity {
+@@ -507,7 +507,7 @@ public class ItemEntity extends Entity {
}
public void setItem(ItemStack stack) {
diff --git a/patches/unapplied/server/0917-Fix-CCE-for-SplashPotion-and-LingeringPotion-spawnin.patch b/patches/server/0912-Fix-CCE-for-SplashPotion-and-LingeringPotion-spawnin.patch
index a14591f9b1..a14591f9b1 100644
--- a/patches/unapplied/server/0917-Fix-CCE-for-SplashPotion-and-LingeringPotion-spawnin.patch
+++ b/patches/server/0912-Fix-CCE-for-SplashPotion-and-LingeringPotion-spawnin.patch
diff --git a/patches/unapplied/server/0918-Don-t-print-component-in-resource-pack-rejection-mes.patch b/patches/server/0913-Don-t-print-component-in-resource-pack-rejection-mes.patch
index db866686eb..7541f6d995 100644
--- a/patches/unapplied/server/0918-Don-t-print-component-in-resource-pack-rejection-mes.patch
+++ b/patches/server/0913-Don-t-print-component-in-resource-pack-rejection-mes.patch
@@ -5,10 +5,10 @@ Subject: [PATCH] Don't print component in resource pack rejection message
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
-index 8e6045c51c46b8d8fa6f4b7fbe4b9478693bac82..924d0601dab2e1b4e38dd138c9ecd7287ca4d733 100644
+index c5278cc28eaba16d6adc31fc5f276e0c972fd8dc..ea47d8f0275a99920c6e3f5c7a9c09ccb2341139 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
-@@ -1979,7 +1979,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
+@@ -2045,7 +2045,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
public void handleResourcePackResponse(ServerboundResourcePackPacket packet) {
PacketUtils.ensureRunningOnSameThread(packet, this, this.player.getLevel());
if (packet.getAction() == ServerboundResourcePackPacket.Action.DECLINED && this.server.isResourcePackRequired()) {
diff --git a/patches/unapplied/server/0919-Add-Player-getFishHook.patch b/patches/server/0914-Add-Player-getFishHook.patch
index 89347ce701..89347ce701 100644
--- a/patches/unapplied/server/0919-Add-Player-getFishHook.patch
+++ b/patches/server/0914-Add-Player-getFishHook.patch
diff --git a/patches/unapplied/server/0920-Do-not-sync-load-chunk-for-dynamic-game-event-listen.patch b/patches/server/0915-Do-not-sync-load-chunk-for-dynamic-game-event-listen.patch
index f9cbdd0899..f9cbdd0899 100644
--- a/patches/unapplied/server/0920-Do-not-sync-load-chunk-for-dynamic-game-event-listen.patch
+++ b/patches/server/0915-Do-not-sync-load-chunk-for-dynamic-game-event-listen.patch
diff --git a/patches/unapplied/server/0921-Add-various-missing-EntityDropItemEvent-calls.patch b/patches/server/0916-Add-various-missing-EntityDropItemEvent-calls.patch
index 00fa1b6574..b326403bda 100644
--- a/patches/unapplied/server/0921-Add-various-missing-EntityDropItemEvent-calls.patch
+++ b/patches/server/0916-Add-various-missing-EntityDropItemEvent-calls.patch
@@ -5,10 +5,10 @@ Subject: [PATCH] Add various missing EntityDropItemEvent calls
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
-index 172016efc07d12fa0bbafe3c45410ffd72acd984..5449c84d131915284822c1da14e972b04c022853 100644
+index 33ec6c1e942a7f852e4726683918ed06cde2e16a..700e2299200b536255dd38c2f84e9ab13ab31811 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
-@@ -2509,6 +2509,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
+@@ -2506,6 +2506,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
stack.setCount(0); // Paper - destroy this item - if this ever leaks due to game bugs, ensure it doesn't dupe
entityitem.setDefaultPickUpDelay();
diff --git a/patches/unapplied/server/0922-Add-some-minimal-debug-information-to-chat-packet-er.patch b/patches/server/0917-Add-some-minimal-debug-information-to-chat-packet-er.patch
index be4798d8f9..8e3d683756 100644
--- a/patches/unapplied/server/0922-Add-some-minimal-debug-information-to-chat-packet-er.patch
+++ b/patches/server/0917-Add-some-minimal-debug-information-to-chat-packet-er.patch
@@ -6,23 +6,24 @@ Subject: [PATCH] Add some minimal debug information to chat packet errors
TODO: potentially add some kick leeway
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
-index 924d0601dab2e1b4e38dd138c9ecd7287ca4d733..8914b20e5823c0b0cfccf986db9e9265b7f757f5 100644
+index ea47d8f0275a99920c6e3f5c7a9c09ccb2341139..3b3a60bbc4547ae7e89ce40ae1572dbe1c028416 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
-@@ -2159,14 +2159,14 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
+@@ -2294,7 +2294,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
- private boolean tryHandleChat(String s, Instant instant) {
- if (!this.updateChatOrder(instant)) {
-- ServerGamePacketListenerImpl.LOGGER.warn("{} sent out-of-order chat: '{}'", this.player.getName().getString(), s);
-+ ServerGamePacketListenerImpl.LOGGER.warn("{} sent out-of-order chat: '{}'; {} > {}", this.player.getName().getString(), s, this.lastChatTimeStamp.get().getEpochSecond(), instant.getEpochSecond()); // Paper
+ private boolean tryHandleChat(String message, Instant timestamp, LastSeenMessages.Update acknowledgment) {
+ if (!this.updateChatOrder(timestamp)) {
+- ServerGamePacketListenerImpl.LOGGER.warn("{} sent out-of-order chat: '{}'", this.player.getName().getString(), message);
++ ServerGamePacketListenerImpl.LOGGER.warn("{} sent out-of-order chat: '{}': {} > {}", this.player.getName().getString(), message, this.lastChatTimeStamp.get().getEpochSecond(), timestamp.getEpochSecond()); // Paper
this.server.scheduleOnMain(() -> { // Paper - push to main
this.disconnect(Component.translatable("multiplayer.disconnect.out_of_order_chat"));
}); // Paper - push to main
+@@ -2551,7 +2551,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
return false;
} else {
- if (this.isChatExpired(instant)) {
-- ServerGamePacketListenerImpl.LOGGER.warn("{} sent expired chat: '{}'. Is the client/server system time unsynchronized?", this.player.getName().getString(), s);
-+ ServerGamePacketListenerImpl.LOGGER.warn("{} sent expired chat: '{}'. Is the client/server system time unsynchronized? c: {} s: {}", this.player.getName().getString(), s, instant.getEpochSecond(), Instant.now().getEpochSecond()); // Paper
+ if (message.hasExpiredServer(Instant.now())) {
+- ServerGamePacketListenerImpl.LOGGER.warn("{} sent expired chat: '{}'. Is the client/server system time unsynchronized?", this.player.getName().getString(), message.signedContent().plain());
++ ServerGamePacketListenerImpl.LOGGER.warn("{} sent expired chat: '{}'. Is the client/server system time unsynchronized? c: {} s: {}", this.player.getName().getString(), message.signedContent().plain(), message.timeStamp().getEpochSecond(), Instant.now().getEpochSecond()); // Paper
}
- return this.resetLastActionTime();
+ return true;
diff --git a/patches/unapplied/server/0923-Fix-Bee-flower-NPE.patch b/patches/server/0918-Fix-Bee-flower-NPE.patch
index d1fca0922f..d1fca0922f 100644
--- a/patches/unapplied/server/0923-Fix-Bee-flower-NPE.patch
+++ b/patches/server/0918-Fix-Bee-flower-NPE.patch
diff --git a/patches/unapplied/server/0924-Fix-Spigot-Config-not-using-commands.spam-exclusions.patch b/patches/server/0919-Fix-Spigot-Config-not-using-commands.spam-exclusions.patch
index 45dc64843d..8c39c20d02 100644
--- a/patches/unapplied/server/0924-Fix-Spigot-Config-not-using-commands.spam-exclusions.patch
+++ b/patches/server/0919-Fix-Spigot-Config-not-using-commands.spam-exclusions.patch
@@ -5,15 +5,15 @@ Subject: [PATCH] Fix Spigot Config not using commands.spam-exclusions
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
-index 8914b20e5823c0b0cfccf986db9e9265b7f757f5..9d89da66c0c5ab07252430eaff6d20e5e83db658 100644
+index 3b3a60bbc4547ae7e89ce40ae1572dbe1c028416..64542840d4b0a86d13e4a1ebef05a0761ea8edb9 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
-@@ -2400,7 +2400,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
+@@ -2572,7 +2572,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
}
// Spigot end
// this.chatSpamTickCount += 20;
- if (this.chatSpamTickCount.addAndGet(20) > 200 && !this.server.getPlayerList().isOp(this.player.getGameProfile())) {
+ if (counted && this.chatSpamTickCount.addAndGet(20) > 200 && !this.server.getPlayerList().isOp(this.player.getGameProfile())) { // Paper - exclude from SpigotConfig.spamExclusions
- if (!isSync) {
- Waitable waitable = new Waitable() {
- @Override
+ // CraftBukkit end
+ this.disconnect(Component.translatable("disconnect.spam"), org.bukkit.event.player.PlayerKickEvent.Cause.SPAM); // Paper - kick event cause
+ }
diff --git a/patches/unapplied/server/0925-Add-SpawnReason-to-Tadpoles-spawned-by-Frogspawn.patch b/patches/server/0920-Add-SpawnReason-to-Tadpoles-spawned-by-Frogspawn.patch
index dd94178b5a..dd94178b5a 100644
--- a/patches/unapplied/server/0925-Add-SpawnReason-to-Tadpoles-spawned-by-Frogspawn.patch
+++ b/patches/server/0920-Add-SpawnReason-to-Tadpoles-spawned-by-Frogspawn.patch
diff --git a/patches/unapplied/server/0926-More-Teleport-API.patch b/patches/server/0921-More-Teleport-API.patch
index 30bf24bb60..1cd98ea19f 100644
--- a/patches/unapplied/server/0926-More-Teleport-API.patch
+++ b/patches/server/0921-More-Teleport-API.patch
@@ -5,10 +5,10 @@ Subject: [PATCH] More Teleport API
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
-index 9d89da66c0c5ab07252430eaff6d20e5e83db658..935c482be4bf3767e197a576d0e38eac51115dd4 100644
+index 64542840d4b0a86d13e4a1ebef05a0761ea8edb9..e8b6fe40b4d51f506fc9686a12ec240c6bb8328b 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
-@@ -1660,11 +1660,17 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
+@@ -1726,11 +1726,17 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
return false; // CraftBukkit - Return event status
}
@@ -69,7 +69,7 @@ index 2a6c67634c31c332102d24bef293da1bacd0c000..b80cc0938b2b3928f4450f1314a9fbd7
// Let the server handle cross world teleports
if (location.getWorld() != null && !location.getWorld().equals(this.getWorld())) {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
-index 287520f91e22309e1268be1940e0fafb628980a9..d7ba155d9485128f4c7ad8ab4a2b7302a86aeb67 100644
+index 37f43ef07881b0898caef3ec28779a8b61fada47..0cb2b0bda179f90ec8bf8bc4d9be092290eccba0 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1123,7 +1123,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
diff --git a/patches/unapplied/server/0927-Add-EntityPortalReadyEvent.patch b/patches/server/0922-Add-EntityPortalReadyEvent.patch
index 90a107abc4..9fdc15459a 100644
--- a/patches/unapplied/server/0927-Add-EntityPortalReadyEvent.patch
+++ b/patches/server/0922-Add-EntityPortalReadyEvent.patch
@@ -5,10 +5,10 @@ Subject: [PATCH] Add EntityPortalReadyEvent
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
-index 5449c84d131915284822c1da14e972b04c022853..99f454b4a3a12fb9bf8e1d506ab311e4166700da 100644
+index 700e2299200b536255dd38c2f84e9ab13ab31811..f925a8d550ecbf2044a37bfe58b30d6578c5f6af 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
-@@ -2856,6 +2856,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
+@@ -2853,6 +2853,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
if (true && !this.isPassenger() && this.portalTime++ >= i) { // CraftBukkit
this.level.getProfiler().push("portal");
this.portalTime = i;
@@ -22,7 +22,7 @@ index 5449c84d131915284822c1da14e972b04c022853..99f454b4a3a12fb9bf8e1d506ab311e4
this.setPortalCooldown();
// CraftBukkit start
if (this instanceof ServerPlayer) {
-@@ -2863,6 +2870,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
+@@ -2860,6 +2867,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
} else {
this.changeDimension(worldserver1);
}
diff --git a/patches/unapplied/server/0928-Don-t-use-level-random-in-entity-constructors.patch b/patches/server/0923-Don-t-use-level-random-in-entity-constructors.patch
index 18739a1c8a..aea2ef2591 100644
--- a/patches/unapplied/server/0928-Don-t-use-level-random-in-entity-constructors.patch
+++ b/patches/server/0923-Don-t-use-level-random-in-entity-constructors.patch
@@ -31,7 +31,7 @@ index e5de2c1d11e5de88420caba35bf75c8bbd799db5..a9cdf9034ad269f7a71358443acc0532
}
diff --git a/src/main/java/net/minecraft/world/entity/item/ItemEntity.java b/src/main/java/net/minecraft/world/entity/item/ItemEntity.java
-index 08f15739dd7e2ab80718ab8d983b483a46309deb..c58c296bbb0fbd1930dba38bcab7ec3103917ba5 100644
+index 4c78c04ed031ec2e04642ebe5d79527e848d95f6..fcc5444a1268931a0fd2df1e6bbbc17cfd5a61e0 100644
--- a/src/main/java/net/minecraft/world/entity/item/ItemEntity.java
+++ b/src/main/java/net/minecraft/world/entity/item/ItemEntity.java
@@ -64,7 +64,12 @@ public class ItemEntity extends Entity {
diff --git a/patches/unapplied/server/0882-Prevent-tile-entity-copies-loading-chunks.patch b/patches/unapplied/server/0882-Prevent-tile-entity-copies-loading-chunks.patch
deleted file mode 100644
index 0987d09117..0000000000
--- a/patches/unapplied/server/0882-Prevent-tile-entity-copies-loading-chunks.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Shane Freeder <[email protected]>
-Date: Wed, 13 Apr 2022 08:25:42 +0100
-Subject: [PATCH] Prevent tile entity copies loading chunks
-
-
-diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
-index cd4fbce5d7b53e343db2a16f45ef05c696b97121..e08e6091dc0b885275045260386c88b368954fe6 100644
---- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
-+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
-@@ -3176,7 +3176,12 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
-
- if (!itemstack.isEmpty() && nbttagcompound != null && nbttagcompound.contains("x") && nbttagcompound.contains("y") && nbttagcompound.contains("z") && this.player.getBukkitEntity().hasPermission("minecraft.nbt.copy")) { // Spigot
- BlockPos blockposition = BlockEntity.getPosFromTag(nbttagcompound);
-- BlockEntity tileentity = this.player.level.getBlockEntity(blockposition);
-+ // Paper start
-+ BlockEntity tileentity = null;
-+ if (this.player.distanceToSqr(blockposition.getX(), blockposition.getY(), blockposition.getZ()) < 32 * 32 && this.player.getLevel().isLoadedAndInBounds(blockposition)) {
-+ tileentity = this.player.level.getBlockEntity(blockposition);
-+ }
-+ // Paper end
-
- if (tileentity != null) {
- tileentity.saveToItem(itemstack);
diff --git a/patches/unapplied/server/0908-Remove-invalid-signature-login-stacktrace.patch b/patches/unapplied/server/0908-Remove-invalid-signature-login-stacktrace.patch
deleted file mode 100644
index 46bb8a96aa..0000000000
--- a/patches/unapplied/server/0908-Remove-invalid-signature-login-stacktrace.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Nassim Jahnke <[email protected]>
-Date: Fri, 10 Jun 2022 16:02:35 +0200
-Subject: [PATCH] Remove invalid signature login stacktrace
-
-
-diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
-index 07fa94cc67225d6398634c450d6800d609fdb3fb..039b47e19d672ec9066c41fcc6342523992bf7b6 100644
---- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
-+++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java
-@@ -299,7 +299,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener
- try {
- this.playerProfilePublicKey = ServerLoginPacketListenerImpl.validatePublicKey(packet, this.server.getServiceSignatureValidator(), this.server.enforceSecureProfile());
- } catch (ServerLoginPacketListenerImpl.PublicKeyParseException loginlistener_a) {
-- ServerLoginPacketListenerImpl.LOGGER.error(loginlistener_a.getMessage(), loginlistener_a.getCause());
-+ //ServerLoginPacketListenerImpl.LOGGER.error(loginlistener_a.getMessage(), loginlistener_a.getCause()); // Paper - unnecessary stacktrace
- if (!this.connection.isMemoryConnection()) {
- this.disconnect(loginlistener_a.getComponent());
- return;
diff --git a/patches/unapplied/server/0913-Fix-MC-252439.patch b/patches/unapplied/server/0913-Fix-MC-252439.patch
deleted file mode 100644
index d378b7bfab..0000000000
--- a/patches/unapplied/server/0913-Fix-MC-252439.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Noah van der Aa <[email protected]>
-Date: Wed, 15 Jun 2022 22:34:07 +0200
-Subject: [PATCH] Fix MC-252439
-
-
-diff --git a/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java b/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java
-index 05cf30e6572c9bb7e11d71de1cd79df987bf062a..cff0ed9ae6e79f84870343e43574f384dd73ea88 100644
---- a/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java
-+++ b/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java
-@@ -266,6 +266,7 @@ public class ZombieVillager extends Zombie implements VillagerDataHolder {
-
- entityvillager.setVillagerXp(this.villagerXp);
- entityvillager.finalizeSpawn(world, world.getCurrentDifficultyAt(entityvillager.blockPosition()), MobSpawnType.CONVERSION, (SpawnGroupData) null, (CompoundTag) null);
-+ entityvillager.refreshBrain(world); // Paper - Fix MC-252439
- if (this.conversionStarter != null) {
- Player entityhuman = world.getPlayerByUUID(this.conversionStarter);
-
diff --git a/patches/unapplied/server/0916-Fix-missing-null-check-in-ChunkGenerator-findNearest.patch b/patches/unapplied/server/0916-Fix-missing-null-check-in-ChunkGenerator-findNearest.patch
deleted file mode 100644
index 3961e71e15..0000000000
--- a/patches/unapplied/server/0916-Fix-missing-null-check-in-ChunkGenerator-findNearest.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Shane Freeder <[email protected]>
-Date: Mon, 20 Jun 2022 14:59:38 +0100
-Subject: [PATCH] Fix missing null check in
- ChunkGenerator#findNearestMapStructure
-
-
-diff --git a/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java b/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java
-index cdfe2589ca598263d58a11a978e176ab3ecb87e6..264ca51c2f2a5ff69688372b71ad7355366bac1a 100644
---- a/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java
-+++ b/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java
-@@ -353,6 +353,7 @@ public abstract class ChunkGenerator {
- if (structureplacement1 instanceof ConcentricRingsStructurePlacement) {
- ConcentricRingsStructurePlacement concentricringsstructureplacement = (ConcentricRingsStructurePlacement) structureplacement1;
- Pair<BlockPos, Holder<Structure>> pair1 = this.getNearestGeneratedStructure((Set) entry.getValue(), world, structuremanager, center, skipReferencedStructures, concentricringsstructureplacement);
-+ if (pair1 == null) continue; // Paper
- BlockPos blockposition1 = (BlockPos) pair1.getFirst();
- double d1 = center.distSqr(blockposition1);
-