From 5862dabc8ca2e17f373716ab30fa8e5ebccee522 Mon Sep 17 00:00:00 2001 From: NONPLAYT <76615486+NONPLAYT@users.noreply.github.com> Date: Mon, 21 Oct 2024 21:00:44 +0300 Subject: [PATCH] Updated Upstream (Purpur) Upstream has released updates that appear to apply and compile correctly Purpur Changes: PurpurMC/Purpur@4b57bed Updated Upstream (Paper) --- gradle.properties | 2 +- patches/api/0007-Bump-Dependencies.patch | 13 ++++------ patches/server/0001-Divine-Branding.patch | 6 ++--- .../server/0002-Divine-Configuration.patch | 16 ++++++------ patches/server/0028-Delete-Timings.patch | 6 ++--- ...ssible-NPE-during-creating-GUI-graph.patch | 25 ------------------- ...-Optimize-CraftServer.getWorld-UUID.patch} | 8 +++--- ...tch => 0036-Block-Log4Shell-exploit.patch} | 4 +-- ...o-disable-non-editable-sign-warning.patch} | 4 +-- ...ppress-errors-from-dirty-attributes.patch} | 0 ...Carpet-Fixes-RecipeManager-Optimize.patch} | 0 ...0040-Carpet-Fixes-getBiome-Optimize.patch} | 2 +- ...cs.patch => 0041-C2ME-reduce_allocs.patch} | 0 ...S-Addition-Optimized-dragon-respawn.patch} | 0 ...s-math.patch => 0043-C2ME-opts-math.patch} | 2 +- ...chment-Make-FixLight-use-action-bar.patch} | 0 ...tch => 0045-Petal-Async-Pathfinding.patch} | 0 ...duce-work-done-by-game-event-system.patch} | 0 ...047-Carpet-Fixes-Sheep-Optimization.patch} | 2 +- ...hat-sign.patch => 0048-No-chat-sign.patch} | 4 +-- ... 0049-Remove-vanilla-username-check.patch} | 0 ...karin-Save-Json-list-asynchronously.patch} | 0 ...-223153.patch => 0051-Fix-MC-223153.patch} | 0 ...-119417.patch => 0052-Fix-MC-119417.patch} | 0 ...-200418.patch => 0053-Fix-MC-200418.patch} | 0 ...-to-disable-moved-wrongly-threshold.patch} | 2 +- ...0055-Implement-Linear-region-format.patch} | 6 ++--- ...patch => 0056-Implement-Secure-Seed.patch} | 6 ++--- ...-167242.patch => 0057-Fix-MC-167242.patch} | 0 29 files changed, 40 insertions(+), 68 deletions(-) delete mode 100644 patches/server/0035-Fix-possible-NPE-during-creating-GUI-graph.patch rename patches/server/{0036-Optimize-CraftServer.getWorld-UUID.patch => 0035-Optimize-CraftServer.getWorld-UUID.patch} (90%) rename patches/server/{0037-Block-Log4Shell-exploit.patch => 0036-Block-Log4Shell-exploit.patch} (88%) rename patches/server/{0038-Option-to-disable-non-editable-sign-warning.patch => 0037-Option-to-disable-non-editable-sign-warning.patch} (91%) rename patches/server/{0039-Suppress-errors-from-dirty-attributes.patch => 0038-Suppress-errors-from-dirty-attributes.patch} (100%) rename patches/server/{0040-Carpet-Fixes-RecipeManager-Optimize.patch => 0039-Carpet-Fixes-RecipeManager-Optimize.patch} (100%) rename patches/server/{0041-Carpet-Fixes-getBiome-Optimize.patch => 0040-Carpet-Fixes-getBiome-Optimize.patch} (98%) rename patches/server/{0042-C2ME-reduce_allocs.patch => 0041-C2ME-reduce_allocs.patch} (100%) rename patches/server/{0043-Carpet-AMS-Addition-Optimized-dragon-respawn.patch => 0042-Carpet-AMS-Addition-Optimized-dragon-respawn.patch} (100%) rename patches/server/{0044-C2ME-opts-math.patch => 0043-C2ME-opts-math.patch} (99%) rename patches/server/{0045-Parchment-Make-FixLight-use-action-bar.patch => 0044-Parchment-Make-FixLight-use-action-bar.patch} (100%) rename patches/server/{0046-Petal-Async-Pathfinding.patch => 0045-Petal-Async-Pathfinding.patch} (100%) rename patches/server/{0047-Petal-Reduce-work-done-by-game-event-system.patch => 0046-Petal-Reduce-work-done-by-game-event-system.patch} (100%) rename patches/server/{0048-Carpet-Fixes-Sheep-Optimization.patch => 0047-Carpet-Fixes-Sheep-Optimization.patch} (98%) rename patches/server/{0049-No-chat-sign.patch => 0048-No-chat-sign.patch} (98%) rename patches/server/{0050-Remove-vanilla-username-check.patch => 0049-Remove-vanilla-username-check.patch} (100%) rename patches/server/{0051-Akarin-Save-Json-list-asynchronously.patch => 0050-Akarin-Save-Json-list-asynchronously.patch} (100%) rename patches/server/{0052-Fix-MC-223153.patch => 0051-Fix-MC-223153.patch} (100%) rename patches/server/{0053-Fix-MC-119417.patch => 0052-Fix-MC-119417.patch} (100%) rename patches/server/{0054-Fix-MC-200418.patch => 0053-Fix-MC-200418.patch} (100%) rename patches/server/{0055-Option-to-disable-moved-wrongly-threshold.patch => 0054-Option-to-disable-moved-wrongly-threshold.patch} (98%) rename patches/server/{0056-Implement-Linear-region-format.patch => 0055-Implement-Linear-region-format.patch} (99%) rename patches/server/{0057-Implement-Secure-Seed.patch => 0056-Implement-Secure-Seed.patch} (99%) rename patches/server/{0058-Fix-MC-167242.patch => 0057-Fix-MC-167242.patch} (100%) diff --git a/gradle.properties b/gradle.properties index 804b50c..96c99c1 100644 --- a/gradle.properties +++ b/gradle.properties @@ -2,7 +2,7 @@ group = space.bxteam.divinemc mcVersion = 1.21.1 version = 1.21.1-R0.1-SNAPSHOT -purpurRef = 4f2fe312cc5e0bdf55d8bf33521885b9b08a37e7 +purpurRef = 4b57bed513aaadb0a1ecebae3796a5e93b7561ea org.gradle.caching = true org.gradle.parallel = true diff --git a/patches/api/0007-Bump-Dependencies.patch b/patches/api/0007-Bump-Dependencies.patch index 3896551..24ece58 100644 --- a/patches/api/0007-Bump-Dependencies.patch +++ b/patches/api/0007-Bump-Dependencies.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Bump Dependencies diff --git a/build.gradle.kts b/build.gradle.kts -index b72c89b3fea64d229a072f1fddffc7a71800d228..26577e6602f9eed52ee30d785f6994be6f1cf77a 100644 +index 5ac6f10c0441c8903c11dfcb9a2a1e252f9c06bf..7a111ee5d65f0196c7fa4f04d9eb465b1556a587 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -12,8 +12,8 @@ java { @@ -48,8 +48,8 @@ index b72c89b3fea64d229a072f1fddffc7a71800d228..26577e6602f9eed52ee30d785f6994be apiAndDocs(platform("net.kyori:adventure-bom:$adventureVersion")) apiAndDocs("net.kyori:adventure-api") apiAndDocs("net.kyori:adventure-text-minimessage") -@@ -58,25 +64,25 @@ dependencies { - implementation("org.ow2.asm:asm-commons:9.7") +@@ -58,23 +64,23 @@ dependencies { + implementation("org.ow2.asm:asm-commons:9.7.1") // Paper end - api("org.apache.maven:maven-resolver-provider:3.9.6") // Paper - make API dependency for Paper Plugins @@ -76,11 +76,8 @@ index b72c89b3fea64d229a072f1fddffc7a71800d228..26577e6602f9eed52ee30d785f6994be + testImplementation("org.apache.commons:commons-lang3:3.14.0") // DivineMC - Bump Dependencies + testImplementation("org.junit.jupiter:junit-jupiter:5.11.0-M2") // DivineMC - Bump Dependencies testImplementation("org.hamcrest:hamcrest:2.2") -- testImplementation("org.mockito:mockito-core:5.11.0") -+ testImplementation("org.mockito:mockito-core:5.12.0") // DivineMC - Bump Dependencies - testImplementation("org.ow2.asm:asm-tree:9.7") - } - + testImplementation("org.mockito:mockito-core:5.14.1") + testImplementation("org.ow2.asm:asm-tree:9.7.1") @@ -158,12 +164,12 @@ tasks.withType { options.use() options.isDocFilesSubDirs = true diff --git a/patches/server/0001-Divine-Branding.patch b/patches/server/0001-Divine-Branding.patch index 1ccf9e0..70e380f 100644 --- a/patches/server/0001-Divine-Branding.patch +++ b/patches/server/0001-Divine-Branding.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Divine Branding diff --git a/build.gradle.kts b/build.gradle.kts -index 299881d2c9fb7321f4b29c019e9088e024b64689..b2c08943267f0254daad5f58e1a9472faa5d12a1 100644 +index 535b0c6a750cc77fb9340d6e080932f3eb3bde17..3e2a092c797ec7918f5c4b838f28b0778c70531c 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -13,7 +13,7 @@ configurations.named(log4jPlugins.compileClasspathConfigurationName) { @@ -17,7 +17,7 @@ index 299881d2c9fb7321f4b29c019e9088e024b64689..b2c08943267f0254daad5f58e1a9472f // Paper start implementation("org.jline:jline-terminal-jansi:3.21.0") implementation("net.minecrell:terminalconsoleappender:1.3.0") -@@ -103,14 +103,14 @@ tasks.jar { +@@ -104,14 +104,14 @@ tasks.jar { val gitBranch = git("rev-parse", "--abbrev-ref", "HEAD").getText().trim() // Paper attributes( "Main-Class" to "org.bukkit.craftbukkit.Main", @@ -37,7 +37,7 @@ index 299881d2c9fb7321f4b29c019e9088e024b64689..b2c08943267f0254daad5f58e1a9472f "Build-Number" to (build ?: ""), "Build-Time" to Instant.now().toString(), "Git-Branch" to gitBranch, // Paper -@@ -246,3 +246,12 @@ tasks.registerRunTask("runReobfPaperclip") { +@@ -251,3 +251,12 @@ tasks.registerRunTask("runReobfPaperclip") { classpath(rootProject.tasks.named("createReobfPaperclipJar").flatMap { it.outputZip }) mainClass.set(null as String?) } diff --git a/patches/server/0002-Divine-Configuration.patch b/patches/server/0002-Divine-Configuration.patch index 8a43bb8..cdc59e8 100644 --- a/patches/server/0002-Divine-Configuration.patch +++ b/patches/server/0002-Divine-Configuration.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Divine Configuration diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java -index 2762f54515b352271feb4b26f506b06cd0fb1909..35ee62f6298b4d3bc2e294c263e7ffc862a176fa 100644 +index 6e6f4dffceb0032153c5be119303c5809629cfcc..3f02b6540cd0d318fbeb9708a751047dd7f3305b 100644 --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java @@ -58,6 +58,7 @@ import net.minecraft.world.level.GameType; @@ -34,7 +34,7 @@ index 2762f54515b352271feb4b26f506b06cd0fb1909..35ee62f6298b4d3bc2e294c263e7ffc8 this.setFlightAllowed(dedicatedserverproperties.allowFlight); this.setMotd(dedicatedserverproperties.motd); diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 26fbc981ec9acafc7ba1753759375c142261b6ab..fd18ffa8a9d2fb43656f518c879da58611b7045a 100644 +index 5057d9d433ba002a22d22adfaf7323b2cfaee9af..48f43f75c1523d15653be33e39d7eafb3fc4c7f4 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -83,6 +83,7 @@ import net.minecraft.world.phys.AABB; @@ -62,7 +62,7 @@ index 26fbc981ec9acafc7ba1753759375c142261b6ab..fd18ffa8a9d2fb43656f518c879da586 this.generator = gen; 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 479a8422a6786a8ada8536d528e7f57a06c8107a..69b8a9be15462989fac3d5b1f042e2b0d21dba36 100644 +index 8854e3adca98214697fdfa7f1296e2d66b5afa48..c22e65bc83c2505c30d9960f9f2a9e995dfed3c0 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -265,6 +265,8 @@ import net.md_5.bungee.api.chat.BaseComponent; // Spigot @@ -74,7 +74,7 @@ index 479a8422a6786a8ada8536d528e7f57a06c8107a..69b8a9be15462989fac3d5b1f042e2b0 public final class CraftServer implements Server { private final String serverName = io.papermc.paper.ServerBuildInfo.buildInfo().brandName(); // Paper private final String serverVersion; -@@ -1085,6 +1087,7 @@ public final class CraftServer implements Server { +@@ -1087,6 +1089,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); org.purpurmc.purpur.PurpurConfig.init((File) console.options.valueOf("purpur-settings")); // Purpur @@ -82,7 +82,7 @@ index 479a8422a6786a8ada8536d528e7f57a06c8107a..69b8a9be15462989fac3d5b1f042e2b0 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)) -@@ -1101,6 +1104,7 @@ public final class CraftServer implements Server { +@@ -1103,6 +1106,7 @@ public final class CraftServer implements Server { } world.spigotConfig.init(); // Spigot world.purpurConfig.init(); // Purpur @@ -90,7 +90,7 @@ index 479a8422a6786a8ada8536d528e7f57a06c8107a..69b8a9be15462989fac3d5b1f042e2b0 } Plugin[] pluginClone = pluginManager.getPlugins().clone(); // Paper -@@ -1119,6 +1123,7 @@ public final class CraftServer implements Server { +@@ -1121,6 +1125,7 @@ public final class CraftServer implements Server { io.papermc.paper.command.PaperCommands.registerCommands(this.console); // Paper this.spark.registerCommandBeforePlugins(this); // Paper - spark org.purpurmc.purpur.PurpurConfig.registerCommands(); // Purpur @@ -98,7 +98,7 @@ index 479a8422a6786a8ada8536d528e7f57a06c8107a..69b8a9be15462989fac3d5b1f042e2b0 this.overrideAllCommandBlockCommands = this.commandsConfiguration.getStringList("command-block-overrides").contains("*"); this.ignoreVanillaPermissions = this.commandsConfiguration.getBoolean("ignore-vanilla-permissions"); -@@ -3066,6 +3071,13 @@ public final class CraftServer implements Server { +@@ -3068,6 +3073,13 @@ public final class CraftServer implements Server { } // Purpur end @@ -113,7 +113,7 @@ index 479a8422a6786a8ada8536d528e7f57a06c8107a..69b8a9be15462989fac3d5b1f042e2b0 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 e35a562eec4b65335723c50180fe1471f858ae60..58cecb0253d191410aefac5d3ec18410b8c6728f 100644 +index 068aa459b4d1dfbbbd80dc0ae5c43b8202474477..48275e7df8ef4959f729331f82c396e9ad5a5b4c 100644 --- a/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java @@ -190,6 +190,14 @@ public class Main { diff --git a/patches/server/0028-Delete-Timings.patch b/patches/server/0028-Delete-Timings.patch index ea08fa6..59204fe 100644 --- a/patches/server/0028-Delete-Timings.patch +++ b/patches/server/0028-Delete-Timings.patch @@ -1214,10 +1214,10 @@ index d3ec817e95628f1fc8be4a29c9a0f13c7d5fd552..e9798517b9211c50a20ea5c69603aab3 } } diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java -index 83a27e7bf9513eb5461cd30d1b7217128a2da268..0aaddf32ed87bd075c4bfe31be00086b73802f23 100644 +index 5505c13d0e602f39fe02dde350082c11a2f2a2e0..eb945d9574377d8f30530504e1c92c7b3a6972ac 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java +++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java -@@ -200,7 +200,7 @@ public final class CraftMagicNumbers implements UnsafeValues { +@@ -202,7 +202,7 @@ public final class CraftMagicNumbers implements UnsafeValues { // Paper start @Override public void reportTimings() { @@ -1226,7 +1226,7 @@ index 83a27e7bf9513eb5461cd30d1b7217128a2da268..0aaddf32ed87bd075c4bfe31be00086b } // Paper end -@@ -478,7 +478,7 @@ public final class CraftMagicNumbers implements UnsafeValues { +@@ -484,7 +484,7 @@ public final class CraftMagicNumbers implements UnsafeValues { // Paper start @Override public String getTimingsServerName() { diff --git a/patches/server/0035-Fix-possible-NPE-during-creating-GUI-graph.patch b/patches/server/0035-Fix-possible-NPE-during-creating-GUI-graph.patch deleted file mode 100644 index 3cf763b..0000000 --- a/patches/server/0035-Fix-possible-NPE-during-creating-GUI-graph.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: NONPLAYT <76615486+NONPLAYT@users.noreply.github.com> -Date: Wed, 22 May 2024 23:32:09 +0300 -Subject: [PATCH] Fix possible NPE during creating GUI graph - - -diff --git a/src/main/java/com/destroystokyo/paper/gui/RAMDetails.java b/src/main/java/com/destroystokyo/paper/gui/RAMDetails.java -index 308f67d0616e2d6bb135258f1fda53ccdee01430..553528e612b72199ac33404c086db0e3b6887e7e 100644 ---- a/src/main/java/com/destroystokyo/paper/gui/RAMDetails.java -+++ b/src/main/java/com/destroystokyo/paper/gui/RAMDetails.java -@@ -59,7 +59,13 @@ public class RAMDetails extends JList { - GraphData data = RAMGraph.DATA.peekLast(); - Vector vector = new Vector<>(); - -- double[] tps = org.bukkit.Bukkit.getTPS(); -+ // DivineMC start - Fix possible NPE during creating GUI graph -+ double[] tps = new double[]{ -+ server.tps1.getAverage(), -+ server.tps5.getAverage(), -+ server.tps15.getAverage() -+ }; -+ // DivineMC end - String[] tpsAvg = new String[tps.length]; - - for ( int g = 0; g < tps.length; g++) { diff --git a/patches/server/0036-Optimize-CraftServer.getWorld-UUID.patch b/patches/server/0035-Optimize-CraftServer.getWorld-UUID.patch similarity index 90% rename from patches/server/0036-Optimize-CraftServer.getWorld-UUID.patch rename to patches/server/0035-Optimize-CraftServer.getWorld-UUID.patch index dcdb463..6f36f3c 100644 --- a/patches/server/0036-Optimize-CraftServer.getWorld-UUID.patch +++ b/patches/server/0035-Optimize-CraftServer.getWorld-UUID.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Optimize CraftServer.getWorld(UUID) Original code by MultiPaper - https://github.com/MultiPaper/MultiPaper diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 3a2da4b1275df762f0a4c0e40c416896062a29a7..f3c4f33e68f6b41a53c751900acd1e530f9970f6 100644 +index c22e65bc83c2505c30d9960f9f2a9e995dfed3c0..a132b7e64f551dc28432e57b3e17a80760b51210 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -266,6 +266,7 @@ import javax.annotation.Nullable; // Paper @@ -25,7 +25,7 @@ index 3a2da4b1275df762f0a4c0e40c416896062a29a7..f3c4f33e68f6b41a53c751900acd1e53 private YamlConfiguration configuration; private YamlConfiguration commandsConfiguration; private final Yaml yaml = new Yaml(new SafeConstructor(new LoaderOptions())); -@@ -1505,6 +1507,7 @@ public final class CraftServer implements Server { +@@ -1507,6 +1509,7 @@ public final class CraftServer implements Server { this.getLogger().log(Level.SEVERE, null, ex); } @@ -33,7 +33,7 @@ index 3a2da4b1275df762f0a4c0e40c416896062a29a7..f3c4f33e68f6b41a53c751900acd1e53 this.worlds.remove(world.getName().toLowerCase(Locale.ROOT)); this.console.removeLevel(handle); return true; -@@ -1523,6 +1526,7 @@ public final class CraftServer implements Server { +@@ -1525,6 +1528,7 @@ public final class CraftServer implements Server { @Override public World getWorld(UUID uid) { @@ -41,7 +41,7 @@ index 3a2da4b1275df762f0a4c0e40c416896062a29a7..f3c4f33e68f6b41a53c751900acd1e53 for (World world : this.worlds.values()) { if (world.getUID().equals(uid)) { return world; -@@ -1546,6 +1550,7 @@ public final class CraftServer implements Server { +@@ -1548,6 +1552,7 @@ public final class CraftServer implements Server { System.out.println("World " + world.getName() + " is a duplicate of another world and has been prevented from loading. Please delete the uid.dat file from " + world.getName() + "'s world directory if you want to be able to load the duplicate world."); return; } diff --git a/patches/server/0037-Block-Log4Shell-exploit.patch b/patches/server/0036-Block-Log4Shell-exploit.patch similarity index 88% rename from patches/server/0037-Block-Log4Shell-exploit.patch rename to patches/server/0036-Block-Log4Shell-exploit.patch index aeeb73d..a9fad39 100644 --- a/patches/server/0037-Block-Log4Shell-exploit.patch +++ b/patches/server/0036-Block-Log4Shell-exploit.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Block Log4Shell exploit diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 682f353c0e409fcc7375efc62d9f64b4952ff230..5fafd0e97c27cd92c6dd1e1cb3a68a290e15353e 100644 +index fd22a6709c7ffd828fbab5b8723f2b723af92f3d..c81a8ea2431290fdd3c343fefca18ef276cf8e18 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -2432,6 +2432,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl @@ -14,7 +14,7 @@ index 682f353c0e409fcc7375efc62d9f64b4952ff230..5fafd0e97c27cd92c6dd1e1cb3a68a29 private void tryHandleChat(String s, Runnable runnable, boolean sync) { // CraftBukkit + if (ServerGamePacketListenerImpl.isLog4ShellExploit(s)) return; // DivineMC - Block Log4Shell exploit if (ServerGamePacketListenerImpl.isChatMessageIllegal(s)) { - this.disconnect((Component) Component.translatable("multiplayer.disconnect.illegal_characters"), org.bukkit.event.player.PlayerKickEvent.Cause.ILLEGAL_CHARACTERS); // Paper + this.disconnectAsync((Component) Component.translatable("multiplayer.disconnect.illegal_characters"), org.bukkit.event.player.PlayerKickEvent.Cause.ILLEGAL_CHARACTERS); // Paper // Paper - add proper async disconnect } else if (this.player.isRemoved() || this.player.getChatVisibility() == ChatVisiblity.HIDDEN) { // CraftBukkit - dead men tell no tales @@ -2463,6 +2464,15 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl } diff --git a/patches/server/0038-Option-to-disable-non-editable-sign-warning.patch b/patches/server/0037-Option-to-disable-non-editable-sign-warning.patch similarity index 91% rename from patches/server/0038-Option-to-disable-non-editable-sign-warning.patch rename to patches/server/0037-Option-to-disable-non-editable-sign-warning.patch index f9f0574..4c749d6 100644 --- a/patches/server/0038-Option-to-disable-non-editable-sign-warning.patch +++ b/patches/server/0037-Option-to-disable-non-editable-sign-warning.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Option to disable non editable sign warning 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 8cd812a25b1cc05ea14675658bf9c1503ebebd51..5cdfd35218c424ffb7a900ef66f9b1cfe1ff4293 100644 +index c9a1c071780351b584ad8e071ddc26f9a27e5964..5806cff8edc49cad4679b450ae651564d62fbc52 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 @@ -189,7 +189,7 @@ public class SignBlockEntity extends BlockEntity implements CommandSource { // C @@ -18,7 +18,7 @@ index 8cd812a25b1cc05ea14675658bf9c1503ebebd51..5cdfd35218c424ffb7a900ef66f9b1cf ((ServerPlayer) player).connection.send(this.getUpdatePacket()); // CraftBukkit } diff --git a/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java b/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java -index 8380fd40b19ea1b4bff6ba78648408fbd3c662d0..58557370cd588c19faf54cb9fc402b1d0a0f687f 100644 +index 8251cf1e42f159e3be874e4cc34498e6dcdec539..109396069426c4ae290cf20b52589e3649ed4543 100644 --- a/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java +++ b/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java @@ -152,4 +152,9 @@ public class DivineConfig { diff --git a/patches/server/0039-Suppress-errors-from-dirty-attributes.patch b/patches/server/0038-Suppress-errors-from-dirty-attributes.patch similarity index 100% rename from patches/server/0039-Suppress-errors-from-dirty-attributes.patch rename to patches/server/0038-Suppress-errors-from-dirty-attributes.patch diff --git a/patches/server/0040-Carpet-Fixes-RecipeManager-Optimize.patch b/patches/server/0039-Carpet-Fixes-RecipeManager-Optimize.patch similarity index 100% rename from patches/server/0040-Carpet-Fixes-RecipeManager-Optimize.patch rename to patches/server/0039-Carpet-Fixes-RecipeManager-Optimize.patch diff --git a/patches/server/0041-Carpet-Fixes-getBiome-Optimize.patch b/patches/server/0040-Carpet-Fixes-getBiome-Optimize.patch similarity index 98% rename from patches/server/0041-Carpet-Fixes-getBiome-Optimize.patch rename to patches/server/0040-Carpet-Fixes-getBiome-Optimize.patch index 80ad66c..ea516e6 100644 --- a/patches/server/0041-Carpet-Fixes-getBiome-Optimize.patch +++ b/patches/server/0040-Carpet-Fixes-getBiome-Optimize.patch @@ -152,7 +152,7 @@ index 01352cc83b25eb0e30b7e0ff521fc7c1b3d5155b..c042287e12b5ce814afe8557e4dfa8e8 public Holder getNoiseBiomeAtPosition(double x, double y, double z) { diff --git a/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java b/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java -index 58557370cd588c19faf54cb9fc402b1d0a0f687f..fd0bbc99a151dd12d5522aaf8e3800b1a17500b6 100644 +index 109396069426c4ae290cf20b52589e3649ed4543..d499ec5f19db4e2dcd40e940380bffa5196957ee 100644 --- a/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java +++ b/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java @@ -157,4 +157,9 @@ public class DivineConfig { diff --git a/patches/server/0042-C2ME-reduce_allocs.patch b/patches/server/0041-C2ME-reduce_allocs.patch similarity index 100% rename from patches/server/0042-C2ME-reduce_allocs.patch rename to patches/server/0041-C2ME-reduce_allocs.patch diff --git a/patches/server/0043-Carpet-AMS-Addition-Optimized-dragon-respawn.patch b/patches/server/0042-Carpet-AMS-Addition-Optimized-dragon-respawn.patch similarity index 100% rename from patches/server/0043-Carpet-AMS-Addition-Optimized-dragon-respawn.patch rename to patches/server/0042-Carpet-AMS-Addition-Optimized-dragon-respawn.patch diff --git a/patches/server/0044-C2ME-opts-math.patch b/patches/server/0043-C2ME-opts-math.patch similarity index 99% rename from patches/server/0044-C2ME-opts-math.patch rename to patches/server/0043-C2ME-opts-math.patch index 8c16b88..4838cdd 100644 --- a/patches/server/0044-C2ME-opts-math.patch +++ b/patches/server/0043-C2ME-opts-math.patch @@ -281,7 +281,7 @@ index 35820670837376bcad8891241724d5b946fbd31f..74a666a45289f0902b426ba57986cd93 @Deprecated diff --git a/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java b/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java -index d5f33c6bde58fd333fbdc474a288523bcb5557a1..54beb2e8be073617638e62f22ae37942b75283d7 100644 +index 4a134013b79120ce2a659d9071424bb1d7bd3297..77e07052a923c46ba28d79d531b43dcccf4cd546 100644 --- a/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java +++ b/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java @@ -160,8 +160,10 @@ public class DivineConfig { diff --git a/patches/server/0045-Parchment-Make-FixLight-use-action-bar.patch b/patches/server/0044-Parchment-Make-FixLight-use-action-bar.patch similarity index 100% rename from patches/server/0045-Parchment-Make-FixLight-use-action-bar.patch rename to patches/server/0044-Parchment-Make-FixLight-use-action-bar.patch diff --git a/patches/server/0046-Petal-Async-Pathfinding.patch b/patches/server/0045-Petal-Async-Pathfinding.patch similarity index 100% rename from patches/server/0046-Petal-Async-Pathfinding.patch rename to patches/server/0045-Petal-Async-Pathfinding.patch diff --git a/patches/server/0047-Petal-Reduce-work-done-by-game-event-system.patch b/patches/server/0046-Petal-Reduce-work-done-by-game-event-system.patch similarity index 100% rename from patches/server/0047-Petal-Reduce-work-done-by-game-event-system.patch rename to patches/server/0046-Petal-Reduce-work-done-by-game-event-system.patch diff --git a/patches/server/0048-Carpet-Fixes-Sheep-Optimization.patch b/patches/server/0047-Carpet-Fixes-Sheep-Optimization.patch similarity index 98% rename from patches/server/0048-Carpet-Fixes-Sheep-Optimization.patch rename to patches/server/0047-Carpet-Fixes-Sheep-Optimization.patch index 8463f81..1eb4d0f 100644 --- a/patches/server/0048-Carpet-Fixes-Sheep-Optimization.patch +++ b/patches/server/0047-Carpet-Fixes-Sheep-Optimization.patch @@ -60,7 +60,7 @@ index 17b49186293578c06144a476473324a9a1f6fcbb..f073d0657855e70f70c33ec7c7bf8238 private static CraftingInput makeCraftInput(DyeColor firstColor, DyeColor secondColor) { diff --git a/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java b/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java -index 641a957cfda8de6f4114350393f441f2f3b9c8dd..75adcde96d7924fa1892462e66ffe16476735658 100644 +index acff9dc2f10ecbd3c219e4eaa0c29a259f2192c7..ae15ef065617d3399ce6fa5924f120539625eb40 100644 --- a/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java +++ b/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java @@ -161,10 +161,12 @@ public class DivineConfig { diff --git a/patches/server/0049-No-chat-sign.patch b/patches/server/0048-No-chat-sign.patch similarity index 98% rename from patches/server/0049-No-chat-sign.patch rename to patches/server/0048-No-chat-sign.patch index 247ee42..963ffc9 100644 --- a/patches/server/0049-No-chat-sign.patch +++ b/patches/server/0048-No-chat-sign.patch @@ -118,10 +118,10 @@ index 9d80e8464abc73b1120d3812baace1f2591bf324..8c1c551618aeac3d86d523184b955d80 } diff --git a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java -index 0d6307db1047bb5db7e33aa425fe2564cca93cfb..08cb20cb03e92b617cc2b3e671a4ee5f4346d2f7 100644 +index a9d54c80f682d826ad272731bd6477eed0fd44d5..fba871e503c0832abff212eaeffcec3a970ce0ab 100644 --- a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java -@@ -329,10 +329,24 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack +@@ -325,10 +325,24 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack } public void send(Packet packet) { diff --git a/patches/server/0050-Remove-vanilla-username-check.patch b/patches/server/0049-Remove-vanilla-username-check.patch similarity index 100% rename from patches/server/0050-Remove-vanilla-username-check.patch rename to patches/server/0049-Remove-vanilla-username-check.patch diff --git a/patches/server/0051-Akarin-Save-Json-list-asynchronously.patch b/patches/server/0050-Akarin-Save-Json-list-asynchronously.patch similarity index 100% rename from patches/server/0051-Akarin-Save-Json-list-asynchronously.patch rename to patches/server/0050-Akarin-Save-Json-list-asynchronously.patch diff --git a/patches/server/0052-Fix-MC-223153.patch b/patches/server/0051-Fix-MC-223153.patch similarity index 100% rename from patches/server/0052-Fix-MC-223153.patch rename to patches/server/0051-Fix-MC-223153.patch diff --git a/patches/server/0053-Fix-MC-119417.patch b/patches/server/0052-Fix-MC-119417.patch similarity index 100% rename from patches/server/0053-Fix-MC-119417.patch rename to patches/server/0052-Fix-MC-119417.patch diff --git a/patches/server/0054-Fix-MC-200418.patch b/patches/server/0053-Fix-MC-200418.patch similarity index 100% rename from patches/server/0054-Fix-MC-200418.patch rename to patches/server/0053-Fix-MC-200418.patch diff --git a/patches/server/0055-Option-to-disable-moved-wrongly-threshold.patch b/patches/server/0054-Option-to-disable-moved-wrongly-threshold.patch similarity index 98% rename from patches/server/0055-Option-to-disable-moved-wrongly-threshold.patch rename to patches/server/0054-Option-to-disable-moved-wrongly-threshold.patch index 9358d41..081ee49 100644 --- a/patches/server/0055-Option-to-disable-moved-wrongly-threshold.patch +++ b/patches/server/0054-Option-to-disable-moved-wrongly-threshold.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Option to disable moved wrongly threshold diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 4e844772b0343633ba44299544e77c012a1de888..67b45e363dcc985797b689ce50b8ca3e6a61586c 100644 +index c81a8ea2431290fdd3c343fefca18ef276cf8e18..26811a1e1eea3726a7b3e0f8dd65c7cba584e23c 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -585,7 +585,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl diff --git a/patches/server/0056-Implement-Linear-region-format.patch b/patches/server/0055-Implement-Linear-region-format.patch similarity index 99% rename from patches/server/0056-Implement-Linear-region-format.patch rename to patches/server/0055-Implement-Linear-region-format.patch index ebb5a5f..3e760af 100644 --- a/patches/server/0056-Implement-Linear-region-format.patch +++ b/patches/server/0055-Implement-Linear-region-format.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Implement Linear region format diff --git a/build.gradle.kts b/build.gradle.kts -index 8ef05c4ba140586c8ce8ba892dfb9b658d4b604f..b8cdedc81a2ac5128f2c6ea7eb4d5df22c136748 100644 +index 3e2a092c797ec7918f5c4b838f28b0778c70531c..bb44922202e3cdb705a4773ea7c9ec807b5f3de2 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -30,6 +30,10 @@ dependencies { @@ -17,7 +17,7 @@ index 8ef05c4ba140586c8ce8ba892dfb9b658d4b604f..b8cdedc81a2ac5128f2c6ea7eb4d5df2 + implementation("org.lz4:lz4-java:1.8.0") + // DivineMC end implementation("org.apache.logging.log4j:log4j-iostreams:2.22.1") // Paper - remove exclusion - implementation("org.ow2.asm:asm-commons:9.7") + implementation("org.ow2.asm:asm-commons:9.7.1") implementation("org.spongepowered:configurate-yaml:4.2.0-SNAPSHOT") // Paper - config files diff --git a/src/main/java/ca/spottedleaf/moonrise/patches/chunk_system/io/ChunkSystemRegionFileStorage.java b/src/main/java/ca/spottedleaf/moonrise/patches/chunk_system/io/ChunkSystemRegionFileStorage.java index 73df26b27146bbad2106d57b22dd3c792ed3dd1d..a4d16996fae07f943ee078ce3d2e7b22747fc2d1 100644 @@ -63,7 +63,7 @@ index 3218cbf84f54daf06e84442d5eb1a36d8da6b215..0db1f8f64a261780e6692755669fa573 synchronized (cache) { regionFile = ((ChunkSystemRegionFileStorage)(Object)cache).moonrise$getRegionFileIfLoaded(chunkX, chunkZ); diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 704f8509ca70d8e1961c87090858a8a3cab4c886..c437a1c6a80a2f870f01c8c824fa43c693586552 100644 +index 8658296b919fd6fa28e64a64186060d3704271db..52bdfd853cf9d42a6c58f0616faf031c8e91fed8 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -981,10 +981,10 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop