211cba970b
Provides an API to control the loot table for an object. Also provides a feature that any Lootable Inventory (Chests in Structures) can automatically replenish after a given time. This feature is good for long term worlds so that newer players do not suffer with "Every chest has been looted" API and Event added to control the Auto Replenish feature for players.
43 lines
2 KiB
Diff
43 lines
2 KiB
Diff
From cfb5df1da603ebc43de33db270bf0ec32836ee3c Mon Sep 17 00:00:00 2001
|
|
From: Zach Brown <zach.brown@destroystokyo.com>
|
|
Date: Wed, 2 Mar 2016 23:46:57 -0600
|
|
Subject: [PATCH] Configurable Chunk IO Thread Base Count
|
|
|
|
|
|
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
|
|
index f75b758..1b8165c 100644
|
|
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
|
|
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
|
|
@@ -192,4 +192,9 @@ public class PaperConfig {
|
|
Bukkit.getLogger().log(Level.INFO, "Disabling player interaction limiter, your server may be more vulnerable to malicious users");
|
|
}
|
|
}
|
|
+
|
|
+ public static int minChunkLoadThreads = 2;
|
|
+ public static void chunkLoadThreads() {
|
|
+ minChunkLoadThreads = Math.min(6, getInt("settings.min-chunk-load-threads", 2)); // Keep people from doing stupid things with max of 6
|
|
+ }
|
|
}
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/chunkio/ChunkIOExecutor.java b/src/main/java/org/bukkit/craftbukkit/chunkio/ChunkIOExecutor.java
|
|
index e4fd9bc..7b7a3d0 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/chunkio/ChunkIOExecutor.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/chunkio/ChunkIOExecutor.java
|
|
@@ -1,5 +1,6 @@
|
|
package org.bukkit.craftbukkit.chunkio;
|
|
|
|
+import com.destroystokyo.paper.PaperConfig;
|
|
import net.minecraft.server.Chunk;
|
|
import net.minecraft.server.ChunkProviderServer;
|
|
import net.minecraft.server.ChunkRegionLoader;
|
|
@@ -7,7 +8,7 @@ import net.minecraft.server.World;
|
|
import org.bukkit.craftbukkit.util.AsynchronousExecutor;
|
|
|
|
public class ChunkIOExecutor {
|
|
- static final int BASE_THREADS = 1;
|
|
+ static final int BASE_THREADS = PaperConfig.minChunkLoadThreads; // Paper
|
|
static final int PLAYERS_PER_THREAD = 50;
|
|
|
|
private static final AsynchronousExecutor<QueuedChunk, Chunk, Runnable, RuntimeException> instance = new AsynchronousExecutor<QueuedChunk, Chunk, Runnable, RuntimeException>(new ChunkIOProvider(), BASE_THREADS);
|
|
--
|
|
2.8.2
|
|
|