PaperMC/Spigot-Server-Patches/0256-Configurable-Chunks-Sends-per-Tick-setting.patch

44 lines
1.7 KiB
Diff
Raw Normal View History

From f0a620d88b20747060726bb0ffc329917aadaa12 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
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 e6ee13ee..8949b029 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
@@ -456,4 +456,13 @@ 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 4af55732..6ee9f6cf 100644
--- a/src/main/java/net/minecraft/server/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java
@@ -198,7 +198,7 @@ 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();
--
2.14.3