diff --git a/gradle.properties b/gradle.properties index 054ddb647..b2f03879a 100644 --- a/gradle.properties +++ b/gradle.properties @@ -2,7 +2,7 @@ group = org.purpurmc.purpur version = 1.21.1-R0.1-SNAPSHOT mcVersion = 1.21.1 -paperCommit = aebbdc9e9a18b580d2647af52f77a506bcf7bbc2 +paperCommit = 14a48cda408dc49db65b345b2e02cd71d9a7aae9 org.gradle.caching = true org.gradle.parallel = true diff --git a/patches/api/0001-Pufferfish-API-Changes.patch b/patches/api/0001-Pufferfish-API-Changes.patch index daf09777d..9e97f81b9 100644 --- a/patches/api/0001-Pufferfish-API-Changes.patch +++ b/patches/api/0001-Pufferfish-API-Changes.patch @@ -20,7 +20,7 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . diff --git a/build.gradle.kts b/build.gradle.kts -index ab84a1405acc1f0d5f267892243b82b8dab03e21..4114aa99614ae588b1cf465ea7900308476a7568 100644 +index e7c96be769fde8375b9a1b128cc7ce474144d16d..f9b44a03fe8d9a2fea2d968f4e944a6663c6f9c9 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -52,6 +52,7 @@ dependencies { @@ -29,8 +29,8 @@ index ab84a1405acc1f0d5f267892243b82b8dab03e21..4114aa99614ae588b1cf465ea7900308 api("org.slf4j:slf4j-api:$slf4jVersion") + api("io.sentry:sentry:5.4.0") // Pufferfish - implementation("org.ow2.asm:asm:9.7") - implementation("org.ow2.asm:asm-commons:9.7") + implementation("org.ow2.asm:asm:9.7.1") + implementation("org.ow2.asm:asm-commons:9.7.1") @@ -131,6 +132,13 @@ val generateApiVersioningFile by tasks.registering { } } diff --git a/patches/api/0016-Anvil-API.patch b/patches/api/0016-Anvil-API.patch index 0710c76ae..3601d5000 100644 --- a/patches/api/0016-Anvil-API.patch +++ b/patches/api/0016-Anvil-API.patch @@ -52,10 +52,10 @@ index f1f97a85ec713c05c882d7588f4a3e4a017f4795..813f6cd253322538bdf96eb323dd23a7 + // Purpur end } diff --git a/src/main/java/org/bukkit/inventory/view/AnvilView.java b/src/main/java/org/bukkit/inventory/view/AnvilView.java -index cc5ffd28a6d6244b99a94e52c6f5a0f73a64aed7..76e2b4fe49febb2897e1e9c5487a6b1e2e6bd76a 100644 +index 3c1aa1e036bee08304c1cdca59f6a5bc0ba306c0..709fb2d1c7e3253034a651a9f68c003601b598a4 100644 --- a/src/main/java/org/bukkit/inventory/view/AnvilView.java +++ b/src/main/java/org/bukkit/inventory/view/AnvilView.java -@@ -83,4 +83,34 @@ public interface AnvilView extends InventoryView { +@@ -89,4 +89,34 @@ public interface AnvilView extends InventoryView { */ void bypassEnchantmentLevelRestriction(boolean bypassEnchantmentLevelRestriction); // Paper end - bypass anvil level restrictions diff --git a/patches/api/0017-ItemStack-convenience-methods.patch b/patches/api/0017-ItemStack-convenience-methods.patch index 3e7296342..7f59f7c34 100644 --- a/patches/api/0017-ItemStack-convenience-methods.patch +++ b/patches/api/0017-ItemStack-convenience-methods.patch @@ -5,12 +5,12 @@ Subject: [PATCH] ItemStack convenience methods diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java -index de469f32dd9a01e0e2fde016044a783dde0c5b98..c7fa497381c5c5d57fda8b9c1ef26f2e89523f66 100644 +index 77a15a99e441bd81650806142581bd5b24f30e10..3ec2154956087a370799f0fa485f3b6cae894c69 100644 --- a/src/main/java/org/bukkit/Material.java +++ b/src/main/java/org/bukkit/Material.java -@@ -5625,4 +5625,40 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla - } - return Registry.BLOCK.get(material.key); +@@ -5636,4 +5636,40 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla + public BlockType asBlockType() { + return blockType.get(); } + + // Purpur start diff --git a/patches/api/0021-Rabid-Wolf-API.patch b/patches/api/0021-Rabid-Wolf-API.patch index fa9743084..cbf725884 100644 --- a/patches/api/0021-Rabid-Wolf-API.patch +++ b/patches/api/0021-Rabid-Wolf-API.patch @@ -5,11 +5,11 @@ Subject: [PATCH] Rabid Wolf API diff --git a/src/main/java/org/bukkit/entity/Wolf.java b/src/main/java/org/bukkit/entity/Wolf.java -index 4b84c04675775e2a606630b00de8afe51665cebc..ccbaf40a3131f477b4be2264401ad893725c1162 100644 +index c73489f4b745bc84501ce94f0227b034d9768eae..a97129e71f16ec691759add664bdfd35ab90aaed 100644 --- a/src/main/java/org/bukkit/entity/Wolf.java +++ b/src/main/java/org/bukkit/entity/Wolf.java -@@ -112,4 +112,20 @@ public interface Wolf extends Tameable, Sittable, io.papermc.paper.entity.Collar - return variant; +@@ -108,4 +108,20 @@ public interface Wolf extends Tameable, Sittable, io.papermc.paper.entity.Collar + return Registry.WOLF_VARIANT.getOrThrow(NamespacedKey.minecraft(key)); } } + diff --git a/patches/api/0035-Lobotomize-stuck-villagers.patch b/patches/api/0035-Lobotomize-stuck-villagers.patch index 208f71b57..4370acca8 100644 --- a/patches/api/0035-Lobotomize-stuck-villagers.patch +++ b/patches/api/0035-Lobotomize-stuck-villagers.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Lobotomize stuck villagers diff --git a/src/main/java/org/bukkit/entity/Villager.java b/src/main/java/org/bukkit/entity/Villager.java -index 444744ea6f5921b0ae229995f8b15ea9d980c402..508bb3493e74a42ce8abf57bba05c08a715849dc 100644 +index 1db3742024e9cd1b70af2d52b4b756a544c019df..9c722a762c88a88bb5ef18c3b9eab8b371360dac 100644 --- a/src/main/java/org/bukkit/entity/Villager.java +++ b/src/main/java/org/bukkit/entity/Villager.java -@@ -375,4 +375,14 @@ public interface Villager extends AbstractVillager { +@@ -367,4 +367,14 @@ public interface Villager extends AbstractVillager { */ public void clearReputations(); // Paper end diff --git a/patches/server/0001-Pufferfish-Server-Changes.patch b/patches/server/0001-Pufferfish-Server-Changes.patch index 131c60cb9..bb424c228 100644 --- a/patches/server/0001-Pufferfish-Server-Changes.patch +++ b/patches/server/0001-Pufferfish-Server-Changes.patch @@ -20,7 +20,7 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . diff --git a/build.gradle.kts b/build.gradle.kts -index 648281575eb8d45a5c06549eb3d0f517c086fe64..43120fb0c76af42211895f09816333a19e32bc84 100644 +index de0474b8dce58cb419c00b7614d7dd66be832a02..6cfa3f9994de36e135658841aa3c091b90a14424 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -13,7 +13,7 @@ configurations.named(log4jPlugins.compileClasspathConfigurationName) { @@ -45,8 +45,8 @@ index 648281575eb8d45a5c06549eb3d0f517c086fe64..43120fb0c76af42211895f09816333a1 + testImplementation("io.github.classgraph:classgraph:4.8.47") // Paper - mob goal test testImplementation("org.junit.jupiter:junit-jupiter:5.10.2") - testImplementation("org.hamcrest:hamcrest:2.2") -@@ -71,6 +78,14 @@ paperweight { + testImplementation("org.junit.platform:junit-platform-suite-engine:1.10.0") +@@ -72,6 +79,14 @@ paperweight { craftBukkitPackageVersion.set("v1_21_R1") // also needs to be updated in MappingEnvironment } @@ -61,7 +61,7 @@ index 648281575eb8d45a5c06549eb3d0f517c086fe64..43120fb0c76af42211895f09816333a1 tasks.jar { archiveClassifier.set("dev") -@@ -84,14 +99,14 @@ tasks.jar { +@@ -85,14 +100,14 @@ tasks.jar { val gitBranch = git("rev-parse", "--abbrev-ref", "HEAD").getText().trim() // Paper attributes( "Main-Class" to "org.bukkit.craftbukkit.Main", @@ -1413,7 +1413,7 @@ index f9abf63e12ea930275121b470e4e4906cff0fc12..2a8ffcdd262ea73844500846c6401cdd if (this.isRainingAt(blockposition)) { diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index befeaac4786760f6847a5945da2296a3e68dbb17..6c28390e33c07d4c65493019375b669ccfa5ae2d 100644 +index 064d52d4479727c6a32bf357be8da32d1760e7fc..8f2214008d76d00267152b5db0cf0fbdd3fbbfb7 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -1157,6 +1157,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl @@ -2478,10 +2478,10 @@ index 96d772eb02f79f8c478f5e6f065e387aa7665b18..c5ce412f321b8b4f31cc042893659e21 } } diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java -index f78744b6d6075f584d9a88612661854f3f04aed1..83766d4a8e7c5bfd32689430c70b24741368ec00 100644 +index d06aab9bd5cd901c8367f9680f5d27ddb17b3dc4..8fa2b2a67891d34ec95f7eed2a4118ddd8a5be15 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java +++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java -@@ -483,7 +483,7 @@ public final class CraftMagicNumbers implements UnsafeValues { +@@ -489,7 +489,7 @@ public final class CraftMagicNumbers implements UnsafeValues { @Override public com.destroystokyo.paper.util.VersionFetcher getVersionFetcher() { diff --git a/patches/server/0003-Rebrand.patch b/patches/server/0003-Rebrand.patch index fdf6fac83..81be64dbd 100644 --- a/patches/server/0003-Rebrand.patch +++ b/patches/server/0003-Rebrand.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Rebrand diff --git a/build.gradle.kts b/build.gradle.kts -index 9a8f3a058e9fed25d2caa9be742a26e969b0781f..92d3e5641fb76da1239effe11ffc926ae335a0e0 100644 +index 6c1b5b2ae207c0139d097c5ca857dd662a63f997..535b0c6a750cc77fb9340d6e080932f3eb3bde17 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -13,7 +13,7 @@ configurations.named(log4jPlugins.compileClasspathConfigurationName) { @@ -27,8 +27,8 @@ index 9a8f3a058e9fed25d2caa9be742a26e969b0781f..92d3e5641fb76da1239effe11ffc926a + testImplementation("io.github.classgraph:classgraph:4.8.47") // Paper - mob goal test testImplementation("org.junit.jupiter:junit-jupiter:5.10.2") - testImplementation("org.hamcrest:hamcrest:2.2") -@@ -99,14 +103,14 @@ tasks.jar { + testImplementation("org.junit.platform:junit-platform-suite-engine:1.10.0") +@@ -100,14 +104,14 @@ tasks.jar { val gitBranch = git("rev-parse", "--abbrev-ref", "HEAD").getText().trim() // Paper attributes( "Main-Class" to "org.bukkit.craftbukkit.Main", @@ -48,7 +48,7 @@ index 9a8f3a058e9fed25d2caa9be742a26e969b0781f..92d3e5641fb76da1239effe11ffc926a "Build-Number" to (build ?: ""), "Build-Time" to Instant.now().toString(), "Git-Branch" to gitBranch, // Paper -@@ -163,7 +167,7 @@ fun TaskContainer.registerRunTask( +@@ -168,7 +172,7 @@ fun TaskContainer.registerRunTask( name: String, block: JavaExec.() -> Unit ): TaskProvider = register(name) { @@ -267,10 +267,10 @@ index 2f4d6b56301195f8d39ed50dffe842464065bfe1..30ddb35140ae4a6faba98c191bb8eadb // (async tasks must live with race-conditions if they attempt to cancel between these few lines of code) } diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java -index 2a4ebb4ea67a630f3ab4d728304221f8f5614de1..ea4c70568fb10afaab19ee447ea13a2e02a18c07 100644 +index 8fa2b2a67891d34ec95f7eed2a4118ddd8a5be15..5505c13d0e602f39fe02dde350082c11a2f2a2e0 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java +++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java -@@ -483,7 +483,7 @@ public final class CraftMagicNumbers implements UnsafeValues { +@@ -489,7 +489,7 @@ public final class CraftMagicNumbers implements UnsafeValues { @Override public com.destroystokyo.paper.util.VersionFetcher getVersionFetcher() { diff --git a/patches/server/0004-Purpur-config-files.patch b/patches/server/0004-Purpur-config-files.patch index 32af022ce..c2db8f880 100644 --- a/patches/server/0004-Purpur-config-files.patch +++ b/patches/server/0004-Purpur-config-files.patch @@ -112,10 +112,10 @@ index 2479b47186202de40cdb4ae773c696a4adee9bad..97f83c9737726be0c3b6dc847b56970e this.world = new CraftWorld((ServerLevel) this, gen, biomeProvider, env); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index b7af2d4300facf41a025c8ca322bf6541949b3ab..145a8100b670c6d9fff0af621455ef2913bed8d1 100644 +index c7df339aeb62ee627edaf1bb4c8474b61e357ba6..bc3d41df5cc55281c513f8d4b35c71319119f499 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -1070,6 +1070,7 @@ public final class CraftServer implements Server { +@@ -1072,6 +1072,7 @@ public final class CraftServer implements Server { org.spigotmc.SpigotConfig.init((File) this.console.options.valueOf("spigot-settings")); // Spigot this.console.paperConfigurations.reloadConfigs(this.console); @@ -123,7 +123,7 @@ index b7af2d4300facf41a025c8ca322bf6541949b3ab..145a8100b670c6d9fff0af621455ef29 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)) -@@ -1085,6 +1086,7 @@ public final class CraftServer implements Server { +@@ -1087,6 +1088,7 @@ public final class CraftServer implements Server { } } world.spigotConfig.init(); // Spigot @@ -131,7 +131,7 @@ index b7af2d4300facf41a025c8ca322bf6541949b3ab..145a8100b670c6d9fff0af621455ef29 } Plugin[] pluginClone = pluginManager.getPlugins().clone(); // Paper -@@ -1102,6 +1104,7 @@ public final class CraftServer implements Server { +@@ -1104,6 +1106,7 @@ public final class CraftServer implements Server { org.spigotmc.SpigotConfig.registerCommands(); // Spigot io.papermc.paper.command.PaperCommands.registerCommands(this.console); // Paper this.spark.registerCommandBeforePlugins(this); // Paper - spark @@ -139,7 +139,7 @@ index b7af2d4300facf41a025c8ca322bf6541949b3ab..145a8100b670c6d9fff0af621455ef29 this.overrideAllCommandBlockCommands = this.commandsConfiguration.getStringList("command-block-overrides").contains("*"); this.ignoreVanillaPermissions = this.commandsConfiguration.getBoolean("ignore-vanilla-permissions"); -@@ -2988,6 +2991,18 @@ public final class CraftServer implements Server { +@@ -2990,6 +2993,18 @@ public final class CraftServer implements Server { return CraftServer.this.console.paperConfigurations.createLegacyObject(CraftServer.this.console); } @@ -159,7 +159,7 @@ index b7af2d4300facf41a025c8ca322bf6541949b3ab..145a8100b670c6d9fff0af621455ef29 public void restart() { org.spigotmc.RestartCommand.restart(); diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java -index c1e88c31910e96ef07cece05046c0b55e708b52d..22bdc8fe2796940eb971437e1c97d638bfbc42bb 100644 +index b3ba6bccdbb08af27916f0c611c60b2595b90164..e5efd29e577e7f2ebf18be9a591edb2528a95442 100644 --- a/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java @@ -176,6 +176,14 @@ public class Main { diff --git a/patches/server/0014-Bring-back-server-name.patch b/patches/server/0014-Bring-back-server-name.patch index 283f06223..1a88dc3ee 100644 --- a/patches/server/0014-Bring-back-server-name.patch +++ b/patches/server/0014-Bring-back-server-name.patch @@ -17,10 +17,10 @@ index d6431376184e5650b370cbab204e28bc31f4dac6..9ebe1f1797b5be562bc4f6d92b9a4d60 public final boolean spawnNpcs = this.get("spawn-npcs", true); public final boolean pvp = this.get("pvp", true); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 145a8100b670c6d9fff0af621455ef2913bed8d1..99efe1d052b81141e4c0b26bdac65c943d209dd4 100644 +index bc3d41df5cc55281c513f8d4b35c71319119f499..e86551d1518318003f5e8a6e8ed3e1f3c199fe34 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -3230,4 +3230,11 @@ public final class CraftServer implements Server { +@@ -3232,4 +3232,11 @@ public final class CraftServer implements Server { return this.potionBrewer; } // Paper end diff --git a/patches/server/0016-Lagging-threshold.patch b/patches/server/0016-Lagging-threshold.patch index 7bb8fcc93..d54082dc1 100644 --- a/patches/server/0016-Lagging-threshold.patch +++ b/patches/server/0016-Lagging-threshold.patch @@ -25,10 +25,10 @@ index 72b67696bc7d268b2fece68325963d25afb1ac26..8ba26b557a97668b67c317e0d2b137e5 } // Paper end - further improve server tick loop diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 99efe1d052b81141e4c0b26bdac65c943d209dd4..b25afa9638da053bbed8cb93386a23c47e77e28d 100644 +index e86551d1518318003f5e8a6e8ed3e1f3c199fe34..39112ee78ff7f55d9be109f4ad3dffb788f7380f 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -3236,5 +3236,10 @@ public final class CraftServer implements Server { +@@ -3238,5 +3238,10 @@ public final class CraftServer implements Server { public String getServerName() { return this.getProperties().serverName; } @@ -40,7 +40,7 @@ index 99efe1d052b81141e4c0b26bdac65c943d209dd4..b25afa9638da053bbed8cb93386a23c4 // Purpur end } diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java -index 9960d7791d37fb7b43e8ffc3351528510ac537ca..9e6bcdaa2b3dabb2a7c50034eed81f0064a2f98f 100644 +index cea00dc7478ef73984747992b2a8efc28677e2cb..b4d43c293084b808d167dd02f2d6cf865ac17983 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java @@ -195,6 +195,11 @@ public class PurpurConfig { diff --git a/patches/server/0018-Anvil-API.patch b/patches/server/0018-Anvil-API.patch index 03bc98866..afb9e660a 100644 --- a/patches/server/0018-Anvil-API.patch +++ b/patches/server/0018-Anvil-API.patch @@ -193,10 +193,10 @@ index 792cb6adf0c7a6335cc5985fce8bed2e0f1149af..5734c5caffda79383ae30df20c3defb5 + // Purpur end - Anvil API } diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/view/CraftAnvilView.java b/src/main/java/org/bukkit/craftbukkit/inventory/view/CraftAnvilView.java -index 59f0b1207931a2a10d559f43e2926b17e6991257..02cef3b940822327e72c887f6b342c080c6d0f45 100644 +index f86c95a13dff012de5db3e41ac261e9e8d44d9f3..1db0b790d824e419bb5fb6ab1f3003e120f9763b 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/view/CraftAnvilView.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/view/CraftAnvilView.java -@@ -75,4 +75,26 @@ public class CraftAnvilView extends CraftInventoryView implements Anv +@@ -75,4 +75,26 @@ public class CraftAnvilView extends CraftInventoryView { +@@ -61,6 +61,7 @@ public class RAMDetails extends JList { + + // Follows CraftServer#getTPS + double[] tps = new double[] { ++ server.tps5s.getAverage(), // Purpur + server.tps1.getAverage(), + server.tps5.getAverage(), + server.tps15.getAverage() +@@ -73,7 +74,7 @@ public class RAMDetails extends JList { vector.add("Memory use: " + (data.getUsedMem() / 1024L / 1024L) + " mb (" + (data.getFree() * 100L / data.getMax()) + "% free)"); vector.add("Heap: " + (data.getTotal() / 1024L / 1024L) + " / " + (data.getMax() / 1024L / 1024L) + " mb"); vector.add("Avg tick: " + DECIMAL_FORMAT.format((double)this.server.getAverageTickTimeNanos() / (double) TimeUtil.NANOSECONDS_PER_MILLISECOND) + " ms"); @@ -74,10 +82,10 @@ index 096c89bd01cec2abd151bf6fffc4847d1bcd548f..cd0a8a6a1be75cab8bbb8ee3ac17bb73 this.values[this.vp++ & 0xFF] = (int)(l * 100L / Runtime.getRuntime().maxMemory()); this.repaint(); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index b25afa9638da053bbed8cb93386a23c47e77e28d..ce3b91b5eaa697f70a2e591c6edce6bdd7f9bdcf 100644 +index 39112ee78ff7f55d9be109f4ad3dffb788f7380f..eb764777e7bb1c8f6300ae74726891d9df95107b 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -3032,6 +3032,7 @@ public final class CraftServer implements Server { +@@ -3034,6 +3034,7 @@ public final class CraftServer implements Server { @Override public double[] getTPS() { return new double[] { diff --git a/patches/server/0202-Added-the-ability-to-add-combustible-items.patch b/patches/server/0202-Added-the-ability-to-add-combustible-items.patch index 4f014e9ef..defa8b770 100644 --- a/patches/server/0202-Added-the-ability-to-add-combustible-items.patch +++ b/patches/server/0202-Added-the-ability-to-add-combustible-items.patch @@ -51,10 +51,10 @@ index 699bdc1f01a95ecdfe899493c8d81ec31cc9fa4b..d12469a1bbd37026012bfd6bce30d7a2 private int maxStack = MAX_STACK; public List transaction = new java.util.ArrayList(); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index ce3b91b5eaa697f70a2e591c6edce6bdd7f9bdcf..ad71ba70b24481120e303e174ab07c7a31a068c6 100644 +index eb764777e7bb1c8f6300ae74726891d9df95107b..8fc42922d2f5ab3de6050fe9e5f1d7a0b4ed19de 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -1611,6 +1611,19 @@ public final class CraftServer implements Server { +@@ -1613,6 +1613,19 @@ public final class CraftServer implements Server { return true; } diff --git a/patches/server/0236-Config-for-mob-last-hurt-by-player-time.patch b/patches/server/0236-Config-for-mob-last-hurt-by-player-time.patch index c98f8776e..8598a5dcd 100644 --- a/patches/server/0236-Config-for-mob-last-hurt-by-player-time.patch +++ b/patches/server/0236-Config-for-mob-last-hurt-by-player-time.patch @@ -25,10 +25,10 @@ index cb9ae94b4fff8406cdbc40a1d5d38f0272a4a212..409d5c775b3187f2d3b58879e3c945d1 if (entityliving2 instanceof net.minecraft.world.entity.player.Player) { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index 0a3da3d35cd6b41003692d968b77384e7460ca97..b21cd824587f7bed53255f7d0fc7bedefd45f9a4 100644 +index a187a3ff72d544c6ee5dbba95de206ec3b81c2d0..491c320d3745587757ddc9131a7585275e35d0c2 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -@@ -513,7 +513,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { +@@ -514,7 +514,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { net.minecraft.server.level.ServerPlayer entityPlayer = killer == null ? null : ((CraftPlayer) killer).getHandle(); getHandle().lastHurtByPlayer = entityPlayer; getHandle().lastHurtByMob = entityPlayer; diff --git a/patches/server/0240-Skip-junit-tests-for-purpur-commands.patch b/patches/server/0240-Skip-junit-tests-for-purpur-commands.patch index 6ab3a0a64..d7d2fd0a0 100644 --- a/patches/server/0240-Skip-junit-tests-for-purpur-commands.patch +++ b/patches/server/0240-Skip-junit-tests-for-purpur-commands.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Skip junit tests for purpur commands diff --git a/src/test/java/io/papermc/paper/permissions/MinecraftCommandPermissionsTest.java b/src/test/java/io/papermc/paper/permissions/MinecraftCommandPermissionsTest.java -index ca71c688b37ce2c8b712a4f9216cf872c8edf78e..83f2c04d083eced64bc67661eed0ddfdddc497cc 100644 +index 75ed5050f72c001d6eab117a2c0b352a413548bd..180c0a532bbac10a8280b63eb7aa783a1bfbb237 100644 --- a/src/test/java/io/papermc/paper/permissions/MinecraftCommandPermissionsTest.java +++ b/src/test/java/io/papermc/paper/permissions/MinecraftCommandPermissionsTest.java -@@ -45,6 +45,7 @@ public class MinecraftCommandPermissionsTest extends AbstractTestingBase { +@@ -46,6 +46,7 @@ public class MinecraftCommandPermissionsTest { Set foundPerms = new HashSet<>(); for (CommandNode child : root.getChildren()) { final String vanillaPerm = VanillaCommandWrapper.getPermission(child); @@ -16,7 +16,7 @@ index ca71c688b37ce2c8b712a4f9216cf872c8edf78e..83f2c04d083eced64bc67661eed0ddfd if (!perms.contains(vanillaPerm)) { missing.add("Missing permission for " + child.getName() + " (" + vanillaPerm + ") command"); } else { -@@ -57,6 +58,25 @@ public class MinecraftCommandPermissionsTest extends AbstractTestingBase { +@@ -58,6 +59,25 @@ public class MinecraftCommandPermissionsTest { } private static final List TO_SKIP = List.of( diff --git a/patches/server/0256-Debug-Marker-API.patch b/patches/server/0256-Debug-Marker-API.patch index a25fcc86c..e2a4a9335 100644 --- a/patches/server/0256-Debug-Marker-API.patch +++ b/patches/server/0256-Debug-Marker-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Debug Marker API diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index ad71ba70b24481120e303e174ab07c7a31a068c6..300c8a94771d56e6bb6da692092882c329a9f0e4 100644 +index 8fc42922d2f5ab3de6050fe9e5f1d7a0b4ed19de..647c86b529d7da3fb96126a0a7b0fa37a52453f4 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -1622,6 +1622,42 @@ public final class CraftServer implements Server { +@@ -1624,6 +1624,42 @@ public final class CraftServer implements Server { public void removeFuel(org.bukkit.Material material) { net.minecraft.world.level.block.entity.AbstractFurnaceBlockEntity.removeFuel(net.minecraft.world.item.ItemStack.fromBukkitCopy(new ItemStack(material))); } @@ -52,7 +52,7 @@ index ad71ba70b24481120e303e174ab07c7a31a068c6..300c8a94771d56e6bb6da692092882c3 @Override diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 02dca1188af7b235610d4f432cae47bcd624d5b8..ad74d80f620d0e481a9613fcb29d3ab114154a4e 100644 +index 9ad02908bbcbaec7b6ce2abd4091a8146ee1616b..0921894dbc0d81b943827ecda6e6befdbfd715f5 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -2390,6 +2390,42 @@ public class CraftWorld extends CraftRegionAccessor implements World {