diff --git a/luminol-server/minecraft-patches/features/0053-Disable-Heightmap-Warning.patch b/luminol-server/minecraft-patches/features/0017-Add-config-to-disable-heightmap-warning.patch similarity index 95% rename from luminol-server/minecraft-patches/features/0053-Disable-Heightmap-Warning.patch rename to luminol-server/minecraft-patches/features/0017-Add-config-to-disable-heightmap-warning.patch index b4731c4..0b950eb 100644 --- a/luminol-server/minecraft-patches/features/0053-Disable-Heightmap-Warning.patch +++ b/luminol-server/minecraft-patches/features/0017-Add-config-to-disable-heightmap-warning.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Helvetica Volubi Date: Sun, 13 Apr 2025 11:07:04 +0800 -Subject: [PATCH] Disable Heightmap Warning +Subject: [PATCH] Add config to disable heightmap warning diff --git a/net/minecraft/world/level/levelgen/Heightmap.java b/net/minecraft/world/level/levelgen/Heightmap.java diff --git a/luminol-server/minecraft-patches/features/0052-Revert-raid-changes.patch b/luminol-server/minecraft-patches/features/0018-Add-config-to-revert-raid-changes.patch similarity index 99% rename from luminol-server/minecraft-patches/features/0052-Revert-raid-changes.patch rename to luminol-server/minecraft-patches/features/0018-Add-config-to-revert-raid-changes.patch index f126d05..d078c08 100644 --- a/luminol-server/minecraft-patches/features/0052-Revert-raid-changes.patch +++ b/luminol-server/minecraft-patches/features/0018-Add-config-to-revert-raid-changes.patch @@ -1,7 +1,7 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Helvetica Volubi Date: Fri, 11 Apr 2025 16:53:57 +0800 -Subject: [PATCH] Revert raid changes +Subject: [PATCH] Add config to revert raid changes diff --git a/net/minecraft/world/effect/BadOmenMobEffect.java b/net/minecraft/world/effect/BadOmenMobEffect.java diff --git a/luminol-server/minecraft-patches/features/0017-Teleport-async-if-entity-was-moving-to-another-regio.patch b/luminol-server/minecraft-patches/features/0019-Teleport-async-if-entity-was-moving-to-another-regio.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0017-Teleport-async-if-entity-was-moving-to-another-regio.patch rename to luminol-server/minecraft-patches/features/0019-Teleport-async-if-entity-was-moving-to-another-regio.patch diff --git a/luminol-server/minecraft-patches/features/0018-Try-fixing-folia-off-region-POI-accessing-issue.patch b/luminol-server/minecraft-patches/features/0020-Try-fixing-folia-off-region-POI-accessing-issue.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0018-Try-fixing-folia-off-region-POI-accessing-issue.patch rename to luminol-server/minecraft-patches/features/0020-Try-fixing-folia-off-region-POI-accessing-issue.patch diff --git a/luminol-server/minecraft-patches/features/0019-Force-disable-builtin-spark-plugin.patch b/luminol-server/minecraft-patches/features/0021-Force-disable-builtin-spark-plugin.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0019-Force-disable-builtin-spark-plugin.patch rename to luminol-server/minecraft-patches/features/0021-Force-disable-builtin-spark-plugin.patch diff --git a/luminol-server/minecraft-patches/features/0020-Merge-Paper-11945-for-temporary-hopper-behavior-fix.patch b/luminol-server/minecraft-patches/features/0022-Merge-Paper-11945-for-temporary-hopper-behavior-fix.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0020-Merge-Paper-11945-for-temporary-hopper-behavior-fix.patch rename to luminol-server/minecraft-patches/features/0022-Merge-Paper-11945-for-temporary-hopper-behavior-fix.patch diff --git a/luminol-server/minecraft-patches/features/0021-Fix-uncorrected-death-check-of-folia.patch b/luminol-server/minecraft-patches/features/0023-Fix-uncorrected-death-check-of-folia.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0021-Fix-uncorrected-death-check-of-folia.patch rename to luminol-server/minecraft-patches/features/0023-Fix-uncorrected-death-check-of-folia.patch diff --git a/luminol-server/minecraft-patches/features/0022-Fix-a-series-issue-around-entity-memory-typed-Global.patch b/luminol-server/minecraft-patches/features/0024-Fix-a-series-issue-around-entity-memory-typed-Global.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0022-Fix-a-series-issue-around-entity-memory-typed-Global.patch rename to luminol-server/minecraft-patches/features/0024-Fix-a-series-issue-around-entity-memory-typed-Global.patch diff --git a/luminol-server/minecraft-patches/features/0023-Do-not-search-the-block-out-of-current-region.patch b/luminol-server/minecraft-patches/features/0025-Do-not-search-the-block-out-of-current-region.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0023-Do-not-search-the-block-out-of-current-region.patch rename to luminol-server/minecraft-patches/features/0025-Do-not-search-the-block-out-of-current-region.patch diff --git a/luminol-server/minecraft-patches/features/0024-Correct-player-respawn-place.patch b/luminol-server/minecraft-patches/features/0026-Correct-player-respawn-place.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0024-Correct-player-respawn-place.patch rename to luminol-server/minecraft-patches/features/0026-Correct-player-respawn-place.patch diff --git a/luminol-server/minecraft-patches/features/0025-Command-IllegalArgumentException-crash-fix.patch b/luminol-server/minecraft-patches/features/0027-Command-IllegalArgumentException-crash-fix.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0025-Command-IllegalArgumentException-crash-fix.patch rename to luminol-server/minecraft-patches/features/0027-Command-IllegalArgumentException-crash-fix.patch diff --git a/luminol-server/minecraft-patches/features/0026-Kaiiju-Don-t-pathfind-outside-region.patch b/luminol-server/minecraft-patches/features/0028-Kaiiju-Don-t-pathfind-outside-region.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0026-Kaiiju-Don-t-pathfind-outside-region.patch rename to luminol-server/minecraft-patches/features/0028-Kaiiju-Don-t-pathfind-outside-region.patch diff --git a/luminol-server/minecraft-patches/features/0027-Kaiiju-Vanilla-end-portal-teleportation.patch b/luminol-server/minecraft-patches/features/0029-Kaiiju-Vanilla-end-portal-teleportation.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0027-Kaiiju-Vanilla-end-portal-teleportation.patch rename to luminol-server/minecraft-patches/features/0029-Kaiiju-Vanilla-end-portal-teleportation.patch diff --git a/luminol-server/minecraft-patches/features/0028-Kaiiju-Entity-tick-and-removal-limiter.patch b/luminol-server/minecraft-patches/features/0030-Kaiiju-Entity-tick-and-removal-limiter.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0028-Kaiiju-Entity-tick-and-removal-limiter.patch rename to luminol-server/minecraft-patches/features/0030-Kaiiju-Entity-tick-and-removal-limiter.patch diff --git a/luminol-server/minecraft-patches/features/0029-Purpur-Use-alternative-keep-alive.patch b/luminol-server/minecraft-patches/features/0031-Purpur-Use-alternative-keep-alive.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0029-Purpur-Use-alternative-keep-alive.patch rename to luminol-server/minecraft-patches/features/0031-Purpur-Use-alternative-keep-alive.patch diff --git a/luminol-server/minecraft-patches/features/0030-Purpur-Lobotomize-stuck-villagers.patch b/luminol-server/minecraft-patches/features/0032-Purpur-Lobotomize-stuck-villagers.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0030-Purpur-Lobotomize-stuck-villagers.patch rename to luminol-server/minecraft-patches/features/0032-Purpur-Lobotomize-stuck-villagers.patch diff --git a/luminol-server/minecraft-patches/features/0031-Purpur-Barrels-and-enderchests-6-rows.patch b/luminol-server/minecraft-patches/features/0033-Purpur-Barrels-and-enderchests-6-rows.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0031-Purpur-Barrels-and-enderchests-6-rows.patch rename to luminol-server/minecraft-patches/features/0033-Purpur-Barrels-and-enderchests-6-rows.patch diff --git a/luminol-server/minecraft-patches/features/0032-Petal-Reduce-sensor-work.patch b/luminol-server/minecraft-patches/features/0034-Petal-Reduce-sensor-work.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0032-Petal-Reduce-sensor-work.patch rename to luminol-server/minecraft-patches/features/0034-Petal-Reduce-sensor-work.patch diff --git a/luminol-server/minecraft-patches/features/0033-Pufferfish-Cache-climbing-check-for-activation.patch b/luminol-server/minecraft-patches/features/0035-Pufferfish-Cache-climbing-check-for-activation.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0033-Pufferfish-Cache-climbing-check-for-activation.patch rename to luminol-server/minecraft-patches/features/0035-Pufferfish-Cache-climbing-check-for-activation.patch diff --git a/luminol-server/minecraft-patches/features/0034-Pufferfish-Reduce-chunk-loading-lookups.patch b/luminol-server/minecraft-patches/features/0036-Pufferfish-Reduce-chunk-loading-lookups.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0034-Pufferfish-Reduce-chunk-loading-lookups.patch rename to luminol-server/minecraft-patches/features/0036-Pufferfish-Reduce-chunk-loading-lookups.patch diff --git a/luminol-server/minecraft-patches/features/0035-Gale-Use-platform-math-functions.patch b/luminol-server/minecraft-patches/features/0037-Gale-Use-platform-math-functions.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0035-Gale-Use-platform-math-functions.patch rename to luminol-server/minecraft-patches/features/0037-Gale-Use-platform-math-functions.patch diff --git a/luminol-server/minecraft-patches/features/0036-Gale-Variable-entity-wake-up-duration.patch b/luminol-server/minecraft-patches/features/0038-Gale-Variable-entity-wake-up-duration.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0036-Gale-Variable-entity-wake-up-duration.patch rename to luminol-server/minecraft-patches/features/0038-Gale-Variable-entity-wake-up-duration.patch diff --git a/luminol-server/minecraft-patches/features/0037-Gale-Skip-entity-move-if-movement-is-zero.patch b/luminol-server/minecraft-patches/features/0039-Gale-Skip-entity-move-if-movement-is-zero.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0037-Gale-Skip-entity-move-if-movement-is-zero.patch rename to luminol-server/minecraft-patches/features/0039-Gale-Skip-entity-move-if-movement-is-zero.patch diff --git a/luminol-server/minecraft-patches/features/0038-Gale-Replace-AI-attributes-with-optimized-collection.patch b/luminol-server/minecraft-patches/features/0040-Gale-Replace-AI-attributes-with-optimized-collection.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0038-Gale-Replace-AI-attributes-with-optimized-collection.patch rename to luminol-server/minecraft-patches/features/0040-Gale-Replace-AI-attributes-with-optimized-collection.patch diff --git a/luminol-server/minecraft-patches/features/0039-Gale-Optimize-noise-generation.patch b/luminol-server/minecraft-patches/features/0041-Gale-Optimize-noise-generation.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0039-Gale-Optimize-noise-generation.patch rename to luminol-server/minecraft-patches/features/0041-Gale-Optimize-noise-generation.patch diff --git a/luminol-server/minecraft-patches/features/0040-SparklyPaper-Optimize-canSee-checks.patch b/luminol-server/minecraft-patches/features/0042-SparklyPaper-Optimize-canSee-checks.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0040-SparklyPaper-Optimize-canSee-checks.patch rename to luminol-server/minecraft-patches/features/0042-SparklyPaper-Optimize-canSee-checks.patch diff --git a/luminol-server/minecraft-patches/features/0041-SparklyPaper-Skip-distanceToSqr-call-in-ServerEntity.patch b/luminol-server/minecraft-patches/features/0043-SparklyPaper-Skip-distanceToSqr-call-in-ServerEntity.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0041-SparklyPaper-Skip-distanceToSqr-call-in-ServerEntity.patch rename to luminol-server/minecraft-patches/features/0043-SparklyPaper-Skip-distanceToSqr-call-in-ServerEntity.patch diff --git a/luminol-server/minecraft-patches/features/0042-Leaf-Secure-seed-and-matter-seed-command.patch b/luminol-server/minecraft-patches/features/0044-Leaf-Secure-seed-and-matter-seed-command.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0042-Leaf-Secure-seed-and-matter-seed-command.patch rename to luminol-server/minecraft-patches/features/0044-Leaf-Secure-seed-and-matter-seed-command.patch diff --git a/luminol-server/minecraft-patches/features/0043-Leaf-Remove-useless-creating-stats-json-bases-on-pla.patch b/luminol-server/minecraft-patches/features/0045-Leaf-Remove-useless-creating-stats-json-bases-on-pla.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0043-Leaf-Remove-useless-creating-stats-json-bases-on-pla.patch rename to luminol-server/minecraft-patches/features/0045-Leaf-Remove-useless-creating-stats-json-bases-on-pla.patch diff --git a/luminol-server/minecraft-patches/features/0044-Leaf-Replace-brain-maps-with-optimized-collection.patch b/luminol-server/minecraft-patches/features/0046-Leaf-Replace-brain-maps-with-optimized-collection.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0044-Leaf-Replace-brain-maps-with-optimized-collection.patch rename to luminol-server/minecraft-patches/features/0046-Leaf-Replace-brain-maps-with-optimized-collection.patch diff --git a/luminol-server/minecraft-patches/features/0045-Leaf-Paper-PR-Prevent-zombie-reinforcements-loading-.patch b/luminol-server/minecraft-patches/features/0047-Leaf-Paper-PR-Prevent-zombie-reinforcements-loading-.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0045-Leaf-Paper-PR-Prevent-zombie-reinforcements-loading-.patch rename to luminol-server/minecraft-patches/features/0047-Leaf-Paper-PR-Prevent-zombie-reinforcements-loading-.patch diff --git a/luminol-server/minecraft-patches/features/0046-Tick-regions-api.patch b/luminol-server/minecraft-patches/features/0048-Tick-regions-api.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0046-Tick-regions-api.patch rename to luminol-server/minecraft-patches/features/0048-Tick-regions-api.patch diff --git a/luminol-server/minecraft-patches/features/0047-Add-missing-teleportation-apis-for-folia.patch b/luminol-server/minecraft-patches/features/0049-Add-missing-teleportation-apis-for-folia.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0047-Add-missing-teleportation-apis-for-folia.patch rename to luminol-server/minecraft-patches/features/0049-Add-missing-teleportation-apis-for-folia.patch diff --git a/luminol-server/minecraft-patches/features/0056-Fix-off-tickregion-sync-teleport.patch b/luminol-server/minecraft-patches/features/0050-Fix-off-tickregion-sync-teleport.patch similarity index 73% rename from luminol-server/minecraft-patches/features/0056-Fix-off-tickregion-sync-teleport.patch rename to luminol-server/minecraft-patches/features/0050-Fix-off-tickregion-sync-teleport.patch index 23c003a..7e40db1 100644 --- a/luminol-server/minecraft-patches/features/0056-Fix-off-tickregion-sync-teleport.patch +++ b/luminol-server/minecraft-patches/features/0050-Fix-off-tickregion-sync-teleport.patch @@ -5,18 +5,20 @@ Subject: [PATCH] Fix off tickregion sync teleport diff --git a/net/minecraft/world/entity/Entity.java b/net/minecraft/world/entity/Entity.java -index ceca76a5791e319dd7cc4048c9860b1df065b95a..fc7da66320bfd8701b754e607ad18370f460fd4d 100644 +index ccf1914b4f48ecc0f4fe980510f42d5415ec1daa..2ea6160492cb23e96271dfbfd3bd35fe03109d6a 100644 --- a/net/minecraft/world/entity/Entity.java +++ b/net/minecraft/world/entity/Entity.java -@@ -4067,6 +4067,19 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4067,6 +4067,21 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess this.resetStoredPositions(); } + // Luminol start - Fix sync teleport issue -+ private boolean getNearByEdge(int destX, int destZ) { ++ private boolean checkNearbyTickRegions(int destX, int destZ) { ++ // Dumb end gateway search the chunks in radius of 5 chunks, so we need keep 6(5+1) by default check radius + int sizeBx = Math.min(6, (int) (this.bb.maxX - this.bb.minX) + this.level.getCraftServer().getSimulationDistance()); + int sizeBz = Math.min(6, (int) (this.bb.maxZ - this.bb.minZ) + this.level.getCraftServer().getSimulationDistance()); + ++ // check tick thread around these area + return ca.spottedleaf.moonrise.common.util.TickThread.isTickThreadFor(this.level, + (destX >> 4) - sizeBx, + (destZ >> 4) - sizeBz, @@ -28,12 +30,13 @@ index ceca76a5791e319dd7cc4048c9860b1df065b95a..fc7da66320bfd8701b754e607ad18370 protected final void transform(TeleportTransition telpeort) { PositionMoveRotation move = PositionMoveRotation.calculateAbsolute( PositionMoveRotation.of(this), PositionMoveRotation.of(telpeort), telpeort.relatives() -@@ -4189,7 +4202,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4189,7 +4204,8 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess // check for same region if (destination == this.level()) { Vec3 currPos = this.position(); - if ( -+ if (this.getNearByEdge((int) pos.x, (int) pos.z) && // Luminol - Fix sync teleport issue ++ // Luminol - Prevent entity sync teleported to the edge of tickregion ++ if (this.checkNearbyTickRegions((int) pos.x, (int) pos.z) && // Luminol - Fix sync teleport issue destination.regioniser.getRegionAtUnsynchronised( ca.spottedleaf.moonrise.common.util.CoordinateUtils.getChunkX(currPos), ca.spottedleaf.moonrise.common.util.CoordinateUtils.getChunkZ(currPos) ) == destination.regioniser.getRegionAtUnsynchronised( diff --git a/luminol-server/minecraft-patches/features/0058-Portal-Behavior-Modifiers.patch b/luminol-server/minecraft-patches/features/0051-Portal-Behavior-Modifiers.patch similarity index 96% rename from luminol-server/minecraft-patches/features/0058-Portal-Behavior-Modifiers.patch rename to luminol-server/minecraft-patches/features/0051-Portal-Behavior-Modifiers.patch index 25e6a6b..50deeef 100644 --- a/luminol-server/minecraft-patches/features/0058-Portal-Behavior-Modifiers.patch +++ b/luminol-server/minecraft-patches/features/0051-Portal-Behavior-Modifiers.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Portal Behavior Modifiers diff --git a/net/minecraft/world/entity/Entity.java b/net/minecraft/world/entity/Entity.java -index fc7da66320bfd8701b754e607ad18370f460fd4d..ddea23366c290ce44cc0c6764dffba5aeb63772a 100644 +index 2ea6160492cb23e96271dfbfd3bd35fe03109d6a..2871980e53a66bdacf7c00e7045ad01d68a972d3 100644 --- a/net/minecraft/world/entity/Entity.java +++ b/net/minecraft/world/entity/Entity.java @@ -3304,7 +3304,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess @@ -51,7 +51,7 @@ index fc7da66320bfd8701b754e607ad18370f460fd4d..ddea23366c290ce44cc0c6764dffba5a public void addTracker() { for (final EntityTreeNode node : this.getFullTree()) { -@@ -4558,6 +4565,12 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4561,6 +4568,12 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } @@ -64,7 +64,7 @@ index fc7da66320bfd8701b754e607ad18370f460fd4d..ddea23366c290ce44cc0c6764dffba5a protected boolean portalToAsync(ServerLevel destination, BlockPos portalPos, boolean takePassengers, PortalType type, java.util.function.Consumer teleportComplete) { ca.spottedleaf.moonrise.common.util.TickThread.ensureTickThread(this, "Cannot portal entity async"); -@@ -4641,6 +4654,8 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4644,6 +4657,8 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess info.postTeleportTransition().onTransition(teleported); } diff --git a/luminol-server/minecraft-patches/features/0048-Leaves-Disable-moved-wrongly-threshold.patch b/luminol-server/minecraft-patches/features/0052-Leaves-Disable-moved-wrongly-threshold.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0048-Leaves-Disable-moved-wrongly-threshold.patch rename to luminol-server/minecraft-patches/features/0052-Leaves-Disable-moved-wrongly-threshold.patch diff --git a/luminol-server/minecraft-patches/features/0049-Leaves-Fix-Incorrect-Collision-Behavior-for-Block-Sh.patch b/luminol-server/minecraft-patches/features/0053-Leaves-Fix-Incorrect-Collision-Behavior-for-Block-Sh.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0049-Leaves-Fix-Incorrect-Collision-Behavior-for-Block-Sh.patch rename to luminol-server/minecraft-patches/features/0053-Leaves-Fix-Incorrect-Collision-Behavior-for-Block-Sh.patch diff --git a/luminol-server/minecraft-patches/features/0050-Leaves-Fix-SculkCatalyst-exp-skip.patch b/luminol-server/minecraft-patches/features/0054-Leaves-Fix-SculkCatalyst-exp-skip.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0050-Leaves-Fix-SculkCatalyst-exp-skip.patch rename to luminol-server/minecraft-patches/features/0054-Leaves-Fix-SculkCatalyst-exp-skip.patch diff --git a/luminol-server/minecraft-patches/features/0051-Raytracing-tracker-experiment.patch b/luminol-server/minecraft-patches/features/0055-Raytracing-tracker-experiment.patch similarity index 97% rename from luminol-server/minecraft-patches/features/0051-Raytracing-tracker-experiment.patch rename to luminol-server/minecraft-patches/features/0055-Raytracing-tracker-experiment.patch index 0b15b36..be8a11c 100644 --- a/luminol-server/minecraft-patches/features/0051-Raytracing-tracker-experiment.patch +++ b/luminol-server/minecraft-patches/features/0055-Raytracing-tracker-experiment.patch @@ -19,7 +19,7 @@ index 7eff847790394aecd058e7a61905da86163b4c6e..9099457f55a2829297ac1db8a69a98ff 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 ccf1914b4f48ecc0f4fe980510f42d5415ec1daa..ceca76a5791e319dd7cc4048c9860b1df065b95a 100644 +index 2871980e53a66bdacf7c00e7045ad01d68a972d3..2005f769d21de40621beb913446e816b87a03c3a 100644 --- a/net/minecraft/world/entity/Entity.java +++ b/net/minecraft/world/entity/Entity.java @@ -135,7 +135,7 @@ import net.minecraft.world.scores.ScoreHolder; @@ -31,7 +31,7 @@ index ccf1914b4f48ecc0f4fe980510f42d5415ec1daa..ceca76a5791e319dd7cc4048c9860b1d // CraftBukkit start private static final int CURRENT_LEVEL = 2; -@@ -6049,4 +6049,46 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -6080,4 +6080,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/luminol-server/minecraft-patches/features/0054-Lithium-Fast-util.patch b/luminol-server/minecraft-patches/features/0056-Lithium-Fast-util.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0054-Lithium-Fast-util.patch rename to luminol-server/minecraft-patches/features/0056-Lithium-Fast-util.patch diff --git a/luminol-server/minecraft-patches/features/0055-Lithium-Skip-unnecessary-calculations-if-player-is-n.patch b/luminol-server/minecraft-patches/features/0057-Lithium-Skip-unnecessary-calculations-if-player-is-n.patch similarity index 100% rename from luminol-server/minecraft-patches/features/0055-Lithium-Skip-unnecessary-calculations-if-player-is-n.patch rename to luminol-server/minecraft-patches/features/0057-Lithium-Skip-unnecessary-calculations-if-player-is-n.patch diff --git a/luminol-server/minecraft-patches/features/0057-Cross-Region-Damage-trace.patch b/luminol-server/minecraft-patches/features/0058-Cross-Region-Damage-trace.patch similarity index 94% rename from luminol-server/minecraft-patches/features/0057-Cross-Region-Damage-trace.patch rename to luminol-server/minecraft-patches/features/0058-Cross-Region-Damage-trace.patch index 0d05d39..010942c 100644 --- a/luminol-server/minecraft-patches/features/0057-Cross-Region-Damage-trace.patch +++ b/luminol-server/minecraft-patches/features/0058-Cross-Region-Damage-trace.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Cross Region Damage trace diff --git a/net/minecraft/server/level/ServerPlayer.java b/net/minecraft/server/level/ServerPlayer.java -index d0853f44f1b4c88ba62a74db9e49a32709685425..aa9b426b848dcc3ce010a58ff5aff291af7a7926 100644 +index d0853f44f1b4c88ba62a74db9e49a32709685425..dfe0ebfefae40270e3732fb0dfc593fa8b5803d9 100644 --- a/net/minecraft/server/level/ServerPlayer.java +++ b/net/minecraft/server/level/ServerPlayer.java @@ -1378,6 +1378,13 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc @@ -22,17 +22,21 @@ index d0853f44f1b4c88ba62a74db9e49a32709685425..aa9b426b848dcc3ce010a58ff5aff291 } this.level().broadcastEntityEvent(this, (byte)3); -@@ -1392,6 +1399,20 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc +@@ -1392,6 +1399,24 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc this.setClientLoaded(false); } + // Luminol Start - Cross Region Damage trace + private void damageTransferToAsync(LivingEntity entity, DamageSource cause) { ++ // Operations running on current entity ++ this.awardStat(Stats.ENTITY_KILLED_BY.get(entity.getType())); ++ this.createWitherRose(entity); ++ ++ // the entity might be in another tickregion sometimes, so we need to schedule the task onto the entity ++ // to ensure thread safe + entity.getBukkitEntity().taskScheduler.schedule((LivingEntity nmsEntity) -> { + try { -+ this.awardStat(Stats.ENTITY_KILLED_BY.get(nmsEntity.getType())); + nmsEntity.awardKillScore(this, cause); -+ this.createWitherRose(nmsEntity); + } catch (Throwable ex) { + LOGGER.error(ex.getMessage(), ex); + }