From c8daaf7d245e95f4cfb1f27f0f53265d3bcd6e2c Mon Sep 17 00:00:00 2001 From: MrHua269 Date: Thu, 29 May 2025 10:31:17 +0800 Subject: [PATCH] Append new fix to adult off tickregion fixing --- ...r-off-region-adult-following-ai-behavior.patch | 15 ++++++++++++++- ...sbar-with-chunkhot-membar-and-region-bar.patch | 8 ++++---- ...0007-SparklyPaper-Optimize-canSee-checks.patch | 6 +++--- 3 files changed, 21 insertions(+), 8 deletions(-) diff --git a/luminol-server/minecraft-patches/features/0020-Add-fix-for-off-region-adult-following-ai-behavior.patch b/luminol-server/minecraft-patches/features/0020-Add-fix-for-off-region-adult-following-ai-behavior.patch index 48f64a1..12ea733 100644 --- a/luminol-server/minecraft-patches/features/0020-Add-fix-for-off-region-adult-following-ai-behavior.patch +++ b/luminol-server/minecraft-patches/features/0020-Add-fix-for-off-region-adult-following-ai-behavior.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add fix for off region adult following ai behavior diff --git a/net/minecraft/world/entity/ai/behavior/BabyFollowAdult.java b/net/minecraft/world/entity/ai/behavior/BabyFollowAdult.java -index a9be3acbf4ea52d2988347abfa6f4f8c02b1da26..751f3dde8e6bc2c0365e8672f5079af0379a69de 100644 +index a9be3acbf4ea52d2988347abfa6f4f8c02b1da26..a38fad8433c9e349a34e0a80442269943e614c9d 100644 --- a/net/minecraft/world/entity/ai/behavior/BabyFollowAdult.java +++ b/net/minecraft/world/entity/ai/behavior/BabyFollowAdult.java @@ -25,6 +25,14 @@ public class BabyFollowAdult { @@ -23,3 +23,16 @@ index a9be3acbf4ea52d2988347abfa6f4f8c02b1da26..751f3dde8e6bc2c0365e8672f5079af0 if (mob.closerThan(ageableMob, followRange.getMaxValue() + 1) && !mob.closerThan(ageableMob, followRange.getMinValue())) { // CraftBukkit start org.bukkit.event.entity.EntityTargetLivingEntityEvent event = org.bukkit.craftbukkit.event.CraftEventFactory.callEntityTargetLivingEvent(mob, ageableMob, org.bukkit.event.entity.EntityTargetEvent.TargetReason.FOLLOW_LEADER); +@@ -35,6 +43,12 @@ public class BabyFollowAdult { + nearestVisibleAdult.erase(); + return true; + } ++ // Luminol start - Fix off region baby follow adult ai ++ if (!ca.spottedleaf.moonrise.common.util.TickThread.isTickThreadFor(((org.bukkit.craftbukkit.entity.CraftEntity)event.getTarget()).getHandleRaw()) { ++ nearestVisibleAdult.erase(); ++ return true; ++ } ++ // Luminol end + ageableMob = ((org.bukkit.craftbukkit.entity.CraftLivingEntity) event.getTarget()).getHandle(); + // CraftBukkit end + WalkTarget walkTarget1 = new WalkTarget( diff --git a/luminol-server/paper-patches/features/0004-Add-tpsbar-with-chunkhot-membar-and-region-bar.patch b/luminol-server/paper-patches/features/0004-Add-tpsbar-with-chunkhot-membar-and-region-bar.patch index 50cca4a..0093f93 100644 --- a/luminol-server/paper-patches/features/0004-Add-tpsbar-with-chunkhot-membar-and-region-bar.patch +++ b/luminol-server/paper-patches/features/0004-Add-tpsbar-with-chunkhot-membar-and-region-bar.patch @@ -22,10 +22,10 @@ index 400e632208d133a3f49fc7f14bceb48a1026769b..631bec0adee5b01bfb931c25195b949e + // KioCG end } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 00abfbfc0c75434b18e89334a35b657519b51abc..7e5627c5b09a4fb7b923121355b351b5518fea50 100644 +index 0e32a9ad852e521ce9618acc1642d3748995b4bf..7133038efdef5d60a1bdccb012a2020e432ef25e 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -2365,6 +2365,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -2368,6 +2368,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { handle.newLevel = data.getIntOr("newLevel", 0); handle.expToDrop = data.getIntOr("expToDrop", 0); handle.keepLevel = data.getBooleanOr("keepLevel", false); @@ -41,7 +41,7 @@ index 00abfbfc0c75434b18e89334a35b657519b51abc..7e5627c5b09a4fb7b923121355b351b5 }); } -@@ -2386,6 +2395,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -2389,6 +2398,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { data.putLong("lastPlayed", System.currentTimeMillis()); data.putString("lastKnownName", handle.getScoreboardName()); @@ -57,7 +57,7 @@ index 00abfbfc0c75434b18e89334a35b657519b51abc..7e5627c5b09a4fb7b923121355b351b5 // Paper start - persist for use in offline save data if (!tag.contains("Paper")) { tag.put("Paper", new CompoundTag()); -@@ -3571,4 +3589,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -3581,4 +3599,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player { public void setDeathScreenScore(final int score) { getHandle().setScore(score); } diff --git a/luminol-server/paper-patches/features/0007-SparklyPaper-Optimize-canSee-checks.patch b/luminol-server/paper-patches/features/0007-SparklyPaper-Optimize-canSee-checks.patch index f3ece48..c2766bc 100644 --- a/luminol-server/paper-patches/features/0007-SparklyPaper-Optimize-canSee-checks.patch +++ b/luminol-server/paper-patches/features/0007-SparklyPaper-Optimize-canSee-checks.patch @@ -5,10 +5,10 @@ Subject: [PATCH] SparklyPaper Optimize canSee checks diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 7e5627c5b09a4fb7b923121355b351b5518fea50..21d5b328c7fc254c711ea0c4444bdbe3dd9b4a1f 100644 +index 7133038efdef5d60a1bdccb012a2020e432ef25e..77dd160db2d05d6542ae336fbd71eeae76479b91 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -213,7 +213,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -216,7 +216,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { private boolean hasPlayedBefore = false; private final ConversationTracker conversationTracker = new ConversationTracker(); private final Set channels = new HashSet(); @@ -17,7 +17,7 @@ index 7e5627c5b09a4fb7b923121355b351b5518fea50..21d5b328c7fc254c711ea0c4444bdbe3 private final Set unlistedEntities = new HashSet<>(); // Paper - Add Listing API for Player private static final WeakHashMap> pluginWeakReferences = new WeakHashMap<>(); private int hash = 0; -@@ -2264,9 +2264,16 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -2267,9 +2267,16 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @Override public boolean canSee(org.bukkit.entity.Entity entity) {