From c8884b36b5f4b93e2213f90836079d3de89a32f5 Mon Sep 17 00:00:00 2001 From: Dreeam <61569423+Dreeam-qwq@users.noreply.github.com> Date: Wed, 21 Jun 2023 22:44:35 +0800 Subject: [PATCH] Updated Upstream (Gale) --- gradle.properties | 2 +- patches/api/0001-Pufferfish-Sentry.patch | 8 +-- patches/api/0002-Purpur-API-Changes.patch | 12 ++--- patches/api/0004-Bump-Dependencies.patch | 29 +++++------ patches/api/0006-KeYi-Player-Skull-API.patch | 4 +- patches/api/0007-Slice-Smooth-Teleports.patch | 4 +- patches/server/0001-Rebrand.patch | 6 +-- patches/server/0002-Leaf-Config.patch | 8 +-- patches/server/0008-Purpur-Base.patch | 18 ++++--- .../server/0009-Purpur-Server-Changes.patch | 50 +++++++++---------- patches/server/0010-Bump-Dependencies.patch | 10 ++-- .../server/0016-KeYi-Player-Skull-API.patch | 6 +-- .../server/0023-Slice-Smooth-Teleports.patch | 4 +- .../server/0027-Leaves-Jade-Protocol.patch | 8 +-- .../0028-Leaves-Appleskin-Protocol.patch | 4 +- 15 files changed, 88 insertions(+), 85 deletions(-) diff --git a/gradle.properties b/gradle.properties index 2ebf6ddb..08d346be 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,7 +1,7 @@ group = org.dreeam.leaf version = 1.20.1-R0.1-SNAPSHOT -galeCommit = cbcc8ae61697c51e5e8daea53811c81ffdb21993 +galeCommit = 8ffa6fa1492434851881e1459c3150157bd21aa5 org.gradle.caching = true org.gradle.parallel = true diff --git a/patches/api/0001-Pufferfish-Sentry.patch b/patches/api/0001-Pufferfish-Sentry.patch index e93d50b3..0bec737e 100644 --- a/patches/api/0001-Pufferfish-Sentry.patch +++ b/patches/api/0001-Pufferfish-Sentry.patch @@ -7,13 +7,13 @@ Original license: GPL v3 Original project: https://github.com/pufferfish-gg/Pufferfish diff --git a/build.gradle.kts b/build.gradle.kts -index c5b725b28b11878f31b358ea9719acb53aacac41..1f9ed00eb14b2c25bab7f067644eefb4306abab4 100644 +index adcee0a55ed720cb76f9dcd67be9be8f46fb925c..58bae199b8fcdfcc40a159748e723d7d163515a5 100644 --- a/build.gradle.kts +++ b/build.gradle.kts -@@ -44,6 +44,7 @@ dependencies { +@@ -46,6 +46,7 @@ dependencies { apiAndDocs("net.kyori:adventure-text-logger-slf4j") - api("org.apache.logging.log4j:log4j-api:2.17.1") - api("org.slf4j:slf4j-api:1.8.0-beta4") + api("org.apache.logging.log4j:log4j-api:$log4jVersion") + api("org.slf4j:slf4j-api:$slf4jVersion") + api("io.sentry:sentry:6.23.0") // Pufferfish implementation("org.ow2.asm:asm:9.4") diff --git a/patches/api/0002-Purpur-API-Changes.patch b/patches/api/0002-Purpur-API-Changes.patch index a416ba0c..b1417bbc 100644 --- a/patches/api/0002-Purpur-API-Changes.patch +++ b/patches/api/0002-Purpur-API-Changes.patch @@ -574,10 +574,10 @@ index 714ea77b4509ba842c764e78e0bfc1862abcd537..23d80bdb7e082b0921ca7b75a43a2ccc + // Purpur end } diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java -index 72f1576b8ce5b55b50f053f346ce42c52db4b568..adf8169d5baefa7a33c33ef066180a8116617756 100644 +index 6917931966377c51db88a3364997a110dd987970..bf39c6602cfca70a6352519fa26059cd79143cdd 100644 --- a/src/main/java/org/bukkit/World.java +++ b/src/main/java/org/bukkit/World.java -@@ -3974,6 +3974,86 @@ public interface World extends RegionAccessor, WorldInfo, PluginMessageRecipient +@@ -3992,6 +3992,86 @@ public interface World extends RegionAccessor, WorldInfo, PluginMessageRecipient @Nullable public DragonBattle getEnderDragonBattle(); @@ -936,10 +936,10 @@ index 58017fce436cdbda255f7172fbdadb726d4b113c..05600fc8bf2a61aca8094029bc4c208a + // Purpur end } diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java -index ffca32ae2464ea5a669029079a50585ca259a4f8..654dc0c6d98b29cf45d3826aece374726e3e9802 100644 +index 9712f7140933d7fc87c5838c173e2d818b70cfde..0e6024430fde305a9cc4294037b2bd820676e096 100644 --- a/src/main/java/org/bukkit/entity/LivingEntity.java +++ b/src/main/java/org/bukkit/entity/LivingEntity.java -@@ -1150,4 +1150,41 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource +@@ -1159,4 +1159,41 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource */ void setBodyYaw(float bodyYaw); // Paper end @@ -1007,10 +1007,10 @@ index bc84b892cae5fe7019a3ad481e9da79956efa1fe..48eb5b00c460cccde29d327cef1d63fc + // Purpur end } diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index ddd7267f30c7ca2d6fdb1af71ceaf2bceb38c52a..0c35921e6d1091c0caeb1ae1a9454f6f10db408a 100644 +index 42f87a63984345006c513e42b843ea7292d7ee63..6c27a4a67c08cfc6eb75b5b3a47e91ad8c3bcdf1 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -3099,4 +3099,143 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -3129,4 +3129,143 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM @Override Spigot spigot(); // Spigot end diff --git a/patches/api/0004-Bump-Dependencies.patch b/patches/api/0004-Bump-Dependencies.patch index 58cf5a73..6c24a00b 100644 --- a/patches/api/0004-Bump-Dependencies.patch +++ b/patches/api/0004-Bump-Dependencies.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Bump Dependencies diff --git a/build.gradle.kts b/build.gradle.kts -index 1f9ed00eb14b2c25bab7f067644eefb4306abab4..3577d12145ee01bbcadb49a5cfa7d937ec47a502 100644 +index 58bae199b8fcdfcc40a159748e723d7d163515a5..4df816e7ffff8f47a9d4fabce12b021b950f3e9f 100644 --- a/build.gradle.kts +++ b/build.gradle.kts -@@ -25,16 +25,16 @@ val annotationsVersion = "24.0.1" +@@ -27,16 +27,16 @@ val annotationsVersion = "24.0.1" dependencies { // api dependencies are listed transitively to API consumers @@ -29,27 +29,24 @@ index 1f9ed00eb14b2c25bab7f067644eefb4306abab4..3577d12145ee01bbcadb49a5cfa7d937 apiAndDocs(platform("net.kyori:adventure-bom:$adventureVersion")) apiAndDocs("net.kyori:adventure-api") apiAndDocs("net.kyori:adventure-text-minimessage") -@@ -42,34 +42,37 @@ dependencies { - apiAndDocs("net.kyori:adventure-text-serializer-legacy") - apiAndDocs("net.kyori:adventure-text-serializer-plain") - apiAndDocs("net.kyori:adventure-text-logger-slf4j") -- api("org.apache.logging.log4j:log4j-api:2.17.1") -- api("org.slf4j:slf4j-api:1.8.0-beta4") -+ // Leaf start - Bump Dependencies -+ api("org.apache.logging.log4j:log4j-api:2.20.0") -+ api("org.slf4j:slf4j-api:2.0.7") +@@ -48,30 +48,33 @@ dependencies { + api("org.slf4j:slf4j-api:$slf4jVersion") api("io.sentry:sentry:6.23.0") // Pufferfish - implementation("org.ow2.asm:asm:9.4") - implementation("org.ow2.asm:asm-commons:9.4") ++ // Leaf start - Bump Dependencies + implementation("org.ow2.asm:asm:9.5") + implementation("org.ow2.asm:asm-commons:9.5") // Paper end - api("org.apache.maven:maven-resolver-provider:3.9.2") - compileOnly("org.apache.maven.resolver:maven-resolver-connector-basic:1.9.10") - compileOnly("org.apache.maven.resolver:maven-resolver-transport-http:1.9.10") +- api("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 ++ api("org.apache.maven:maven-resolver-provider:3.9.2") ++ compileOnly("org.apache.maven.resolver:maven-resolver-connector-basic:1.9.10") ++ compileOnly("org.apache.maven.resolver:maven-resolver-transport-http:1.9.10") + compileOnly("com.google.code.findbugs:jsr305:3.0.2") // Paper val annotations = "org.jetbrains:annotations:$annotationsVersion" // Paper - we don't want Java 5 annotations... @@ -76,7 +73,7 @@ index 1f9ed00eb14b2c25bab7f067644eefb4306abab4..3577d12145ee01bbcadb49a5cfa7d937 } configure { -@@ -115,7 +118,7 @@ tasks.withType { +@@ -117,7 +120,7 @@ tasks.withType { options.use() options.isDocFilesSubDirs = true options.links( @@ -85,7 +82,7 @@ index 1f9ed00eb14b2c25bab7f067644eefb4306abab4..3577d12145ee01bbcadb49a5cfa7d937 "https://javadoc.io/doc/org.yaml/snakeyaml/2.0/", "https://javadoc.io/doc/org.jetbrains/annotations/$annotationsVersion/", // Paper - we don't want Java 5 annotations // Paper start -@@ -158,6 +161,9 @@ val scanJar = tasks.register("scanJarForBadCalls", io.papermc.paperweight.tasks. +@@ -163,6 +166,9 @@ val scanJar = tasks.register("scanJarForBadCalls", io.papermc.paperweight.tasks. jarToScan.set(tasks.jar.flatMap { it.archiveFile }) classpath.from(configurations.compileClasspath) } diff --git a/patches/api/0006-KeYi-Player-Skull-API.patch b/patches/api/0006-KeYi-Player-Skull-API.patch index d3f37a59..06389e7b 100644 --- a/patches/api/0006-KeYi-Player-Skull-API.patch +++ b/patches/api/0006-KeYi-Player-Skull-API.patch @@ -7,7 +7,7 @@ Original license: MIT Original project: https://github.com/KeYiMC/KeYi diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index 0c35921e6d1091c0caeb1ae1a9454f6f10db408a..79a8668034704f5dc0d5e502f1ba7ffe81ccb711 100644 +index 6c27a4a67c08cfc6eb75b5b3a47e91ad8c3bcdf1..0a37bcd1c106950c74be05313c91bfb9e2cd2173 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java @@ -4,7 +4,10 @@ import java.net.InetSocketAddress; @@ -22,7 +22,7 @@ index 0c35921e6d1091c0caeb1ae1a9454f6f10db408a..79a8668034704f5dc0d5e502f1ba7ffe import org.bukkit.DyeColor; import org.bukkit.Effect; import org.bukkit.GameMode; -@@ -3238,4 +3241,22 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -3268,4 +3271,22 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM sendDeathScreen(message); } // Purpur end diff --git a/patches/api/0007-Slice-Smooth-Teleports.patch b/patches/api/0007-Slice-Smooth-Teleports.patch index 5516da25..4876030e 100644 --- a/patches/api/0007-Slice-Smooth-Teleports.patch +++ b/patches/api/0007-Slice-Smooth-Teleports.patch @@ -7,10 +7,10 @@ Original license: MIT Original project: https://github.com/Cryptite/Slice diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index 79a8668034704f5dc0d5e502f1ba7ffe81ccb711..8daff0094a3ea07595a3b8a8cd3ff4faca89d206 100644 +index 0a37bcd1c106950c74be05313c91bfb9e2cd2173..3650185bcb87b1f316954e943dfc2211aa22a3b0 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -2984,6 +2984,19 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -3014,6 +3014,19 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM String getClientBrandName(); // Paper end diff --git a/patches/server/0001-Rebrand.patch b/patches/server/0001-Rebrand.patch index 4daf2dd2..7c9e5f82 100644 --- a/patches/server/0001-Rebrand.patch +++ b/patches/server/0001-Rebrand.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Rebrand diff --git a/build.gradle.kts b/build.gradle.kts -index 120ca197cd75afa0670e14ef377c955bcfa6b791..fe36067414a2a1d3408f30cd9a08ec7b2f005914 100644 +index 7b5b089b75d78eb08a44fca321d03a917b56313c..789bc60f5d821d4ebaad015fc78228542134cd4b 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -9,7 +9,7 @@ plugins { @@ -17,7 +17,7 @@ index 120ca197cd75afa0670e14ef377c955bcfa6b791..fe36067414a2a1d3408f30cd9a08ec7b // Depend on Paper MojangAPI implementation("io.papermc.paper:paper-mojangapi:1.20.1-R0.1-SNAPSHOT") { exclude("io.papermc.paper", "paper-api") -@@ -80,7 +80,7 @@ tasks.jar { +@@ -81,7 +81,7 @@ tasks.jar { attributes( "Main-Class" to "org.bukkit.craftbukkit.Main", "Implementation-Title" to "CraftBukkit", @@ -53,7 +53,7 @@ index 556fca5daf3de2c12a9b30ad7cf8c024ed9ca8ed..19d1e0dbee516e360381b6d7e1fee83e while (this.getRunningThread().isAlive()) { this.getRunningThread().stop(); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 4a7ed68b10bb09eb801c52871e47ca55cec46363..bca065a167a1bf0581559f2e578c112fdf570c8a 100644 +index f3d443f78a2bf62dd578c6c5d500999747520af5..4c65f5598dfeef3d48c5a2583e2eb843dfb63cfc 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -264,7 +264,7 @@ import javax.annotation.Nullable; // Paper diff --git a/patches/server/0002-Leaf-Config.patch b/patches/server/0002-Leaf-Config.patch index b386fbc6..5dd9db5f 100644 --- a/patches/server/0002-Leaf-Config.patch +++ b/patches/server/0002-Leaf-Config.patch @@ -5,12 +5,12 @@ Subject: [PATCH] Leaf Config diff --git a/build.gradle.kts b/build.gradle.kts -index fe36067414a2a1d3408f30cd9a08ec7b2f005914..9fa1085f85f4ab29024c5efc0507ed86da18d461 100644 +index 789bc60f5d821d4ebaad015fc78228542134cd4b..6486cec04833451edc39db8a5862c157cfd57b24 100644 --- a/build.gradle.kts +++ b/build.gradle.kts -@@ -49,6 +49,13 @@ dependencies { - runtimeOnly("org.apache.maven.resolver:maven-resolver-connector-basic:1.9.10") - runtimeOnly("org.apache.maven.resolver:maven-resolver-transport-http:1.9.10") +@@ -50,6 +50,13 @@ dependencies { + runtimeOnly("org.apache.maven.resolver:maven-resolver-connector-basic:1.7.3") + runtimeOnly("org.apache.maven.resolver:maven-resolver-transport-http:1.7.3") + // Pufferfish start + implementation("org.yaml:snakeyaml:2.0") diff --git a/patches/server/0008-Purpur-Base.patch b/patches/server/0008-Purpur-Base.patch index fb8918be..cd8cc3e2 100644 --- a/patches/server/0008-Purpur-Base.patch +++ b/patches/server/0008-Purpur-Base.patch @@ -9,21 +9,27 @@ Original license: MIT Original project: https://github.com/PurpurMC/Purpur diff --git a/build.gradle.kts b/build.gradle.kts -index 9fa1085f85f4ab29024c5efc0507ed86da18d461..f6ae0c843c6069ffedb1fb595b456e275cb81b4b 100644 +index 6486cec04833451edc39db8a5862c157cfd57b24..476e5829b2b0e2782f11b258befc7d5002683789 100644 --- a/build.gradle.kts +++ b/build.gradle.kts -@@ -45,6 +45,10 @@ dependencies { +@@ -46,9 +46,13 @@ dependencies { } // Paper end +- 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") + implementation("org.mozilla:rhino-runtime:1.7.14") // Purpur + implementation("org.mozilla:rhino-engine:1.7.14") // Purpur + implementation("dev.omega24:upnp4j:1.0") // Purpur + - runtimeOnly("org.apache.maven:maven-resolver-provider:3.9.2") - runtimeOnly("org.apache.maven.resolver:maven-resolver-connector-basic:1.9.10") - runtimeOnly("org.apache.maven.resolver:maven-resolver-transport-http:1.9.10") -@@ -168,7 +172,7 @@ fun TaskContainer.registerRunTask( ++ runtimeOnly("org.apache.maven:maven-resolver-provider:3.9.2") ++ runtimeOnly("org.apache.maven.resolver:maven-resolver-connector-basic:1.9.10") ++ runtimeOnly("org.apache.maven.resolver:maven-resolver-transport-http:1.9.10") + + // Pufferfish start + implementation("org.yaml:snakeyaml:2.0") +@@ -169,7 +173,7 @@ fun TaskContainer.registerRunTask( } } // Gale end - use default Java installation for development runs diff --git a/patches/server/0009-Purpur-Server-Changes.patch b/patches/server/0009-Purpur-Server-Changes.patch index 85406a60..23a974f1 100644 --- a/patches/server/0009-Purpur-Server-Changes.patch +++ b/patches/server/0009-Purpur-Server-Changes.patch @@ -1473,7 +1473,7 @@ index d65b9d2d9070d8dee2c144c9b37d6605a59cfafe..642341564cabb550503b3ef6f3111789 + // Purpur end } diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 8d90209a01020d44626f56e2cb0dd5eca300f699..0b3c784f6138db19594b443073430a9ec0dda052 100644 +index 439221a90d7a4e90c1543d015dd9933c6eb61ad1..90c944d5574e35eabdfc1b844020bf239d6b02f4 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -347,6 +347,20 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic @@ -13868,7 +13868,7 @@ index ebee8de2ed831755b6fd154f6cc77ac993839bb9..9ecc80c7d1fa1bccf0c44c812274c8f6 CompoundTag nbttagcompound = BlockItem.getBlockEntityData(itemstack); diff --git a/src/main/java/net/minecraft/world/item/BoatItem.java b/src/main/java/net/minecraft/world/item/BoatItem.java -index 1a95ac11a2fbc811c89afa3adf38e0fc9eaab09b..91280f8c39ea191b90da2a9ff5c49f43c255bd9a 100644 +index aec7ac31a35b1cc81f40b3fbeb5cf95c0f2c8a6c..cbcd35e60a2c344c83978abf0b94c2120ff53dee 100644 --- a/src/main/java/net/minecraft/world/item/BoatItem.java +++ b/src/main/java/net/minecraft/world/item/BoatItem.java @@ -69,6 +69,11 @@ public class BoatItem extends Item { @@ -16731,7 +16731,7 @@ index 65e1381bb2d10bd212463feb602c60f8fdb9ade1..b7370e64fd0d50e8725d7d5afc30af2e + // Purpur } diff --git a/src/main/java/net/minecraft/world/level/block/entity/SignBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/SignBlockEntity.java -index ba6f0ba00cd2635bcd19889dca0349b363b079fe..86fc8079faa4b110387e98c100d423485aae0ea0 100644 +index 0521240dddde12d78cc05deda7fac11690f5d155..e326c289fd33b5a9fe49eebaedb29abbdd9a0e4b 100644 --- a/src/main/java/net/minecraft/world/level/block/entity/SignBlockEntity.java +++ b/src/main/java/net/minecraft/world/level/block/entity/SignBlockEntity.java @@ -203,11 +203,18 @@ public class SignBlockEntity extends BlockEntity implements CommandSource { // C @@ -16756,7 +16756,7 @@ index ba6f0ba00cd2635bcd19889dca0349b363b079fe..86fc8079faa4b110387e98c100d42348 } // CraftBukkit start -@@ -345,6 +352,23 @@ public class SignBlockEntity extends BlockEntity implements CommandSource { // C +@@ -346,6 +353,23 @@ public class SignBlockEntity extends BlockEntity implements CommandSource { // C return ClientboundBlockEntityDataPacket.create(this); } @@ -17298,7 +17298,7 @@ index 714afc98b5150907b45a00060be4e41582333204..312a6d90c0a09570aef24c205dc2ff27 + // Purpur end - OfflinePlayer API } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index bca065a167a1bf0581559f2e578c112fdf570c8a..5fabbef99fe1c38a4b52461d9c107c51ecb9b6e5 100644 +index 4c65f5598dfeef3d48c5a2583e2eb843dfb63cfc..ed301231ffe8b75af85d21a455af4fecc4ff04fa 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -327,6 +327,20 @@ public final class CraftServer implements Server { @@ -17322,7 +17322,7 @@ index bca065a167a1bf0581559f2e578c112fdf570c8a..5fabbef99fe1c38a4b52461d9c107c51 // Register all the Enchantments and PotionTypes now so we can stop new registration immediately after Enchantments.SHARPNESS.getClass(); -@@ -984,6 +998,7 @@ public final class CraftServer implements Server { +@@ -988,6 +1002,7 @@ public final class CraftServer implements Server { org.spigotmc.SpigotConfig.init((File) console.options.valueOf("spigot-settings")); // Spigot this.console.paperConfigurations.reloadConfigs(this.console); this.console.galeConfigurations.reloadConfigs(this.console); // Gale - Gale configuration @@ -17330,7 +17330,7 @@ index bca065a167a1bf0581559f2e578c112fdf570c8a..5fabbef99fe1c38a4b52461d9c107c51 for (ServerLevel world : this.console.getAllLevels()) { // world.serverLevelData.setDifficulty(config.difficulty); // Paper - per level difficulty world.setSpawnSettings(world.serverLevelData.getDifficulty() != Difficulty.PEACEFUL && config.spawnMonsters, config.spawnAnimals); // Paper - per level difficulty (from MinecraftServer#setDifficulty(ServerLevel, Difficulty, boolean)) -@@ -999,6 +1014,7 @@ public final class CraftServer implements Server { +@@ -1003,6 +1018,7 @@ public final class CraftServer implements Server { } } world.spigotConfig.init(); // Spigot @@ -17338,7 +17338,7 @@ index bca065a167a1bf0581559f2e578c112fdf570c8a..5fabbef99fe1c38a4b52461d9c107c51 } Plugin[] pluginClone = pluginManager.getPlugins().clone(); // Paper -@@ -1014,6 +1030,7 @@ public final class CraftServer implements Server { +@@ -1018,6 +1034,7 @@ public final class CraftServer implements Server { this.reloadData(); org.spigotmc.SpigotConfig.registerCommands(); // Spigot io.papermc.paper.command.PaperCommands.registerCommands(this.console); // Paper @@ -17346,7 +17346,7 @@ index bca065a167a1bf0581559f2e578c112fdf570c8a..5fabbef99fe1c38a4b52461d9c107c51 this.overrideAllCommandBlockCommands = this.commandsConfiguration.getStringList("command-block-overrides").contains("*"); this.ignoreVanillaPermissions = this.commandsConfiguration.getBoolean("ignore-vanilla-permissions"); -@@ -1454,6 +1471,55 @@ public final class CraftServer implements Server { +@@ -1458,6 +1475,55 @@ public final class CraftServer implements Server { return true; } @@ -17402,7 +17402,7 @@ index bca065a167a1bf0581559f2e578c112fdf570c8a..5fabbef99fe1c38a4b52461d9c107c51 @Override public List getRecipesFor(ItemStack result) { Preconditions.checkArgument(result != null, "ItemStack cannot be null"); -@@ -2739,6 +2805,7 @@ public final class CraftServer implements Server { +@@ -2743,6 +2809,7 @@ public final class CraftServer implements Server { @Override public double[] getTPS() { return new double[] { @@ -17410,7 +17410,7 @@ index bca065a167a1bf0581559f2e578c112fdf570c8a..5fabbef99fe1c38a4b52461d9c107c51 net.minecraft.server.MinecraftServer.getServer().tps1.getAverage(), net.minecraft.server.MinecraftServer.getServer().tps5.getAverage(), net.minecraft.server.MinecraftServer.getServer().tps15.getAverage() -@@ -2831,6 +2898,18 @@ public final class CraftServer implements Server { +@@ -2835,6 +2902,18 @@ public final class CraftServer implements Server { } // Gale end - Gale configuration - API @@ -17429,7 +17429,7 @@ index bca065a167a1bf0581559f2e578c112fdf570c8a..5fabbef99fe1c38a4b52461d9c107c51 @Override public void restart() { org.spigotmc.RestartCommand.restart(); -@@ -3062,4 +3141,15 @@ public final class CraftServer implements Server { +@@ -3066,4 +3145,15 @@ public final class CraftServer implements Server { } // Gale end - YAPFA - last tick time - API @@ -17499,7 +17499,7 @@ index 1a481fb4f4228f0fea8a7dc6132248c98b727c90..1fc38937f514de993439487bb5ec492b public PersistentDataContainer getPersistentDataContainer() { return this.persistentDataContainer; diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java -index 66932eefca3b7b7ec0103e19a38b010ae1e2845a..f49f1eef51e14e9bf94686bb795be4f264a50944 100644 +index 60040f10babd3ad342ada63e0234d3da8f669467..8b35b68d04147ad70fef6f25c6a452da57497865 100644 --- a/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java @@ -194,6 +194,20 @@ public class Main { @@ -17719,7 +17719,7 @@ index a925b5c490e7129b27370aa57b5fad1cf05530c6..ea15690da167ec5e653da6f5afb55b33 + // Purpur end } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index 7880631fe8a4b06f29ef69ab850129737a99521b..4f6a1bf6edf6b0a280cb1647c9c9f3bbe5c54054 100644 +index 19212795df4024cfb2b9f56e1efcd4c9f20d1d83..7be71bc7e4a6abc4b537ab38c51375e3a5b15687 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java @@ -440,7 +440,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { @@ -17758,7 +17758,7 @@ index 7880631fe8a4b06f29ef69ab850129737a99521b..4f6a1bf6edf6b0a280cb1647c9c9f3bb } return effects; } -@@ -1065,4 +1065,32 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { +@@ -1072,4 +1072,32 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { getHandle().knockback(strength, directionX, directionZ); }; // Paper end @@ -17813,10 +17813,10 @@ index 4d7a2c4c1001aefe9fcd4be8dbcb414f721bfff9..2c7716a9d65ebda209a144b82c2126b6 + // Purpur end } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 03bb444705916ffe0b9eb4b7496524dc3459ebe0..a1bd3231001a57dd247d7e3fbb5b7e0bc590e58d 100644 +index 59c00045ec903a635966f16cf33e5b4110262953..3d2c4ba68b1fdc10d7592164e1fab9b3a6458187 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -498,10 +498,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -502,10 +502,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @Override public void setPlayerListName(String name) { @@ -17833,7 +17833,7 @@ index 03bb444705916ffe0b9eb4b7496524dc3459ebe0..a1bd3231001a57dd247d7e3fbb5b7e0b for (ServerPlayer player : (List) server.getHandle().players) { if (player.getBukkitEntity().canSee(this)) { player.connection.send(new ClientboundPlayerInfoUpdatePacket(ClientboundPlayerInfoUpdatePacket.Action.UPDATE_DISPLAY_NAME, this.getHandle())); -@@ -1322,6 +1327,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1335,6 +1340,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player { } if (entity.isVehicle() && !ignorePassengers) { // Paper - Teleport API @@ -17844,7 +17844,7 @@ index 03bb444705916ffe0b9eb4b7496524dc3459ebe0..a1bd3231001a57dd247d7e3fbb5b7e0b return false; } -@@ -2366,6 +2375,28 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -2379,6 +2388,28 @@ public class CraftPlayer extends CraftHumanEntity implements Player { return this.getHandle().getAbilities().walkingSpeed * 2f; } @@ -17873,7 +17873,7 @@ index 03bb444705916ffe0b9eb4b7496524dc3459ebe0..a1bd3231001a57dd247d7e3fbb5b7e0b private void validateSpeed(float value) { Preconditions.checkArgument(value <= 1f && value >= -1f, "Speed value (%s) need to be between -1f and 1f", value); } -@@ -3138,4 +3169,90 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -3151,4 +3182,90 @@ public class CraftPlayer extends CraftHumanEntity implements Player { return this.spigot; } // Spigot end @@ -18046,10 +18046,10 @@ index e43fd3e59fd8c74828ae65965fade27f56beef65..b2f133c8baabba1cffa6e92ea0f85453 + // Purpur end } diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 32fe1e498ee988566213bfcf56bf98c92a3c9871..5374640d92cdf80eb1fdfc21c9076a988222c6d8 100644 +index 621b6a1cacb17fff578855cf2dab8142a5f321ed..420ba2f8adcf15a32598c39c88439a4bd55c89fc 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -@@ -563,6 +563,15 @@ public class CraftEventFactory { +@@ -560,6 +560,15 @@ public class CraftEventFactory { // Paper end craftServer.getPluginManager().callEvent(event); @@ -18065,7 +18065,7 @@ index 32fe1e498ee988566213bfcf56bf98c92a3c9871..5374640d92cdf80eb1fdfc21c9076a98 return event; } -@@ -1000,6 +1009,7 @@ public class CraftEventFactory { +@@ -997,6 +1006,7 @@ public class CraftEventFactory { damageCause = DamageCause.ENTITY_EXPLOSION; } event = new EntityDamageByEntityEvent(damager.getBukkitEntity(), entity.getBukkitEntity(), damageCause, modifiers, modifierFunctions, source.isCritical()); // Paper - add critical damage API @@ -18073,7 +18073,7 @@ index 32fe1e498ee988566213bfcf56bf98c92a3c9871..5374640d92cdf80eb1fdfc21c9076a98 } event.setCancelled(cancelled); -@@ -1114,6 +1124,7 @@ public class CraftEventFactory { +@@ -1111,6 +1121,7 @@ public class CraftEventFactory { } else { entity.lastDamageCancelled = true; // SPIGOT-5339, SPIGOT-6252, SPIGOT-6777: Keep track if the event was canceled } @@ -18081,7 +18081,7 @@ index 32fe1e498ee988566213bfcf56bf98c92a3c9871..5374640d92cdf80eb1fdfc21c9076a98 return event; } -@@ -1177,6 +1188,7 @@ public class CraftEventFactory { +@@ -1174,6 +1185,7 @@ public class CraftEventFactory { EntityDamageEvent event; if (damager != null) { event = new EntityDamageByEntityEvent(damager.getBukkitEntity(), damagee.getBukkitEntity(), cause, modifiers, modifierFunctions, critical); // Paper - add critical damage API diff --git a/patches/server/0010-Bump-Dependencies.patch b/patches/server/0010-Bump-Dependencies.patch index eb097157..86f0d1c1 100644 --- a/patches/server/0010-Bump-Dependencies.patch +++ b/patches/server/0010-Bump-Dependencies.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Bump Dependencies diff --git a/build.gradle.kts b/build.gradle.kts -index f6ae0c843c6069ffedb1fb595b456e275cb81b4b..e8520363e96f2dc9d2a6b54dd2d3671175399628 100644 +index 476e5829b2b0e2782f11b258befc7d5002683789..7a2bbf13ab6cc23849f733063f00797b7659ede9 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -16,7 +16,7 @@ dependencies { @@ -16,8 +16,8 @@ index f6ae0c843c6069ffedb1fb595b456e275cb81b4b..e8520363e96f2dc9d2a6b54dd2d36711 + implementation("org.jline:jline-terminal-jansi:3.23.0") // Leaf - Bump Dependencies implementation("net.minecrell:terminalconsoleappender:1.3.0") implementation("net.kyori:adventure-text-serializer-ansi:4.14.0") // Keep in sync with adventureVersion from Paper-API build file - /* -@@ -25,22 +25,24 @@ dependencies { + implementation("net.kyori:ansi:1.0.1") // Manually bump beyond above transitive dep +@@ -26,22 +26,24 @@ dependencies { all its classes to check if they are plugins. Scanning takes about 1-2 seconds so adding this speeds up the server start. */ @@ -52,7 +52,7 @@ index f6ae0c843c6069ffedb1fb595b456e275cb81b4b..e8520363e96f2dc9d2a6b54dd2d36711 isTransitive = false } // Paper end -@@ -60,11 +62,13 @@ dependencies { +@@ -61,11 +63,13 @@ dependencies { } // Pufferfish end @@ -69,7 +69,7 @@ index f6ae0c843c6069ffedb1fb595b456e275cb81b4b..e8520363e96f2dc9d2a6b54dd2d36711 } val craftbukkitPackageVersion = "1_20_R1" // Paper -@@ -230,3 +234,6 @@ tasks.registerRunTask("runDev") { +@@ -231,3 +235,6 @@ tasks.registerRunTask("runDev") { description = "Spin up a non-relocated Mojang-mapped test server" classpath(sourceSets.main.map { it.runtimeClasspath }) } diff --git a/patches/server/0016-KeYi-Player-Skull-API.patch b/patches/server/0016-KeYi-Player-Skull-API.patch index d03a361a..f116fd1d 100644 --- a/patches/server/0016-KeYi-Player-Skull-API.patch +++ b/patches/server/0016-KeYi-Player-Skull-API.patch @@ -7,7 +7,7 @@ Original license: MIT Original project: https://github.com/KeYiMC/KeYi diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index a1bd3231001a57dd247d7e3fbb5b7e0bc590e58d..99243759c33e8fd187e64cfe95fcd2e7071a9b9f 100644 +index 3d2c4ba68b1fdc10d7592164e1fab9b3a6458187..b298516bc73af619fc38caca23f762db4acbe14e 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -25,6 +25,11 @@ import java.util.Optional; @@ -22,7 +22,7 @@ index a1bd3231001a57dd247d7e3fbb5b7e0bc590e58d..99243759c33e8fd187e64cfe95fcd2e7 import java.util.logging.Level; import java.util.logging.Logger; import javax.annotation.Nullable; -@@ -152,6 +157,7 @@ import org.bukkit.event.player.PlayerUnregisterChannelEvent; +@@ -156,6 +161,7 @@ import org.bukkit.event.player.PlayerUnregisterChannelEvent; import org.bukkit.inventory.EquipmentSlot; import org.bukkit.inventory.InventoryView.Property; import org.bukkit.inventory.ItemStack; @@ -30,7 +30,7 @@ index a1bd3231001a57dd247d7e3fbb5b7e0bc590e58d..99243759c33e8fd187e64cfe95fcd2e7 import org.bukkit.map.MapCursor; import org.bukkit.map.MapView; import org.bukkit.metadata.MetadataValue; -@@ -3255,4 +3261,28 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -3268,4 +3274,28 @@ public class CraftPlayer extends CraftHumanEntity implements Player { this.getHandle().connection.send(new net.minecraft.network.protocol.game.ClientboundPlayerCombatKillPacket(getEntityId(), io.papermc.paper.adventure.PaperAdventure.asVanilla(message))); } // Purpur end diff --git a/patches/server/0023-Slice-Smooth-Teleports.patch b/patches/server/0023-Slice-Smooth-Teleports.patch index baa29fe2..b392a98d 100644 --- a/patches/server/0023-Slice-Smooth-Teleports.patch +++ b/patches/server/0023-Slice-Smooth-Teleports.patch @@ -38,10 +38,10 @@ index 5ecf6b85a909ea8934f50e0dbe262a4f409a855f..7d6fc02b918eeb2f3c0a73f03a461f02 // entityplayer1.connection.teleport(entityplayer1.getX(), entityplayer1.getY(), entityplayer1.getZ(), entityplayer1.getYRot(), entityplayer1.getXRot()); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 99243759c33e8fd187e64cfe95fcd2e7071a9b9f..a5857f78bd44cb5f42d2721669d92f1301a0da4a 100644 +index b298516bc73af619fc38caca23f762db4acbe14e..f00793b5de519837aa7cf531fdb7563be297d626 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -1237,6 +1237,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1250,6 +1250,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { // Paper end } diff --git a/patches/server/0027-Leaves-Jade-Protocol.patch b/patches/server/0027-Leaves-Jade-Protocol.patch index 8539e32a..09e87f9c 100644 --- a/patches/server/0027-Leaves-Jade-Protocol.patch +++ b/patches/server/0027-Leaves-Jade-Protocol.patch @@ -9,7 +9,7 @@ Original project: https://github.com/LeavesMC/Leaves This patch is Powered by Jade(https://github.com/Snownee/Jade) diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 0102343ea691c574eead8fb43bc132abeb05233a..946ffe66ff8187dfb7876187f6666c1afb19c297 100644 +index 770909b5e0704ab6bfeeca1526358745b8775165..c1acd6129c6b7ce09966831b7cfe77aff8da4a0f 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -249,6 +249,7 @@ import org.bukkit.inventory.CraftingInventory; @@ -57,7 +57,7 @@ index e91b4d63d42276f8a498cab7c439c785730f3f6f..a2d7c5008c6d6716d9530e00de0db027 } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 5fabbef99fe1c38a4b52461d9c107c51ecb9b6e5..fec071cf14e8bfa42b70b9b4bdad5414fd4df3cc 100644 +index ed301231ffe8b75af85d21a455af4fecc4ff04fa..803ca237c85f87c84e9a64da95e739a15c2618a1 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -253,6 +253,7 @@ import org.bukkit.scoreboard.Criteria; @@ -68,7 +68,7 @@ index 5fabbef99fe1c38a4b52461d9c107c51ecb9b6e5..fec071cf14e8bfa42b70b9b4bdad5414 import org.yaml.snakeyaml.LoaderOptions; import org.yaml.snakeyaml.Yaml; import org.yaml.snakeyaml.constructor.SafeConstructor; -@@ -406,6 +407,7 @@ public final class CraftServer implements Server { +@@ -410,6 +411,7 @@ public final class CraftServer implements Server { MapPalette.setMapColorCache(new CraftMapColorCache(this.logger)); } datapackManager = new io.papermc.paper.datapack.PaperDatapackManager(console.getPackRepository()); // Paper @@ -76,7 +76,7 @@ index 5fabbef99fe1c38a4b52461d9c107c51ecb9b6e5..fec071cf14e8bfa42b70b9b4bdad5414 } public boolean getCommandBlockOverride(String command) { -@@ -999,6 +1001,11 @@ public final class CraftServer implements Server { +@@ -1003,6 +1005,11 @@ public final class CraftServer implements Server { this.console.paperConfigurations.reloadConfigs(this.console); this.console.galeConfigurations.reloadConfigs(this.console); // Gale - Gale configuration org.purpurmc.purpur.PurpurConfig.init((File) console.options.valueOf("purpur-settings")); // Purpur diff --git a/patches/server/0028-Leaves-Appleskin-Protocol.patch b/patches/server/0028-Leaves-Appleskin-Protocol.patch index c5c2cc42..a1d3b728 100644 --- a/patches/server/0028-Leaves-Appleskin-Protocol.patch +++ b/patches/server/0028-Leaves-Appleskin-Protocol.patch @@ -40,10 +40,10 @@ index 5a9ca4cd26179048850b1f16c635480cdafccb75..e5edb072585a6f6dad231966f8f753ba org.purpurmc.purpur.task.BossBarTask.removeFromAll(entityplayer.getBukkitEntity()); // Purpur ServerLevel worldserver = entityplayer.serverLevel(); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index fec071cf14e8bfa42b70b9b4bdad5414fd4df3cc..d8d64e42c6cf0c3df2a1518bfaa384d171600ee6 100644 +index 803ca237c85f87c84e9a64da95e739a15c2618a1..518a9489077813b60a46568edeb7ba7cb23285bc 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -1006,6 +1006,13 @@ public final class CraftServer implements Server { +@@ -1010,6 +1010,13 @@ public final class CraftServer implements Server { top.leavesmc.leaves.protocol.JadeProtocol.enableAllPlayer(); } // Leaves end - Jade