From aabbfcdf8dbcef7bf49f66f18c0301f9830517a7 Mon Sep 17 00:00:00 2001 From: Jake Potrebic Date: Wed, 8 Jun 2022 00:49:02 -0700 Subject: [PATCH] Updated Upstream (Bukkit/CraftBukkit/Spigot) Upstream has released updates that appear to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing Bukkit Changes: 4b08dbc5 PR-752: Make Leaves Waterlogged de323fc9 Downgrade dependency version CraftBukkit Changes: c3f219edb Fix missing abstract in CraftLeaves 886e6d8c8 SPIGOT-7038: Setting title or subtitle to empty string causes the player to disconnect 6c302a5e3 Make Leaves Waterlogged 53b681be5 Downgrade dependency version Spigot Changes: ee737122 Fixed system messages shown in action bar f343df82 SPIGOT-7036: Don't use CHAT message type 63a06049 SPIGOT-7035: Actionbar Sending in Main Chat --- .../api/0001-Convert-project-to-Gradle.patch | 14 ++++++------ patches/api/0002-Build-system-changes.patch | 8 +++---- patches/api/0004-Add-FastUtil-to-Bukkit.patch | 4 ++-- patches/api/0005-Adventure.patch | 4 ++-- .../0026-Use-ASM-for-event-executors.patch | 4 ++-- ...dd-missing-block-data-mins-and-maxes.patch | 4 ++-- .../server/0001-Setup-Gradle-project.patch | 14 ++++++------ patches/server/0008-Adventure.patch | 22 +++++++++---------- patches/server/0012-Timings-v2.patch | 4 ++-- .../0024-Player-affects-spawning-API.patch | 4 ++-- ...026-Only-refresh-abilities-if-needed.patch | 4 ++-- ...39-Implement-PlayerLocaleChangeEvent.patch | 4 ++-- ...layer-View-Distance-API-placeholders.patch | 4 ++-- .../0052-Player-Tab-List-and-Title-APIs.patch | 4 ++-- ...ble-inter-world-teleportation-safety.patch | 4 ++-- .../0061-Complete-resource-pack-API.patch | 8 +++---- ...th-absorb-values-and-repair-bad-data.patch | 4 ++-- .../0118-String-based-Action-Bar-API.patch | 4 ++-- ...nt-protocol-version-and-virtual-host.patch | 4 ++-- ...7-Ability-to-apply-mending-to-XP-API.patch | 4 ++-- .../0180-Player.setPlayerProfile-API.patch | 14 ++++++------ ...86-Flag-to-disable-the-channel-limit.patch | 6 ++--- .../0215-InventoryCloseEvent-Reason-API.patch | 4 ++-- ...r-to-keep-logging-IO-off-main-thread.patch | 6 ++--- ...e-attack-cooldown-methods-for-Player.patch | 4 ++-- .../server/0256-Improve-death-events.patch | 4 ++-- ...-replace-OfflinePlayer-getLastPlayed.patch | 10 ++++----- ...-remove-from-being-called-on-Players.patch | 4 ++-- ...-Implement-Player-Client-Options-API.patch | 4 ++-- ...ktraces-in-log-messages-crash-report.patch | 6 ++--- ...k-Priority-Urgency-System-for-Chunks.patch | 4 ++-- patches/server/0475-Brand-support.patch | 4 ++-- .../server/0512-Player-elytra-boost-API.patch | 4 ++-- ...r-spawnParticle-x-y-z-precision-loss.patch | 4 ++-- patches/server/0566-Add-sendOpLevel-API.patch | 4 ++-- work/Bukkit | 2 +- work/CraftBukkit | 2 +- work/Spigot | 2 +- 38 files changed, 107 insertions(+), 107 deletions(-) diff --git a/patches/api/0001-Convert-project-to-Gradle.patch b/patches/api/0001-Convert-project-to-Gradle.patch index 7a50bb9ba..86e00a82e 100644 --- a/patches/api/0001-Convert-project-to-Gradle.patch +++ b/patches/api/0001-Convert-project-to-Gradle.patch @@ -27,7 +27,7 @@ index e431e3435737e28394d81b56568a08b3c3148b9b..b23bde3b5e881f146539a307d0a59f21 +/.factorypath diff --git a/build.gradle.kts b/build.gradle.kts new file mode 100644 -index 0000000000000000000000000000000000000000..7c41b546ae6f6e675072239b4c2d9076fa43ca87 +index 0000000000000000000000000000000000000000..53fbbb989a8bec663f12e90c2890740220ac8cd4 --- /dev/null +++ b/build.gradle.kts @@ -0,0 +1,79 @@ @@ -48,9 +48,9 @@ index 0000000000000000000000000000000000000000..7c41b546ae6f6e675072239b4c2d9076 + api("net.md-5:bungeecord-chat:1.16-R0.4") + api("org.yaml:snakeyaml:1.30") + -+ compileOnly("org.apache.maven:maven-resolver-provider:3.8.4") -+ compileOnly("org.apache.maven.resolver:maven-resolver-connector-basic:1.7.2") -+ compileOnly("org.apache.maven.resolver:maven-resolver-transport-http:1.7.2") ++ compileOnly("org.apache.maven:maven-resolver-provider:3.8.5") ++ compileOnly("org.apache.maven.resolver:maven-resolver-connector-basic:1.7.3") ++ compileOnly("org.apache.maven.resolver:maven-resolver-transport-http:1.7.3") + + val annotations = "org.jetbrains:annotations-java5:23.0.0" + compileOnly(annotations) @@ -112,7 +112,7 @@ index 0000000000000000000000000000000000000000..7c41b546ae6f6e675072239b4c2d9076 +} diff --git a/pom.xml b/pom.xml deleted file mode 100644 -index c9f858858011193d2a02ef1568a23164ac84d164..0000000000000000000000000000000000000000 +index 5a45ab463e6df9adfbe905c1f456fd41fbf4b8be..0000000000000000000000000000000000000000 --- a/pom.xml +++ /dev/null @@ -1,252 +0,0 @@ @@ -186,13 +186,13 @@ index c9f858858011193d2a02ef1568a23164ac84d164..00000000000000000000000000000000 - - org.apache.maven.resolver - maven-resolver-connector-basic -- 1.8.0 +- 1.7.3 - provided - - - org.apache.maven.resolver - maven-resolver-transport-http -- 1.8.0 +- 1.7.3 - provided - - diff --git a/patches/api/0002-Build-system-changes.patch b/patches/api/0002-Build-system-changes.patch index 7d5b7f711..e6eea2296 100644 --- a/patches/api/0002-Build-system-changes.patch +++ b/patches/api/0002-Build-system-changes.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Build system changes diff --git a/build.gradle.kts b/build.gradle.kts -index 7c41b546ae6f6e675072239b4c2d9076fa43ca87..8372fb4347113bc7dbd1bff738236b388a72e185 100644 +index 53fbbb989a8bec663f12e90c2890740220ac8cd4..b929458b72f26568b4c87571113eb2f867359312 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -14,15 +14,27 @@ dependencies { @@ -18,9 +18,9 @@ index 7c41b546ae6f6e675072239b4c2d9076fa43ca87..8372fb4347113bc7dbd1bff738236b38 + } + // Paper end - compileOnly("org.apache.maven:maven-resolver-provider:3.8.4") - compileOnly("org.apache.maven.resolver:maven-resolver-connector-basic:1.7.2") - compileOnly("org.apache.maven.resolver:maven-resolver-transport-http:1.7.2") + compileOnly("org.apache.maven:maven-resolver-provider:3.8.5") + compileOnly("org.apache.maven.resolver:maven-resolver-connector-basic:1.7.3") + compileOnly("org.apache.maven.resolver:maven-resolver-transport-http:1.7.3") + compileOnly("com.google.code.findbugs:jsr305:1.3.9") // Paper - val annotations = "org.jetbrains:annotations-java5:23.0.0" diff --git a/patches/api/0004-Add-FastUtil-to-Bukkit.patch b/patches/api/0004-Add-FastUtil-to-Bukkit.patch index b6e5276c5..b2d1843a9 100644 --- a/patches/api/0004-Add-FastUtil-to-Bukkit.patch +++ b/patches/api/0004-Add-FastUtil-to-Bukkit.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Add FastUtil to Bukkit Doesn't expose to plugins, just allows Paper-API to use it for optimization diff --git a/build.gradle.kts b/build.gradle.kts -index 8372fb4347113bc7dbd1bff738236b388a72e185..c37a91b393c6e64cfe04c7bdd404bc267d1d339e 100644 +index b929458b72f26568b4c87571113eb2f867359312..31cd1ba937c364447e32220ffef1d9ef95b634c6 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -18,6 +18,7 @@ dependencies { @@ -16,4 +16,4 @@ index 8372fb4347113bc7dbd1bff738236b388a72e185..c37a91b393c6e64cfe04c7bdd404bc26 + api("it.unimi.dsi:fastutil:8.5.6") // Paper end - compileOnly("org.apache.maven:maven-resolver-provider:3.8.4") + compileOnly("org.apache.maven:maven-resolver-provider:3.8.5") diff --git a/patches/api/0005-Adventure.patch b/patches/api/0005-Adventure.patch index f88194f81..267b142d2 100644 --- a/patches/api/0005-Adventure.patch +++ b/patches/api/0005-Adventure.patch @@ -7,7 +7,7 @@ Co-authored-by: zml Co-authored-by: Jake Potrebic diff --git a/build.gradle.kts b/build.gradle.kts -index c37a91b393c6e64cfe04c7bdd404bc267d1d339e..9b3621a09bd37945877752c801cdd9283017522c 100644 +index 31cd1ba937c364447e32220ffef1d9ef95b634c6..da855f2208b50f024bb7577167a6da53c06a9a4a 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -8,17 +8,36 @@ java { @@ -47,7 +47,7 @@ index c37a91b393c6e64cfe04c7bdd404bc267d1d339e..9b3621a09bd37945877752c801cdd928 + apiAndDocs("net.kyori:adventure-text-serializer-plain") // Paper end - compileOnly("org.apache.maven:maven-resolver-provider:3.8.4") + compileOnly("org.apache.maven:maven-resolver-provider:3.8.5") @@ -76,9 +95,24 @@ tasks.withType { "https://guava.dev/releases/31.0.1-jre/api/docs/", "https://javadoc.io/doc/org.yaml/snakeyaml/1.30/", diff --git a/patches/api/0026-Use-ASM-for-event-executors.patch b/patches/api/0026-Use-ASM-for-event-executors.patch index b1a9fa945..c05bc2982 100644 --- a/patches/api/0026-Use-ASM-for-event-executors.patch +++ b/patches/api/0026-Use-ASM-for-event-executors.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Use ASM for event executors. Uses method handles for private or static methods. diff --git a/build.gradle.kts b/build.gradle.kts -index 9b3621a09bd37945877752c801cdd9283017522c..9ec782b00f9f2ac5a38a75667d36de4582a25a03 100644 +index da855f2208b50f024bb7577167a6da53c06a9a4a..ac5cb57d590363ad7b827672f756224d2857fa2c 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -38,6 +38,9 @@ dependencies { @@ -18,7 +18,7 @@ index 9b3621a09bd37945877752c801cdd9283017522c..9ec782b00f9f2ac5a38a75667d36de45 + implementation("org.ow2.asm:asm-commons:9.2") // Paper end - compileOnly("org.apache.maven:maven-resolver-provider:3.8.4") + compileOnly("org.apache.maven:maven-resolver-provider:3.8.5") diff --git a/src/main/java/com/destroystokyo/paper/event/executor/MethodHandleEventExecutor.java b/src/main/java/com/destroystokyo/paper/event/executor/MethodHandleEventExecutor.java new file mode 100644 index 0000000000000000000000000000000000000000..5b28e9b1daba7834af67dbc193dd656bedd9a994 diff --git a/patches/api/0370-Add-missing-block-data-mins-and-maxes.patch b/patches/api/0370-Add-missing-block-data-mins-and-maxes.patch index 1ce2b605c..600497b95 100644 --- a/patches/api/0370-Add-missing-block-data-mins-and-maxes.patch +++ b/patches/api/0370-Add-missing-block-data-mins-and-maxes.patch @@ -41,10 +41,10 @@ index d4d08bd424f84523200d1a2012f4d37c07cc3497..7baccce27f2db2242f628ea92a9d0402 + // Paper end } diff --git a/src/main/java/org/bukkit/block/data/type/Leaves.java b/src/main/java/org/bukkit/block/data/type/Leaves.java -index 3874d5d9647107c409651d20470a57197b4f3a3d..1050f5d9d2e75d221ce26eca0ef14add07221f19 100644 +index 3ea21dfad26222ee70fbc627595f54de1a28aa96..cd013a7c42648d819d1e91c7cf9f97a8190c1fad 100644 --- a/src/main/java/org/bukkit/block/data/type/Leaves.java +++ b/src/main/java/org/bukkit/block/data/type/Leaves.java -@@ -39,4 +39,20 @@ public interface Leaves extends BlockData { +@@ -39,4 +39,20 @@ public interface Leaves extends Waterlogged { * @param distance the new 'distance' value */ void setDistance(int distance); diff --git a/patches/server/0001-Setup-Gradle-project.patch b/patches/server/0001-Setup-Gradle-project.patch index 4434559cc..a824ab0bb 100644 --- a/patches/server/0001-Setup-Gradle-project.patch +++ b/patches/server/0001-Setup-Gradle-project.patch @@ -28,7 +28,7 @@ index 67fb370cad6924895a6b27052dbd5c1767e3f0c9..bb338269c9e3bef4c274157c490d8b8f +/.factorypath diff --git a/build.gradle.kts b/build.gradle.kts new file mode 100644 -index 0000000000000000000000000000000000000000..25104e978c36adc91a65d81c5c8effc064c93091 +index 0000000000000000000000000000000000000000..d10ff4a52c22033e2adb2a4e7f2cee98a13ea6c5 --- /dev/null +++ b/build.gradle.kts @@ -0,0 +1,138 @@ @@ -51,9 +51,9 @@ index 0000000000000000000000000000000000000000..25104e978c36adc91a65d81c5c8effc0 + runtimeOnly("org.xerial:sqlite-jdbc:3.36.0.3") + runtimeOnly("mysql:mysql-connector-java:8.0.29") + -+ runtimeOnly("org.apache.maven:maven-resolver-provider:3.8.4") -+ runtimeOnly("org.apache.maven.resolver:maven-resolver-connector-basic:1.7.2") -+ runtimeOnly("org.apache.maven.resolver:maven-resolver-transport-http:1.7.2") ++ runtimeOnly("org.apache.maven:maven-resolver-provider:3.8.5") ++ runtimeOnly("org.apache.maven.resolver:maven-resolver-connector-basic:1.7.3") ++ runtimeOnly("org.apache.maven.resolver:maven-resolver-transport-http:1.7.3") + + testImplementation("junit:junit:4.13.2") + testImplementation("org.hamcrest:hamcrest-library:1.3") @@ -172,7 +172,7 @@ index 0000000000000000000000000000000000000000..25104e978c36adc91a65d81c5c8effc0 +} diff --git a/pom.xml b/pom.xml deleted file mode 100644 -index 4d8c2f1741bd620a9b9098c0af463cd403284d49..0000000000000000000000000000000000000000 +index 380703ab3e6ecaa5013b6d24a12cba35dc8ee392..0000000000000000000000000000000000000000 --- a/pom.xml +++ /dev/null @@ -1,616 +0,0 @@ @@ -431,13 +431,13 @@ index 4d8c2f1741bd620a9b9098c0af463cd403284d49..00000000000000000000000000000000 - - org.apache.maven.resolver - maven-resolver-connector-basic -- 1.8.0 +- 1.7.3 - runtime - - - org.apache.maven.resolver - maven-resolver-transport-http -- 1.8.0 +- 1.7.3 - runtime - - diff --git a/patches/server/0008-Adventure.patch b/patches/server/0008-Adventure.patch index a7a12d2ea..33d211f1f 100644 --- a/patches/server/0008-Adventure.patch +++ b/patches/server/0008-Adventure.patch @@ -2480,10 +2480,10 @@ index 446fdca49a5a6999626a7ee3a1d5c168b15a09dd..f9863e138994f6c7a7975a852f106faa 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 765659b39d30e2e5c491c0808fe1808776ea767b..96011a24045b79ba5bab12aaa308426577d755a2 100644 +index fe392a144edc3282793449cac6c9c953d9648a9e..4c939de8822b064f0e44b741c4b3807ba13e5e9e 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -270,14 +270,39 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -269,14 +269,39 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @Override public String getDisplayName() { @@ -2523,7 +2523,7 @@ index 765659b39d30e2e5c491c0808fe1808776ea767b..96011a24045b79ba5bab12aaa3084265 @Override public String getPlayerListName() { return this.getHandle().listName == null ? getName() : CraftChatMessage.fromComponent(this.getHandle().listName); -@@ -296,42 +321,42 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -295,42 +320,42 @@ public class CraftPlayer extends CraftHumanEntity implements Player { } } @@ -2575,7 +2575,7 @@ index 765659b39d30e2e5c491c0808fe1808776ea767b..96011a24045b79ba5bab12aaa3084265 this.getHandle().connection.send(packet); } -@@ -363,6 +388,23 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -362,6 +387,23 @@ public class CraftPlayer extends CraftHumanEntity implements Player { this.getHandle().connection.disconnect(message == null ? "" : message); } @@ -2599,7 +2599,7 @@ index 765659b39d30e2e5c491c0808fe1808776ea767b..96011a24045b79ba5bab12aaa3084265 @Override public void setCompassTarget(Location loc) { if (this.getHandle().connection == null) return; -@@ -618,6 +660,35 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -617,6 +659,35 @@ public class CraftPlayer extends CraftHumanEntity implements Player { this.getHandle().connection.send(packet); } @@ -2635,7 +2635,7 @@ index 765659b39d30e2e5c491c0808fe1808776ea767b..96011a24045b79ba5bab12aaa3084265 @Override public void sendSignChange(Location loc, String[] lines) { this.sendSignChange(loc, lines, DyeColor.BLACK); -@@ -645,14 +716,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -644,14 +715,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { } Component[] components = CraftSign.sanitizeLines(lines); @@ -2653,7 +2653,7 @@ index 765659b39d30e2e5c491c0808fe1808776ea767b..96011a24045b79ba5bab12aaa3084265 } @Override -@@ -1423,7 +1495,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1422,7 +1494,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @Override public void setResourcePack(String url) { @@ -2662,7 +2662,7 @@ index 765659b39d30e2e5c491c0808fe1808776ea767b..96011a24045b79ba5bab12aaa3084265 } @Override -@@ -1438,7 +1510,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1437,7 +1509,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @Override public void setResourcePack(String url, byte[] hash, boolean force) { @@ -2671,7 +2671,7 @@ index 765659b39d30e2e5c491c0808fe1808776ea767b..96011a24045b79ba5bab12aaa3084265 } @Override -@@ -1454,6 +1526,21 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1453,6 +1525,21 @@ public class CraftPlayer extends CraftHumanEntity implements Player { } } @@ -2693,7 +2693,7 @@ index 765659b39d30e2e5c491c0808fe1808776ea767b..96011a24045b79ba5bab12aaa3084265 public void addChannel(String channel) { Preconditions.checkState(this.channels.size() < 128, "Cannot register channel '%s'. Too many channels registered!", channel); channel = StandardMessenger.validateAndCorrectChannel(channel); -@@ -1858,6 +1945,12 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1857,6 +1944,12 @@ public class CraftPlayer extends CraftHumanEntity implements Player { return (this.getHandle().clientViewDistance == null) ? Bukkit.getViewDistance() : this.getHandle().clientViewDistance; } @@ -2706,7 +2706,7 @@ index 765659b39d30e2e5c491c0808fe1808776ea767b..96011a24045b79ba5bab12aaa3084265 @Override public int getPing() { return this.getHandle().latency; -@@ -1903,6 +1996,207 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1902,6 +1995,207 @@ public class CraftPlayer extends CraftHumanEntity implements Player { return this.getHandle().allowsListing(); } diff --git a/patches/server/0012-Timings-v2.patch b/patches/server/0012-Timings-v2.patch index 1a4f8415c..c852f6f2f 100644 --- a/patches/server/0012-Timings-v2.patch +++ b/patches/server/0012-Timings-v2.patch @@ -1877,10 +1877,10 @@ 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 96011a24045b79ba5bab12aaa308426577d755a2..fba10ca35dc8b38dbab74de967c29c43dc9d62a9 100644 +index 4c939de8822b064f0e44b741c4b3807ba13e5e9e..f43a728eba966992831d040a0ed96f5720d8d15c 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -2286,6 +2286,14 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -2288,6 +2288,14 @@ public class CraftPlayer extends CraftHumanEntity implements Player { CraftPlayer.this.getHandle().connection.send(new net.minecraft.network.protocol.game.ClientboundSystemChatPacket(components, i)); } diff --git a/patches/server/0024-Player-affects-spawning-API.patch b/patches/server/0024-Player-affects-spawning-API.patch index f6d181c28..d89d528e2 100644 --- a/patches/server/0024-Player-affects-spawning-API.patch +++ b/patches/server/0024-Player-affects-spawning-API.patch @@ -117,10 +117,10 @@ index 7c5918f84d2b8f9c778258b7e7d745105effb082..cfb286020b8ee87bad7edbda4cd0b999 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 485411ddc5ccbe17bc0ecd7caa9a8d5a15f042a7..93cf8f31d0cfc8d98519eab0c953271c4a10b548 100644 +index f43a728eba966992831d040a0ed96f5720d8d15c..ab9880eb5a7db6951cee329656c06e9e956ec2ad 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -1959,8 +1959,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1958,8 +1958,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @Override public String getLocale() { return this.getHandle().locale; diff --git a/patches/server/0026-Only-refresh-abilities-if-needed.patch b/patches/server/0026-Only-refresh-abilities-if-needed.patch index 66ff8de83..1c231f965 100644 --- a/patches/server/0026-Only-refresh-abilities-if-needed.patch +++ b/patches/server/0026-Only-refresh-abilities-if-needed.patch @@ -5,10 +5,10 @@ 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 93cf8f31d0cfc8d98519eab0c953271c4a10b548..2f47906dffa9c11777cab6dfcc3b2eb65ab6f06a 100644 +index ab9880eb5a7db6951cee329656c06e9e956ec2ad..9a2a6e9ba09f4f6347926579ad5f803de4a6033f 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -1628,12 +1628,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1627,12 +1627,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @Override public void setFlying(boolean value) { diff --git a/patches/server/0039-Implement-PlayerLocaleChangeEvent.patch b/patches/server/0039-Implement-PlayerLocaleChangeEvent.patch index ab0f2cd5c..66d29897e 100644 --- a/patches/server/0039-Implement-PlayerLocaleChangeEvent.patch +++ b/patches/server/0039-Implement-PlayerLocaleChangeEvent.patch @@ -30,10 +30,10 @@ index 5940c2435dba421ee8480407f14827a2c876ac94..732622344982137b5ac051c6d510c786 this.locale = packet.language; // Paper start diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 2f47906dffa9c11777cab6dfcc3b2eb65ab6f06a..dd3e2db7ef1e60223ef14852b14495c2573bf2e8 100644 +index 9a2a6e9ba09f4f6347926579ad5f803de4a6033f..8fb5bcd3fcd7706fc62771b90107ed8efedd7d1c 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -1959,8 +1959,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1958,8 +1958,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @Override public String getLocale() { diff --git a/patches/server/0040-Per-Player-View-Distance-API-placeholders.patch b/patches/server/0040-Per-Player-View-Distance-API-placeholders.patch index 62d513341..cb6553f07 100644 --- a/patches/server/0040-Per-Player-View-Distance-API-placeholders.patch +++ b/patches/server/0040-Per-Player-View-Distance-API-placeholders.patch @@ -60,10 +60,10 @@ index 1357bc97801f892e59fc8e89c3cc2d697894ccfb..cf9c2456004ce5fc0e38da33251f66df // Spigot start private final org.bukkit.World.Spigot spigot = new org.bukkit.World.Spigot() diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 26a5622bb2cb966c34005ebec0877103642fcfee..da355537a0d0a651ef3d43a8a331f382e9effc43 100644 +index 8fb5bcd3fcd7706fc62771b90107ed8efedd7d1c..794eea1b7c897f384e8eafe654fb5628e43f6fda 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -403,6 +403,46 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -402,6 +402,46 @@ public class CraftPlayer extends CraftHumanEntity implements Player { connection.disconnect(message == null ? net.kyori.adventure.text.Component.empty() : message); } } diff --git a/patches/server/0052-Player-Tab-List-and-Title-APIs.patch b/patches/server/0052-Player-Tab-List-and-Title-APIs.patch index bb7793545..d026f9065 100644 --- a/patches/server/0052-Player-Tab-List-and-Title-APIs.patch +++ b/patches/server/0052-Player-Tab-List-and-Title-APIs.patch @@ -63,7 +63,7 @@ index bd808eb312ade7122973a47f4b96505829511da5..bf0f9cab7c66c089f35b851e799ba4a4 // Paper end buf.writeComponent(this.text); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 82a6eb9db090f254add880c8a289f948c82d5a64..25489d8aec04821d257badf009f66bb89fa8d04c 100644 +index 794eea1b7c897f384e8eafe654fb5628e43f6fda..2c12861a76f2340fc4c8f0d4fd271ae8de35badd 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1,5 +1,6 @@ @@ -73,7 +73,7 @@ index 82a6eb9db090f254add880c8a289f948c82d5a64..25489d8aec04821d257badf009f66bb8 import com.google.common.base.Preconditions; import com.google.common.collect.ImmutableSet; import com.google.common.io.BaseEncoding; -@@ -268,6 +269,100 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -267,6 +268,100 @@ public class CraftPlayer extends CraftHumanEntity implements Player { } } diff --git a/patches/server/0055-Configurable-inter-world-teleportation-safety.patch b/patches/server/0055-Configurable-inter-world-teleportation-safety.patch index ed40c6ee7..7153e9678 100644 --- a/patches/server/0055-Configurable-inter-world-teleportation-safety.patch +++ b/patches/server/0055-Configurable-inter-world-teleportation-safety.patch @@ -30,10 +30,10 @@ index 66dd2ebda5692157e397f7ddafd96a492e53c9e9..45b51fea6ba4381e4d245d70b5671f6e + } } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 25489d8aec04821d257badf009f66bb89fa8d04c..f7e77a911ea950efc6be76d4d2c6b3fdf66a383c 100644 +index 2c12861a76f2340fc4c8f0d4fd271ae8de35badd..b3c02dc06fcf2c47f2f6d1cb517786cfd824f987 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -1032,7 +1032,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1031,7 +1031,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { if (fromWorld == toWorld) { entity.connection.teleport(to); } else { diff --git a/patches/server/0061-Complete-resource-pack-API.patch b/patches/server/0061-Complete-resource-pack-API.patch index fe24c871b..84ad1ca89 100644 --- a/patches/server/0061-Complete-resource-pack-API.patch +++ b/patches/server/0061-Complete-resource-pack-API.patch @@ -23,10 +23,10 @@ index 984209f32015d765367fd7693fb759de571b9ad0..9b057950417704669fdeb80efb241790 @Override diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index f7e77a911ea950efc6be76d4d2c6b3fdf66a383c..92530a0ebb73c0b2598cd21c6312b0d83c0f0edf 100644 +index b3c02dc06fcf2c47f2f6d1cb517786cfd824f987..b737c2bfe539f9758bb8368675bec270f8365786 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -145,6 +145,7 @@ import org.bukkit.plugin.Plugin; +@@ -144,6 +144,7 @@ import org.bukkit.plugin.Plugin; import org.bukkit.plugin.messaging.StandardMessenger; import org.bukkit.profile.PlayerProfile; import org.bukkit.scoreboard.Scoreboard; @@ -34,7 +34,7 @@ index f7e77a911ea950efc6be76d4d2c6b3fdf66a383c..92530a0ebb73c0b2598cd21c6312b0d8 import net.md_5.bungee.api.chat.BaseComponent; // Spigot -@@ -163,6 +164,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -162,6 +163,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player { private double healthScale = 20; private CraftWorldBorder clientWorldBorder = null; private BorderChangeListener clientWorldBorderListener = this.createWorldBorderListener(); @@ -45,7 +45,7 @@ index f7e77a911ea950efc6be76d4d2c6b3fdf66a383c..92530a0ebb73c0b2598cd21c6312b0d8 public CraftPlayer(CraftServer server, ServerPlayer entity) { super(server, entity); -@@ -2109,6 +2114,45 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -2108,6 +2113,45 @@ public class CraftPlayer extends CraftHumanEntity implements Player { public boolean getAffectsSpawning() { return this.getHandle().affectsSpawning; } diff --git a/patches/server/0069-handle-NaN-health-absorb-values-and-repair-bad-data.patch b/patches/server/0069-handle-NaN-health-absorb-values-and-repair-bad-data.patch index 19f796a28..83b8e9868 100644 --- a/patches/server/0069-handle-NaN-health-absorb-values-and-repair-bad-data.patch +++ b/patches/server/0069-handle-NaN-health-absorb-values-and-repair-bad-data.patch @@ -44,10 +44,10 @@ index 0eafee2cb706a20f9eb7c5a7e4f2fc81b9f952c9..80f8fe489ea403b48cd7b7218ce32d49 } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 92530a0ebb73c0b2598cd21c6312b0d83c0f0edf..75bed7319bad695331f6cc633da5eec4b1d46f9f 100644 +index b737c2bfe539f9758bb8368675bec270f8365786..8c8f0df271cb1fab92aeb342289fa116cf5b93a8 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -1914,6 +1914,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1913,6 +1913,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { } public void setRealHealth(double health) { diff --git a/patches/server/0118-String-based-Action-Bar-API.patch b/patches/server/0118-String-based-Action-Bar-API.patch index 5f0b92561..74b3d941d 100644 --- a/patches/server/0118-String-based-Action-Bar-API.patch +++ b/patches/server/0118-String-based-Action-Bar-API.patch @@ -26,10 +26,10 @@ index 32ef3edebe94a2014168b7e438752a80b2687e5f..ab6c58eed6707ab7b0aa3e7549a871ad // Paper end buf.writeComponent(this.text); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 75bed7319bad695331f6cc633da5eec4b1d46f9f..cc4b9c69e7ccbf202c8ead328eb273e549bd21b3 100644 +index 8c8f0df271cb1fab92aeb342289fa116cf5b93a8..2f193f96eb5633fe1d06ec0d76fcbfc5b0ff5c7b 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -275,6 +275,26 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -274,6 +274,26 @@ public class CraftPlayer extends CraftHumanEntity implements Player { } // Paper start diff --git a/patches/server/0157-Expose-client-protocol-version-and-virtual-host.patch b/patches/server/0157-Expose-client-protocol-version-and-virtual-host.patch index 443789bb4..5fda23d3e 100644 --- a/patches/server/0157-Expose-client-protocol-version-and-virtual-host.patch +++ b/patches/server/0157-Expose-client-protocol-version-and-virtual-host.patch @@ -90,10 +90,10 @@ index 9016aced079108aeae09f030a672467a953ef93f..4170bda451df3db43e7d57d87d1abb81 @Override diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index cc4b9c69e7ccbf202c8ead328eb273e549bd21b3..58af2e8e2c0ede727f976e7a26eda75da0b48039 100644 +index 2f193f96eb5633fe1d06ec0d76fcbfc5b0ff5c7b..539b04ada489df2150b40f6d1b3c99fbaee32368 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -219,6 +219,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -218,6 +218,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { } } diff --git a/patches/server/0167-Ability-to-apply-mending-to-XP-API.patch b/patches/server/0167-Ability-to-apply-mending-to-XP-API.patch index 0883c5a63..55f132e9d 100644 --- a/patches/server/0167-Ability-to-apply-mending-to-XP-API.patch +++ b/patches/server/0167-Ability-to-apply-mending-to-XP-API.patch @@ -10,10 +10,10 @@ of giving the player experience points. Both an API To standalone mend, and apply mending logic to .giveExp has been added. diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 58af2e8e2c0ede727f976e7a26eda75da0b48039..3352880b06a25b90b338dc15c99e9df08caa86dc 100644 +index 539b04ada489df2150b40f6d1b3c99fbaee32368..b87be952c65e92c99bbb4ca961519ba20ebb4155 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -1347,7 +1347,37 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1346,7 +1346,37 @@ public class CraftPlayer extends CraftHumanEntity implements Player { } @Override diff --git a/patches/server/0180-Player.setPlayerProfile-API.patch b/patches/server/0180-Player.setPlayerProfile-API.patch index 3b7e23734..a304d1ecf 100644 --- a/patches/server/0180-Player.setPlayerProfile-API.patch +++ b/patches/server/0180-Player.setPlayerProfile-API.patch @@ -24,10 +24,10 @@ index 5c73ee9b2d3328c9174db067ce674401d7ff5dc9..136ff7de4ffb91d3fc84a90560a2f5db playerName = gameProfile.getName(); uniqueId = gameProfile.getId(); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 67ef5832f475894feea4345b50fbbdd3a02c8ea1..b666b1a52d35b2092f8095f7257fd1581f6766d9 100644 +index b87be952c65e92c99bbb4ca961519ba20ebb4155..09cde5fc320be42f2bd1e9f3aa7c1c70eabf2923 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -76,6 +76,7 @@ import net.minecraft.world.entity.ai.attributes.Attributes; +@@ -75,6 +75,7 @@ import net.minecraft.world.entity.ai.attributes.Attributes; import net.minecraft.world.inventory.AbstractContainerMenu; import net.minecraft.world.level.GameType; import net.minecraft.world.level.block.Blocks; @@ -35,7 +35,7 @@ index 67ef5832f475894feea4345b50fbbdd3a02c8ea1..b666b1a52d35b2092f8095f7257fd158 import net.minecraft.world.level.block.entity.SignBlockEntity; import net.minecraft.world.level.border.BorderChangeListener; import net.minecraft.world.level.saveddata.maps.MapDecoration; -@@ -202,11 +203,6 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -201,11 +202,6 @@ public class CraftPlayer extends CraftHumanEntity implements Player { return server.getPlayer(getUniqueId()) != null; } @@ -47,7 +47,7 @@ index 67ef5832f475894feea4345b50fbbdd3a02c8ea1..b666b1a52d35b2092f8095f7257fd158 @Override public InetSocketAddress getAddress() { if (this.getHandle().connection == null) return null; -@@ -1480,8 +1476,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1479,8 +1475,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { this.hiddenEntities.put(entity.getUniqueId(), hidingPlugins); // Remove this entity from the hidden player's EntityTrackerEntry @@ -64,7 +64,7 @@ index 67ef5832f475894feea4345b50fbbdd3a02c8ea1..b666b1a52d35b2092f8095f7257fd158 ChunkMap.TrackedEntity entry = tracker.entityMap.get(other.getId()); if (entry != null) { entry.removePlayer(this.getHandle()); -@@ -1494,8 +1497,6 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1493,8 +1496,6 @@ public class CraftPlayer extends CraftHumanEntity implements Player { this.getHandle().connection.send(new ClientboundPlayerInfoPacket(ClientboundPlayerInfoPacket.Action.REMOVE_PLAYER, otherPlayer)); } } @@ -73,7 +73,7 @@ index 67ef5832f475894feea4345b50fbbdd3a02c8ea1..b666b1a52d35b2092f8095f7257fd158 } @Override -@@ -1532,8 +1533,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1531,8 +1532,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { } this.hiddenEntities.remove(entity.getUniqueId()); @@ -90,7 +90,7 @@ index 67ef5832f475894feea4345b50fbbdd3a02c8ea1..b666b1a52d35b2092f8095f7257fd158 if (other instanceof ServerPlayer) { ServerPlayer otherPlayer = (ServerPlayer) other; -@@ -1544,9 +1552,51 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1543,9 +1551,51 @@ public class CraftPlayer extends CraftHumanEntity implements Player { if (entry != null && !entry.seenBy.contains(this.getHandle().connection)) { entry.updatePlayer(this.getHandle()); } diff --git a/patches/server/0186-Flag-to-disable-the-channel-limit.patch b/patches/server/0186-Flag-to-disable-the-channel-limit.patch index 3f124b16d..b3ad36eaf 100644 --- a/patches/server/0186-Flag-to-disable-the-channel-limit.patch +++ b/patches/server/0186-Flag-to-disable-the-channel-limit.patch @@ -9,10 +9,10 @@ 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 b666b1a52d35b2092f8095f7257fd1581f6766d9..5e6ef43ee8875cb09a915a657ec25f63d9480ba3 100644 +index 09cde5fc320be42f2bd1e9f3aa7c1c70eabf2923..7a7fe687f4d6d0439024b58651a7815d951625cb 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -168,6 +168,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -167,6 +167,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { // Paper start private org.bukkit.event.player.PlayerResourcePackStatusEvent.Status resourcePackStatus; private String resourcePackHash; @@ -20,7 +20,7 @@ index b666b1a52d35b2092f8095f7257fd1581f6766d9..5e6ef43ee8875cb09a915a657ec25f63 // Paper end public CraftPlayer(CraftServer server, ServerPlayer entity) { -@@ -1796,7 +1797,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1795,7 +1796,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { // Paper end public void addChannel(String channel) { diff --git a/patches/server/0215-InventoryCloseEvent-Reason-API.patch b/patches/server/0215-InventoryCloseEvent-Reason-API.patch index f41166b92..7043697da 100644 --- a/patches/server/0215-InventoryCloseEvent-Reason-API.patch +++ b/patches/server/0215-InventoryCloseEvent-Reason-API.patch @@ -174,10 +174,10 @@ index 6c708f65b3a3718c7b53e0c2cc12ee8ad62ff2b9..a6ac2fdcda24ec031d5d2ea9e4492614 @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 5e6ef43ee8875cb09a915a657ec25f63d9480ba3..331dd7f22d71719e7598b076246b9dcaffa77562 100644 +index 7a7fe687f4d6d0439024b58651a7815d951625cb..47abdbaa2663efb4817396d49389f7f3719c5f74 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -1061,7 +1061,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1060,7 +1060,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { // Close any foreign inventory if (this.getHandle().containerMenu != this.getHandle().inventoryMenu) { diff --git a/patches/server/0219-Use-AsyncAppender-to-keep-logging-IO-off-main-thread.patch b/patches/server/0219-Use-AsyncAppender-to-keep-logging-IO-off-main-thread.patch index 0eb87837e..960142294 100644 --- a/patches/server/0219-Use-AsyncAppender-to-keep-logging-IO-off-main-thread.patch +++ b/patches/server/0219-Use-AsyncAppender-to-keep-logging-IO-off-main-thread.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Use AsyncAppender to keep logging IO off main thread diff --git a/build.gradle.kts b/build.gradle.kts -index e1cc5d05d9826ce897e5c2f71ddfe4811c010c38..344787b84f91627e4f33288c75eacd2bca7bcc3f 100644 +index 0bff41bce07cb0fed23346704538a0577f2bc88b..87789b8b857ae4e89a158fb356fb5bb1a4ae93b1 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -25,6 +25,7 @@ dependencies { @@ -14,8 +14,8 @@ index e1cc5d05d9826ce897e5c2f71ddfe4811c010c38..344787b84f91627e4f33288c75eacd2b runtimeOnly("mysql:mysql-connector-java:8.0.29") + runtimeOnly("com.lmax:disruptor:3.4.4") // Paper - runtimeOnly("org.apache.maven:maven-resolver-provider:3.8.4") - runtimeOnly("org.apache.maven.resolver:maven-resolver-connector-basic:1.7.2") + runtimeOnly("org.apache.maven:maven-resolver-provider:3.8.5") + runtimeOnly("org.apache.maven.resolver:maven-resolver-connector-basic:1.7.3") diff --git a/src/main/resources/log4j2.xml b/src/main/resources/log4j2.xml index 476f4a5cbe664ddd05474cb88553018bd334a5b8..3dc317e466e1b93dff030794dd7f29ca1b266778 100644 --- a/src/main/resources/log4j2.xml diff --git a/patches/server/0255-Expose-attack-cooldown-methods-for-Player.patch b/patches/server/0255-Expose-attack-cooldown-methods-for-Player.patch index 9d1973f7a..8f1ba3c31 100644 --- a/patches/server/0255-Expose-attack-cooldown-methods-for-Player.patch +++ b/patches/server/0255-Expose-attack-cooldown-methods-for-Player.patch @@ -5,10 +5,10 @@ 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 0ac8f15b0cecbee7087df8cf92889850c21ac9f0..bbde07e39a2d7b2b29212d2b583048e7bf410dc4 100644 +index 47abdbaa2663efb4817396d49389f7f3719c5f74..60b016aed7c70385abb14b2b2266fc70adf788a6 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -2506,6 +2506,21 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -2505,6 +2505,21 @@ public class CraftPlayer extends CraftHumanEntity implements Player { return this.adventure$pointers; } diff --git a/patches/server/0256-Improve-death-events.patch b/patches/server/0256-Improve-death-events.patch index a5f394a30..93116d75f 100644 --- a/patches/server/0256-Improve-death-events.patch +++ b/patches/server/0256-Improve-death-events.patch @@ -310,10 +310,10 @@ index b2a64c75a9ef3ad2f1129cd7dc59d713c4768539..a885e4a63f9ffb70b305b6d8c0f0dedf 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 72caa9a230318ce87364446682a4ced67ec2d2c5..12d15eacf915a38ce9af8382d22f25a3b4fef751 100644 +index 60b016aed7c70385abb14b2b2266fc70adf788a6..6d5b004ffcca0ca76e065d5c5e8c0917154247d4 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -2056,7 +2056,14 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -2055,7 +2055,14 @@ public class CraftPlayer extends CraftHumanEntity implements Player { } public void sendHealthUpdate() { diff --git a/patches/server/0294-Add-APIs-to-replace-OfflinePlayer-getLastPlayed.patch b/patches/server/0294-Add-APIs-to-replace-OfflinePlayer-getLastPlayed.patch index 8ae21eb9f..df1116792 100644 --- a/patches/server/0294-Add-APIs-to-replace-OfflinePlayer-getLastPlayed.patch +++ b/patches/server/0294-Add-APIs-to-replace-OfflinePlayer-getLastPlayed.patch @@ -106,10 +106,10 @@ index f6665825e62a0cd912e6b06df6d68795596486f0..1f2bc88d4570c6ef00e67a772b745e0b public Location getBedSpawnLocation() { CompoundTag data = this.getData(); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index f14c0dd16b2b9bd2d3bdfbc786176bc18cc76dcf..dae6fc86e5578e7ffa91a0180ed654249f039645 100644 +index 6d5b004ffcca0ca76e065d5c5e8c0917154247d4..d1a5c35e66f451a593066fc4b1e86f9344c71fbb 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -169,6 +169,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -168,6 +168,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { private org.bukkit.event.player.PlayerResourcePackStatusEvent.Status resourcePackStatus; private String resourcePackHash; private static final boolean DISABLE_CHANNEL_LIMIT = System.getProperty("paper.disableChannelLimit") != null; // Paper - add a flag to disable the channel limit @@ -117,7 +117,7 @@ index f14c0dd16b2b9bd2d3bdfbc786176bc18cc76dcf..dae6fc86e5578e7ffa91a0180ed65424 // Paper end public CraftPlayer(CraftServer server, ServerPlayer entity) { -@@ -1668,6 +1669,18 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1667,6 +1668,18 @@ public class CraftPlayer extends CraftHumanEntity implements Player { this.firstPlayed = firstPlayed; } @@ -136,7 +136,7 @@ index f14c0dd16b2b9bd2d3bdfbc786176bc18cc76dcf..dae6fc86e5578e7ffa91a0180ed65424 public void readExtraData(CompoundTag nbttagcompound) { this.hasPlayedBefore = true; if (nbttagcompound.contains("bukkit")) { -@@ -1690,6 +1703,8 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1689,6 +1702,8 @@ public class CraftPlayer extends CraftHumanEntity implements Player { } public void setExtraData(CompoundTag nbttagcompound) { @@ -145,7 +145,7 @@ index f14c0dd16b2b9bd2d3bdfbc786176bc18cc76dcf..dae6fc86e5578e7ffa91a0180ed65424 if (!nbttagcompound.contains("bukkit")) { nbttagcompound.put("bukkit", new CompoundTag()); } -@@ -1704,6 +1719,16 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1703,6 +1718,16 @@ public class CraftPlayer extends CraftHumanEntity implements Player { data.putLong("firstPlayed", this.getFirstPlayed()); data.putLong("lastPlayed", System.currentTimeMillis()); data.putString("lastKnownName", handle.getScoreboardName()); diff --git a/patches/server/0296-Block-Entity-remove-from-being-called-on-Players.patch b/patches/server/0296-Block-Entity-remove-from-being-called-on-Players.patch index 2bb209bd9..69aa0370f 100644 --- a/patches/server/0296-Block-Entity-remove-from-being-called-on-Players.patch +++ b/patches/server/0296-Block-Entity-remove-from-being-called-on-Players.patch @@ -12,10 +12,10 @@ Player we will look at limiting the scope of this change. It appears to be unintentional in the few cases we've seen so far. diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index dae6fc86e5578e7ffa91a0180ed654249f039645..52b00369facc700079dbddc35291072977c2b8ce 100644 +index d1a5c35e66f451a593066fc4b1e86f9344c71fbb..9bce12ed1842934fb05233337d2571ad44f7fe07 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -2553,6 +2553,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -2552,6 +2552,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { public void resetCooldown() { getHandle().resetAttackStrengthTicker(); } diff --git a/patches/server/0393-Implement-Player-Client-Options-API.patch b/patches/server/0393-Implement-Player-Client-Options-API.patch index 97e765d62..15d75526b 100644 --- a/patches/server/0393-Implement-Player-Client-Options-API.patch +++ b/patches/server/0393-Implement-Player-Client-Options-API.patch @@ -97,10 +97,10 @@ index b4d5817998d8aa0c6e6eb3c01af0bc1d804e794b..108561244fa1062cd98be76fdff471fd if (getMainArm() != packet.mainHand()) { PlayerChangedMainHandEvent event = new PlayerChangedMainHandEvent(this.getBukkitEntity(), getMainArm() == HumanoidArm.LEFT ? MainHand.LEFT : MainHand.RIGHT); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 52b00369facc700079dbddc35291072977c2b8ce..4c3321a0645cfdbb651a87078d577776c62729a3 100644 +index 9bce12ed1842934fb05233337d2571ad44f7fe07..9747023b0102c055e56b5a8434d3e003d1ed1059 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -575,6 +575,24 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -574,6 +574,24 @@ public class CraftPlayer extends CraftHumanEntity implements Player { public void setSendViewDistance(int viewDistance) { throw new UnsupportedOperationException("Per-Player View Distance APIs need further understanding to properly implement (There are per world view distances though!)"); // TODO } diff --git a/patches/server/0410-Deobfuscate-stacktraces-in-log-messages-crash-report.patch b/patches/server/0410-Deobfuscate-stacktraces-in-log-messages-crash-report.patch index a423c555a..01ca15241 100644 --- a/patches/server/0410-Deobfuscate-stacktraces-in-log-messages-crash-report.patch +++ b/patches/server/0410-Deobfuscate-stacktraces-in-log-messages-crash-report.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Deobfuscate stacktraces in log messages, crash reports, and diff --git a/build.gradle.kts b/build.gradle.kts -index 7dd1c9449a1e6a9197e2915399feabf63f490b0a..9bd09c4465f5fe1cd68b63da293f506da4b17a72 100644 +index 37ad9068b27e0d342ff62dfd9ce65d7f79fe56c7..21767024545269ca83f0fd4b64f02001408cd6ca 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,4 +1,6 @@ @@ -25,8 +25,8 @@ index 7dd1c9449a1e6a9197e2915399feabf63f490b0a..9bd09c4465f5fe1cd68b63da293f506d implementation("org.apache.logging.log4j:log4j-iostreams:2.17.1") // Paper implementation("org.ow2.asm:asm:9.3") @@ -32,6 +35,8 @@ dependencies { - runtimeOnly("org.apache.maven.resolver:maven-resolver-connector-basic:1.7.2") - runtimeOnly("org.apache.maven.resolver:maven-resolver-transport-http:1.7.2") + runtimeOnly("org.apache.maven.resolver:maven-resolver-connector-basic:1.7.3") + runtimeOnly("org.apache.maven.resolver:maven-resolver-transport-http:1.7.3") + implementation("net.fabricmc:mapping-io:0.3.0") // Paper - needed to read mappings for stacktrace deobfuscation + diff --git a/patches/server/0462-Implement-Chunk-Priority-Urgency-System-for-Chunks.patch b/patches/server/0462-Implement-Chunk-Priority-Urgency-System-for-Chunks.patch index af1b19842..1d40808d9 100644 --- a/patches/server/0462-Implement-Chunk-Priority-Urgency-System-for-Chunks.patch +++ b/patches/server/0462-Implement-Chunk-Priority-Urgency-System-for-Chunks.patch @@ -1194,10 +1194,10 @@ index 62aef8853b168d6330fb3fe357dfb8de310cc37f..d84db6b9cbabd7979c391fa7d1ae1f55 net.minecraft.world.level.chunk.LevelChunk chunk = (net.minecraft.world.level.chunk.LevelChunk) either.left().orElse(null); if (chunk != null) addTicket(x, z); // Paper diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 4c3321a0645cfdbb651a87078d577776c62729a3..664c93c4f26edf7f84c6cff02f97b18b8d40f851 100644 +index 9747023b0102c055e56b5a8434d3e003d1ed1059..eb6834639a434fd7938b071243fb64ab2205593f 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -1029,6 +1029,16 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1028,6 +1028,16 @@ public class CraftPlayer extends CraftHumanEntity implements Player { throw new UnsupportedOperationException("Cannot set rotation of players. Consider teleporting instead."); } diff --git a/patches/server/0475-Brand-support.patch b/patches/server/0475-Brand-support.patch index cf7861931..57487cc30 100644 --- a/patches/server/0475-Brand-support.patch +++ b/patches/server/0475-Brand-support.patch @@ -56,10 +56,10 @@ index fdf77097cff7c3af87e390b0bfd9e8aadf7c55ec..5c00238e29cfd6ed107e3bf988a9ac2e return (!this.player.joining && !this.connection.isConnected()) || this.processedDisconnect; // Paper } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 664c93c4f26edf7f84c6cff02f97b18b8d40f851..63ef47bc63e32d2443b3b2aa3a77258269843d9d 100644 +index eb6834639a434fd7938b071243fb64ab2205593f..a201182e05004a08225ac4e9f5bdf75aa46d59c9 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -2690,6 +2690,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -2692,6 +2692,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player { // Paper end }; diff --git a/patches/server/0512-Player-elytra-boost-API.patch b/patches/server/0512-Player-elytra-boost-API.patch index c89df6da7..7ca27969c 100644 --- a/patches/server/0512-Player-elytra-boost-API.patch +++ b/patches/server/0512-Player-elytra-boost-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Player elytra boost API diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 63ef47bc63e32d2443b3b2aa3a77258269843d9d..9cee24c3f4b36296b87467278f2af2e45266a15a 100644 +index a201182e05004a08225ac4e9f5bdf75aa46d59c9..89e0bbba593ad0dad2332758ad8df43095955b07 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -593,6 +593,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -592,6 +592,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { } throw new RuntimeException("Unknown settings type"); } diff --git a/patches/server/0526-Fix-Player-spawnParticle-x-y-z-precision-loss.patch b/patches/server/0526-Fix-Player-spawnParticle-x-y-z-precision-loss.patch index 70b71e938..d95668850 100644 --- a/patches/server/0526-Fix-Player-spawnParticle-x-y-z-precision-loss.patch +++ b/patches/server/0526-Fix-Player-spawnParticle-x-y-z-precision-loss.patch @@ -5,10 +5,10 @@ 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 9cee24c3f4b36296b87467278f2af2e45266a15a..b8cc0116f5ffaa5c9c6fd2a8661c88a7e7f70370 100644 +index 89e0bbba593ad0dad2332758ad8df43095955b07..d4348385ee8330398bfe543311c9256e93334861 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -2255,7 +2255,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -2254,7 +2254,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { if (data != null && !particle.getDataType().isInstance(data)) { throw new IllegalArgumentException("data should be " + particle.getDataType() + " got " + data.getClass()); } diff --git a/patches/server/0566-Add-sendOpLevel-API.patch b/patches/server/0566-Add-sendOpLevel-API.patch index bc3651ada..70b002270 100644 --- a/patches/server/0566-Add-sendOpLevel-API.patch +++ b/patches/server/0566-Add-sendOpLevel-API.patch @@ -32,10 +32,10 @@ index 9a27895d9528dd10e196fe7e7d2fb9d7561fa704..7662e4f590d9e3146783239a662b4527 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 b8cc0116f5ffaa5c9c6fd2a8661c88a7e7f70370..d46ac0b59f4a3f4977dca2f499754cdc312fd688 100644 +index d4348385ee8330398bfe543311c9256e93334861..91027504dd2963806ec52f773fc768a1288e15f2 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -607,6 +607,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -606,6 +606,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player { ? (org.bukkit.entity.Firework) entity.getBukkitEntity() : null; } diff --git a/work/Bukkit b/work/Bukkit index b93194d14..4b08dbc5c 160000 --- a/work/Bukkit +++ b/work/Bukkit @@ -1 +1 @@ -Subproject commit b93194d14a2bec34b8106d79094c35b10cc18466 +Subproject commit 4b08dbc5ce3ddb031df2cff7be350842670f1929 diff --git a/work/CraftBukkit b/work/CraftBukkit index 64c15270e..c3f219edb 160000 --- a/work/CraftBukkit +++ b/work/CraftBukkit @@ -1 +1 @@ -Subproject commit 64c15270e76475e68b2167d4bfba162a4a827fe0 +Subproject commit c3f219edbe18a6323b1c072d833fa2dd5ca727ec diff --git a/work/Spigot b/work/Spigot index 87c4d13ae..ee737122a 160000 --- a/work/Spigot +++ b/work/Spigot @@ -1 +1 @@ -Subproject commit 87c4d13aee2e4a6ec924342c8b4642c87602aacc +Subproject commit ee737122ade6975c33c206b0c753f4dd29cfafb4