mirror of
https://github.com/PaperMC/Paper.git
synced 2024-09-12 06:58:11 +02:00
This enables us a fast reference to the entities current chunk instead of having to look it up by hashmap lookups. We also store counts by type to further enable other performance optimizations in later patches.
44 lines
1.7 KiB
Diff
44 lines
1.7 KiB
Diff
From 2de47d2a780d542cb93b6fa85bb8e90535a8de14 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 535a8d3ed..e3ff78180 100644
|
|
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
@@ -463,4 +463,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 4af557321..6ee9f6cfb 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.18.0
|
|
|