From 93c0258c7eefa18a1fc67c5c6473572b2db902c6 Mon Sep 17 00:00:00 2001 From: Helvetica Volubi Date: Sun, 19 Oct 2025 23:40:01 +0800 Subject: [PATCH] fix: use local lastTickCount to save data --- gradle.properties | 2 +- .../features/0002-Transformed-Configs.patch | 6 ++--- ...-config-to-enable-raytracing-tracker.patch | 4 ++-- .../0010-Rewrite-tickCount-support.patch | 22 +++++++++++-------- .../0023-Leaves-Leaves-Fakeplayer.patch | 6 ++--- 5 files changed, 22 insertions(+), 18 deletions(-) diff --git a/gradle.properties b/gradle.properties index f3a5021..95369f9 100644 --- a/gradle.properties +++ b/gradle.properties @@ -4,7 +4,7 @@ mcVersion=1.21.8 release=2 # 0 for skip release, 1 for pre-release, 2 for release -luminolRef=d872c4621ee629fe748a32b3461d877925aac425 +luminolRef=332099a920bc3e854ba1d37fc5651c0f922e32e8 org.gradle.configuration-cache=true org.gradle.caching=true diff --git a/lophine-server/luminol-patches/features/0002-Transformed-Configs.patch b/lophine-server/luminol-patches/features/0002-Transformed-Configs.patch index 52ddee9..8fea2a7 100644 --- a/lophine-server/luminol-patches/features/0002-Transformed-Configs.patch +++ b/lophine-server/luminol-patches/features/0002-Transformed-Configs.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Transformed Configs diff --git a/src/main/java/me/earthme/luminol/config/modules/experiment/CommandConfig.java b/src/main/java/me/earthme/luminol/config/modules/experiment/CommandConfig.java -index 66ae993896ba38a7fa5302d4ff88a52e4a0bb72c..c6d53d720437f43a713469049de3d90d1082cd2e 100644 +index ba360d57fd9ee2363c73863bc01b6592e59be4e5..86e6cc4c024ece5f45fb53b4cd341b1df2e8f0c7 100644 --- a/src/main/java/me/earthme/luminol/config/modules/experiment/CommandConfig.java +++ b/src/main/java/me/earthme/luminol/config/modules/experiment/CommandConfig.java @@ -11,6 +11,7 @@ public class CommandConfig implements IConfigModule { @@ -14,8 +14,8 @@ index 66ae993896ba38a7fa5302d4ff88a52e4a0bb72c..c6d53d720437f43a713469049de3d90d public static boolean data = false; + @TransformedConfig(name = "command_block_enabled", directory = {"experiment", "command"}, originInstance = "lophine") @TransformedConfig(name = "enabled", directory = {"experiment", "force_enable_command_block_command_execution"}) - @ConfigInfo(name = "enable_command_block") - public static boolean commandBlock = false; + @ConfigInfo(name = "enable_command_block", comments = """ + Force to enable command blocks. diff --git a/src/main/java/me/earthme/luminol/config/modules/optimizations/PaperPacketLimiterConfig.java b/src/main/java/me/earthme/luminol/config/modules/optimizations/PaperPacketLimiterConfig.java index 35e6014f04093050a9a62b895b43e5c5d8c6a28e..11abfb884f972fd73ca4c13a6e309de1bcd23fd5 100644 --- a/src/main/java/me/earthme/luminol/config/modules/optimizations/PaperPacketLimiterConfig.java diff --git a/lophine-server/minecraft-patches/features/0004-Add-config-to-enable-raytracing-tracker.patch b/lophine-server/minecraft-patches/features/0004-Add-config-to-enable-raytracing-tracker.patch index 9e55008..8284a7d 100644 --- a/lophine-server/minecraft-patches/features/0004-Add-config-to-enable-raytracing-tracker.patch +++ b/lophine-server/minecraft-patches/features/0004-Add-config-to-enable-raytracing-tracker.patch @@ -18,7 +18,7 @@ index 6868b915bf3deb85783a638d4441a15fea6da2dc..70740381c6501c1a518c52b24381edd1 double rangeY = level.paperConfig().entities.trackingRangeY.get(this.entity, -1); if (rangeY != -1) { diff --git a/net/minecraft/world/entity/Entity.java b/net/minecraft/world/entity/Entity.java -index 90c36bb87a761119edb376f3bd425d48d29bf36f..a720d8db40ca56c997a4eeae14ebbc6fe764892c 100644 +index 34d802060e096c5acfbd9a66fab96c0e8c792fe1..47ef63061737f3efdb0ce7ec71a8d9c920385bb0 100644 --- a/net/minecraft/world/entity/Entity.java +++ b/net/minecraft/world/entity/Entity.java @@ -147,7 +147,7 @@ import net.minecraft.world.waypoints.WaypointTransmitter; @@ -30,7 +30,7 @@ index 90c36bb87a761119edb376f3bd425d48d29bf36f..a720d8db40ca56c997a4eeae14ebbc6f // CraftBukkit start private static final int CURRENT_LEVEL = 2; public boolean preserveMotion = true; // Paper - Fix Entity Teleportation and cancel velocity if teleported; keep initial motion on first snapTo -@@ -6474,4 +6474,46 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -6480,4 +6480,46 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess // Paper end - Expose entity id counter public boolean shouldTickHot() { return this.tickCount > 20 * 10 && this.isAlive(); } // KioCG diff --git a/lophine-server/minecraft-patches/features/0010-Rewrite-tickCount-support.patch b/lophine-server/minecraft-patches/features/0010-Rewrite-tickCount-support.patch index 39ff89b..2ec8c3a 100644 --- a/lophine-server/minecraft-patches/features/0010-Rewrite-tickCount-support.patch +++ b/lophine-server/minecraft-patches/features/0010-Rewrite-tickCount-support.patch @@ -18,7 +18,7 @@ index b957585cf7cf7f845e20f59c7b355722880f3b4e..9b279d003eb9f780ed2723c98b28d9f4 if (!this.cancelled.get()) { throw new IllegalStateException("Scheduled region should be acquirable"); diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java -index b156b5c635f931a3d4abc0584591f90476d011a6..ef0b401affa58077e8dd32b52063202a1c7e0bb6 100644 +index b156b5c635f931a3d4abc0584591f90476d011a6..0c2b7aafa8ddee36d38fabd3561e6f97fce828f9 100644 --- a/net/minecraft/server/MinecraftServer.java +++ b/net/minecraft/server/MinecraftServer.java @@ -305,6 +305,8 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop lastTickCount = ThreadLocal.withInitial(() -> 0); // Lophine - reuse tick count @Override public CompletableFuture submit(java.util.function.Supplier task) { -@@ -2227,9 +2229,25 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop