From 588852d2f750a9503bf2f32f0eef5b3e96a30136 Mon Sep 17 00:00:00 2001 From: Elias Date: Mon, 24 Aug 2026 02:13:18 +0200 Subject: [PATCH 1/6] Update WorldTicker.java --- .../main/java/com/windpvp/windspigot/world/WorldTicker.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/WindSpigot-Server/src/main/java/com/windpvp/windspigot/world/WorldTicker.java b/WindSpigot-Server/src/main/java/com/windpvp/windspigot/world/WorldTicker.java index dc3860dc..95139392 100644 --- a/WindSpigot-Server/src/main/java/com/windpvp/windspigot/world/WorldTicker.java +++ b/WindSpigot-Server/src/main/java/com/windpvp/windspigot/world/WorldTicker.java @@ -56,6 +56,9 @@ public void run() { worldserver.timings.tickEntities.startTiming(); // Spigot worldserver.tickEntities(); worldserver.timings.tickEntities.stopTiming(); // Spigot + for (EntityHuman human : worldserver.players) { // FalchusSpigot - per-world + ((EntityPlayer) human).playerConnection.sendQueuedPackets(); + } } catch (Throwable throwable1) { // Spigot Start try { @@ -103,4 +106,4 @@ public ResettableLatch getLatch() { return latch; } -} \ No newline at end of file +} From 072be6076413d035fdbf5b3139970c53ea1417f2 Mon Sep 17 00:00:00 2001 From: Elias Date: Mon, 24 Aug 2026 02:14:14 +0200 Subject: [PATCH 2/6] Update AsyncEntityTracker.java --- .../windspigot/async/entitytracker/AsyncEntityTracker.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/WindSpigot-Server/src/main/java/com/windpvp/windspigot/async/entitytracker/AsyncEntityTracker.java b/WindSpigot-Server/src/main/java/com/windpvp/windspigot/async/entitytracker/AsyncEntityTracker.java index 7ae5a292..7601a5a6 100644 --- a/WindSpigot-Server/src/main/java/com/windpvp/windspigot/async/entitytracker/AsyncEntityTracker.java +++ b/WindSpigot-Server/src/main/java/com/windpvp/windspigot/async/entitytracker/AsyncEntityTracker.java @@ -42,8 +42,8 @@ public void updatePlayers() { e.printStackTrace(); } worldServer.ticker.getLatch().reset(); - for (EntityPlayer player : MinecraftServer.getServer().getPlayerList().players) { - player.playerConnection.sendQueuedPackets(); + for (EntityHuman human : worldServer.players) { // FalchusSpigot - per-world + ((EntityPlayer) human).playerConnection.sendQueuedPackets(); } } From 2a063ca81f23934c240524fb86585fdf917c3401 Mon Sep 17 00:00:00 2001 From: Elias Date: Mon, 24 Aug 2026 02:14:58 +0200 Subject: [PATCH 3/6] Update WorldTicker.java --- .../windpvp/windspigot/world/WorldTicker.java | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/WindSpigot-Server/src/main/java/com/windpvp/windspigot/world/WorldTicker.java b/WindSpigot-Server/src/main/java/com/windpvp/windspigot/world/WorldTicker.java index 95139392..d043896a 100644 --- a/WindSpigot-Server/src/main/java/com/windpvp/windspigot/world/WorldTicker.java +++ b/WindSpigot-Server/src/main/java/com/windpvp/windspigot/world/WorldTicker.java @@ -6,13 +6,7 @@ import com.windpvp.windspigot.async.entitytracker.AsyncEntityTracker; import com.windpvp.windspigot.config.WindSpigotConfig; -import net.minecraft.server.CrashReport; -import net.minecraft.server.EntityPlayer; -import net.minecraft.server.MinecraftServer; -import net.minecraft.server.NetworkManager; -import net.minecraft.server.PlayerConnection; -import net.minecraft.server.ReportedException; -import net.minecraft.server.WorldServer; +import net.minecraft.server.*; public class WorldTicker implements Runnable { @@ -74,12 +68,14 @@ public void run() { worldserver.timings.tracker.startTiming(); // Spigot // this.methodProfiler.b(); // this.methodProfiler.a("tracker"); - if (MinecraftServer.getServer().getPlayerList().getPlayerCount() != 0) // Tuinity + if (worldserver.players.size() != 0) // Tuinity // FalchusSpigot - per-world { // Tuinity start - controlled flush for entity tracker packets - List disabledFlushes = new java.util.ArrayList<>( - MinecraftServer.getServer().getPlayerList().getPlayerCount()); - for (EntityPlayer player : MinecraftServer.getServer().getPlayerList().players) { + // FalchusSpigot start - per-world + List disabledFlushes = new java.util.ArrayList<>(worldserver.players.size()); + for (EntityHuman human : worldserver.players) { + EntityPlayer player = (EntityPlayer) human; + // FalchusSpigot end PlayerConnection connection = player.playerConnection; if (connection != null) { connection.networkManager.disableAutomaticFlush(); From 755574baf488d956f6fec991018ec7cfcdb101e3 Mon Sep 17 00:00:00 2001 From: Elias Date: Mon, 24 Aug 2026 02:15:24 +0200 Subject: [PATCH 4/6] Update EntityTracker.java --- .../src/main/java/net/minecraft/server/EntityTracker.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/WindSpigot-Server/src/main/java/net/minecraft/server/EntityTracker.java b/WindSpigot-Server/src/main/java/net/minecraft/server/EntityTracker.java index 3cda5736..d543aafa 100644 --- a/WindSpigot-Server/src/main/java/net/minecraft/server/EntityTracker.java +++ b/WindSpigot-Server/src/main/java/net/minecraft/server/EntityTracker.java @@ -151,8 +151,8 @@ public void updatePlayers() { entry.update(); } // WindSpigot start - for (EntityPlayer player : MinecraftServer.getServer().getPlayerList().players) { - player.playerConnection.sendQueuedPackets(); + for (EntityHuman human : world.players) { // FalchusSpigot - per-world + ((EntityPlayer) human).playerConnection.sendQueuedPackets(); } // WindSpigot end } From beee8c87bde6fb735edd70bfc76d23222867aad5 Mon Sep 17 00:00:00 2001 From: Elias Date: Mon, 24 Aug 2026 02:38:31 +0200 Subject: [PATCH 5/6] Update README.md --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 202642cf..e5aded90 100644 --- a/README.md +++ b/README.md @@ -230,6 +230,7 @@ See the patches list below. [FalchusSpigot-????] Fix MC-87 map scaling/cloning issues [FalchusSpigot-????] Fix view distance lookup [FalchusSpigot-????] Only send Dragon/Wither Death sounds to same world +[FalchusSpigot-????] sendQueuedPackets per-world [DashSpigot-0033] Fix SPIGOT-1746: Tile entities may not always tick [DashSpigot-0011] Fix MC-94186: Dragon egg falling in lazy chunks From 5fce21fd72fc05aa7d064c08cee4f90cb1900a9a Mon Sep 17 00:00:00 2001 From: Elias Date: Sat, 29 Aug 2026 01:40:54 +0200 Subject: [PATCH 6/6] already handled when ticking entities --- .../main/java/com/windpvp/windspigot/world/WorldTicker.java | 3 --- 1 file changed, 3 deletions(-) diff --git a/WindSpigot-Server/src/main/java/com/windpvp/windspigot/world/WorldTicker.java b/WindSpigot-Server/src/main/java/com/windpvp/windspigot/world/WorldTicker.java index d043896a..cec449ec 100644 --- a/WindSpigot-Server/src/main/java/com/windpvp/windspigot/world/WorldTicker.java +++ b/WindSpigot-Server/src/main/java/com/windpvp/windspigot/world/WorldTicker.java @@ -50,9 +50,6 @@ public void run() { worldserver.timings.tickEntities.startTiming(); // Spigot worldserver.tickEntities(); worldserver.timings.tickEntities.stopTiming(); // Spigot - for (EntityHuman human : worldserver.players) { // FalchusSpigot - per-world - ((EntityPlayer) human).playerConnection.sendQueuedPackets(); - } } catch (Throwable throwable1) { // Spigot Start try {