From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 1 Jan 2018 15:41:59 -0500 Subject: [PATCH] Configurable Chunks Sends per Tick setting Vanilla already had this limited, make it configurable. Limit how much exploration lags the server diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java index e6ee13ee5..8949b0290 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -0,0 +0,0 @@ public class PaperWorldConfig { expMergeMaxValue = getInt("experience-merge-max-value", -1); log("Experience Merge Max Value: " + expMergeMaxValue); } + + public int maxChunkSendsPerTick = 81; + private void maxChunkSendsPerTick() { + maxChunkSendsPerTick = getInt("max-chunk-sends-per-tick", maxChunkSendsPerTick); + if (maxChunkSendsPerTick <= 0) { + maxChunkSendsPerTick = 81; + } + log("Max Chunk Sends Per Tick: " + maxChunkSendsPerTick); + } } diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java index 4af557321..6ee9f6cfb 100644 --- a/src/main/java/net/minecraft/server/PlayerChunkMap.java +++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java @@ -0,0 +0,0 @@ public class PlayerChunkMap { } if (!this.g.isEmpty()) { - j = 81; + j = world.paperConfig.maxChunkSendsPerTick; // Paper try (Timing ignored = world.timings.doChunkMapPendingSendToPlayers.startTiming()) { // Paper Iterator iterator2 = this.g.iterator(); --