af480b8b95
Whilst the new behaviour was technically correct as it prevented the possibility of the chunk tick list actually increasing over time, it introduced a few issues, namely the fact that it slowed growth to unreasonable levels, and interfered with the values which server admins have finally tuned, and come to enjoy over the last few years. If it is absolutely essential that growth be halted and ticking reduced as much as possible, the config option is there for power users. If we wish to 'fix' this by default in the future, a new chunk ticking algorithm, which actually has meaningful config options should be designed.
51 lines
2.2 KiB
Diff
51 lines
2.2 KiB
Diff
From 2155a9e89454ee4120c716bcdc3b744e243ec84b Mon Sep 17 00:00:00 2001
|
|
From: md_5 <md_5@live.com.au>
|
|
Date: Sat, 22 Jun 2013 16:12:02 +1000
|
|
Subject: [PATCH] Allow Disabling of Random Lighting Updates
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
|
|
index 3bcca91..efe7ca5 100644
|
|
--- a/src/main/java/net/minecraft/server/Chunk.java
|
|
+++ b/src/main/java/net/minecraft/server/Chunk.java
|
|
@@ -895,7 +895,7 @@ public class Chunk {
|
|
}
|
|
|
|
this.m = true;
|
|
- if (!this.lit && this.done) {
|
|
+ if (!this.lit && this.done && this.world.spigotConfig.randomLightUpdates) { // Spigot - also use random light updates setting to determine if we should relight
|
|
this.p();
|
|
}
|
|
}
|
|
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
|
|
index 2cc9005..0b6b681 100644
|
|
--- a/src/main/java/net/minecraft/server/World.java
|
|
+++ b/src/main/java/net/minecraft/server/World.java
|
|
@@ -2024,7 +2024,7 @@ public abstract class World implements IBlockAccess {
|
|
}
|
|
|
|
this.methodProfiler.a("playerCheckLight");
|
|
- if (!this.players.isEmpty()) {
|
|
+ if (spigotConfig.randomLightUpdates && !this.players.isEmpty()) { // Spigot
|
|
i = this.random.nextInt(this.players.size());
|
|
entityhuman = (EntityHuman) this.players.get(i);
|
|
j = MathHelper.floor(entityhuman.locX) + this.random.nextInt(11) - 5;
|
|
diff --git a/src/main/java/org/spigotmc/SpigotWorldConfig.java b/src/main/java/org/spigotmc/SpigotWorldConfig.java
|
|
index 87eac1b..aa639fe 100644
|
|
--- a/src/main/java/org/spigotmc/SpigotWorldConfig.java
|
|
+++ b/src/main/java/org/spigotmc/SpigotWorldConfig.java
|
|
@@ -177,4 +177,11 @@ public class SpigotWorldConfig
|
|
hopperCheck = getInt( "ticks-per.hopper-check", hopperTransfer );
|
|
log( "Hopper Transfer: " + hopperTransfer + " Hopper Check: " + hopperCheck );
|
|
}
|
|
+
|
|
+ public boolean randomLightUpdates;
|
|
+ private void lightUpdates()
|
|
+ {
|
|
+ randomLightUpdates = getBoolean( "random-light-updates", false );
|
|
+ log( "Random Lighting Updates: " + randomLightUpdates );
|
|
+ }
|
|
}
|
|
--
|
|
1.8.3.2
|
|
|