diff --git a/patches/server/0002-Divine-Configuration.patch b/patches/server/0002-Divine-Configuration.patch index b54744c..e714382 100644 --- a/patches/server/0002-Divine-Configuration.patch +++ b/patches/server/0002-Divine-Configuration.patch @@ -205,14 +205,16 @@ index 0000000000000000000000000000000000000000..06af4af987859081bcf23e91da02b295 +} diff --git a/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java b/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java new file mode 100644 -index 0000000000000000000000000000000000000000..8251cf1e42f159e3be874e4cc34498e6dcdec539 +index 0000000000000000000000000000000000000000..27c45545e1e9ad6ea88e65c884c5a4955fc1c80c --- /dev/null +++ b/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java -@@ -0,0 +1,155 @@ +@@ -0,0 +1,157 @@ +package space.bxteam.divinemc.configuration; + +import com.google.common.base.Throwables; +import com.google.common.collect.ImmutableMap; ++import net.minecraft.world.level.block.Block; ++import net.minecraft.world.level.block.state.BlockBehaviour; +import space.bxteam.divinemc.commands.*; +import net.minecraft.server.MinecraftServer; +import net.minecraft.world.level.block.Blocks; @@ -271,7 +273,7 @@ index 0000000000000000000000000000000000000000..8251cf1e42f159e3be874e4cc34498e6 + + readConfig(DivineConfig.class, null); + -+ Blocks.rebuildCache(); ++ Block.BLOCK_STATE_REGISTRY.forEach(BlockBehaviour.BlockStateBase::initCache); + } + + protected static void log(String s) { diff --git a/patches/server/0032-Option-to-disable-non-editable-sign-warning.patch b/patches/server/0032-Option-to-disable-non-editable-sign-warning.patch index 8cfdf62..ed59588 100644 --- a/patches/server/0032-Option-to-disable-non-editable-sign-warning.patch +++ b/patches/server/0032-Option-to-disable-non-editable-sign-warning.patch @@ -18,10 +18,10 @@ index 6da1eec98c08e4909ecbd48fe90b3fd62011e284..20fe9ab8c31bb84d58228cb644dd5a93 ((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 8251cf1e42f159e3be874e4cc34498e6dcdec539..109396069426c4ae290cf20b52589e3649ed4543 100644 +index 27c45545e1e9ad6ea88e65c884c5a4955fc1c80c..882e08b1eef89dd01129c89aa5fa1094d35788c5 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 { +@@ -154,4 +154,9 @@ public class DivineConfig { } return builder.build(); } diff --git a/patches/server/0034-Carpet-Fixes-getBiome-Optimize.patch b/patches/server/0034-Carpet-Fixes-getBiome-Optimize.patch index c6f20b5..287b68a 100644 --- a/patches/server/0034-Carpet-Fixes-getBiome-Optimize.patch +++ b/patches/server/0034-Carpet-Fixes-getBiome-Optimize.patch @@ -152,10 +152,10 @@ index 90f8360f547ce709fd13ee34f8e67d8bfa94b498..e71cfe169d8113b1e38fb1f3f12dc9b5 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 109396069426c4ae290cf20b52589e3649ed4543..d499ec5f19db4e2dcd40e940380bffa5196957ee 100644 +index 882e08b1eef89dd01129c89aa5fa1094d35788c5..911c9144cdf15930995fbd3c2b8ff01c74138c74 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 { +@@ -159,4 +159,9 @@ public class DivineConfig { private static void miscSettings() { disableNonEditableSignWarning = getBoolean("settings.misc.disable-non-editable-sign-warning", disableNonEditableSignWarning); } diff --git a/patches/server/0036-Carpet-AMS-Addition-Optimized-dragon-respawn.patch b/patches/server/0036-Carpet-AMS-Addition-Optimized-dragon-respawn.patch index d5c52ba..83598cc 100644 --- a/patches/server/0036-Carpet-AMS-Addition-Optimized-dragon-respawn.patch +++ b/patches/server/0036-Carpet-AMS-Addition-Optimized-dragon-respawn.patch @@ -110,10 +110,10 @@ index b331c93c82c27f9456fec208a0c008c5bedfa8c4..ec3142ae55686e13c2984eaf8cf0bcc8 for (BlockPattern.BlockPatternMatch shapedetector_shapedetectorcollection = this.findExitPortal(); shapedetector_shapedetectorcollection != null; shapedetector_shapedetectorcollection = this.findExitPortal()) { for (int i = 0; i < this.exitPortalPattern.getWidth(); ++i) { diff --git a/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java b/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java -index d499ec5f19db4e2dcd40e940380bffa5196957ee..4a134013b79120ce2a659d9071424bb1d7bd3297 100644 +index 911c9144cdf15930995fbd3c2b8ff01c74138c74..c88157b27b344b2ed1153a44daee751f5b53b45d 100644 --- a/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java +++ b/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java -@@ -159,7 +159,9 @@ public class DivineConfig { +@@ -161,7 +161,9 @@ public class DivineConfig { } public static boolean biomeManagerOptimization = true; diff --git a/patches/server/0037-C2ME-opts-math.patch b/patches/server/0037-C2ME-opts-math.patch index 4838cdd..9fac483 100644 --- a/patches/server/0037-C2ME-opts-math.patch +++ b/patches/server/0037-C2ME-opts-math.patch @@ -281,10 +281,10 @@ 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 4a134013b79120ce2a659d9071424bb1d7bd3297..77e07052a923c46ba28d79d531b43dcccf4cd546 100644 +index c88157b27b344b2ed1153a44daee751f5b53b45d..aaf3afd0fe1f13ed7375d272e2690e9db0410417 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 { +@@ -162,8 +162,10 @@ public class DivineConfig { public static boolean biomeManagerOptimization = true; public static boolean optimizedDragonRespawn = true; diff --git a/patches/server/0040-Carpet-Fixes-Sheep-Optimization.patch b/patches/server/0040-Carpet-Fixes-Sheep-Optimization.patch index fd22f48..caa537f 100644 --- a/patches/server/0040-Carpet-Fixes-Sheep-Optimization.patch +++ b/patches/server/0040-Carpet-Fixes-Sheep-Optimization.patch @@ -62,10 +62,10 @@ index a13ce089bacfb6644eea81fbe7c6d640aedaea96..9cde7eafbf6d8dbb13087379e567bc0d private static CraftingInput makeCraftInput(DyeColor firstColor, DyeColor secondColor) { return CraftingInput.of(2, 1, List.of(new ItemStack(DyeItem.byColor(firstColor)), new ItemStack(DyeItem.byColor(secondColor)))); diff --git a/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java b/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java -index 77e07052a923c46ba28d79d531b43dcccf4cd546..d077a9eb5a4720186b25b2a10246576bc0e300d1 100644 +index aaf3afd0fe1f13ed7375d272e2690e9db0410417..bc6642e1a6dd8254efe65cbac1acdcd4462e430b 100644 --- a/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java +++ b/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java -@@ -161,9 +161,11 @@ public class DivineConfig { +@@ -163,9 +163,11 @@ public class DivineConfig { public static boolean biomeManagerOptimization = true; public static boolean optimizedDragonRespawn = true; public static boolean optimizeNoiseGeneration = true; diff --git a/patches/server/0041-No-chat-sign.patch b/patches/server/0041-No-chat-sign.patch index 047c375..a60c815 100644 --- a/patches/server/0041-No-chat-sign.patch +++ b/patches/server/0041-No-chat-sign.patch @@ -147,7 +147,7 @@ index 7d276c191b391bca24948ddb36b8b7d0f1f03b03..c1d3a811ca17f303b6a35a4c044cacf1 if (packet == null || this.processedDisconnect) { // Spigot return; diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 7d57f9b7fc4837f0f44f5c1cb76a5751a15b9254..dc5a76a73a801a7930906cde057bd94f08c3a600 100644 +index d823c9dc6d898f55e677dc320c84a4d8696671b1..f7513c3b6b7232ddcb7f9094cd31e4d28e6f294a 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -1426,7 +1426,7 @@ public abstract class PlayerList { @@ -160,10 +160,10 @@ index 7d57f9b7fc4837f0f44f5c1cb76a5751a15b9254..dc5a76a73a801a7930906cde057bd94f // CraftBukkit start diff --git a/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java b/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java -index d077a9eb5a4720186b25b2a10246576bc0e300d1..3ed9169eff00857ab78effd04512616895759c29 100644 +index bc6642e1a6dd8254efe65cbac1acdcd4462e430b..99532c3a254afa66ee4c6c106b6754471fcbc9e8 100644 --- a/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java +++ b/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java -@@ -168,4 +168,9 @@ public class DivineConfig { +@@ -170,4 +170,9 @@ public class DivineConfig { optimizeNoiseGeneration = getBoolean("settings.optimizations.optimize-noise-generation", optimizeNoiseGeneration); sheepOptimization = getBoolean("settings.optimizations.sheep-optimization", sheepOptimization); } diff --git a/patches/server/0042-Remove-vanilla-username-check.patch b/patches/server/0042-Remove-vanilla-username-check.patch index e432c3f..82b1565 100644 --- a/patches/server/0042-Remove-vanilla-username-check.patch +++ b/patches/server/0042-Remove-vanilla-username-check.patch @@ -32,10 +32,10 @@ index 16069b9cbf6c7679c28a2e9a54e77d23cd10e541..1b33f08b1d4730b28f61435488a1e1c0 && !this.iKnowThisMayNotBeTheBestIdeaButPleaseDisableUsernameValidation) { Validate.validState(StringUtil.isReasonablePlayerName(packet.name()), "Invalid characters in username", new Object[0]); diff --git a/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java b/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java -index 3ed9169eff00857ab78effd04512616895759c29..f8f84e2856703a78217d0d9572955f33ac0d7776 100644 +index 99532c3a254afa66ee4c6c106b6754471fcbc9e8..84ee2dbd085b02cf20f14022e2f1997f8d9580a8 100644 --- a/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java +++ b/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java -@@ -154,8 +154,10 @@ public class DivineConfig { +@@ -156,8 +156,10 @@ public class DivineConfig { } public static boolean disableNonEditableSignWarning = true; diff --git a/patches/server/0047-Option-to-disable-moved-wrongly-threshold.patch b/patches/server/0047-Option-to-disable-moved-wrongly-threshold.patch index b453bee..b75ea30 100644 --- a/patches/server/0047-Option-to-disable-moved-wrongly-threshold.patch +++ b/patches/server/0047-Option-to-disable-moved-wrongly-threshold.patch @@ -47,10 +47,10 @@ index 9aabf8d4a333f96f1431da12cd42766a6d1676bd..d6f414bb93e9ca939fd7278cf4eaabf6 io.papermc.paper.event.player.PlayerFailMoveEvent event = fireFailMove(io.papermc.paper.event.player.PlayerFailMoveEvent.FailReason.MOVED_WRONGLY, toX, toY, toZ, toYaw, toPitch, true); diff --git a/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java b/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java -index f8f84e2856703a78217d0d9572955f33ac0d7776..77c6b40f0d5aa97a1fb71e5704c719f4ee34ba8e 100644 +index 84ee2dbd085b02cf20f14022e2f1997f8d9580a8..19f3521bad52f8441e484e9c761904bbdf6b9902 100644 --- a/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java +++ b/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java -@@ -155,9 +155,11 @@ public class DivineConfig { +@@ -157,9 +157,11 @@ public class DivineConfig { public static boolean disableNonEditableSignWarning = true; public static boolean removeVanillaUsernameCheck = false; diff --git a/patches/server/0048-Implement-Secure-Seed.patch b/patches/server/0048-Implement-Secure-Seed.patch index 68c70ed..d9653a7 100644 --- a/patches/server/0048-Implement-Secure-Seed.patch +++ b/patches/server/0048-Implement-Secure-Seed.patch @@ -470,10 +470,10 @@ index 7aea486e9b3c5bfb42097081bada8257834e5249..05a3c8c7f65ae7a3d287a8d749b2c069 DedicatedServerProperties.WorldDimensionData properties = new DedicatedServerProperties.WorldDimensionData(GsonHelper.parse((creator.generatorSettings().isEmpty()) ? "{}" : creator.generatorSettings()), creator.type().name().toLowerCase(Locale.ROOT)); diff --git a/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java b/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java -index 77c6b40f0d5aa97a1fb71e5704c719f4ee34ba8e..1b814672401425d35777768bc7327657c268e51e 100644 +index 19f3521bad52f8441e484e9c761904bbdf6b9902..daddaae83c4ff45e04388cd51ed5f80ed8078573 100644 --- a/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java +++ b/src/main/java/space/bxteam/divinemc/configuration/DivineConfig.java -@@ -156,10 +156,12 @@ public class DivineConfig { +@@ -158,10 +158,12 @@ public class DivineConfig { public static boolean disableNonEditableSignWarning = true; public static boolean removeVanillaUsernameCheck = false; public static boolean disableMovedWronglyThreshold = false; diff --git a/patches/server/0050-Delete-Timings.patch b/patches/server/0050-Delete-Timings.patch index 07e76b1..97d610b 100644 --- a/patches/server/0050-Delete-Timings.patch +++ b/patches/server/0050-Delete-Timings.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Delete Timings diff --git a/src/main/java/io/papermc/paper/plugin/manager/PaperEventManager.java b/src/main/java/io/papermc/paper/plugin/manager/PaperEventManager.java -index 0e3bed7a75f8f4611f9f44a1f78fd70cc06eaa54..fe955dda558a55f67e25cad3c8ebfadb514da224 100644 +index 0e3bed7a75f8f4611f9f44a1f78fd70cc06eaa54..126ed4bd24d993b598c112c2dbfcb9d662038925 100644 --- a/src/main/java/io/papermc/paper/plugin/manager/PaperEventManager.java +++ b/src/main/java/io/papermc/paper/plugin/manager/PaperEventManager.java @@ -1,6 +1,5 @@ @@ -23,6 +23,15 @@ index 0e3bed7a75f8f4611f9f44a1f78fd70cc06eaa54..fe955dda558a55f67e25cad3c8ebfadb this.getEventListeners(event).register(new RegisteredListener(listener, executor, priority, plugin, ignoreCancelled)); } +@@ -189,7 +187,7 @@ class PaperEventManager { + } + } + +- EventExecutor executor = new TimedEventExecutor(EventExecutor.create(method, eventClass), plugin, method, eventClass); ++ EventExecutor executor = EventExecutor.create(method, eventClass); + eventSet.add(new RegisteredListener(listener, executor, eh.priority(), plugin, eh.ignoreCancelled())); + } + return ret; diff --git a/src/main/java/io/papermc/paper/plugin/manager/PaperPluginManagerImpl.java b/src/main/java/io/papermc/paper/plugin/manager/PaperPluginManagerImpl.java index 097500a59336db1bbfffcd1aa4cff7a8586e46ec..35b00c139864dd7925d46a2d6a317d7e3aae9638 100644 --- a/src/main/java/io/papermc/paper/plugin/manager/PaperPluginManagerImpl.java