From 8d3759d4a542839defbf90c9d7bf4aadbb52cece Mon Sep 17 00:00:00 2001 From: Nassim Jahnke Date: Thu, 25 Apr 2024 22:34:46 +0200 Subject: [PATCH] More more compile fixes --- patches/server/0010-Adventure.patch | 10 +++++----- ...oleAppender-for-console-improvements.patch | 2 +- patches/server/0025-Timings-v2.patch | 4 ++-- .../0040-Player-affects-spawning-API.patch | 2 +- ...041-Only-refresh-abilities-if-needed.patch | 2 +- ...54-Implement-PlayerLocaleChangeEvent.patch | 2 +- .../0059-Add-PlayerInitialSpawnEvent.patch | 2 +- ...061-Improve-Player-chat-API-handling.patch | 2 +- .../0065-Player-Tab-List-and-Title-APIs.patch | 2 +- ...ble-inter-world-teleportation-safety.patch | 2 +- .../0073-Complete-resource-pack-API.patch | 2 +- ...th-absorb-values-and-repair-bad-data.patch | 2 +- .../0095-Configurable-Player-Collision.patch | 2 +- .../0126-String-based-Action-Bar-API.patch | 2 +- .../0131-Enforce-Sync-Player-Saves.patch | 2 +- ...le-async-calls-to-restart-the-server.patch | 2 +- .../0152-ProfileWhitelistVerifyEvent.patch | 2 +- ...nt-protocol-version-and-virtual-host.patch | 2 +- ...0-Ability-to-apply-mending-to-XP-API.patch | 4 ++-- .../0183-Player.setPlayerProfile-API.patch | 6 +++--- ...88-Flag-to-disable-the-channel-limit.patch | 2 +- .../0215-InventoryCloseEvent-Reason-API.patch | 4 ++-- ...35-Use-ConcurrentHashMap-in-JsonList.patch | 2 +- ...e-attack-cooldown-methods-for-Player.patch | 2 +- .../server/0250-Improve-death-events.patch | 2 +- ...-Replace-OfflinePlayer-getLastPlayed.patch | 4 ++-- ...r-remove-if-the-handle-is-a-custom-p.patch | 2 +- ...oggleEvent-when-whitelist-is-toggled.patch | 2 +- .../0289-Entity-getEntitySpawnReason.patch | 2 +- .../0291-Add-PlayerPostRespawnEvent.patch | 2 +- ...move-existing-players-to-world-spawn.patch | 2 +- ...-Implement-Player-Client-Options-API.patch | 2 +- ...nEvent-when-Player-is-actually-ready.patch | 2 +- ...pawn-point-if-spawn-in-unloaded-worl.patch | 2 +- patches/server/0400-Fix-SPIGOT-5989.patch | 2 +- patches/server/0407-Brand-support.patch | 2 +- ...al-open-container-api-to-HumanEntity.patch | 13 ++++++++++++ .../server/0446-Add-API-for-quit-reason.patch | 2 +- .../0448-Expose-world-spawn-angle.patch | 2 +- ...r-spawnParticle-x-y-z-precision-loss.patch | 2 +- .../0486-Fix-villager-boat-exploit.patch | 2 +- patches/server/0487-Add-sendOpLevel-API.patch | 4 ++-- ...0512-fix-converting-txt-to-json-file.patch | 2 +- ...ed-item-when-player-has-disconnected.patch | 2 +- ...pawnEvent-fix-passed-parameter-issue.patch | 2 +- ...550-Expand-PlayerGameModeChangeEvent.patch | 2 +- .../0562-Add-PlayerKickEvent-causes.patch | 4 ++-- ...k-event-leave-message-not-being-sent.patch | 2 +- .../server/0591-Add-PlayerSetSpawnEvent.patch | 4 ++-- ...llow-delegation-to-vanilla-chunk-gen.patch | 20 ++++++++++--------- patches/server/0667-Validate-usernames.patch | 2 +- ...vanilla-BiomeProvider-from-WorldInfo.patch | 2 +- ...ulti-Block-Change-API-Implementation.patch | 2 +- ...-command-sender-which-forwards-feedb.patch | 2 +- ...date-calls-to-CraftServer-getSpawnLi.patch | 2 +- patches/server/0686-Add-GameEvent-tags.patch | 6 +++--- ...o-worldlist-before-initing-the-world.patch | 2 +- patches/server/0694-Custom-Potion-Mixes.patch | 4 ++-- ...695-Force-close-world-loading-screen.patch | 2 +- .../0705-Fix-saving-in-unloadWorld.patch | 2 +- ...tead-of-display-name-in-PlayerList-g.patch | 2 +- .../0717-WorldCreator-keepSpawnLoaded.patch | 2 +- ...n-on-world-create-while-being-ticked.patch | 2 +- ...broadcast-messages-to-command-blocks.patch | 2 +- patches/server/0746-More-Teleport-API.patch | 2 +- ...stom-Chat-Completion-Suggestions-API.patch | 2 +- ...6-Add-Velocity-IP-Forwarding-Support.patch | 2 +- .../0771-Fix-a-bunch-of-vanilla-bugs.patch | 2 +- .../0777-Elder-Guardian-appearance-API.patch | 2 +- .../0791-Add-Player-Warden-Warning-API.patch | 2 +- patches/server/0804-fix-Instruments.patch | 2 +- ...-for-some-hot-BlockBehavior-and-Flui.patch | 2 +- patches/server/0814-Flying-Fall-Damage.patch | 2 +- ...le-player-info-update-packet-on-join.patch | 2 +- patches/server/0820-Win-Screen-API.patch | 2 +- .../0846-Expand-PlayerItemMendEvent.patch | 2 +- ...anhasbukkit-default-if-alias-block-e.patch | 2 +- patches/server/0866-Fix-BanList-API.patch | 2 +- ...Folia-scheduler-and-owned-region-API.patch | 4 ++-- ...-API-for-updating-recipes-on-clients.patch | 4 ++-- ...1-Use-correct-seed-on-api-world-load.patch | 2 +- .../server/0885-Bandaid-fix-for-Effect.patch | 2 +- ...place-methods-with-old-StructureType.patch | 2 +- .../0893-Add-Listing-API-for-Player.patch | 4 ++-- ...-Implement-OfflinePlayer-isConnected.patch | 2 +- ...ix-missing-map-initialize-event-call.patch | 16 +++++++-------- .../0923-Add-player-idle-duration-API.patch | 2 +- ...stack-for-Player-sendEquipmentChange.patch | 2 +- ...n-t-fire-sync-events-during-worldgen.patch | 2 +- .../0947-Add-experience-points-API.patch | 2 +- ...e-experience-dropping-on-block-break.patch | 2 +- .../0958-Add-Lifecycle-Event-system.patch | 2 +- .../server/0963-improve-BanList-types.patch | 2 +- ...65-Add-BlockBreakProgressUpdateEvent.patch | 2 +- .../0966-Deprecate-ItemStack-setType.patch | 13 ++++++++---- ...0-Configurable-max-block-fluid-ticks.patch | 2 +- ...983-disable-forced-empty-world-ticks.patch | 2 +- patches/server/0984-Starlight.patch | 2 +- .../server/0985-Rewrite-chunk-system.patch | 8 ++++---- ...-incremental-chunk-and-player-saving.patch | 4 ++-- ...item-frames-performance-and-bug-fixe.patch | 2 +- ...991-Allow-Saving-of-Oversized-Chunks.patch | 4 ++-- ...992-Fix-World-isChunkGenerated-calls.patch | 2 +- .../0994-Entity-Activation-Range-2.0.patch | 2 +- patches/server/0996-Anti-Xray.patch | 6 +++--- ...ptimize-Collision-to-not-load-chunks.patch | 2 +- .../1001-Improved-Watchdog-Support.patch | 2 +- .../1003-Write-SavedData-IO-async.patch | 2 +- ...and-End-Portal-Frames-from-being-des.patch | 2 +- .../1013-Execute-chunk-tasks-mid-tick.patch | 2 +- .../1014-Optimise-random-block-ticking.patch | 2 +- ...culate-regionfile-header-if-it-is-co.patch | 6 +++--- ...l-more-information-in-watchdog-dumps.patch | 2 +- .../server/1018-Collision-optimisations.patch | 4 ++-- ...nate-Current-redstone-implementation.patch | 6 +++--- .../1024-Properly-resend-entities.patch | 6 +++--- ...6-Improve-performance-of-mass-crafts.patch | 4 ++-- .../server/1029-Lag-compensation-ticks.patch | 2 +- ...030-Optimise-nearby-player-retrieval.patch | 2 +- ...x-and-optimise-world-force-upgrading.patch | 4 ++-- .../1035-API-for-checking-sent-chunks.patch | 2 +- 121 files changed, 193 insertions(+), 173 deletions(-) diff --git a/patches/server/0010-Adventure.patch b/patches/server/0010-Adventure.patch index 0d86acf833..4840ffb09c 100644 --- a/patches/server/0010-Adventure.patch +++ b/patches/server/0010-Adventure.patch @@ -2947,7 +2947,7 @@ index a4d8d4400a1f6f6d05a3c362f2bc4a391d4ee9a1..9e62aa13845f19faf0dc0b7b27d95862 @Override diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 54fee00a462c2f6fcc567d762b1afd24cf5c7d06..126445b30f013e361473aa32583b35a5338c7083 100644 +index 54fee00a462c2f6fcc567d762b1afd24cf5c7d06..0ff094a90bf471ce57a3054c7701dc3d67742d9d 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -271,7 +271,7 @@ public abstract class PlayerList { @@ -3084,7 +3084,7 @@ index 54fee00a462c2f6fcc567d762b1afd24cf5c7d06..126445b30f013e361473aa32583b35a5 boolean flag1 = false; boolean flag2; -+ Packet disguised = sender != null && unsignedFunction == null ? new net.minecraft.network.protocol.game.ClientboundDisguisedChatPacket(outgoingchatmessage.content(), params.toNetwork(sender.level().registryAccess())) : null; // Paper - don't send player chat packets from vanished players ++ Packet disguised = sender != null && unsignedFunction == null ? new net.minecraft.network.protocol.game.ClientboundDisguisedChatPacket(outgoingchatmessage.content(), params) : null; // Paper - don't send player chat packets from vanished players for (Iterator iterator = this.players.iterator(); iterator.hasNext(); flag1 |= flag2 && message.isFullyFiltered()) { ServerPlayer entityplayer1 = (ServerPlayer) iterator.next(); @@ -3094,7 +3094,7 @@ index 54fee00a462c2f6fcc567d762b1afd24cf5c7d06..126445b30f013e361473aa32583b35a5 + // Paper start - don't send player chat packets from vanished players + if (sender != null && !entityplayer1.getBukkitEntity().canSee(sender.getBukkitEntity())) { + entityplayer1.connection.send(unsignedFunction != null -+ ? new net.minecraft.network.protocol.game.ClientboundDisguisedChatPacket(unsignedFunction.apply(entityplayer1.getBukkitEntity()), params.toNetwork(sender.level().registryAccess())) ++ ? new net.minecraft.network.protocol.game.ClientboundDisguisedChatPacket(unsignedFunction.apply(entityplayer1.getBukkitEntity()), params) + : disguised); + continue; + } @@ -4059,7 +4059,7 @@ index 55945b83a5426b352bad9507cc9e94afb1278032..9ea1537408ff2d790747b6e5a681d917 public boolean isOp() { return true; diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 9d2af8b74e33888df33425627b286d32c95753d6..fab8d670ed8fcd26bf25dabac207b563de0d37e9 100644 +index 9d2af8b74e33888df33425627b286d32c95753d6..2b885e00840171777c08b5f0ffe2488b39e51559 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -385,14 +385,40 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -4287,7 +4287,7 @@ index 9d2af8b74e33888df33425627b286d32c95753d6..fab8d670ed8fcd26bf25dabac207b563 + final Component prompt = io.papermc.paper.adventure.PaperAdventure.asVanilla(request.prompt()); + for (final java.util.Iterator iter = request.packs().iterator(); iter.hasNext();) { + final net.kyori.adventure.resource.ResourcePackInfo pack = iter.next(); -+ packs.add(new ClientboundResourcePackPushPacket(pack.id(), pack.uri().toASCIIString(), pack.hash(), request.required(), iter.hasNext() ? null : prompt)); ++ packs.add(new ClientboundResourcePackPushPacket(pack.id(), pack.uri().toASCIIString(), pack.hash(), request.required(), iter.hasNext() ? Optional.empty() : Optional.of(prompt))); + if (request.callback() != net.kyori.adventure.resource.ResourcePackCallback.noOp()) { + this.getHandle().connection.packCallbacks.put(pack.id(), request.callback()); // just override if there is a previously existing callback + } diff --git a/patches/server/0011-Use-TerminalConsoleAppender-for-console-improvements.patch b/patches/server/0011-Use-TerminalConsoleAppender-for-console-improvements.patch index 6b16874a15..d1975319b9 100644 --- a/patches/server/0011-Use-TerminalConsoleAppender-for-console-improvements.patch +++ b/patches/server/0011-Use-TerminalConsoleAppender-for-console-improvements.patch @@ -372,7 +372,7 @@ index 3d92c61f7781221cfdc0324d11bd0088954e4a68..84a2c6c397604279ba821286f5c3c855 if (!SwingUtilities.isEventDispatchThread()) { SwingUtilities.invokeLater(() -> { diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 126445b30f013e361473aa32583b35a5338c7083..dbb5b333930ce401d36f7d18880d103c9ef2f98e 100644 +index 0ff094a90bf471ce57a3054c7701dc3d67742d9d..50f4b77c83854932050cc543c7c2deeae641794f 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -161,8 +161,7 @@ public abstract class PlayerList { diff --git a/patches/server/0025-Timings-v2.patch b/patches/server/0025-Timings-v2.patch index 01b7908125..e0a14e03ed 100644 --- a/patches/server/0025-Timings-v2.patch +++ b/patches/server/0025-Timings-v2.patch @@ -1277,7 +1277,7 @@ index ad965076a31b947afc65fdf3a03972f407235e92..4a37313ea0f2253f377ea5d0d2c2d7b6 } // CraftBukkit end diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index dbb5b333930ce401d36f7d18880d103c9ef2f98e..e8377a2301e0e6c560a304ecd93dc1f90ee474eb 100644 +index 50f4b77c83854932050cc543c7c2deeae641794f..26a0f1ae6fb2acb62648b0cd7996505d107db532 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -1,5 +1,6 @@ @@ -1805,7 +1805,7 @@ index b0ffa23faf62629043dfd613315eaf9c5fcc2cfe..00000000000000000000000000000000 - } -} diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index fab8d670ed8fcd26bf25dabac207b563de0d37e9..57444d3cb1e7d7c1871ade8da9189c349c31f574 100644 +index 2b885e00840171777c08b5f0ffe2488b39e51559..f18ba33cc02b98e389f16c8ca174a832537ebce9 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -2767,6 +2767,14 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0040-Player-affects-spawning-API.patch b/patches/server/0040-Player-affects-spawning-API.patch index cfa4e6f29d..2854626320 100644 --- a/patches/server/0040-Player-affects-spawning-API.patch +++ b/patches/server/0040-Player-affects-spawning-API.patch @@ -135,7 +135,7 @@ index f38f62e777d88a783e1e3b7e1a48da921cc67cf4..77ae7882a08441d9a80b50492be5e484 for (Player player : this.players()) { if (EntitySelector.NO_SPECTATORS.test(player) && EntitySelector.LIVING_ENTITY_STILL_ALIVE.test(player)) { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 57444d3cb1e7d7c1871ade8da9189c349c31f574..bbd68165b8215dfe221a2ad78cb994093831ce8e 100644 +index f18ba33cc02b98e389f16c8ca174a832537ebce9..476f1270344358660ce313e6a1d1ebbb42792c59 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -2409,6 +2409,17 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0041-Only-refresh-abilities-if-needed.patch b/patches/server/0041-Only-refresh-abilities-if-needed.patch index 3f507021fd..1f3e18706e 100644 --- a/patches/server/0041-Only-refresh-abilities-if-needed.patch +++ b/patches/server/0041-Only-refresh-abilities-if-needed.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Only refresh abilities if needed diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index bbd68165b8215dfe221a2ad78cb994093831ce8e..bcfcd382d630525c887e2b3945bdd81a5f13bc2f 100644 +index 476f1270344358660ce313e6a1d1ebbb42792c59..16aa9c45bdbac13f3f34040b68614dbe03cb3fb8 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -2082,12 +2082,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0054-Implement-PlayerLocaleChangeEvent.patch b/patches/server/0054-Implement-PlayerLocaleChangeEvent.patch index 36fdd11cb7..4ab091199a 100644 --- a/patches/server/0054-Implement-PlayerLocaleChangeEvent.patch +++ b/patches/server/0054-Implement-PlayerLocaleChangeEvent.patch @@ -39,7 +39,7 @@ index d75c3c10dcbd777796e479b9538e5254857ac07c..ab2336a30c1ffc1698c327c031a648d4 // CraftBukkit end this.language = clientOptions.language(); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index bcfcd382d630525c887e2b3945bdd81a5f13bc2f..58b2e368cd5c5664f65bad9a3025d9813730b184 100644 +index 16aa9c45bdbac13f3f34040b68614dbe03cb3fb8..f4495e24f825c8bbd2d51e2e56b30815c2156cf2 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -2407,7 +2407,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0059-Add-PlayerInitialSpawnEvent.patch b/patches/server/0059-Add-PlayerInitialSpawnEvent.patch index 6f7c11e165..6afbd430d3 100644 --- a/patches/server/0059-Add-PlayerInitialSpawnEvent.patch +++ b/patches/server/0059-Add-PlayerInitialSpawnEvent.patch @@ -12,7 +12,7 @@ improve setPosition to use raw public net.minecraft.world.entity.Entity setRot(FF)V diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index e8377a2301e0e6c560a304ecd93dc1f90ee474eb..8f3bcb7183ed09e9c2a16e26b5b3ac125aa57d90 100644 +index 26a0f1ae6fb2acb62648b0cd7996505d107db532..abb769cbbed17a82ee86a6c99e61a375045d9937 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -226,7 +226,7 @@ public abstract class PlayerList { diff --git a/patches/server/0061-Improve-Player-chat-API-handling.patch b/patches/server/0061-Improve-Player-chat-API-handling.patch index a8f03a9659..ea7af9e1aa 100644 --- a/patches/server/0061-Improve-Player-chat-API-handling.patch +++ b/patches/server/0061-Improve-Player-chat-API-handling.patch @@ -53,7 +53,7 @@ index b43dae6ed6ebdd1978e35e9d43e07591f90dcb09..4a1305df41c42be65dbb0438066e148e if (this.commandMap.dispatch(sender, commandLine)) { return true; diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 58b2e368cd5c5664f65bad9a3025d9813730b184..ac9fb5862d08cdc9bdc9c10db562e72adec5b942 100644 +index f4495e24f825c8bbd2d51e2e56b30815c2156cf2..5bb906ae7b2aab9601aa8dac492ba221345f5bac 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -543,7 +543,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0065-Player-Tab-List-and-Title-APIs.patch b/patches/server/0065-Player-Tab-List-and-Title-APIs.patch index 94ec7c3c62..07324af200 100644 --- a/patches/server/0065-Player-Tab-List-and-Title-APIs.patch +++ b/patches/server/0065-Player-Tab-List-and-Title-APIs.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Player Tab List and Title APIs diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index ac9fb5862d08cdc9bdc9c10db562e72adec5b942..6ff1535a945ca46a7d73718758581dd1e66e5304 100644 +index 5bb906ae7b2aab9601aa8dac492ba221345f5bac..a0eaf651444e59315a3a68ae96a18b59742e2b65 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -383,6 +383,98 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0068-Configurable-inter-world-teleportation-safety.patch b/patches/server/0068-Configurable-inter-world-teleportation-safety.patch index ad43ff1e69..2584e30cfa 100644 --- a/patches/server/0068-Configurable-inter-world-teleportation-safety.patch +++ b/patches/server/0068-Configurable-inter-world-teleportation-safety.patch @@ -16,7 +16,7 @@ The wanted destination was on top of the emerald block however the player ended This only is the case if the player is teleporting between worlds. diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 6ff1535a945ca46a7d73718758581dd1e66e5304..6d4740ee59709ef6bf414c77c2ee322a97a0e63b 100644 +index a0eaf651444e59315a3a68ae96a18b59742e2b65..d40143d8d551d1f4df37b85a72109f53cf7ae10b 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1235,7 +1235,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0073-Complete-resource-pack-API.patch b/patches/server/0073-Complete-resource-pack-API.patch index 9cedaf1ec3..b1bb6b4d43 100644 --- a/patches/server/0073-Complete-resource-pack-API.patch +++ b/patches/server/0073-Complete-resource-pack-API.patch @@ -22,7 +22,7 @@ index 70a22e140050273ae420e8dc414eab6d08e78617..d0178fc884b57cda9090a80716685994 } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 6d4740ee59709ef6bf414c77c2ee322a97a0e63b..de4f80b7b5b573228cc3bbdcbca784368ee4cc81 100644 +index d40143d8d551d1f4df37b85a72109f53cf7ae10b..4e80ed2d52caf3869138b76fda00a71d92cda766 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -205,6 +205,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0081-handle-NaN-health-absorb-values-and-repair-bad-data.patch b/patches/server/0081-handle-NaN-health-absorb-values-and-repair-bad-data.patch index bdb70bec1b..cf34579995 100644 --- a/patches/server/0081-handle-NaN-health-absorb-values-and-repair-bad-data.patch +++ b/patches/server/0081-handle-NaN-health-absorb-values-and-repair-bad-data.patch @@ -44,7 +44,7 @@ index 53da8935e076d56f0a5423e5c1bdcdddc7cbd882..f02b12f3853bf4bf29b59a505f06cb98 protected void internalSetAbsorptionAmount(float absorptionAmount) { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index de4f80b7b5b573228cc3bbdcbca784368ee4cc81..ad995762fa30262486eecba83bdb9c463bd23001 100644 +index 4e80ed2d52caf3869138b76fda00a71d92cda766..deeab3b8ab258e5914a05190704a78d895dc9f33 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -2327,6 +2327,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0095-Configurable-Player-Collision.patch b/patches/server/0095-Configurable-Player-Collision.patch index 0b8ca4a2d8..a9ffe5c5d4 100644 --- a/patches/server/0095-Configurable-Player-Collision.patch +++ b/patches/server/0095-Configurable-Player-Collision.patch @@ -43,7 +43,7 @@ index d5b5eb914278fbd85921c039a8da3492dcbd6168..f46c8dd1ab752a88a3292f82720b27b2 this.server.getPluginManager().callEvent(new ServerLoadEvent(ServerLoadEvent.LoadType.STARTUP)); if (io.papermc.paper.plugin.PluginInitializerManager.instance().pluginRemapper != null) io.papermc.paper.plugin.PluginInitializerManager.instance().pluginRemapper.pluginsEnabled(); // Paper - Remap plugins diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 8f3bcb7183ed09e9c2a16e26b5b3ac125aa57d90..fa85bf581ff2ff8de50355c3b5bf74d38ef9ffc1 100644 +index abb769cbbed17a82ee86a6c99e61a375045d9937..3fb300026e627313c65ea23b9c0a9f57a97fa310 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -159,6 +159,7 @@ public abstract class PlayerList { diff --git a/patches/server/0126-String-based-Action-Bar-API.patch b/patches/server/0126-String-based-Action-Bar-API.patch index fb0945c53e..dcd1006a24 100644 --- a/patches/server/0126-String-based-Action-Bar-API.patch +++ b/patches/server/0126-String-based-Action-Bar-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] String based Action Bar API diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index ad995762fa30262486eecba83bdb9c463bd23001..ec5cf5a08bce3c1b89f009a236a26946477bbf8a 100644 +index deeab3b8ab258e5914a05190704a78d895dc9f33..7884108bddd9d56550dcce3e2d00affb27e07fb1 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -385,6 +385,28 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0131-Enforce-Sync-Player-Saves.patch b/patches/server/0131-Enforce-Sync-Player-Saves.patch index 8c69fb296d..0a5c3c945c 100644 --- a/patches/server/0131-Enforce-Sync-Player-Saves.patch +++ b/patches/server/0131-Enforce-Sync-Player-Saves.patch @@ -7,7 +7,7 @@ Saving players async is extremely dangerous. This will force it to main the same way we handle async chunk loads. diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index fa85bf581ff2ff8de50355c3b5bf74d38ef9ffc1..2b8824242b0e6e0224d6eac8f661ae1435c58d66 100644 +index 3fb300026e627313c65ea23b9c0a9f57a97fa310..2753b821f17ea8950a80c5d0e96d7b367d00e068 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -1060,11 +1060,13 @@ public abstract class PlayerList { diff --git a/patches/server/0135-Properly-handle-async-calls-to-restart-the-server.patch b/patches/server/0135-Properly-handle-async-calls-to-restart-the-server.patch index a6a5c49d44..f4d5531deb 100644 --- a/patches/server/0135-Properly-handle-async-calls-to-restart-the-server.patch +++ b/patches/server/0135-Properly-handle-async-calls-to-restart-the-server.patch @@ -64,7 +64,7 @@ index 1ecd28b709e3ef47568298878a84a6aede52d6f5..9cbe8415699a79344b3c4245cc4f9424 if (waitForShutdown) { try { diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 2b8824242b0e6e0224d6eac8f661ae1435c58d66..d42795278a54552410cd72d5cca636040a692971 100644 +index 2753b821f17ea8950a80c5d0e96d7b367d00e068..5d7cf0bffae13ecbc460a0f0b74e110ef9380a14 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -1174,8 +1174,15 @@ public abstract class PlayerList { diff --git a/patches/server/0152-ProfileWhitelistVerifyEvent.patch b/patches/server/0152-ProfileWhitelistVerifyEvent.patch index cd44d92ad3..b11dd2a0d1 100644 --- a/patches/server/0152-ProfileWhitelistVerifyEvent.patch +++ b/patches/server/0152-ProfileWhitelistVerifyEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] ProfileWhitelistVerifyEvent diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index d42795278a54552410cd72d5cca636040a692971..96c9b8e3f26054ca0e285dc188cd79d121e29afd 100644 +index 5d7cf0bffae13ecbc460a0f0b74e110ef9380a14..d59f85d3a4385ebba1a93a9b10533f18b7386ab2 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -631,9 +631,9 @@ public abstract class PlayerList { diff --git a/patches/server/0160-Expose-client-protocol-version-and-virtual-host.patch b/patches/server/0160-Expose-client-protocol-version-and-virtual-host.patch index 68d58973cc..5e9695a196 100644 --- a/patches/server/0160-Expose-client-protocol-version-and-virtual-host.patch +++ b/patches/server/0160-Expose-client-protocol-version-and-virtual-host.patch @@ -90,7 +90,7 @@ index 9214fb6b8e21ff6aee8be0691f1fe6e41c901ba3..644214cc3a3c8e560b6ce470fe5997e3 @Override diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index ec5cf5a08bce3c1b89f009a236a26946477bbf8a..7e9e2895aebb53c00fb3f4d3e284d52ab7e9724b 100644 +index 7884108bddd9d56550dcce3e2d00affb27e07fb1..831e63386d110fe5581526dc142bd630aca39246 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -331,6 +331,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0170-Ability-to-apply-mending-to-XP-API.patch b/patches/server/0170-Ability-to-apply-mending-to-XP-API.patch index b0247f34dd..4d13449494 100644 --- a/patches/server/0170-Ability-to-apply-mending-to-XP-API.patch +++ b/patches/server/0170-Ability-to-apply-mending-to-XP-API.patch @@ -14,7 +14,7 @@ public net.minecraft.world.entity.ExperienceOrb durabilityToXp(I)I public net.minecraft.world.entity.ExperienceOrb xpToDurability(I)I diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 7e9e2895aebb53c00fb3f4d3e284d52ab7e9724b..c95b553a751e99b37ea340fcf5e1417bb147ae2d 100644 +index 831e63386d110fe5581526dc142bd630aca39246..1fc04a8b10ad775e46f86ecd045073dc24d28763 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1624,7 +1624,37 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -29,7 +29,7 @@ index 7e9e2895aebb53c00fb3f4d3e284d52ab7e9724b..c95b553a751e99b37ea340fcf5e1417b + final var stackEntry = net.minecraft.world.item.enchantment.EnchantmentHelper + .getRandomItemWith(net.minecraft.world.item.enchantment.Enchantments.MENDING, handle); + final net.minecraft.world.item.ItemStack itemstack = stackEntry != null ? stackEntry.getValue() : net.minecraft.world.item.ItemStack.EMPTY; -+ if (!itemstack.isEmpty() && itemstack.getItem().canBeDepleted()) { ++ if (!itemstack.isEmpty() && itemstack.getItem().components().has(net.minecraft.core.component.DataComponents.MAX_STACK_SIZE)) { + net.minecraft.world.entity.ExperienceOrb orb = net.minecraft.world.entity.EntityType.EXPERIENCE_ORB.create(handle.level()); + orb.value = amount; + orb.spawnReason = org.bukkit.entity.ExperienceOrb.SpawnReason.CUSTOM; diff --git a/patches/server/0183-Player.setPlayerProfile-API.patch b/patches/server/0183-Player.setPlayerProfile-API.patch index dff2830bf8..06079d32d1 100644 --- a/patches/server/0183-Player.setPlayerProfile-API.patch +++ b/patches/server/0183-Player.setPlayerProfile-API.patch @@ -40,7 +40,7 @@ index 8f72dafebcca68263eeef4076c3251819815c77d..96a7d52f982d2dcc5fa391007e5861ca playerName = gameprofile.getName(); uniqueId = gameprofile.getId(); diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 96c9b8e3f26054ca0e285dc188cd79d121e29afd..53f4a1d00aba1d522912d8a2366961c0c842d4db 100644 +index d59f85d3a4385ebba1a93a9b10533f18b7386ab2..d25c762e449e2bce20487454ad52363b35b9af96 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -862,10 +862,16 @@ public abstract class PlayerList { @@ -77,7 +77,7 @@ index 818df09e9245b5d89b4180b1eaa51470b7539341..461656e1cb095243bfe7a9ee2906e5b0 public Server getServer() { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index c95b553a751e99b37ea340fcf5e1417bb147ae2d..5a6ce9733da2bb58499a27d96ad0cfd8ae380520 100644 +index 1fc04a8b10ad775e46f86ecd045073dc24d28763..5273d0ff76ce68683b4d27576b93bd330516ba5f 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -246,11 +246,6 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -212,7 +212,7 @@ index c95b553a751e99b37ea340fcf5e1417bb147ae2d..5a6ce9733da2bb58499a27d96ad0cfd8 + // Resend their XP and effects because the respawn packet resets it + connection.send(new net.minecraft.network.protocol.game.ClientboundSetExperiencePacket(handle.experienceProgress, handle.totalExperience, handle.experienceLevel)); + for (net.minecraft.world.effect.MobEffectInstance mobEffect : handle.getActiveEffects()) { -+ connection.send(new net.minecraft.network.protocol.game.ClientboundUpdateMobEffectPacket(handle.getId(), mobEffect)); ++ connection.send(new net.minecraft.network.protocol.game.ClientboundUpdateMobEffectPacket(handle.getId(), mobEffect, false)); + } + } + // Paper end diff --git a/patches/server/0188-Flag-to-disable-the-channel-limit.patch b/patches/server/0188-Flag-to-disable-the-channel-limit.patch index 558abfdbc8..a938e9a108 100644 --- a/patches/server/0188-Flag-to-disable-the-channel-limit.patch +++ b/patches/server/0188-Flag-to-disable-the-channel-limit.patch @@ -9,7 +9,7 @@ e.g. servers which allow and support the usage of mod packs. provide an optional flag to disable this check, at your own risk. diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 5a6ce9733da2bb58499a27d96ad0cfd8ae380520..113c766abb12c24811bf6b8587e25762b6a2aa47 100644 +index 5273d0ff76ce68683b4d27576b93bd330516ba5f..7e9c65689520b9bf5e0491eab2557705f6378121 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -206,6 +206,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0215-InventoryCloseEvent-Reason-API.patch b/patches/server/0215-InventoryCloseEvent-Reason-API.patch index 37420eebb4..b7450dc81e 100644 --- a/patches/server/0215-InventoryCloseEvent-Reason-API.patch +++ b/patches/server/0215-InventoryCloseEvent-Reason-API.patch @@ -96,7 +96,7 @@ index 82cc40becd6c08364d9547aea0d7ffa5c407c42e..36f7a897bd1e0b73c6969cd6d46abe34 this.player.doCloseContainer(); } diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 53f4a1d00aba1d522912d8a2366961c0c842d4db..43fc4e945c6a3cd94522d667055ab3dd80f961f6 100644 +index d25c762e449e2bce20487454ad52363b35b9af96..3273c3f06c142d4e3c947ca846459f4a8e5eefd8 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -517,7 +517,7 @@ public abstract class PlayerList { @@ -165,7 +165,7 @@ index dd3377a4f69e5ac10905e52d0eecc2427e72d856..c79607a2f45b7a487a95cf98b9b0eb6b @Override public boolean isBlocking() { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 113c766abb12c24811bf6b8587e25762b6a2aa47..23ba43bedb773addd5ba7a24845c7c0ad195ef0a 100644 +index 7e9c65689520b9bf5e0491eab2557705f6378121..8a91a0d5902c4cb0eed804cdae9a8602775d45bd 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1260,7 +1260,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0235-Use-ConcurrentHashMap-in-JsonList.patch b/patches/server/0235-Use-ConcurrentHashMap-in-JsonList.patch index 1f9899deea..f2227d0d63 100644 --- a/patches/server/0235-Use-ConcurrentHashMap-in-JsonList.patch +++ b/patches/server/0235-Use-ConcurrentHashMap-in-JsonList.patch @@ -23,7 +23,7 @@ Modified isEmpty to use the isEmpty() method instead of the slightly confusing s The point of this is readability, but does have a side-benefit of a small microptimization diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 43fc4e945c6a3cd94522d667055ab3dd80f961f6..4dea09aa0f5f45d449ba12d8a9db3e0a3b708757 100644 +index 3273c3f06c142d4e3c947ca846459f4a8e5eefd8..940896725c32981ddd2d5a23d72a87ba3e5e0fee 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -634,7 +634,7 @@ public abstract class PlayerList { diff --git a/patches/server/0249-Expose-attack-cooldown-methods-for-Player.patch b/patches/server/0249-Expose-attack-cooldown-methods-for-Player.patch index db7803b5a0..6c7a6c6d73 100644 --- a/patches/server/0249-Expose-attack-cooldown-methods-for-Player.patch +++ b/patches/server/0249-Expose-attack-cooldown-methods-for-Player.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Expose attack cooldown methods for Player diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 23ba43bedb773addd5ba7a24845c7c0ad195ef0a..7bb1a488a1f7eb40a88a70c2245fa86fafd02145 100644 +index 8a91a0d5902c4cb0eed804cdae9a8602775d45bd..a7ae7f5e9e9dc3e11d2d389455f276c17b525eeb 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -2961,6 +2961,21 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0250-Improve-death-events.patch b/patches/server/0250-Improve-death-events.patch index 911adb4244..69ae32e238 100644 --- a/patches/server/0250-Improve-death-events.patch +++ b/patches/server/0250-Improve-death-events.patch @@ -427,7 +427,7 @@ index 042968ff848da74be0c9fcf9bac3d0adfb135802..cb3729509e50fed64b17f16797825c1d this.gameEvent(GameEvent.ENTITY_DIE); } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 7bb1a488a1f7eb40a88a70c2245fa86fafd02145..886c6595c9f621a910a931fa1dcc23edf173c14d 100644 +index a7ae7f5e9e9dc3e11d2d389455f276c17b525eeb..50c5c3bd3c4c368a2e15f5881cb93994c31db0d7 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -2502,7 +2502,14 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0280-Replace-OfflinePlayer-getLastPlayed.patch b/patches/server/0280-Replace-OfflinePlayer-getLastPlayed.patch index cfbe975959..136720ca5b 100644 --- a/patches/server/0280-Replace-OfflinePlayer-getLastPlayed.patch +++ b/patches/server/0280-Replace-OfflinePlayer-getLastPlayed.patch @@ -28,7 +28,7 @@ index 3b71ea8263b2049c54432a64c7f01aed3848d1c7..05379ea4581db4277e6cc625ed0f3228 public boolean queueHealthUpdatePacket; public net.minecraft.network.protocol.game.ClientboundSetHealthPacket queuedHealthUpdatePacket; diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 4dea09aa0f5f45d449ba12d8a9db3e0a3b708757..7112c6c77c5527f530223d5ffdf81c837a609b7c 100644 +index 940896725c32981ddd2d5a23d72a87ba3e5e0fee..f472d6eb337de1274424dabe39d4e8a094710165 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -182,6 +182,7 @@ public abstract class PlayerList { @@ -106,7 +106,7 @@ index 461656e1cb095243bfe7a9ee2906e5b00574ae78..411b280ac3e27e72091db813c0c9b69b public Location getLastDeathLocation() { if (this.getData().contains("LastDeathLocation", 10)) { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 886c6595c9f621a910a931fa1dcc23edf173c14d..faa3f44d1fbf8b401503b9c3391794c23a35e8ff 100644 +index 50c5c3bd3c4c368a2e15f5881cb93994c31db0d7..9b23e3a4c9d6b8c83bdf6ef3939ad0fdd4c61b65 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -207,6 +207,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0282-Dont-block-Player-remove-if-the-handle-is-a-custom-p.patch b/patches/server/0282-Dont-block-Player-remove-if-the-handle-is-a-custom-p.patch index ca3892240a..55391f5431 100644 --- a/patches/server/0282-Dont-block-Player-remove-if-the-handle-is-a-custom-p.patch +++ b/patches/server/0282-Dont-block-Player-remove-if-the-handle-is-a-custom-p.patch @@ -8,7 +8,7 @@ We just add a check to ensure that the CraftPlayer's handle is a ServerPlayer diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index faa3f44d1fbf8b401503b9c3391794c23a35e8ff..c0dfc799c0945bf5dc949ab505bc0db3853af557 100644 +index 9b23e3a4c9d6b8c83bdf6ef3939ad0fdd4c61b65..307d8313b7d314f09201a7a958fd2027ecc31cdc 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -221,8 +221,12 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0288-Call-WhitelistToggleEvent-when-whitelist-is-toggled.patch b/patches/server/0288-Call-WhitelistToggleEvent-when-whitelist-is-toggled.patch index 5209c894e2..17ab7a0e08 100644 --- a/patches/server/0288-Call-WhitelistToggleEvent-when-whitelist-is-toggled.patch +++ b/patches/server/0288-Call-WhitelistToggleEvent-when-whitelist-is-toggled.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Call WhitelistToggleEvent when whitelist is toggled diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 7112c6c77c5527f530223d5ffdf81c837a609b7c..f29cd4d7c528404ea8e77e82a5ae17a9d9d19ed5 100644 +index f472d6eb337de1274424dabe39d4e8a094710165..f91e145a748dc524e1e95ee3afe00aa74a1aee9a 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -1157,6 +1157,7 @@ public abstract class PlayerList { diff --git a/patches/server/0289-Entity-getEntitySpawnReason.patch b/patches/server/0289-Entity-getEntitySpawnReason.patch index 086ad22ac4..023b0316cd 100644 --- a/patches/server/0289-Entity-getEntitySpawnReason.patch +++ b/patches/server/0289-Entity-getEntitySpawnReason.patch @@ -34,7 +34,7 @@ index 2879de5d5c6638d9b683e74da8dc3863738f2b65..893846b2b216ef67652285a59ba3c67b // WorldServer.LOGGER.warn("Tried to add entity {} but it was marked as removed already", EntityTypes.getKey(entity.getType())); // CraftBukkit return false; diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index f29cd4d7c528404ea8e77e82a5ae17a9d9d19ed5..24790ded773c8d041e7f43c9b8f8f8fe9fff3d74 100644 +index f91e145a748dc524e1e95ee3afe00aa74a1aee9a..e3ce13685499e2adea5b776ec4abbdd978b6af58 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -223,6 +223,11 @@ public abstract class PlayerList { diff --git a/patches/server/0291-Add-PlayerPostRespawnEvent.patch b/patches/server/0291-Add-PlayerPostRespawnEvent.patch index c298077796..0b64cfe5fe 100644 --- a/patches/server/0291-Add-PlayerPostRespawnEvent.patch +++ b/patches/server/0291-Add-PlayerPostRespawnEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add PlayerPostRespawnEvent diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 24790ded773c8d041e7f43c9b8f8f8fe9fff3d74..403a07e5db1ccb252a396cdb7eee5b42305cf7cc 100644 +index e3ce13685499e2adea5b776ec4abbdd978b6af58..8ce2826b1ded161a8220273d1fc5260ed3b6772f 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -751,9 +751,14 @@ public abstract class PlayerList { diff --git a/patches/server/0345-Don-t-move-existing-players-to-world-spawn.patch b/patches/server/0345-Don-t-move-existing-players-to-world-spawn.patch index e76141bd4c..d81ed62207 100644 --- a/patches/server/0345-Don-t-move-existing-players-to-world-spawn.patch +++ b/patches/server/0345-Don-t-move-existing-players-to-world-spawn.patch @@ -35,7 +35,7 @@ index 74e8aef45702eef0dcabc7841a7c7125cc066cbe..618efe10752c968142fcc0f28a533d35 this.gameMode.setLevel((ServerLevel) world); } diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 403a07e5db1ccb252a396cdb7eee5b42305cf7cc..7ba8d31fe114f16c2fe558787bc3d033803f2cde 100644 +index 8ce2826b1ded161a8220273d1fc5260ed3b6772f..d2f94afe667627a14cff896b463c2b9b51bf6e29 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -226,6 +226,7 @@ public abstract class PlayerList { diff --git a/patches/server/0351-Implement-Player-Client-Options-API.patch b/patches/server/0351-Implement-Player-Client-Options-API.patch index f5cdd1b91b..59854c7405 100644 --- a/patches/server/0351-Implement-Player-Client-Options-API.patch +++ b/patches/server/0351-Implement-Player-Client-Options-API.patch @@ -136,7 +136,7 @@ index f6e4172f1c7ad38128e77e53f099e67a4c4be620..62bdc3016120271da2ca3a1f6ac46757 this.adventure$locale = java.util.Objects.requireNonNullElse(net.kyori.adventure.translation.Translator.parseLocale(this.language), java.util.Locale.US); // Paper this.requestedViewDistance = clientOptions.viewDistance(); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index c0dfc799c0945bf5dc949ab505bc0db3853af557..1c1fdeec5e27720290509ad2480fe18c320b4453 100644 +index 307d8313b7d314f09201a7a958fd2027ecc31cdc..006de686bfb22a51d5bf03e6e1ffb32a737cb49c 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -650,6 +650,28 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0353-Fire-PlayerJoinEvent-when-Player-is-actually-ready.patch b/patches/server/0353-Fire-PlayerJoinEvent-when-Player-is-actually-ready.patch index c4200b1eba..8125140964 100644 --- a/patches/server/0353-Fire-PlayerJoinEvent-when-Player-is-actually-ready.patch +++ b/patches/server/0353-Fire-PlayerJoinEvent-when-Player-is-actually-ready.patch @@ -55,7 +55,7 @@ index 62bdc3016120271da2ca3a1f6ac46757e2e1dab4..e3f73ccbc2d62eef386adc6c66428c60 // CraftBukkit end public boolean isRealPlayer; // Paper diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 7ba8d31fe114f16c2fe558787bc3d033803f2cde..06926750f21fa9234bcc60b1e932a29a36831bdc 100644 +index d2f94afe667627a14cff896b463c2b9b51bf6e29..a4db0bcefc92091ff26b146a2ce914c1d36a3c23 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -297,6 +297,12 @@ public abstract class PlayerList { diff --git a/patches/server/0354-Move-player-to-spawn-point-if-spawn-in-unloaded-worl.patch b/patches/server/0354-Move-player-to-spawn-point-if-spawn-in-unloaded-worl.patch index 7c6a8fa042..3cf5caf32a 100644 --- a/patches/server/0354-Move-player-to-spawn-point-if-spawn-in-unloaded-worl.patch +++ b/patches/server/0354-Move-player-to-spawn-point-if-spawn-in-unloaded-worl.patch @@ -10,7 +10,7 @@ Co-authored-by: Wyatt Childers Co-authored-by: Jake Potrebic diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 06926750f21fa9234bcc60b1e932a29a36831bdc..48f3e51d8904a51f146e9b8c8fe195ef012fecd8 100644 +index a4db0bcefc92091ff26b146a2ce914c1d36a3c23..935061ed5c22b48e43d27fe0840cc69fb60d5344 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -197,6 +197,7 @@ public abstract class PlayerList { diff --git a/patches/server/0400-Fix-SPIGOT-5989.patch b/patches/server/0400-Fix-SPIGOT-5989.patch index 1726900a55..5b41e0742c 100644 --- a/patches/server/0400-Fix-SPIGOT-5989.patch +++ b/patches/server/0400-Fix-SPIGOT-5989.patch @@ -10,7 +10,7 @@ This fixes that by checking if the modified spawn location is still at a respawn anchor. diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 48f3e51d8904a51f146e9b8c8fe195ef012fecd8..7af0239dbcaf46ee9f793072e832978400cdee0c 100644 +index 935061ed5c22b48e43d27fe0840cc69fb60d5344..97a3f29414cd9f11e6a790cb30f7ef25a836b06c 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -804,6 +804,7 @@ public abstract class PlayerList { diff --git a/patches/server/0407-Brand-support.patch b/patches/server/0407-Brand-support.patch index afbe80819b..2bceea9e66 100644 --- a/patches/server/0407-Brand-support.patch +++ b/patches/server/0407-Brand-support.patch @@ -57,7 +57,7 @@ index 96b5e033aab4e1ee090af77a871e643dbf6300a4..215da3c52dc7b9e92c23f352fa7cffc2 } catch (Exception ex) { ServerGamePacketListenerImpl.LOGGER.error("Couldn\'t dispatch custom payload", ex); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 1c1fdeec5e27720290509ad2480fe18c320b4453..c6898363e67a21851f7a33e280e3b2e7a69e480c 100644 +index 006de686bfb22a51d5bf03e6e1ffb32a737cb49c..70a9a4070d02fafdeb6545550aa72def63d9fc3c 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -3120,6 +3120,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0424-Add-additional-open-container-api-to-HumanEntity.patch b/patches/server/0424-Add-additional-open-container-api-to-HumanEntity.patch index deb982691b..12f6de0a05 100644 --- a/patches/server/0424-Add-additional-open-container-api-to-HumanEntity.patch +++ b/patches/server/0424-Add-additional-open-container-api-to-HumanEntity.patch @@ -4,6 +4,19 @@ Date: Wed, 26 Aug 2020 02:12:31 -0400 Subject: [PATCH] Add additional open container api to HumanEntity +diff --git a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java +index 939d116ea940d52b319e08a11f08d1ccc406cb76..20f8dc59d0687d27331c06a202362e6370abc65c 100644 +--- a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java ++++ b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java +@@ -296,7 +296,7 @@ public abstract class BlockBehaviour implements FeatureElement { + } + + @Nullable +- protected MenuProvider getMenuProvider(BlockState state, Level world, BlockPos pos) { ++ public MenuProvider getMenuProvider(BlockState state, Level world, BlockPos pos) { // Paper - public + return null; + } + diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java index bbd3f0981eb95348ef12c9af8fa1712c022ed869..9393e9d21fcc41cb0f20b98d9f28c95b0e523f62 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java diff --git a/patches/server/0446-Add-API-for-quit-reason.patch b/patches/server/0446-Add-API-for-quit-reason.patch index 23781bfdeb..9b8e0a3fa6 100644 --- a/patches/server/0446-Add-API-for-quit-reason.patch +++ b/patches/server/0446-Add-API-for-quit-reason.patch @@ -49,7 +49,7 @@ index 215da3c52dc7b9e92c23f352fa7cffc2fb3d8a1a..d947eb533ba4dfd3b711e644d2a68238 this.connection.disconnect(ichatbasecomponent); })); diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 7af0239dbcaf46ee9f793072e832978400cdee0c..27069c61441c3abd59d922911f18143045363bdf 100644 +index 97a3f29414cd9f11e6a790cb30f7ef25a836b06c..8b0b9ef372c595340c43c5882ad71587833d86bc 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -576,7 +576,7 @@ public abstract class PlayerList { diff --git a/patches/server/0448-Expose-world-spawn-angle.patch b/patches/server/0448-Expose-world-spawn-angle.patch index b362623c2e..8a6e41905d 100644 --- a/patches/server/0448-Expose-world-spawn-angle.patch +++ b/patches/server/0448-Expose-world-spawn-angle.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Expose world spawn angle diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 27069c61441c3abd59d922911f18143045363bdf..b665cad02cf3ec79270a99d6733cb075c7e1940c 100644 +index 8b0b9ef372c595340c43c5882ad71587833d86bc..c020f18f356f537a1557a3367dd801f9bbabacdc 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -847,7 +847,7 @@ public abstract class PlayerList { diff --git a/patches/server/0450-Fix-Player-spawnParticle-x-y-z-precision-loss.patch b/patches/server/0450-Fix-Player-spawnParticle-x-y-z-precision-loss.patch index f10ae01fe2..6834d38237 100644 --- a/patches/server/0450-Fix-Player-spawnParticle-x-y-z-precision-loss.patch +++ b/patches/server/0450-Fix-Player-spawnParticle-x-y-z-precision-loss.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fix Player spawnParticle x/y/z precision loss diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index c6898363e67a21851f7a33e280e3b2e7a69e480c..2192548c9f69b12bc14ef7fb5799d0bbe1e109d1 100644 +index 70a9a4070d02fafdeb6545550aa72def63d9fc3c..6d914f7f6d88c817be4ff6e326dc2f9708974a76 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -2686,7 +2686,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0486-Fix-villager-boat-exploit.patch b/patches/server/0486-Fix-villager-boat-exploit.patch index bc3d3134bd..91f979915f 100644 --- a/patches/server/0486-Fix-villager-boat-exploit.patch +++ b/patches/server/0486-Fix-villager-boat-exploit.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fix villager boat exploit diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index b665cad02cf3ec79270a99d6733cb075c7e1940c..c9f4d50834d8544bafe973258b59105b2b83bf1d 100644 +index c020f18f356f537a1557a3367dd801f9bbabacdc..505af87eaf8209437978848be1dde86f879f82f2 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -601,6 +601,14 @@ public abstract class PlayerList { diff --git a/patches/server/0487-Add-sendOpLevel-API.patch b/patches/server/0487-Add-sendOpLevel-API.patch index b8879f392f..fe59edec04 100644 --- a/patches/server/0487-Add-sendOpLevel-API.patch +++ b/patches/server/0487-Add-sendOpLevel-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add sendOpLevel API diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index c9f4d50834d8544bafe973258b59105b2b83bf1d..dd360250ca784421e0f8fffe786bec88a8f38b3d 100644 +index 505af87eaf8209437978848be1dde86f879f82f2..d5071f9f2d433706fc378f77906bb5f04fca0540 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -1100,6 +1100,11 @@ public abstract class PlayerList { @@ -32,7 +32,7 @@ index c9f4d50834d8544bafe973258b59105b2b83bf1d..dd360250ca784421e0f8fffe786bec88 public boolean isWhiteListed(GameProfile profile) { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 2192548c9f69b12bc14ef7fb5799d0bbe1e109d1..627f5560fa7e958193f7a6e60edd78a3775195ab 100644 +index 6d914f7f6d88c817be4ff6e326dc2f9708974a76..b9ccc0420be4c50c618e00f168f0dbfd4c3af978 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -674,6 +674,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0512-fix-converting-txt-to-json-file.patch b/patches/server/0512-fix-converting-txt-to-json-file.patch index 6650554faa..ad83e310fc 100644 --- a/patches/server/0512-fix-converting-txt-to-json-file.patch +++ b/patches/server/0512-fix-converting-txt-to-json-file.patch @@ -48,7 +48,7 @@ index 4d7c2832a9cd9a88b99c837a02df7fa91e572658..4b00c14332f3d514f402fc82345a02d5 if (!OldUsersConverter.serverReadyAfterUserconversion(this)) { return false; diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index dd360250ca784421e0f8fffe786bec88a8f38b3d..b1cf71350661baf027bd45ebd9c80e8273cbad1e 100644 +index d5071f9f2d433706fc378f77906bb5f04fca0540..130a50380232b67a50e5a6923dad4a6e67858550 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -179,6 +179,7 @@ public abstract class PlayerList { diff --git a/patches/server/0521-Drop-carried-item-when-player-has-disconnected.patch b/patches/server/0521-Drop-carried-item-when-player-has-disconnected.patch index 7e4983ac73..4683817946 100644 --- a/patches/server/0521-Drop-carried-item-when-player-has-disconnected.patch +++ b/patches/server/0521-Drop-carried-item-when-player-has-disconnected.patch @@ -7,7 +7,7 @@ Fixes disappearance of held items, when a player gets disconnected and PlayerDro Closes #5036 diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index b1cf71350661baf027bd45ebd9c80e8273cbad1e..dd02a271ca6b642ce8567d492c57faf6d9bcf146 100644 +index 130a50380232b67a50e5a6923dad4a6e67858550..975cd4530e1ad903df32bb8b3d760ca462b42b5c 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -594,6 +594,14 @@ public abstract class PlayerList { diff --git a/patches/server/0538-Expand-PlayerRespawnEvent-fix-passed-parameter-issue.patch b/patches/server/0538-Expand-PlayerRespawnEvent-fix-passed-parameter-issue.patch index 7eaaa18712..354670a554 100644 --- a/patches/server/0538-Expand-PlayerRespawnEvent-fix-passed-parameter-issue.patch +++ b/patches/server/0538-Expand-PlayerRespawnEvent-fix-passed-parameter-issue.patch @@ -19,7 +19,7 @@ index 4371c93b31ca14e29c05d72487a41351e710db86..70d5f1202c38d2b73510a8e1fe086349 } else { if (this.player.getHealth() > 0.0F) { diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index dd02a271ca6b642ce8567d492c57faf6d9bcf146..454abe63a51e6d39a672778382842bdddeba3d9b 100644 +index 975cd4530e1ad903df32bb8b3d760ca462b42b5c..40d1451b43228b802aabe8c021ad781ceb8d8df8 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -779,6 +779,12 @@ public abstract class PlayerList { diff --git a/patches/server/0550-Expand-PlayerGameModeChangeEvent.patch b/patches/server/0550-Expand-PlayerGameModeChangeEvent.patch index 8d80ec4633..4621c2eec8 100644 --- a/patches/server/0550-Expand-PlayerGameModeChangeEvent.patch +++ b/patches/server/0550-Expand-PlayerGameModeChangeEvent.patch @@ -145,7 +145,7 @@ index 70d5f1202c38d2b73510a8e1fe0863492384cf20..f34960b459b9dd7340fd0b8b19739f08 } } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 627f5560fa7e958193f7a6e60edd78a3775195ab..996563514996ba63f5c61c9e7d15db9d6a3cde26 100644 +index b9ccc0420be4c50c618e00f168f0dbfd4c3af978..564f3f8d8bb79b368f6f0bdefb29d084d8c952e3 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1640,7 +1640,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0562-Add-PlayerKickEvent-causes.patch b/patches/server/0562-Add-PlayerKickEvent-causes.patch index 4112b265f9..60208417b2 100644 --- a/patches/server/0562-Add-PlayerKickEvent-causes.patch +++ b/patches/server/0562-Add-PlayerKickEvent-causes.patch @@ -423,7 +423,7 @@ index 2c4360431135b665e7b95cd3d59bb38871bca68b..5eb67dbeaa553b25d19e24b3bfb5e05a } diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 454abe63a51e6d39a672778382842bdddeba3d9b..4d32c917c3a5455e4ba028fef49ec483bd5b0ad8 100644 +index 40d1451b43228b802aabe8c021ad781ceb8d8df8..709cf6655e5ccb17caf0b8a735ae957cb0509f2c 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -681,7 +681,7 @@ public abstract class PlayerList { @@ -477,7 +477,7 @@ index f472dea0bd4f834c0c8f0aa59ae7cdae082b14af..2fa51c3a70f43cd23b8f494fc643d66c } } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 996563514996ba63f5c61c9e7d15db9d6a3cde26..c498ba250838ece5e6dacd1b0a27e3d65c402e9e 100644 +index 564f3f8d8bb79b368f6f0bdefb29d084d8c952e3..13505e351a7c4526199422d72316cb5964c2e791 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -632,7 +632,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0583-Fix-kick-event-leave-message-not-being-sent.patch b/patches/server/0583-Fix-kick-event-leave-message-not-being-sent.patch index cfa74fdc4b..66a12e3538 100644 --- a/patches/server/0583-Fix-kick-event-leave-message-not-being-sent.patch +++ b/patches/server/0583-Fix-kick-event-leave-message-not-being-sent.patch @@ -96,7 +96,7 @@ index 779a9d409323445c373a9f07b83de0f386ae82cc..e1945778de55a75d483c890b2a59276e this.server.getPlayerList().broadcastSystemMessage(PaperAdventure.asVanilla(quitMessage), false); // Paper end diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 4d32c917c3a5455e4ba028fef49ec483bd5b0ad8..6cc5bca80cdf1f70c5599026483625ef6c1b2bd9 100644 +index 709cf6655e5ccb17caf0b8a735ae957cb0509f2c..2b7ad2b9cd525814c9f91d22606c42aa82ce9f94 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -567,6 +567,11 @@ public abstract class PlayerList { diff --git a/patches/server/0591-Add-PlayerSetSpawnEvent.patch b/patches/server/0591-Add-PlayerSetSpawnEvent.patch index d8f8d51272..82d96eee77 100644 --- a/patches/server/0591-Add-PlayerSetSpawnEvent.patch +++ b/patches/server/0591-Add-PlayerSetSpawnEvent.patch @@ -154,7 +154,7 @@ index b9aadb3eea0a8910f58fa747c50959ebcf89292a..36e3676d4a0725d5b55388367152c13c public SectionPos getLastSectionPos() { diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 6cc5bca80cdf1f70c5599026483625ef6c1b2bd9..a476762125f5f7b6fbda37837b50880d415b25c6 100644 +index 2b7ad2b9cd525814c9f91d22606c42aa82ce9f94..d7bbdcc97745246718c92c9aba56d9f926897975 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -870,7 +870,7 @@ public abstract class PlayerList { @@ -187,7 +187,7 @@ index e18726915d1491d74084827afd9978800aecb644..a4a90df0b500fb440226b07462faaa87 } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index c498ba250838ece5e6dacd1b0a27e3d65c402e9e..6e88a6b47be886b715f1d97adb0dd0e14cdb6a51 100644 +index 13505e351a7c4526199422d72316cb5964c2e791..7013880a5eafcb6a16fb1b3f22b0ed0e44018750 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1399,9 +1399,9 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0655-Allow-delegation-to-vanilla-chunk-gen.patch b/patches/server/0655-Allow-delegation-to-vanilla-chunk-gen.patch index 0348df0879..bde496b837 100644 --- a/patches/server/0655-Allow-delegation-to-vanilla-chunk-gen.patch +++ b/patches/server/0655-Allow-delegation-to-vanilla-chunk-gen.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Allow delegation to vanilla chunk gen diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 382c5a9ad23523b830edc7c81767b13a49aca087..ce67394c7b4079af1880ee4fdd66186db0348e92 100644 +index 382c5a9ad23523b830edc7c81767b13a49aca087..8136688a2a4da9d6190d67c0936e210b23ec5126 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -2483,6 +2483,88 @@ public final class CraftServer implements Server { +@@ -2483,6 +2483,90 @@ public final class CraftServer implements Server { return new OldCraftChunkData(world.getMinHeight(), world.getMaxHeight(), handle.registryAccess().registryOrThrow(Registries.BIOME)); } @@ -69,18 +69,20 @@ index 382c5a9ad23523b830edc7c81767b13a49aca087..ce67394c7b4079af1880ee4fdd66186d + } + + chunkStatus.generate( ++ new net.minecraft.world.level.chunk.status.WorldGenContext( ++ serverLevel, ++ chunkGenerator, ++ serverLevel.getStructureManager(), ++ serverLevel.chunkSource.getLightEngine() ++ ), + mailbox::tell, -+ serverLevel, -+ chunkGenerator, -+ serverLevel.getStructureManager(), -+ serverLevel.chunkSource.getLightEngine(), + chunk -> { + throw new UnsupportedOperationException("Not creating full chunks here"); + }, + chunks -+ ).thenAccept(either -> { -+ if (chunkStatus == net.minecraft.world.level.chunk.status.ChunkStatus.NOISE) { -+ either.left().ifPresent(chunk -> net.minecraft.world.level.levelgen.Heightmap.primeHeightmaps(chunk, net.minecraft.world.level.chunk.status.ChunkStatus.POST_FEATURES)); ++ ).thenAccept(chunk -> { ++ if (chunk != null && chunkStatus == net.minecraft.world.level.chunk.status.ChunkStatus.NOISE) { ++ net.minecraft.world.level.levelgen.Heightmap.primeHeightmaps(chunk, net.minecraft.world.level.chunk.status.ChunkStatus.POST_FEATURES); + } + }).join(); + } diff --git a/patches/server/0667-Validate-usernames.patch b/patches/server/0667-Validate-usernames.patch index 697acb9d01..728bfacad5 100644 --- a/patches/server/0667-Validate-usernames.patch +++ b/patches/server/0667-Validate-usernames.patch @@ -26,7 +26,7 @@ index 5fa0947bd6029f37d786488b44ec23090c45963a..49627a02cb15e94e7c3ddfe65aa663d9 GameProfile gameprofile = this.server.getSingleplayerProfile(); diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index a476762125f5f7b6fbda37837b50880d415b25c6..825a63a23adceaea0de996f6c6122c44f5e700c0 100644 +index d7bbdcc97745246718c92c9aba56d9f926897975..7406784899ba5f3575adf1ffe5e5d85ab430a841 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -676,7 +676,7 @@ public abstract class PlayerList { diff --git a/patches/server/0669-Expose-vanilla-BiomeProvider-from-WorldInfo.patch b/patches/server/0669-Expose-vanilla-BiomeProvider-from-WorldInfo.patch index 2ea5df5849..5bdbc4c526 100644 --- a/patches/server/0669-Expose-vanilla-BiomeProvider-from-WorldInfo.patch +++ b/patches/server/0669-Expose-vanilla-BiomeProvider-from-WorldInfo.patch @@ -18,7 +18,7 @@ index 00a83b766f9e32b6403296901e806b07d4e4818e..3832033003dbf5f5b43b9786b5fd4c96 biomeProvider = gen.getDefaultBiomeProvider(worldInfo); } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index ce67394c7b4079af1880ee4fdd66186db0348e92..21e17fffd0372bbf144315251493b46b9263ec85 100644 +index 8136688a2a4da9d6190d67c0936e210b23ec5126..3807291dc0e40e7247167162225c4f63ea992161 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1275,7 +1275,7 @@ public final class CraftServer implements Server { diff --git a/patches/server/0676-Multi-Block-Change-API-Implementation.patch b/patches/server/0676-Multi-Block-Change-API-Implementation.patch index 1d19c4579c..26e2afbd88 100644 --- a/patches/server/0676-Multi-Block-Change-API-Implementation.patch +++ b/patches/server/0676-Multi-Block-Change-API-Implementation.patch @@ -24,7 +24,7 @@ index 926ff9be3d9e3f5d620e4c7ccb22b9f64865ff8c..1a37654aff9a9c86c9f7af10a1cf7213 buf.writeLong(this.sectionPos.asLong()); buf.writeVarInt(this.positions.length); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 6e88a6b47be886b715f1d97adb0dd0e14cdb6a51..2bed20fe4e8d28c806a9ede40498e300212b047a 100644 +index 7013880a5eafcb6a16fb1b3f22b0ed0e44018750..8c3a43dbac4fc02206dc616e86aaa2438415f0dc 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -927,6 +927,32 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0681-API-for-creating-command-sender-which-forwards-feedb.patch b/patches/server/0681-API-for-creating-command-sender-which-forwards-feedb.patch index cbe76227dc..0d180e00d7 100644 --- a/patches/server/0681-API-for-creating-command-sender-which-forwards-feedb.patch +++ b/patches/server/0681-API-for-creating-command-sender-which-forwards-feedb.patch @@ -122,7 +122,7 @@ index 0000000000000000000000000000000000000000..e3a5f1ec376319bdfda87fa27ae217bf + } +} diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 21e17fffd0372bbf144315251493b46b9263ec85..9d3148a1e426227e1d3d388cee81bd709abd0e81 100644 +index 3807291dc0e40e7247167162225c4f63ea992161..7d5109e0d4a75f977954b68e50eeaab46dd15b5d 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -2129,6 +2129,13 @@ public final class CraftServer implements Server { diff --git a/patches/server/0685-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch b/patches/server/0685-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch index 0335259842..c72e485b62 100644 --- a/patches/server/0685-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch +++ b/patches/server/0685-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Add missing Validate calls to CraftServer#getSpawnLimit Copies appropriate checks from CraftWorld#getSpawnLimit diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 9d3148a1e426227e1d3d388cee81bd709abd0e81..fd3ef107932f28189130e3ca4bd9fe6d22dd6f4a 100644 +index 7d5109e0d4a75f977954b68e50eeaab46dd15b5d..b1f141e3056e2187b164c6cba6707a30dd92fdf1 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -2306,6 +2306,8 @@ public final class CraftServer implements Server { diff --git a/patches/server/0686-Add-GameEvent-tags.patch b/patches/server/0686-Add-GameEvent-tags.patch index da0e3bc4be..1d2259ee92 100644 --- a/patches/server/0686-Add-GameEvent-tags.patch +++ b/patches/server/0686-Add-GameEvent-tags.patch @@ -46,10 +46,10 @@ index 0000000000000000000000000000000000000000..e7d9fd2702a1ce96596580fff8f5ee4f + } +} diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index fd3ef107932f28189130e3ca4bd9fe6d22dd6f4a..42fcb33478439239e30caee8ffafbd8bee37c5ef 100644 +index b1f141e3056e2187b164c6cba6707a30dd92fdf1..ec6dd3cd685421e24293c4b6a3a01c5dd37cc620 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -2732,6 +2732,15 @@ public final class CraftServer implements Server { +@@ -2734,6 +2734,15 @@ public final class CraftServer implements Server { return (org.bukkit.Tag) new CraftEntityTag(BuiltInRegistries.ENTITY_TYPE, entityTagKey); } } @@ -65,7 +65,7 @@ index fd3ef107932f28189130e3ca4bd9fe6d22dd6f4a..42fcb33478439239e30caee8ffafbd8b default -> throw new IllegalArgumentException(); } -@@ -2764,6 +2773,13 @@ public final class CraftServer implements Server { +@@ -2766,6 +2775,13 @@ public final class CraftServer implements Server { net.minecraft.core.Registry> entityTags = BuiltInRegistries.ENTITY_TYPE; return entityTags.getTags().map(pair -> (org.bukkit.Tag) new CraftEntityTag(entityTags, pair.getFirst())).collect(ImmutableList.toImmutableList()); } diff --git a/patches/server/0692-Put-world-into-worldlist-before-initing-the-world.patch b/patches/server/0692-Put-world-into-worldlist-before-initing-the-world.patch index 4534c3f53f..b21e96dc51 100644 --- a/patches/server/0692-Put-world-into-worldlist-before-initing-the-world.patch +++ b/patches/server/0692-Put-world-into-worldlist-before-initing-the-world.patch @@ -23,7 +23,7 @@ index 644f178438863295754c2b72339ce7f9066674b9..ea442883eda28e5673cef9470145d5c4 if (worlddata.getCustomBossEvents() != null) { diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 42fcb33478439239e30caee8ffafbd8bee37c5ef..05c5b52a15be83b6b1043cd85872854696d66a4b 100644 +index ec6dd3cd685421e24293c4b6a3a01c5dd37cc620..e25dc948bfd59b8d0a9350c0ffe496f53d042ab8 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1301,10 +1301,11 @@ public final class CraftServer implements Server { diff --git a/patches/server/0694-Custom-Potion-Mixes.patch b/patches/server/0694-Custom-Potion-Mixes.patch index 82cd80bf18..75e13dc1c9 100644 --- a/patches/server/0694-Custom-Potion-Mixes.patch +++ b/patches/server/0694-Custom-Potion-Mixes.patch @@ -172,7 +172,7 @@ index 3ebfd564d4bbf00da5919e966f3d047285845640..c1254088fc65fe46101c82cf2629cf02 } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 05c5b52a15be83b6b1043cd85872854696d66a4b..ab58761fa1a7f6330ab34ce4cee92419fb1e812a 100644 +index e25dc948bfd59b8d0a9350c0ffe496f53d042ab8..e1903d551e2183cc92dfb4fc832ec5bf961475d1 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -308,6 +308,7 @@ public final class CraftServer implements Server { @@ -191,7 +191,7 @@ index 05c5b52a15be83b6b1043cd85872854696d66a4b..ab58761fa1a7f6330ab34ce4cee92419 datapackManager = new io.papermc.paper.datapack.PaperDatapackManager(console.getPackRepository()); // Paper } -@@ -3098,5 +3100,10 @@ public final class CraftServer implements Server { +@@ -3100,5 +3102,10 @@ public final class CraftServer implements Server { return datapackManager; } diff --git a/patches/server/0695-Force-close-world-loading-screen.patch b/patches/server/0695-Force-close-world-loading-screen.patch index d545f38445..a90bc669b4 100644 --- a/patches/server/0695-Force-close-world-loading-screen.patch +++ b/patches/server/0695-Force-close-world-loading-screen.patch @@ -10,7 +10,7 @@ so we do not need that. The client only needs the chunk it is currently in to be loaded to close the loading screen, so we just send an empty one. diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 825a63a23adceaea0de996f6c6122c44f5e700c0..4338015bbe0a0c33146190c81191fa62b6991499 100644 +index 7406784899ba5f3575adf1ffe5e5d85ab430a841..9fc053e2f6f3bbd9c17fda5679322a0fb403b7fe 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -400,6 +400,16 @@ public abstract class PlayerList { diff --git a/patches/server/0705-Fix-saving-in-unloadWorld.patch b/patches/server/0705-Fix-saving-in-unloadWorld.patch index 8f2ae53030..28eec1151a 100644 --- a/patches/server/0705-Fix-saving-in-unloadWorld.patch +++ b/patches/server/0705-Fix-saving-in-unloadWorld.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Fix saving in unloadWorld Change savingDisabled to false to ensure ServerLevel's saving logic gets called when unloadWorld is called with save = true diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index ab58761fa1a7f6330ab34ce4cee92419fb1e812a..2c4a52e9f5c6d8d70e390b1805949549fec891e0 100644 +index e1903d551e2183cc92dfb4fc832ec5bf961475d1..4f7df8765254bcac61d769e87eef946bc5eab682 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1350,7 +1350,7 @@ public final class CraftServer implements Server { diff --git a/patches/server/0715-Use-username-instead-of-display-name-in-PlayerList-g.patch b/patches/server/0715-Use-username-instead-of-display-name-in-PlayerList-g.patch index c0dbb37d31..9eed66c5cf 100644 --- a/patches/server/0715-Use-username-instead-of-display-name-in-PlayerList-g.patch +++ b/patches/server/0715-Use-username-instead-of-display-name-in-PlayerList-g.patch @@ -6,7 +6,7 @@ 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 4338015bbe0a0c33146190c81191fa62b6991499..42d609cc3bd13e957b6f2194552da34393849790 100644 +index 9fc053e2f6f3bbd9c17fda5679322a0fb403b7fe..c76143eadbcb434d4468b4d7c32d71d646788341 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -1434,7 +1434,7 @@ public abstract class PlayerList { diff --git a/patches/server/0717-WorldCreator-keepSpawnLoaded.patch b/patches/server/0717-WorldCreator-keepSpawnLoaded.patch index f42e032d37..02a1c0f1b0 100644 --- a/patches/server/0717-WorldCreator-keepSpawnLoaded.patch +++ b/patches/server/0717-WorldCreator-keepSpawnLoaded.patch @@ -5,7 +5,7 @@ Subject: [PATCH] WorldCreator#keepSpawnLoaded diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 2c4a52e9f5c6d8d70e390b1805949549fec891e0..ad3f4fd07c4670dd3fc0da619c50bd095d9ad396 100644 +index 4f7df8765254bcac61d769e87eef946bc5eab682..778d08b3fba2e33af661ffaadd60c108be0127e0 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1293,7 +1293,7 @@ public final class CraftServer implements Server { diff --git a/patches/server/0732-Throw-exception-on-world-create-while-being-ticked.patch b/patches/server/0732-Throw-exception-on-world-create-while-being-ticked.patch index c7d59b952c..bcd3c3953f 100644 --- a/patches/server/0732-Throw-exception-on-world-create-while-being-ticked.patch +++ b/patches/server/0732-Throw-exception-on-world-create-while-being-ticked.patch @@ -45,7 +45,7 @@ index 79f7e0fb2f1aa6af441c6e09d2c443d7d4bb47ef..00457548d43e1d2143d1f6027593a117 this.profiler.popPush("connection"); MinecraftTimings.connectionTimer.startTiming(); // Spigot // Paper diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index ad3f4fd07c4670dd3fc0da619c50bd095d9ad396..18dd7826fc227015e75f1b35b2c83a68416a305c 100644 +index 778d08b3fba2e33af661ffaadd60c108be0127e0..21e6f4b3b2db5f983e3ef34ac2e4db064061243e 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -887,6 +887,11 @@ public final class CraftServer implements Server { diff --git a/patches/server/0738-Don-t-broadcast-messages-to-command-blocks.patch b/patches/server/0738-Don-t-broadcast-messages-to-command-blocks.patch index b899b7b555..cdc6a6a482 100644 --- a/patches/server/0738-Don-t-broadcast-messages-to-command-blocks.patch +++ b/patches/server/0738-Don-t-broadcast-messages-to-command-blocks.patch @@ -20,7 +20,7 @@ index e40069d937de5fd00741ae6873abeecc46b93732..552f7ab11dc09fa69034f009235cb224 Date date = new Date(); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 18dd7826fc227015e75f1b35b2c83a68416a305c..deb0b66f52abdfcd6baba808f5e777ca6643f39b 100644 +index 21e6f4b3b2db5f983e3ef34ac2e4db064061243e..5f67100667954b20c5b5b1cb5dbceeba8f526e72 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1892,7 +1892,7 @@ public final class CraftServer implements Server { diff --git a/patches/server/0746-More-Teleport-API.patch b/patches/server/0746-More-Teleport-API.patch index a35be9a744..94cce43f06 100644 --- a/patches/server/0746-More-Teleport-API.patch +++ b/patches/server/0746-More-Teleport-API.patch @@ -112,7 +112,7 @@ index 113ca1d16cb7650d72f488cdaa9e670d51dc85f0..b6fef2ca5b564c293cb602cb8e300d35 private final org.bukkit.entity.Entity.Spigot spigot = new org.bukkit.entity.Entity.Spigot() { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 2bed20fe4e8d28c806a9ede40498e300212b047a..95e47bc902fa7a67408235f006f66182a06777f6 100644 +index 8c3a43dbac4fc02206dc616e86aaa2438415f0dc..4054c18df8fc2806c11b4a71a6af28cc6c06f709 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1273,13 +1273,101 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0751-Custom-Chat-Completion-Suggestions-API.patch b/patches/server/0751-Custom-Chat-Completion-Suggestions-API.patch index 3354525bdd..52d453a2e3 100644 --- a/patches/server/0751-Custom-Chat-Completion-Suggestions-API.patch +++ b/patches/server/0751-Custom-Chat-Completion-Suggestions-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Custom Chat Completion Suggestions API diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 95e47bc902fa7a67408235f006f66182a06777f6..06eabbd237c3a86ec984c7193204bc80dfed15c0 100644 +index 4054c18df8fc2806c11b4a71a6af28cc6c06f709..c11a1c805b1537a4a75c558c5f9ea8f382746ddc 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -688,6 +688,24 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0756-Add-Velocity-IP-Forwarding-Support.patch b/patches/server/0756-Add-Velocity-IP-Forwarding-Support.patch index 7b96a60997..167084f062 100644 --- a/patches/server/0756-Add-Velocity-IP-Forwarding-Support.patch +++ b/patches/server/0756-Add-Velocity-IP-Forwarding-Support.patch @@ -228,7 +228,7 @@ index 49627a02cb15e94e7c3ddfe65aa663d982a34408..21d97c2b533a6528dd73c4e514d49273 } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index deb0b66f52abdfcd6baba808f5e777ca6643f39b..241ac7daac6bd10707ab8c3b2ebd423262e2d6cf 100644 +index 5f67100667954b20c5b5b1cb5dbceeba8f526e72..7f35e7372adcade48c7f3c9d4f3afc81b7a95a53 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -816,7 +816,7 @@ public final class CraftServer implements Server { diff --git a/patches/server/0771-Fix-a-bunch-of-vanilla-bugs.patch b/patches/server/0771-Fix-a-bunch-of-vanilla-bugs.patch index 80369ed2a6..40b4c26866 100644 --- a/patches/server/0771-Fix-a-bunch-of-vanilla-bugs.patch +++ b/patches/server/0771-Fix-a-bunch-of-vanilla-bugs.patch @@ -164,7 +164,7 @@ index 77e78808171daac78502ef3fcc70f03579eaa9e3..0cfdd01778fb4f2150a4dea2d9dc6b3b this.player.server.getPlayerList().broadcastAll(new ClientboundPlayerInfoUpdatePacket(ClientboundPlayerInfoUpdatePacket.Action.UPDATE_GAME_MODE, this.player), this.player); // CraftBukkit this.level.updateSleepingPlayerList(); diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 42d609cc3bd13e957b6f2194552da34393849790..b2634bdedfe8359da602cf600a2bdddbd762e7c2 100644 +index c76143eadbcb434d4468b4d7c32d71d646788341..5f40469fa423cbbb60dbfd0ff75d62a2267d29b1 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -709,8 +709,10 @@ public abstract class PlayerList { diff --git a/patches/server/0777-Elder-Guardian-appearance-API.patch b/patches/server/0777-Elder-Guardian-appearance-API.patch index 7c932b1df6..e15b4cf889 100644 --- a/patches/server/0777-Elder-Guardian-appearance-API.patch +++ b/patches/server/0777-Elder-Guardian-appearance-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Elder Guardian appearance API diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 06eabbd237c3a86ec984c7193204bc80dfed15c0..40a0c86aeaf7c3d6b506a6110669b2d7ea86314a 100644 +index c11a1c805b1537a4a75c558c5f9ea8f382746ddc..28c7e40d91c32ec1b09109d2d5f17553da43c179 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -3279,6 +3279,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0791-Add-Player-Warden-Warning-API.patch b/patches/server/0791-Add-Player-Warden-Warning-API.patch index 58ff3f782c..64b9319d19 100644 --- a/patches/server/0791-Add-Player-Warden-Warning-API.patch +++ b/patches/server/0791-Add-Player-Warden-Warning-API.patch @@ -10,7 +10,7 @@ public net.minecraft.world.entity.monster.warden.WardenSpawnTracker cooldownTick public net.minecraft.world.entity.monster.warden.WardenSpawnTracker increaseWarningLevel()V diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 40a0c86aeaf7c3d6b506a6110669b2d7ea86314a..6cd6fb2ee452ebfe4cced55fa9e341c8087578b5 100644 +index 28c7e40d91c32ec1b09109d2d5f17553da43c179..8c1e41f1f3f2f1a4861cac9292e010adfa28cb4a 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -3284,6 +3284,41 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0804-fix-Instruments.patch b/patches/server/0804-fix-Instruments.patch index 9bcf944422..e190d2d25f 100644 --- a/patches/server/0804-fix-Instruments.patch +++ b/patches/server/0804-fix-Instruments.patch @@ -6,7 +6,7 @@ Subject: [PATCH] fix Instruments properly handle Player#playNote diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 6cd6fb2ee452ebfe4cced55fa9e341c8087578b5..40b38fdb0d4183e90fba48eb6c1f011a45bd593e 100644 +index 8c1e41f1f3f2f1a4861cac9292e010adfa28cb4a..6b217047508fc8f7f88945bbf8c5ee667e8787af 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -765,7 +765,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0805-Improve-inlining-for-some-hot-BlockBehavior-and-Flui.patch b/patches/server/0805-Improve-inlining-for-some-hot-BlockBehavior-and-Flui.patch index 29b7af93eb..74cf8aa4a4 100644 --- a/patches/server/0805-Improve-inlining-for-some-hot-BlockBehavior-and-Flui.patch +++ b/patches/server/0805-Improve-inlining-for-some-hot-BlockBehavior-and-Flui.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Improve inlining for some hot BlockBehavior and FluidState diff --git a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java -index 939d116ea940d52b319e08a11f08d1ccc406cb76..f76ce68ed8e08167cf1cbd7bfec67ae01567c38d 100644 +index 20f8dc59d0687d27331c06a202362e6370abc65c..64fe89f4e70440a1af1d98a521a41ab048f7c3d9 100644 --- a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java +++ b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java @@ -906,15 +906,15 @@ public abstract class BlockBehaviour implements FeatureElement { diff --git a/patches/server/0814-Flying-Fall-Damage.patch b/patches/server/0814-Flying-Fall-Damage.patch index af27af44cb..2a43b9de1f 100644 --- a/patches/server/0814-Flying-Fall-Damage.patch +++ b/patches/server/0814-Flying-Fall-Damage.patch @@ -26,7 +26,7 @@ index 761e8a0c4e1db465c18892999e86885f27ca8075..230ffd3c4541ef8979605d733b6463e3 } else { if (fallDistance >= 2.0F) { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 40b38fdb0d4183e90fba48eb6c1f011a45bd593e..874f65b1ad268cb3eecdbb13ae4b67d81e58f9b4 100644 +index 6b217047508fc8f7f88945bbf8c5ee667e8787af..ddfe12d04328602cfcb8c7a524ab29337718d594 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -2566,6 +2566,19 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0818-Use-single-player-info-update-packet-on-join.patch b/patches/server/0818-Use-single-player-info-update-packet-on-join.patch index be75778180..8da67e9136 100644 --- a/patches/server/0818-Use-single-player-info-update-packet-on-join.patch +++ b/patches/server/0818-Use-single-player-info-update-packet-on-join.patch @@ -18,7 +18,7 @@ index d23b96ba2db06e6d104e5c30aa9d38dfd552f304..59853da5b728f98bf8ef412f4214205e } diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index b2634bdedfe8359da602cf600a2bdddbd762e7c2..eef1fb3265a088a2f6718631c1728f3e32014c14 100644 +index 5f40469fa423cbbb60dbfd0ff75d62a2267d29b1..942af999a4a3aa03cb7ef5f0b9d377c78677fd0e 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -361,6 +361,7 @@ public abstract class PlayerList { diff --git a/patches/server/0820-Win-Screen-API.patch b/patches/server/0820-Win-Screen-API.patch index be99de7e3c..cc03508aec 100644 --- a/patches/server/0820-Win-Screen-API.patch +++ b/patches/server/0820-Win-Screen-API.patch @@ -7,7 +7,7 @@ Subject: [PATCH] Win Screen API public net.minecraft.server.level.ServerPlayer seenCredits diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 874f65b1ad268cb3eecdbb13ae4b67d81e58f9b4..f4b377fe63fe4d21e5d3ec7146f68860828215fd 100644 +index ddfe12d04328602cfcb8c7a524ab29337718d594..3a36479a6fce1ae4f76b212df4d3addb16778e64 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1292,6 +1292,25 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0846-Expand-PlayerItemMendEvent.patch b/patches/server/0846-Expand-PlayerItemMendEvent.patch index 5175d16983..fd08e6dd4f 100644 --- a/patches/server/0846-Expand-PlayerItemMendEvent.patch +++ b/patches/server/0846-Expand-PlayerItemMendEvent.patch @@ -33,7 +33,7 @@ index adc3e6298a1946fdea029c82a9954fb5b6e24497..a207a31d80a302dbdfe80f8727222542 return k > 0 ? this.repairPlayerItems(player, k) : 0; } else { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index f4b377fe63fe4d21e5d3ec7146f68860828215fd..7ce4a1706c5d0d0e7990e4b50bdab2486a074dea 100644 +index 3a36479a6fce1ae4f76b212df4d3addb16778e64..efada5eb6f95a899faee1c9ed9474d991001e6d3 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1835,11 +1835,11 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0852-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch b/patches/server/0852-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch index a089dc75c3..57350b6d6b 100644 --- a/patches/server/0852-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch +++ b/patches/server/0852-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Don't enforce icanhasbukkit default if alias block exists diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 241ac7daac6bd10707ab8c3b2ebd423262e2d6cf..7818c4720572fdd50925058ff77e7284cee9acfe 100644 +index 7f35e7372adcade48c7f3c9d4f3afc81b7a95a53..dd4d291a945bd9032c68d5d391656297a92969c9 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -354,7 +354,11 @@ public final class CraftServer implements Server { diff --git a/patches/server/0866-Fix-BanList-API.patch b/patches/server/0866-Fix-BanList-API.patch index 8977891bc1..92ad7883ef 100644 --- a/patches/server/0866-Fix-BanList-API.patch +++ b/patches/server/0866-Fix-BanList-API.patch @@ -208,7 +208,7 @@ index 172202accf4448a933fcf1ff820316c7910dd7f7..50ee7656580d386db473c054f5c5ec57 return null; } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 7ce4a1706c5d0d0e7990e4b50bdab2486a074dea..4db40044c0ac4fefe315c1ee52ff19e300f30629 100644 +index efada5eb6f95a899faee1c9ed9474d991001e6d3..d6891d91968b43f484baff1d0b1cb9b640e40118 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1733,23 +1733,23 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0874-Folia-scheduler-and-owned-region-API.patch b/patches/server/0874-Folia-scheduler-and-owned-region-API.patch index 4df4861a16..b0d0ed10b4 100644 --- a/patches/server/0874-Folia-scheduler-and-owned-region-API.patch +++ b/patches/server/0874-Folia-scheduler-and-owned-region-API.patch @@ -1173,7 +1173,7 @@ index f12165838f77ae83437f5770faeac1e46b326e98..1d8c63a5a0b05340396a9f7ba079eb7f this.profiler.push("commandFunctions"); MinecraftTimings.commandFunctionsTimer.startTiming(); // Spigot // Paper diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index eef1fb3265a088a2f6718631c1728f3e32014c14..b00da578cb4ba037a540584738b3f866acfa9f88 100644 +index 942af999a4a3aa03cb7ef5f0b9d377c78677fd0e..0246db4a1f6eb168fa88260282311fee2ebb6014 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -646,6 +646,7 @@ public abstract class PlayerList { @@ -1251,7 +1251,7 @@ index 16f36d1bfe6458f9aa935cdc63066c082bc83f8e..638aeef75dc5f7ab8b8e050118a7c709 public void setLevelCallback(EntityInLevelCallback changeListener) { this.levelCallback = changeListener; diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 7818c4720572fdd50925058ff77e7284cee9acfe..bebccf63126be70bf7487361ba8a836131aaf524 100644 +index dd4d291a945bd9032c68d5d391656297a92969c9..8ac5d7730610b49da33e9f7bb827aeccf5383500 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -310,6 +310,76 @@ public final class CraftServer implements Server { diff --git a/patches/server/0876-API-for-updating-recipes-on-clients.patch b/patches/server/0876-API-for-updating-recipes-on-clients.patch index 794b67ef6e..028168d312 100644 --- a/patches/server/0876-API-for-updating-recipes-on-clients.patch +++ b/patches/server/0876-API-for-updating-recipes-on-clients.patch @@ -5,7 +5,7 @@ Subject: [PATCH] API for updating recipes on clients diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index b00da578cb4ba037a540584738b3f866acfa9f88..2f62af670441d422133b18d00d9e5e5e58e4afe7 100644 +index 0246db4a1f6eb168fa88260282311fee2ebb6014..ea04eb049e16d1027d15f9863d1fcd16f090c464 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -1530,6 +1530,13 @@ public abstract class PlayerList { @@ -39,7 +39,7 @@ index b00da578cb4ba037a540584738b3f866acfa9f88..2f62af670441d422133b18d00d9e5e5e Iterator iterator1 = this.players.iterator(); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index bebccf63126be70bf7487361ba8a836131aaf524..4806076159431403b5d8dae8472b9c3acd5ecb36 100644 +index 8ac5d7730610b49da33e9f7bb827aeccf5383500..9f2b1dfcb28a1916371ee9e5e35f07abe99a4337 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1143,6 +1143,18 @@ public final class CraftServer implements Server { diff --git a/patches/server/0881-Use-correct-seed-on-api-world-load.patch b/patches/server/0881-Use-correct-seed-on-api-world-load.patch index f034e1fbc9..3d3dbf38be 100644 --- a/patches/server/0881-Use-correct-seed-on-api-world-load.patch +++ b/patches/server/0881-Use-correct-seed-on-api-world-load.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Use correct seed on api world load diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 4806076159431403b5d8dae8472b9c3acd5ecb36..f21f6773172d0bbf50c341e371d01faa50299f6f 100644 +index 9f2b1dfcb28a1916371ee9e5e35f07abe99a4337..721b7d6c0613dbcab12445ae41061e4b4d98a68f 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1365,7 +1365,7 @@ public final class CraftServer implements Server { diff --git a/patches/server/0885-Bandaid-fix-for-Effect.patch b/patches/server/0885-Bandaid-fix-for-Effect.patch index e8c568cc7a..dbe33cad93 100644 --- a/patches/server/0885-Bandaid-fix-for-Effect.patch +++ b/patches/server/0885-Bandaid-fix-for-Effect.patch @@ -65,7 +65,7 @@ index 80aa2aebc490e763d2b9dfd56bcaff94cb13cd91..e99ebf806f955a7c0c163ef546b884c7 // Special case: the axis is optional for ELECTRIC_SPARK Preconditions.checkArgument(effect.getData() == null || effect == Effect.ELECTRIC_SPARK, "Wrong kind of data for the %s effect", effect); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 4db40044c0ac4fefe315c1ee52ff19e300f30629..ed6612311d1f5db95b47bd9883745ce3ebc01cd8 100644 +index d6891d91968b43f484baff1d0b1cb9b640e40118..14c856df79b9089e2525cfc0afd9d1a86e1963d1 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -914,7 +914,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0888-Deprecate-and-replace-methods-with-old-StructureType.patch b/patches/server/0888-Deprecate-and-replace-methods-with-old-StructureType.patch index 9217f202d5..d2c3dba400 100644 --- a/patches/server/0888-Deprecate-and-replace-methods-with-old-StructureType.patch +++ b/patches/server/0888-Deprecate-and-replace-methods-with-old-StructureType.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Deprecate and replace methods with old StructureType diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index f21f6773172d0bbf50c341e371d01faa50299f6f..2be50f69f4f839a51fda5d207ca41257ffc0c12d 100644 +index 721b7d6c0613dbcab12445ae41061e4b4d98a68f..1ba71b0cb6199ee4c3e2a04cfcd57cd3f4908bca 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1970,6 +1970,11 @@ public final class CraftServer implements Server { diff --git a/patches/server/0893-Add-Listing-API-for-Player.patch b/patches/server/0893-Add-Listing-API-for-Player.patch index 9707d97c7d..80b4285691 100644 --- a/patches/server/0893-Add-Listing-API-for-Player.patch +++ b/patches/server/0893-Add-Listing-API-for-Player.patch @@ -82,7 +82,7 @@ index 6247a21c9c391abf1f6db3482c659593e4f29355..9ccca41bf23efadba5329cc584bbcdca static class EntryBuilder { diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 2f62af670441d422133b18d00d9e5e5e58e4afe7..db1279f780e905e5b29fd4db0440d29f52596be0 100644 +index ea04eb049e16d1027d15f9863d1fcd16f090c464..0aa28caa1254137c0bae8e213bd08c9a654f5335 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -359,14 +359,22 @@ public abstract class PlayerList { @@ -119,7 +119,7 @@ index 2f62af670441d422133b18d00d9e5e5e58e4afe7..db1279f780e905e5b29fd4db0440d29f // Paper end - Use single player info update packet on join player.sentListPacket = true; diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index ed6612311d1f5db95b47bd9883745ce3ebc01cd8..b21fe1ec658628f7de37d87a1f45557d2e4ddef1 100644 +index 14c856df79b9089e2525cfc0afd9d1a86e1963d1..0af445c316b4b6fb5a214e2533375894bef7c793 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -198,6 +198,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0903-Implement-OfflinePlayer-isConnected.patch b/patches/server/0903-Implement-OfflinePlayer-isConnected.patch index d347d40043..27e6e32fb5 100644 --- a/patches/server/0903-Implement-OfflinePlayer-isConnected.patch +++ b/patches/server/0903-Implement-OfflinePlayer-isConnected.patch @@ -23,7 +23,7 @@ index 4d654c4f0b6210a9841427789ba70ce5d1d308be..9d93130f23addb18b97d7f5ec013faef public String getName() { Player player = this.getPlayer(); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index b21fe1ec658628f7de37d87a1f45557d2e4ddef1..0a3178562909514dc43d5987d789782df4ae59fa 100644 +index 0af445c316b4b6fb5a214e2533375894bef7c793..f38edb1bd8e9b71fc984e1d258bfdb7df91798b8 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -253,6 +253,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0920-Fix-missing-map-initialize-event-call.patch b/patches/server/0920-Fix-missing-map-initialize-event-call.patch index 54a02f94c8..be9f07bfc2 100644 --- a/patches/server/0920-Fix-missing-map-initialize-event-call.patch +++ b/patches/server/0920-Fix-missing-map-initialize-event-call.patch @@ -7,7 +7,7 @@ Subject: [PATCH] Fix missing map initialize event call public net.minecraft.world.level.storage.DimensionDataStorage readSavedData(Ljava/util/function/Function;Lnet/minecraft/util/datafix/DataFixTypes;Ljava/lang/String;)Lnet/minecraft/world/level/saveddata/SavedData; diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index b8aac1c72bac15bf421d0f7ae406feefe1cad587..91ef138bdd0bfe77692353e7598b47a43511eb3b 100644 +index b8aac1c72bac15bf421d0f7ae406feefe1cad587..601ddb8a2ed1559a3c439c1aca49f772ffdd092a 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -1670,13 +1670,24 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -21,14 +21,14 @@ index b8aac1c72bac15bf421d0f7ae406feefe1cad587..91ef138bdd0bfe77692353e7598b47a4 + // Paper start - Call missing map initialize event and set id + final DimensionDataStorage storage = this.getServer().overworld().getDataStorage(); + -+ final net.minecraft.world.level.saveddata.SavedData existing = storage.cache.get(id); -+ if (existing == null && !storage.cache.containsKey(id)) { ++ final net.minecraft.world.level.saveddata.SavedData existing = storage.cache.get(id.key()); ++ if (existing == null && !storage.cache.containsKey(id.key())) { + final MapItemSavedData worldmap = (MapItemSavedData) this.getServer().overworld().getDataStorage().get(MapItemSavedData.factory(), id.key()); -+ storage.cache.put(id, map); -+ if (map != null) { -+ map.id = id; -+ new MapInitializeEvent(map.mapView).callEvent(); -+ return map; ++ storage.cache.put(id.key(), worldmap); ++ if (worldmap != null) { ++ worldmap.id = id; ++ new MapInitializeEvent(worldmap.mapView).callEvent(); ++ return worldmap; + } + } else if (existing instanceof MapItemSavedData mapItemSavedData) { + mapItemSavedData.id = id; diff --git a/patches/server/0923-Add-player-idle-duration-API.patch b/patches/server/0923-Add-player-idle-duration-API.patch index 202ff62c7e..fb3ce72750 100644 --- a/patches/server/0923-Add-player-idle-duration-API.patch +++ b/patches/server/0923-Add-player-idle-duration-API.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Add player idle duration API Implements API for getting and resetting a player's idle duration. diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 0a3178562909514dc43d5987d789782df4ae59fa..f9e4b3e4a4f5a4d607f3b26749bac15fe3dde43b 100644 +index f38edb1bd8e9b71fc984e1d258bfdb7df91798b8..17883cb58df02011dc846d5695b5162dec213ebf 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -3399,6 +3399,18 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0926-Allow-null-itemstack-for-Player-sendEquipmentChange.patch b/patches/server/0926-Allow-null-itemstack-for-Player-sendEquipmentChange.patch index 169a2a7cfb..8add9e8d4a 100644 --- a/patches/server/0926-Allow-null-itemstack-for-Player-sendEquipmentChange.patch +++ b/patches/server/0926-Allow-null-itemstack-for-Player-sendEquipmentChange.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Allow null itemstack for Player#sendEquipmentChange diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index f9e4b3e4a4f5a4d607f3b26749bac15fe3dde43b..a0d4da6338232d4bdffbd58ebcc9c6e379f3f4d9 100644 +index 17883cb58df02011dc846d5695b5162dec213ebf..72e404d4f588f597930c1340e26b37d354273652 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1125,7 +1125,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0939-Don-t-fire-sync-events-during-worldgen.patch b/patches/server/0939-Don-t-fire-sync-events-during-worldgen.patch index 0fc39b4dd1..f7e2f23678 100644 --- a/patches/server/0939-Don-t-fire-sync-events-during-worldgen.patch +++ b/patches/server/0939-Don-t-fire-sync-events-during-worldgen.patch @@ -19,7 +19,7 @@ where generation happened directly to a ServerLevel and the entity still has the flag set. diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 91ef138bdd0bfe77692353e7598b47a43511eb3b..b13c219929baf15b6233ba0460b5e73d2f342d19 100644 +index 601ddb8a2ed1559a3c439c1aca49f772ffdd092a..6e7f98fd7b43b46171c3cd58ed91b53960bd0d8a 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -1232,6 +1232,7 @@ public class ServerLevel extends Level implements WorldGenLevel { diff --git a/patches/server/0947-Add-experience-points-API.patch b/patches/server/0947-Add-experience-points-API.patch index a0c049ad73..68f5292917 100644 --- a/patches/server/0947-Add-experience-points-API.patch +++ b/patches/server/0947-Add-experience-points-API.patch @@ -18,7 +18,7 @@ index 230ffd3c4541ef8979605d733b6463e39cd00206..446556028028b25c35dbf3d099bf14a5 // Paper start - send while respecting visibility private static void sendSoundEffect(Player fromEntity, double x, double y, double z, SoundEvent soundEffect, SoundSource soundCategory, float volume, float pitch) { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index a0d4da6338232d4bdffbd58ebcc9c6e379f3f4d9..21bd0ee68fa3785fdb1d9b30f0d55bb2b5d2a3ec 100644 +index 72e404d4f588f597930c1340e26b37d354273652..318dacea25684e1b66b9484709aaeaf94328f13c 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1902,6 +1902,49 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0951-Properly-handle-experience-dropping-on-block-break.patch b/patches/server/0951-Properly-handle-experience-dropping-on-block-break.patch index e9378e05a5..5b96822b23 100644 --- a/patches/server/0951-Properly-handle-experience-dropping-on-block-break.patch +++ b/patches/server/0951-Properly-handle-experience-dropping-on-block-break.patch @@ -68,7 +68,7 @@ index a757a45d423e1729c9374391df4186ae0522e1ac..7f0c0ca49e7575c18935b71e3180d112 } diff --git a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java -index f76ce68ed8e08167cf1cbd7bfec67ae01567c38d..84033e07fa357bf401190d5b5fadfd783a63ddf9 100644 +index 64fe89f4e70440a1af1d98a521a41ab048f7c3d9..0b7e5aef0089d92754d883f5e517b322f26efaaf 100644 --- a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java +++ b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java @@ -1118,6 +1118,7 @@ public abstract class BlockBehaviour implements FeatureElement { diff --git a/patches/server/0958-Add-Lifecycle-Event-system.patch b/patches/server/0958-Add-Lifecycle-Event-system.patch index 30b1680a67..a99f906a5f 100644 --- a/patches/server/0958-Add-Lifecycle-Event-system.patch +++ b/patches/server/0958-Add-Lifecycle-Event-system.patch @@ -707,7 +707,7 @@ index 2e96308696e131f3f013469a395e5ddda2c5d529..65a66e484c1c39c5f41d97db52f31c67 } catch (Throwable e) { LOGGER.error("Failed to run bootstrapper for %s. This plugin will not be loaded.".formatted(provider.getSource()), e); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 2be50f69f4f839a51fda5d207ca41257ffc0c12d..7c2e1c8907ea5807973b1d3d05a05d646c723a7f 100644 +index 1ba71b0cb6199ee4c3e2a04cfcd57cd3f4908bca..cacbb73e07ec2ea55d10af20c5f2a6d234c9bff3 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1018,6 +1018,11 @@ public final class CraftServer implements Server { diff --git a/patches/server/0963-improve-BanList-types.patch b/patches/server/0963-improve-BanList-types.patch index d1ae62f9af..4be3dd5076 100644 --- a/patches/server/0963-improve-BanList-types.patch +++ b/patches/server/0963-improve-BanList-types.patch @@ -5,7 +5,7 @@ Subject: [PATCH] improve BanList types diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 7c2e1c8907ea5807973b1d3d05a05d646c723a7f..f325253bf93c4a5fbe333b12019eadc2025a509b 100644 +index cacbb73e07ec2ea55d10af20c5f2a6d234c9bff3..5467a5985eaf159e2a4f19dd5723d05d8f2d598e 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -2223,6 +2223,21 @@ public final class CraftServer implements Server { diff --git a/patches/server/0965-Add-BlockBreakProgressUpdateEvent.patch b/patches/server/0965-Add-BlockBreakProgressUpdateEvent.patch index 48c96933c7..67abc67fb7 100644 --- a/patches/server/0965-Add-BlockBreakProgressUpdateEvent.patch +++ b/patches/server/0965-Add-BlockBreakProgressUpdateEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add BlockBreakProgressUpdateEvent diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index b13c219929baf15b6233ba0460b5e73d2f342d19..28a4d1e556c08b4f07f00ea684587e7bf786f67c 100644 +index 6e7f98fd7b43b46171c3cd58ed91b53960bd0d8a..55c7c078e0219e4a6a9e22db23f671ba728ff036 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -1328,6 +1328,17 @@ public class ServerLevel extends Level implements WorldGenLevel { diff --git a/patches/server/0966-Deprecate-ItemStack-setType.patch b/patches/server/0966-Deprecate-ItemStack-setType.patch index 5a622e9747..f13f299b73 100644 --- a/patches/server/0966-Deprecate-ItemStack-setType.patch +++ b/patches/server/0966-Deprecate-ItemStack-setType.patch @@ -5,22 +5,27 @@ Subject: [PATCH] Deprecate ItemStack#setType diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java -index e37656794bce0221c9869147f87d26a2c8290eef..23f41734400587c4fda3c8ae9e59f60868ed88a3 100644 +index e37656794bce0221c9869147f87d26a2c8290eef..7c54b05f0eb734507e36f85690eb0b2832d94ce8 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java -@@ -715,4 +715,19 @@ public final class CraftItemStack extends ItemStack { +@@ -715,4 +715,24 @@ public final class CraftItemStack extends ItemStack { static boolean hasItemMeta(net.minecraft.world.item.ItemStack item) { return !(item == null || item.getComponentsPatch().isEmpty()); } + // Paper start - with type + @Override + public ItemStack withType(final Material type) { -+ if (type == Material.AIR) return CraftItemStack.asCraftMirror(null); ++ if (type == Material.AIR) { ++ return CraftItemStack.asCraftMirror(null); ++ } + + final net.minecraft.world.item.ItemStack copy = new net.minecraft.world.item.ItemStack( + CraftItemType.bukkitToMinecraft(type), this.getAmount() + ); -+ if (this.handle != null && this.handle.getTag() != null) copy.setTag(this.handle.getTag().copy()); ++ ++ if (this.handle != null) { ++ copy.applyComponents(this.handle.getComponents()); ++ } + + final CraftItemStack mirrored = CraftItemStack.asCraftMirror(copy); + mirrored.setItemMeta(mirrored.getItemMeta()); diff --git a/patches/server/0970-Configurable-max-block-fluid-ticks.patch b/patches/server/0970-Configurable-max-block-fluid-ticks.patch index dae373e8f4..ed1c561d6e 100644 --- a/patches/server/0970-Configurable-max-block-fluid-ticks.patch +++ b/patches/server/0970-Configurable-max-block-fluid-ticks.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Configurable max block/fluid ticks diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 28a4d1e556c08b4f07f00ea684587e7bf786f67c..101044fe17a963c8a96519f157a50e42f5d0658a 100644 +index 55c7c078e0219e4a6a9e22db23f671ba728ff036..5eab8532bfe3b7082123a12b8a3e62d25a4463d3 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -506,9 +506,9 @@ public class ServerLevel extends Level implements WorldGenLevel { diff --git a/patches/server/0983-disable-forced-empty-world-ticks.patch b/patches/server/0983-disable-forced-empty-world-ticks.patch index 4b589ba549..6ef5295591 100644 --- a/patches/server/0983-disable-forced-empty-world-ticks.patch +++ b/patches/server/0983-disable-forced-empty-world-ticks.patch @@ -5,7 +5,7 @@ Subject: [PATCH] disable forced empty world ticks diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 101044fe17a963c8a96519f157a50e42f5d0658a..78c1da700cb2a11a3fdb3725e89bcdb62c8f72e7 100644 +index 5eab8532bfe3b7082123a12b8a3e62d25a4463d3..7dfbb3dd6100180abd2ebab4d1e9e34928666f9e 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -533,7 +533,7 @@ public class ServerLevel extends Level implements WorldGenLevel { diff --git a/patches/server/0984-Starlight.patch b/patches/server/0984-Starlight.patch index 3cd425f8d2..32a1a795ff 100644 --- a/patches/server/0984-Starlight.patch +++ b/patches/server/0984-Starlight.patch @@ -4890,7 +4890,7 @@ index 333a02e08cccf5cb0efa2076582cbd69e95ff0c0..ca4c8e256047a4af45811c3e772b5a95 return this.level.getChunkSource().chunkMap.isOldChunkAround(chunkPos, checkRadius); } diff --git a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java -index 84033e07fa357bf401190d5b5fadfd783a63ddf9..0cc12c418d18c5c2e927b93907daea3e0f662035 100644 +index 0b7e5aef0089d92754d883f5e517b322f26efaaf..58129852b4caaa272401cdadb2e0ba4690c60e88 100644 --- a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java +++ b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java @@ -812,6 +812,7 @@ public abstract class BlockBehaviour implements FeatureElement { diff --git a/patches/server/0985-Rewrite-chunk-system.patch b/patches/server/0985-Rewrite-chunk-system.patch index d306e132fa..0507a60115 100644 --- a/patches/server/0985-Rewrite-chunk-system.patch +++ b/patches/server/0985-Rewrite-chunk-system.patch @@ -18390,7 +18390,7 @@ index 2d9d4d06b75873f888ef4d8f5779a52706f821a8..f74efe41cd0da2f9749fc96fb9e0f7cf } diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 78c1da700cb2a11a3fdb3725e89bcdb62c8f72e7..3b8213723670201909a3b07e181d05aecc7ec296 100644 +index 7dfbb3dd6100180abd2ebab4d1e9e34928666f9e..4dc5802d203d202081ae034bbf8efd5e7983f360 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -199,7 +199,7 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -19339,7 +19339,7 @@ index c502d9b85eb68b277ae17dfea34e0475f0156647..27d0f1ed58948039004f8f1eba2f7f96 this.desiredChunksPerTick = Double.isNaN((double)desiredBatchSize) ? 0.01F : Mth.clamp(desiredBatchSize, 0.01F, 64.0F); if (this.unacknowledgedBatches == 0) { diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index db1279f780e905e5b29fd4db0440d29f52596be0..7bf4884940c6414000a8ac661c1ff64427f53789 100644 +index 0aa28caa1254137c0bae8e213bd08c9a654f5335..c4b4e5f5c9366b241686e881cda34568a57b4877 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -296,7 +296,7 @@ public abstract class PlayerList { @@ -21517,7 +21517,7 @@ index 7dae8d91b74cc7df0745f0c121e3bea09b8d0b6d..1e2530c9e5212b6d2bdbc94817beddb4 @Override diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index f325253bf93c4a5fbe333b12019eadc2025a509b..04be155867b324e7b0744d4e900616e0a3d3c4a6 100644 +index 5467a5985eaf159e2a4f19dd5723d05d8f2d598e..66fa93a44a348f9cd300ec0c4a2d09a7a2bf47e1 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1407,7 +1407,6 @@ public final class CraftServer implements Server { @@ -21649,7 +21649,7 @@ index 25ccbeace5bfc10fe3c885ea8dd984b08b4668ae..4bcfae1ca9c2ba590d800534bb199f94 // Paper start - implement pointers diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 21bd0ee68fa3785fdb1d9b30f0d55bb2b5d2a3ec..03e16706e378e7d4d1e74aca7daef62c3cbe3592 100644 +index 318dacea25684e1b66b9484709aaeaf94328f13c..2c72ae02ac9863fd023f784f2562418f7d247b4d 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -3462,31 +3462,31 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0986-incremental-chunk-and-player-saving.patch b/patches/server/0986-incremental-chunk-and-player-saving.patch index 91c57a54a9..d803643a22 100644 --- a/patches/server/0986-incremental-chunk-and-player-saving.patch +++ b/patches/server/0986-incremental-chunk-and-player-saving.patch @@ -76,7 +76,7 @@ index f74efe41cd0da2f9749fc96fb9e0f7cf237ad1c6..d1728e13a7b649f308bde90ab633c79d public void close() throws IOException { // CraftBukkit start diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 3b8213723670201909a3b07e181d05aecc7ec296..19d549e33c0eb085661fcaa29a6bd8f2dba062bd 100644 +index 4dc5802d203d202081ae034bbf8efd5e7983f360..c0bff735a4ff85ca84d55cd1448aa5d423cab60f 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -1302,6 +1302,37 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -130,7 +130,7 @@ index 65e6623c2d1a6cf48729f78948fc48e82057114c..fc8e9cd699bdefb6ddadc6aa30e64594 private static final int NEUTRAL_MOB_DEATH_NOTIFICATION_RADII_Y = 10; private static final int FLY_STAT_RECORDING_SPEED = 25; diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 7bf4884940c6414000a8ac661c1ff64427f53789..11f13eb06516aefca926e150b9b66bafdebf4226 100644 +index c4b4e5f5c9366b241686e881cda34568a57b4877..57164b266d23715c224a85660531220477d4dda8 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -575,6 +575,7 @@ public abstract class PlayerList { diff --git a/patches/server/0988-Improve-Maps-in-item-frames-performance-and-bug-fixe.patch b/patches/server/0988-Improve-Maps-in-item-frames-performance-and-bug-fixe.patch index e326101721..ab4b84a818 100644 --- a/patches/server/0988-Improve-Maps-in-item-frames-performance-and-bug-fixe.patch +++ b/patches/server/0988-Improve-Maps-in-item-frames-performance-and-bug-fixe.patch @@ -13,7 +13,7 @@ custom renderers are in use, defaulting to the much simpler Vanilla system. Additionally, numerous issues to player position tracking on maps has been fixed. diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 19d549e33c0eb085661fcaa29a6bd8f2dba062bd..c01b40e8b59fd3414e24908fa1d879f231c57091 100644 +index c0bff735a4ff85ca84d55cd1448aa5d423cab60f..95bee1356fe3e149da3db091a3286762c6a15ed1 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -2588,6 +2588,7 @@ public class ServerLevel extends Level implements WorldGenLevel { diff --git a/patches/server/0991-Allow-Saving-of-Oversized-Chunks.patch b/patches/server/0991-Allow-Saving-of-Oversized-Chunks.patch index c3638d7721..8d6769fe17 100644 --- a/patches/server/0991-Allow-Saving-of-Oversized-Chunks.patch +++ b/patches/server/0991-Allow-Saving-of-Oversized-Chunks.patch @@ -134,7 +134,7 @@ index 307196b2a58d4f8db3e6e3c3517a8004d4908b13..c9fd589b1354ac788b63d163d427e8cc private final ChunkPos pos; diff --git a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java -index 3f6955be976064eb542b5c50a9d6d74457c1833c..3b5849f51ff56c6582c8bd451c5c3398827df6db 100644 +index 3f6955be976064eb542b5c50a9d6d74457c1833c..c2838ae91b7f078369b63503df57a1eb5d2b0df5 100644 --- a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java +++ b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java @@ -123,6 +123,43 @@ public class RegionFileStorage implements AutoCloseable { @@ -187,7 +187,7 @@ index 3f6955be976064eb542b5c50a9d6d74457c1833c..3b5849f51ff56c6582c8bd451c5c3398 + // Paper start + if (regionfile.isOversized(pos.x, pos.z)) { -+ printOversizedLog("Loading Oversized Chunk!", regionfile.regionFile, pos.x, pos.z); ++ printOversizedLog("Loading Oversized Chunk!", regionfile.getPath(), pos.x, pos.z); + return readOversizedChunk(regionfile, pos); + } + // Paper end diff --git a/patches/server/0992-Fix-World-isChunkGenerated-calls.patch b/patches/server/0992-Fix-World-isChunkGenerated-calls.patch index 7b723a5c4e..75f55a10b1 100644 --- a/patches/server/0992-Fix-World-isChunkGenerated-calls.patch +++ b/patches/server/0992-Fix-World-isChunkGenerated-calls.patch @@ -140,7 +140,7 @@ index c9fd589b1354ac788b63d163d427e8cc5fbba3c5..27d3209275d621a211a82436667ba1a8 this.padToFullSector(); } finally { diff --git a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java -index 3b5849f51ff56c6582c8bd451c5c3398827df6db..a73a37320da2c141fc2db9d1d61233a34ce0c906 100644 +index c2838ae91b7f078369b63503df57a1eb5d2b0df5..c33640859aab837c85f3e860fe2241a0e78bb09a 100644 --- a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java +++ b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java @@ -268,6 +268,7 @@ public class RegionFileStorage implements AutoCloseable { diff --git a/patches/server/0994-Entity-Activation-Range-2.0.patch b/patches/server/0994-Entity-Activation-Range-2.0.patch index ff562af6ec..2e387df523 100644 --- a/patches/server/0994-Entity-Activation-Range-2.0.patch +++ b/patches/server/0994-Entity-Activation-Range-2.0.patch @@ -17,7 +17,7 @@ Adds villagers as separate config public net.minecraft.world.entity.Entity isInsidePortal diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index c01b40e8b59fd3414e24908fa1d879f231c57091..b2309742c5eefdff58ef188670023ed49675e2b5 100644 +index 95bee1356fe3e149da3db091a3286762c6a15ed1..01053e93cf21e3d8939a09e6bdf4ea996174ca95 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -2,7 +2,6 @@ package net.minecraft.server.level; diff --git a/patches/server/0996-Anti-Xray.patch b/patches/server/0996-Anti-Xray.patch index f8fa4e94a1..207260d30b 100644 --- a/patches/server/0996-Anti-Xray.patch +++ b/patches/server/0996-Anti-Xray.patch @@ -1104,7 +1104,7 @@ index 183b2191fa1c1b27adedf39593e1b5a223fb1279..8ead66c134688b11dca15f6509147e72 private ClientboundLevelChunkWithLightPacket(RegistryFriendlyByteBuf buf) { diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index b2309742c5eefdff58ef188670023ed49675e2b5..2092029f19e40a005c477b989639fe7a62b76fbb 100644 +index 01053e93cf21e3d8939a09e6bdf4ea996174ca95..47c9b375b907945510d0b403e88cca17fca0fd3d 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -575,7 +575,7 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -1155,7 +1155,7 @@ index 27d0f1ed58948039004f8f1eba2f7f9609fdeec0..442bb60eb35002e54dcd6a893aca4a45 if (io.papermc.paper.event.packet.PlayerChunkLoadEvent.getHandlerList().getRegisteredListeners().length > 0) { new io.papermc.paper.event.packet.PlayerChunkLoadEvent(new org.bukkit.craftbukkit.CraftChunk(chunk), handler.getPlayer().getBukkitEntity()).callEvent(); diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 11f13eb06516aefca926e150b9b66bafdebf4226..5b031c7c13fb2c2e593eec4c8f6a973a3758a60b 100644 +index 57164b266d23715c224a85660531220477d4dda8..8f1a2de2a5542929f8a2fdd4d38de141eda985b2 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -420,7 +420,7 @@ public abstract class PlayerList { @@ -1573,7 +1573,7 @@ index 1e2530c9e5212b6d2bdbc94817beddb4247dac73..82b4bd669c57b18fb0b443bcd9449502 private static final byte[] EMPTY_LIGHT = new byte[2048]; diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 04be155867b324e7b0744d4e900616e0a3d3c4a6..4e22def65ce36e8281ab77ca2f136e274e7026eb 100644 +index 66fa93a44a348f9cd300ec0c4a2d09a7a2bf47e1..ac9873c430a3ece5c4b5f5305496639a54ce35f5 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -2659,7 +2659,7 @@ public final class CraftServer implements Server { diff --git a/patches/server/0998-Optimize-Collision-to-not-load-chunks.patch b/patches/server/0998-Optimize-Collision-to-not-load-chunks.patch index 6e4dc57958..17286aaa99 100644 --- a/patches/server/0998-Optimize-Collision-to-not-load-chunks.patch +++ b/patches/server/0998-Optimize-Collision-to-not-load-chunks.patch @@ -14,7 +14,7 @@ movement will load only the chunk the player enters anyways and avoids loading massive amounts of surrounding chunks due to large AABB lookups. diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 5b031c7c13fb2c2e593eec4c8f6a973a3758a60b..65803c0927103e3ae63d8d8616f42090e736508b 100644 +index 8f1a2de2a5542929f8a2fdd4d38de141eda985b2..29b35b8c0a6001d626e327a82eaff26d068660db 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -934,6 +934,7 @@ public abstract class PlayerList { diff --git a/patches/server/1001-Improved-Watchdog-Support.patch b/patches/server/1001-Improved-Watchdog-Support.patch index bafe036e53..c97e7e150a 100644 --- a/patches/server/1001-Improved-Watchdog-Support.patch +++ b/patches/server/1001-Improved-Watchdog-Support.patch @@ -266,7 +266,7 @@ index 89c2c26afc5f06c4f57716cadbebabb8854f3635..eb4fc900164d1fb3a78653ae8bc42ea3 } diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 65803c0927103e3ae63d8d8616f42090e736508b..3e3bca13578ab9e5b6ca0159383bee0b2a60a86e 100644 +index 29b35b8c0a6001d626e327a82eaff26d068660db..60ba289e724463129dfb27aa5e3b6daf3dd7386e 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -611,7 +611,7 @@ public abstract class PlayerList { diff --git a/patches/server/1003-Write-SavedData-IO-async.patch b/patches/server/1003-Write-SavedData-IO-async.patch index f074fb039e..ffaaa81b70 100644 --- a/patches/server/1003-Write-SavedData-IO-async.patch +++ b/patches/server/1003-Write-SavedData-IO-async.patch @@ -24,7 +24,7 @@ index c7b7f153895a4b95b2071a31db00c9c4b69fa094..0b7a38b9e92b19345a34c6226413a9b1 // CraftBukkit start - modelled on below diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 2092029f19e40a005c477b989639fe7a62b76fbb..ec40198d3dd8df954ccb753f08bd207e9583b3db 100644 +index 47c9b375b907945510d0b403e88cca17fca0fd3d..cdf02d7365a14d32dbb63771d8f834c1b28ec03e 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -1330,7 +1330,7 @@ public class ServerLevel extends Level implements WorldGenLevel { diff --git a/patches/server/1004-Protect-Bedrock-and-End-Portal-Frames-from-being-des.patch b/patches/server/1004-Protect-Bedrock-and-End-Portal-Frames-from-being-des.patch index 85b58c0866..a399285479 100644 --- a/patches/server/1004-Protect-Bedrock-and-End-Portal-Frames-from-being-des.patch +++ b/patches/server/1004-Protect-Bedrock-and-End-Portal-Frames-from-being-des.patch @@ -106,7 +106,7 @@ index e6bfbe2588e0c2a1be14e38d654e889d392ad4db..e0c62227b279a5fe0f3868fbf9ce8c78 world.playSound((Player) null, pos, SoundEvents.PISTON_CONTRACT, SoundSource.BLOCKS, 0.5F, world.random.nextFloat() * 0.15F + 0.6F); diff --git a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java -index 0cc12c418d18c5c2e927b93907daea3e0f662035..f863f3a553e26af1fb656622da052505e6ef1c01 100644 +index 58129852b4caaa272401cdadb2e0ba4690c60e88..a28cb5e2e6a813ea8fddd26f34cd681b6bae6305 100644 --- a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java +++ b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java @@ -174,7 +174,7 @@ public abstract class BlockBehaviour implements FeatureElement { diff --git a/patches/server/1013-Execute-chunk-tasks-mid-tick.patch b/patches/server/1013-Execute-chunk-tasks-mid-tick.patch index 1413d8d94c..578000b43e 100644 --- a/patches/server/1013-Execute-chunk-tasks-mid-tick.patch +++ b/patches/server/1013-Execute-chunk-tasks-mid-tick.patch @@ -123,7 +123,7 @@ index 0b7a38b9e92b19345a34c6226413a9b133264077..18640c8681f6a3b2276123d19e3e8f0a } } diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index ec40198d3dd8df954ccb753f08bd207e9583b3db..b80ccdd40c9ecafae31834d5ffa79c3cf2d470ee 100644 +index cdf02d7365a14d32dbb63771d8f834c1b28ec03e..9b1641ab38a11c577ae70908c52907c34f061c7f 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -221,6 +221,7 @@ public class ServerLevel extends Level implements WorldGenLevel { diff --git a/patches/server/1014-Optimise-random-block-ticking.patch b/patches/server/1014-Optimise-random-block-ticking.patch index d468b8bfa1..373b65bc6c 100644 --- a/patches/server/1014-Optimise-random-block-ticking.patch +++ b/patches/server/1014-Optimise-random-block-ticking.patch @@ -90,7 +90,7 @@ index 0000000000000000000000000000000000000000..7d93652c1abbb6aee6eb7c26cf35d4d0 + } +} diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index b80ccdd40c9ecafae31834d5ffa79c3cf2d470ee..00d8290bf851de501a93ff8219be35f88a2fa081 100644 +index 9b1641ab38a11c577ae70908c52907c34f061c7f..1f6f49023bdb914a0112d632cbba5eeb96c4b7e9 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -867,6 +867,10 @@ public class ServerLevel extends Level implements WorldGenLevel { diff --git a/patches/server/1015-Attempt-to-recalculate-regionfile-header-if-it-is-co.patch b/patches/server/1015-Attempt-to-recalculate-regionfile-header-if-it-is-co.patch index 0bc7d78d6a..34240c60a4 100644 --- a/patches/server/1015-Attempt-to-recalculate-regionfile-header-if-it-is-co.patch +++ b/patches/server/1015-Attempt-to-recalculate-regionfile-header-if-it-is-co.patch @@ -685,7 +685,7 @@ index 27d3209275d621a211a82436667ba1a8eae605c7..9fdbea51d96e54b52b63de04f2845c62 return bytebuffer; } diff --git a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java -index a73a37320da2c141fc2db9d1d61233a34ce0c906..af50a02bafb7c1db4569604d1e69f95daab6d2a5 100644 +index c33640859aab837c85f3e860fe2241a0e78bb09a..249705ec1b8b692ef1d7fec34a04918afe6486bc 100644 --- a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java +++ b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java @@ -25,6 +25,7 @@ public class RegionFileStorage implements AutoCloseable { @@ -749,12 +749,12 @@ index a73a37320da2c141fc2db9d1d61233a34ce0c906..af50a02bafb7c1db4569604d1e69f95d + if (this.isChunkData) { + ChunkPos chunkPos = ChunkSerializer.getChunkCoordinate(nbttagcompound); + if (!chunkPos.equals(pos)) { -+ net.minecraft.server.MinecraftServer.LOGGER.error("Attempting to read chunk data at " + pos + " but got chunk data for " + chunkPos + " instead! Attempting regionfile recalculation for regionfile " + regionfile.regionFile.toAbsolutePath()); ++ net.minecraft.server.MinecraftServer.LOGGER.error("Attempting to read chunk data at " + pos + " but got chunk data for " + chunkPos + " instead! Attempting regionfile recalculation for regionfile " + regionfile.getPath().toAbsolutePath()); + if (regionfile.recalculateHeader()) { + regionfile.fileLock.lock(); // otherwise we will unlock twice and only lock once. + return this.read(pos, regionfile); + } -+ net.minecraft.server.MinecraftServer.LOGGER.error("Can't recalculate regionfile header, regenerating chunk " + pos + " for " + regionfile.regionFile.toAbsolutePath()); ++ net.minecraft.server.MinecraftServer.LOGGER.error("Can't recalculate regionfile header, regenerating chunk " + pos + " for " + regionfile.getPath().toAbsolutePath()); + return null; + } + } diff --git a/patches/server/1017-Detail-more-information-in-watchdog-dumps.patch b/patches/server/1017-Detail-more-information-in-watchdog-dumps.patch index 2fba561ba5..3bd0ffc61d 100644 --- a/patches/server/1017-Detail-more-information-in-watchdog-dumps.patch +++ b/patches/server/1017-Detail-more-information-in-watchdog-dumps.patch @@ -76,7 +76,7 @@ index e161ad0f53a21a68e8c78575ba5d3cdbdb11fca0..57e76b53e5e314c3e6b8856010f7a841 }); throw RunningOnDifferentThreadException.RUNNING_ON_DIFFERENT_THREAD; diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 00d8290bf851de501a93ff8219be35f88a2fa081..8432d48086f5ff5c43e5217382aad023abc5bb5a 100644 +index 1f6f49023bdb914a0112d632cbba5eeb96c4b7e9..031d78c1635f2a77605e58ff27683dee09dc2ed6 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -1251,7 +1251,26 @@ public class ServerLevel extends Level implements WorldGenLevel { diff --git a/patches/server/1018-Collision-optimisations.patch b/patches/server/1018-Collision-optimisations.patch index 5c38c5ae4e..c8b02ec099 100644 --- a/patches/server/1018-Collision-optimisations.patch +++ b/patches/server/1018-Collision-optimisations.patch @@ -2201,7 +2201,7 @@ index e06b9b0c7b1c3a200b89819e0e521f1c88dc981b..ed42a78aebeda86b77f27cba4fcefbc6 } } diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 3e3bca13578ab9e5b6ca0159383bee0b2a60a86e..c83ec24c0bf54f8699caa2d37bfe82d273f7b16c 100644 +index 60ba289e724463129dfb27aa5e3b6daf3dd7386e..68446b7532dfbda303293aa9e756644c6fcdffca 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -935,7 +935,7 @@ public abstract class PlayerList { @@ -3030,7 +3030,7 @@ index 054593fc0b8d13f6bf449cc20a1f7ddfd5f1d1f0..cf8b8c8efd1c9c81eb5f02d75bd75875 public void animateTick(BlockState state, Level world, BlockPos pos, RandomSource random) {} diff --git a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java -index f863f3a553e26af1fb656622da052505e6ef1c01..d3c0e767758aa791d51e708d4ec6efad726741e8 100644 +index a28cb5e2e6a813ea8fddd26f34cd681b6bae6305..4f434df33f1a84a13c7c7a2a9efb4ab5d152129c 100644 --- a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java +++ b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java @@ -813,6 +813,10 @@ public abstract class BlockBehaviour implements FeatureElement { diff --git a/patches/server/1022-Add-Alternate-Current-redstone-implementation.patch b/patches/server/1022-Add-Alternate-Current-redstone-implementation.patch index c70ff9baaf..6dea6ecf15 100644 --- a/patches/server/1022-Add-Alternate-Current-redstone-implementation.patch +++ b/patches/server/1022-Add-Alternate-Current-redstone-implementation.patch @@ -726,7 +726,7 @@ index 0000000000000000000000000000000000000000..5a7209f05b549c222f6c9bc2af2a3579 +} diff --git a/src/main/java/alternate/current/wire/WireHandler.java b/src/main/java/alternate/current/wire/WireHandler.java new file mode 100644 -index 0000000000000000000000000000000000000000..02d0a3c3edd36b636163c5c912b26336fe87d16c +index 0000000000000000000000000000000000000000..e943fdcbc15d5c17450659c2cd9e0be73ae06c0b --- /dev/null +++ b/src/main/java/alternate/current/wire/WireHandler.java @@ -0,0 +1,1150 @@ @@ -1869,7 +1869,7 @@ index 0000000000000000000000000000000000000000..02d0a3c3edd36b636163c5c912b26336 + // positions of the network to a set and filter out block updates to wires in + // the network that way. + if (!state.isAir() && !state.is(Blocks.REDSTONE_WIRE)) { -+ state.neighborChanged(level, pos, neighborBlock, neighborPos, false); ++ state.handleNeighborChanged(level, pos, neighborBlock, neighborPos, false); + } + } + @@ -2009,7 +2009,7 @@ 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 8432d48086f5ff5c43e5217382aad023abc5bb5a..8960bf9b5a22b7c6dc9c7a89183c7653bf844630 100644 +index 031d78c1635f2a77605e58ff27683dee09dc2ed6..6de44cc46f37ba70ebf02aeb68fd88a5e358d7c8 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -228,6 +228,7 @@ public class ServerLevel extends Level implements WorldGenLevel { diff --git a/patches/server/1024-Properly-resend-entities.patch b/patches/server/1024-Properly-resend-entities.patch index adce92a9f0..43f7ee5ae7 100644 --- a/patches/server/1024-Properly-resend-entities.patch +++ b/patches/server/1024-Properly-resend-entities.patch @@ -102,7 +102,7 @@ index 88fc56fa521c36accd807ca1704136f29733e52f..a771f78f63e4f26c0ba411a3c355f8df } diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index c83ec24c0bf54f8699caa2d37bfe82d273f7b16c..dd628c8190704505fde543a8853d5b4dbc8252d5 100644 +index 68446b7532dfbda303293aa9e756644c6fcdffca..a2142930b4d4b05987c90496fb9d733d99040aa0 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -393,7 +393,7 @@ public abstract class PlayerList { @@ -196,7 +196,7 @@ index cb4a6439e9774bbec07e69b13df8dddd395b9ece..cfe37b4f5e33795ee717d824d86e3a09 } entity.playSound(((Bucketable) entity).getPickupSound(), 1.0F, 1.0F); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index 3ab04c4bdbe26ff7f6f54eb9cdd58376c592fa05..f949514cf68d0ae2db754576e46f5bfc14ffdff4 100644 +index 3ab04c4bdbe26ff7f6f54eb9cdd58376c592fa05..a2d336ceb52b63db5c03432ee7bc94dc6a742b82 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java @@ -1010,7 +1010,11 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { @@ -206,7 +206,7 @@ index 3ab04c4bdbe26ff7f6f54eb9cdd58376c592fa05..f949514cf68d0ae2db754576e46f5bfc - entityTracker.broadcast(this.getHandle().getAddEntityPacket()); + // Paper start, resend possibly desynced entity instead of add entity packet + for (ServerPlayerConnection playerConnection : entityTracker.seenBy) { -+ this.getHandle().getEntityData().resendPossiblyDesyncedEntityData(playerConnection.getPlayer()); ++ this.getHandle().resendPossiblyDesyncedEntityData(playerConnection.getPlayer()); + } + // Paper end } diff --git a/patches/server/1026-Improve-performance-of-mass-crafts.patch b/patches/server/1026-Improve-performance-of-mass-crafts.patch index fe395ecbba..dd253e6def 100644 --- a/patches/server/1026-Improve-performance-of-mass-crafts.patch +++ b/patches/server/1026-Improve-performance-of-mass-crafts.patch @@ -47,7 +47,7 @@ index fef82418358ecf19d367dafbec159bd78ea97494..f17ff5988d826c8fad68f6bf7bac1d06 for (int i = 0; i < nonNullList.size(); i++) { ItemStack itemStack = this.craftSlots.getItem(i); diff --git a/src/main/java/net/minecraft/world/item/crafting/RecipeManager.java b/src/main/java/net/minecraft/world/item/crafting/RecipeManager.java -index 0126b88f60904dfbf1e29eb3b89a985061d91f91..a42c7be84e10a06303a7fc23236ac4d84e8323c6 100644 +index 0126b88f60904dfbf1e29eb3b89a985061d91f91..a31326e24cb68472c81cd781c5e3041772712862 100644 --- a/src/main/java/net/minecraft/world/item/crafting/RecipeManager.java +++ b/src/main/java/net/minecraft/world/item/crafting/RecipeManager.java @@ -116,6 +116,7 @@ public class RecipeManager extends SimpleJsonResourceReloadListener { @@ -67,7 +67,7 @@ index 0126b88f60904dfbf1e29eb3b89a985061d91f91..a42c7be84e10a06303a7fc23236ac4d8 + return this.getRemainingItemsFor(type, inventory, world, null); + } + public > NonNullList getRemainingItemsFor(RecipeType type, C inventory, Level world, @Nullable ResourceLocation firstToCheck) { -+ Optional> optional = firstToCheck == null ? this.getRecipeFor(type, inventory, world) : this.getRecipeFor(type, inventory, world, firstToCheck).map(Pair::getSecond); ++ Optional> optional = firstToCheck == null ? this.getRecipeFor(type, inventory, world) : this.getRecipeFor(type, inventory, world, firstToCheck); + // Paper end - Perf: Improve mass crafting if (optional.isPresent()) { diff --git a/patches/server/1029-Lag-compensation-ticks.patch b/patches/server/1029-Lag-compensation-ticks.patch index f4d7aa8589..8b2d7bf118 100644 --- a/patches/server/1029-Lag-compensation-ticks.patch +++ b/patches/server/1029-Lag-compensation-ticks.patch @@ -28,7 +28,7 @@ index 1adcbfb16ea1fe3378cde7c53e8868840eade963..5f3b35f0dbd9e78ad18ef5cf7be1a807 this.profiler.push(() -> { String s = String.valueOf(worldserver); diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 8960bf9b5a22b7c6dc9c7a89183c7653bf844630..b732bcb4ae21f4b79d18dd6233148fc780d8d53f 100644 +index 6de44cc46f37ba70ebf02aeb68fd88a5e358d7c8..c9aef37fed619f57135113f013b98eb7c53aad7c 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -570,6 +570,17 @@ public class ServerLevel extends Level implements WorldGenLevel { diff --git a/patches/server/1030-Optimise-nearby-player-retrieval.patch b/patches/server/1030-Optimise-nearby-player-retrieval.patch index a109760ec2..ae85e039bb 100644 --- a/patches/server/1030-Optimise-nearby-player-retrieval.patch +++ b/patches/server/1030-Optimise-nearby-player-retrieval.patch @@ -8,7 +8,7 @@ we can instead use the nearby player tracking system to reduce the number of tests per search. diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index b732bcb4ae21f4b79d18dd6233148fc780d8d53f..614dff798fe02dbbff6485bee75aa9d9cd0ba2d5 100644 +index c9aef37fed619f57135113f013b98eb7c53aad7c..7089868f75f0045c7583d224cd97688d0f215ee3 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -581,6 +581,115 @@ public class ServerLevel extends Level implements WorldGenLevel { diff --git a/patches/server/1034-Fix-and-optimise-world-force-upgrading.patch b/patches/server/1034-Fix-and-optimise-world-force-upgrading.patch index 22eddc217c..b98aab549c 100644 --- a/patches/server/1034-Fix-and-optimise-world-force-upgrading.patch +++ b/patches/server/1034-Fix-and-optimise-world-force-upgrading.patch @@ -321,7 +321,7 @@ index 0a8eeebb2d702ebcefd9f26cc0f41d1eab497902..b4ef3ad2c17168085372f1fe46809f02 return this.world; } diff --git a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java -index af50a02bafb7c1db4569604d1e69f95daab6d2a5..541b99dc1361a6ebd40873e45a1acd12021f1fad 100644 +index 249705ec1b8b692ef1d7fec34a04918afe6486bc..f6e3b745fc417354380d4a969f83aee430bad785 100644 --- a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java +++ b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java @@ -69,6 +69,29 @@ public class RegionFileStorage implements AutoCloseable { @@ -355,7 +355,7 @@ index af50a02bafb7c1db4569604d1e69f95daab6d2a5..541b99dc1361a6ebd40873e45a1acd12 return this.regionCache.getAndMoveToFirst(ChunkPos.asLong(chunkcoordintpair.getRegionX(), chunkcoordintpair.getRegionZ())); } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 4e22def65ce36e8281ab77ca2f136e274e7026eb..9af27bf9edf3f4d0e2da49919495334381633867 100644 +index ac9873c430a3ece5c4b5f5305496639a54ce35f5..3e29496ef9a551f692e4e9149d0e6ffc31fe66e9 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1366,9 +1366,7 @@ public final class CraftServer implements Server { diff --git a/patches/server/1035-API-for-checking-sent-chunks.patch b/patches/server/1035-API-for-checking-sent-chunks.patch index 35557a8191..72d15a69f1 100644 --- a/patches/server/1035-API-for-checking-sent-chunks.patch +++ b/patches/server/1035-API-for-checking-sent-chunks.patch @@ -21,7 +21,7 @@ index ee58c67cb2bd78159cce19ec75f13dc6168a0e7a..149cfb0587299f72fcfddf395fb71b70 // TODO rebase into util patch diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 03e16706e378e7d4d1e74aca7daef62c3cbe3592..d4eb482c54a9e1430ee31e873e02577710aa7322 100644 +index 2c72ae02ac9863fd023f784f2562418f7d247b4d..3462e0719cb430aced15ff61adb612391862b33f 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -3454,6 +3454,35 @@ public class CraftPlayer extends CraftHumanEntity implements Player {