diff --git a/paper-server/patches/features/0034-Relocate-tracker-tick-to-fix-MC-297196.patch b/paper-server/patches/features/0034-Relocate-tracker-tick-to-fix-MC-297196.patch new file mode 100644 index 000000000000..ab3e8694267a --- /dev/null +++ b/paper-server/patches/features/0034-Relocate-tracker-tick-to-fix-MC-297196.patch @@ -0,0 +1,44 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Alexandra-Myers +Date: Tue, 23 Sep 2025 21:19:33 -0400 +Subject: [PATCH] Relocate tracker tick to fix MC-297196 + + +diff --git a/net/minecraft/server/level/ChunkMap.java b/net/minecraft/server/level/ChunkMap.java +index eb352aa4296abc3ed4cf31c590bc0be66daf4de3..5d1b57862ce41bec30d1ae5faf94801913fd1c91 100644 +--- a/net/minecraft/server/level/ChunkMap.java ++++ b/net/minecraft/server/level/ChunkMap.java +@@ -999,7 +999,8 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider + } + + // Paper start - optimise entity tracker +- private void newTrackerTick() { ++ // Paper - Relocate tracker tick to fix MC-297196 ++ protected void newTrackerTick() { + final ca.spottedleaf.moonrise.patches.chunk_system.level.entity.server.ServerEntityLookup entityLookup = (ca.spottedleaf.moonrise.patches.chunk_system.level.entity.server.ServerEntityLookup)((ca.spottedleaf.moonrise.patches.chunk_system.level.ChunkSystemServerLevel)this.level).moonrise$getEntityLookup();; + + final ca.spottedleaf.moonrise.common.list.ReferenceList trackerEntities = entityLookup.trackerEntities; +@@ -1022,7 +1023,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider + protected void tick() { + // Paper start - optimise entity tracker + if (true) { +- this.newTrackerTick(); ++ // Paper - Relocate tracker tick to fix MC-297196 + return; + } + // Paper end - optimise entity tracker +diff --git a/net/minecraft/server/level/ServerLevel.java b/net/minecraft/server/level/ServerLevel.java +index dda8d38ef61672cc714d9e5a475f9b0412ed5ff9..8d6862c779fd89a900dc2963ebc8e49493525924 100644 +--- a/net/minecraft/server/level/ServerLevel.java ++++ b/net/minecraft/server/level/ServerLevel.java +@@ -821,6 +821,10 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe + + profilerFiller.push("entityManagement"); + // Paper - rewrite chunk system ++ // Paper start - Relocate tracker tick to fix MC-297196 ++ profilerFiller.popPush("tracker"); ++ this.getChunkSource().chunkMap.newTrackerTick(); ++ // Paper end - Relocate tracker tick to fix MC-297196 + profilerFiller.pop(); + } +