diff --git a/divinemc-server/minecraft-patches/features/0002-Configuration.patch b/divinemc-server/minecraft-patches/features/0002-Configuration.patch index 82b5d1c..3c3976c 100644 --- a/divinemc-server/minecraft-patches/features/0002-Configuration.patch +++ b/divinemc-server/minecraft-patches/features/0002-Configuration.patch @@ -5,25 +5,25 @@ Subject: [PATCH] Configuration diff --git a/net/minecraft/server/dedicated/DedicatedServer.java b/net/minecraft/server/dedicated/DedicatedServer.java -index 8bb2c4266a543c4b6a3d9686d6010241a0f40c86..798d32b4497ec77b2ebe5bec3caa4039257ceddf 100644 +index 6a296adcd9d5289dd86840fdc58dce3accbe9ce5..90c78b71fc456e9369af7afb62beb7de7303eaf1 100644 --- a/net/minecraft/server/dedicated/DedicatedServer.java +++ b/net/minecraft/server/dedicated/DedicatedServer.java -@@ -177,6 +177,15 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface +@@ -193,6 +193,15 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface } org.purpurmc.purpur.PurpurConfig.registerCommands(); - // Purpur end - Configurable void damage height and damage + // Purpur end - Purpur config files + // DivineMC start - Configuration + try { + org.bxteam.divinemc.DivineConfig.init((java.io.File) options.valueOf("divinemc-settings")); + } catch (Exception e) { -+ DedicatedServer.LOGGER.error("Unable to load server configuration", e); ++ DedicatedServer.LOGGER.error("Unable to load DivineMC configuration", e); + return false; + } + org.bxteam.divinemc.command.DivineCommands.registerCommands(this); + // DivineMC end - Configuration - // Paper start - initialize global and world-defaults configuration - this.paperConfigurations.initializeGlobalConfiguration(this.registryAccess()); - this.paperConfigurations.initializeWorldDefaultsConfiguration(this.registryAccess()); + com.destroystokyo.paper.VersionHistoryManager.INSTANCE.getClass(); // Paper - load version history now + + this.setPvpAllowed(properties.pvp); diff --git a/net/minecraft/world/level/Level.java b/net/minecraft/world/level/Level.java index bbadbdfd643e61a6a3e55df7dd7a646ea1a9744b..38ddadf551c039202c68c44d740f23a08b58d003 100644 --- a/net/minecraft/world/level/Level.java diff --git a/divinemc-server/minecraft-patches/features/0003-Completely-remove-Mojang-profiler.patch b/divinemc-server/minecraft-patches/features/0003-Completely-remove-Mojang-profiler.patch index 8ca5590..426af29 100644 --- a/divinemc-server/minecraft-patches/features/0003-Completely-remove-Mojang-profiler.patch +++ b/divinemc-server/minecraft-patches/features/0003-Completely-remove-Mojang-profiler.patch @@ -213,7 +213,7 @@ index 18071dcc69cc28471dddb7de94e803ec1e5fc2e4..aa25f5ebaf7d1b22825b962b02dcae02 } } diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java -index 4e347f56c98283485f7e279322c19f899e6fd569..eb9b9473417a107092b05a9baf467410db32dc49 100644 +index 467f9af4446168134abd8d9ee1c4e6cc3479d73c..9956405d7f9d14af7278837adeede76dea8d4bd9 100644 --- a/net/minecraft/server/MinecraftServer.java +++ b/net/minecraft/server/MinecraftServer.java @@ -113,19 +113,8 @@ import net.minecraft.util.TimeUtil; @@ -260,7 +260,7 @@ index 4e347f56c98283485f7e279322c19f899e6fd569..eb9b9473417a107092b05a9baf467410 LOGGER.info("Stopping server"); Commands.COMMAND_SENDING_POOL.shutdownNow(); // Paper - Perf: Async command map building; Shutdown and don't bother finishing -@@ -1281,50 +1260,40 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop 0 && this.tickCount % autosavePeriod == 0; try { this.isSaving = true; -@@ -1606,10 +1572,8 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop serverPlayer1.connection.suspendFlushing()); this.server.getScheduler().mainThreadHeartbeat(); // CraftBukkit // Paper start - Folia scheduler API -@@ -1724,9 +1682,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop 0; // Purpur - Ridables @@ -431,7 +431,7 @@ index 4e347f56c98283485f7e279322c19f899e6fd569..eb9b9473417a107092b05a9baf467410 try { serverLevel.tick(hasTimeLeft); } catch (Throwable var7) { -@@ -1781,34 +1732,24 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop S spin(Function threadFunction) { AtomicReference atomicReference = new AtomicReference<>(); -@@ -1543,6 +1544,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop S spin(Function threadFunction) { AtomicReference atomicReference = new AtomicReference<>(); -@@ -1671,17 +1672,18 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop CODEC = Codec.STRING.comapFlatMap(string -> { diff --git a/net/minecraft/server/dedicated/DedicatedServer.java b/net/minecraft/server/dedicated/DedicatedServer.java -index 01d9c1919918bfee7f9bb998916d84f553cb526c..1c343a37dd4dedb99e08fda75434c3fbbf5fa459 100644 +index 0033b1acec1adfaaf8e6d9892fd9a971eb40b76a..25460607359b7f172842657f2693ce3bf6151750 100644 --- a/net/minecraft/server/dedicated/DedicatedServer.java +++ b/net/minecraft/server/dedicated/DedicatedServer.java -@@ -620,6 +620,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface +@@ -611,6 +611,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface @Override public boolean enforceSecureProfile() { @@ -218,7 +218,7 @@ index 01d9c1919918bfee7f9bb998916d84f553cb526c..1c343a37dd4dedb99e08fda75434c3fb // Paper start - Add setting for proxy online mode status return properties.enforceSecureProfile diff --git a/net/minecraft/server/network/ServerCommonPacketListenerImpl.java b/net/minecraft/server/network/ServerCommonPacketListenerImpl.java -index 482f0b5945a4ea12a805d3b926140a08151e21a6..7eb55fb6828612e63f7d3c14a2fdc7288a256cbd 100644 +index b865c2fd503c3f0368d77d28c2f7a7c7fa7008bb..b3356c65992b1bb165876dfc58a8331d6fda138c 100644 --- a/net/minecraft/server/network/ServerCommonPacketListenerImpl.java +++ b/net/minecraft/server/network/ServerCommonPacketListenerImpl.java @@ -311,10 +311,64 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack diff --git a/divinemc-server/minecraft-patches/features/0026-Virtual-Threads.patch b/divinemc-server/minecraft-patches/features/0026-Virtual-Threads.patch index c592364..4593cde 100644 --- a/divinemc-server/minecraft-patches/features/0026-Virtual-Threads.patch +++ b/divinemc-server/minecraft-patches/features/0026-Virtual-Threads.patch @@ -36,10 +36,10 @@ index 07e228b620962e507b7db70e5a743daf2e5c82ca..cff86f3a50529a9d1a8873aa6f7f77da new java.util.concurrent.LinkedBlockingQueue<>(), new com.google.common.util.concurrent.ThreadFactoryBuilder() diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java -index 28641e7672c0cf79d3400da36ea3ee3d9f04898e..3fe3e36439a750c2614fc94df4bbbe7375c37614 100644 +index 1a842ecfb717f7b5ed2fdb2779040ab0e857612d..b2e90749bcaf3b9132681713ab0afae95b3197ee 100644 --- a/net/minecraft/server/MinecraftServer.java +++ b/net/minecraft/server/MinecraftServer.java -@@ -2651,8 +2651,11 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop getWorlds() { diff --git a/divinemc-server/purpur-patches/features/0004-Configurable-movement-speed-for-entities.patch b/divinemc-server/purpur-patches/features/0004-Configurable-movement-speed-for-entities.patch index c912b67..62917cb 100644 --- a/divinemc-server/purpur-patches/features/0004-Configurable-movement-speed-for-entities.patch +++ b/divinemc-server/purpur-patches/features/0004-Configurable-movement-speed-for-entities.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Configurable movement speed for entities diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 286844cfad8b993f1fbc26a13e1a67381b24ff49..9714deeebe6aa4d37b6fdd5f3a71e1127a61f9f3 100644 +index 1adc4b9426e89924566e132b10d8ab2f07573b6c..99d40020f811588da0dce5ddcc81882eefb2eaaa 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -1593,6 +1593,7 @@ public class PurpurWorldConfig { @@ -73,14 +73,14 @@ index 286844cfad8b993f1fbc26a13e1a67381b24ff49..9714deeebe6aa4d37b6fdd5f3a71e112 public boolean zombifiedPiglinRidable = false; @@ -3461,6 +3469,7 @@ public class PurpurWorldConfig { - public boolean zombifiedPiglinCountAsPlayerKillWhenAngry = true; + public boolean zombifiedPiglinCountAsPlayerKillWhenAngry = false; public boolean zombifiedPiglinTakeDamageFromWater = false; public boolean zombifiedPiglinAlwaysDropExp = false; + public double zombifiedPiglinMovementSpeed = 0.23F; // DivineMC - Configurable movement speed for entities private void zombifiedPiglinSettings() { zombifiedPiglinRidable = getBoolean("mobs.zombified_piglin.ridable", zombifiedPiglinRidable); zombifiedPiglinRidableInWater = getBoolean("mobs.zombified_piglin.ridable-in-water", zombifiedPiglinRidableInWater); -@@ -3479,6 +3488,7 @@ public class PurpurWorldConfig { +@@ -3482,6 +3491,7 @@ public class PurpurWorldConfig { zombifiedPiglinCountAsPlayerKillWhenAngry = getBoolean("mobs.zombified_piglin.count-as-player-kill-when-angry", zombifiedPiglinCountAsPlayerKillWhenAngry); zombifiedPiglinTakeDamageFromWater = getBoolean("mobs.zombified_piglin.takes-damage-from-water", zombifiedPiglinTakeDamageFromWater); zombifiedPiglinAlwaysDropExp = getBoolean("mobs.zombified_piglin.always-drop-exp", zombifiedPiglinAlwaysDropExp); diff --git a/gradle.properties b/gradle.properties index 5e8c97a..15f0d0d 100644 --- a/gradle.properties +++ b/gradle.properties @@ -2,7 +2,7 @@ group = org.bxteam.divinemc version=1.21.5-R0.1-SNAPSHOT mcVersion=1.21.5 -purpurRef=bdeba761ac3db3184ab23a0b7badfa963ea1ce2e +purpurRef=6cc78b6308cabed2ebea27087b821c2421f6e1ff experimental=true org.gradle.configuration-cache=true