mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-20 09:57:43 +01:00
Configurable TPS Catchup
This commit is contained in:
committed by
granny
parent
417ddf761e
commit
676b9dbb76
@@ -1,37 +0,0 @@
|
|||||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
||||||
From: William Blake Galbreath <blake.galbreath@gmail.com>
|
|
||||||
Date: Thu, 26 Mar 2020 19:06:22 -0500
|
|
||||||
Subject: [PATCH] Configurable TPS Catchup
|
|
||||||
|
|
||||||
|
|
||||||
diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java
|
|
||||||
index 18dc66b78f91c0b9efdf9008c0a38c52fdfc93ad..22cbe00a19a2ac0ad25b1107b1290b793903e3aa 100644
|
|
||||||
--- a/net/minecraft/server/MinecraftServer.java
|
|
||||||
+++ b/net/minecraft/server/MinecraftServer.java
|
|
||||||
@@ -1344,6 +1344,12 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
|
||||||
gameprofilerfiller.popPush("nextTickWait");
|
|
||||||
this.mayHaveDelayedTasks = true;
|
|
||||||
this.delayedTasksMaxNextTickTimeNanos = Math.max(Util.getNanos() + i, this.nextTickTimeNanos);
|
|
||||||
+ // Pufferfish start - tps catchup
|
|
||||||
+ if (!org.purpurmc.purpur.PurpurConfig.tpsCatchup /*|| !gg.pufferfish.pufferfish.PufferfishConfig.tpsCatchup*/) { // Purpur
|
|
||||||
+ this.nextTickTimeNanos = currentTime + i;
|
|
||||||
+ this.delayedTasksMaxNextTickTimeNanos = nextTickTimeNanos;
|
|
||||||
+ }
|
|
||||||
+ // Pufferfish end
|
|
||||||
this.startMeasuringTaskExecutionTime();
|
|
||||||
this.waitUntilNextTick();
|
|
||||||
this.finishMeasuringTaskExecutionTime();
|
|
||||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
|
||||||
index 59b257051ed3040891f0a32b9c732f8bfabd6f7d..46d06b6887eac6b2e7b3fd9834fdd9284a773f39 100644
|
|
||||||
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
|
||||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
|
||||||
@@ -251,4 +251,9 @@ public class PurpurConfig {
|
|
||||||
loggerSuppressUnrecognizedRecipeErrors = getBoolean("settings.logger.suppress-unrecognized-recipe-errors", loggerSuppressUnrecognizedRecipeErrors);
|
|
||||||
loggerSuppressSetBlockFarChunk = getBoolean("settings.logger.suppress-setblock-in-far-chunk-errors", loggerSuppressSetBlockFarChunk);
|
|
||||||
}
|
|
||||||
+
|
|
||||||
+ public static boolean tpsCatchup = true;
|
|
||||||
+ private static void tpsCatchup() {
|
|
||||||
+ tpsCatchup = getBoolean("settings.tps-catchup", tpsCatchup);
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
@@ -16,6 +16,19 @@
|
|||||||
tickSection = currentTime;
|
tickSection = currentTime;
|
||||||
}
|
}
|
||||||
// Paper end - further improve server tick loop
|
// Paper end - further improve server tick loop
|
||||||
|
@@ -1260,6 +_,12 @@
|
||||||
|
profilerFiller.popPush("nextTickWait");
|
||||||
|
this.mayHaveDelayedTasks = true;
|
||||||
|
this.delayedTasksMaxNextTickTimeNanos = Math.max(Util.getNanos() + l, this.nextTickTimeNanos);
|
||||||
|
+ // Purpur start - Configurable TPS Catchup
|
||||||
|
+ if (!org.purpurmc.purpur.PurpurConfig.tpsCatchup /*|| !gg.pufferfish.pufferfish.PufferfishConfig.tpsCatchup*/) { // Purpur - Configurable TPS Catchup
|
||||||
|
+ this.nextTickTimeNanos = currentTime + l;
|
||||||
|
+ this.delayedTasksMaxNextTickTimeNanos = nextTickTimeNanos;
|
||||||
|
+ }
|
||||||
|
+ // Purpur end - Configurable TPS Catchup
|
||||||
|
this.startMeasuringTaskExecutionTime();
|
||||||
|
this.waitUntilNextTick();
|
||||||
|
this.finishMeasuringTaskExecutionTime();
|
||||||
@@ -1854,7 +_,7 @@
|
@@ -1854,7 +_,7 @@
|
||||||
|
|
||||||
@DontObfuscate
|
@DontObfuscate
|
||||||
|
|||||||
@@ -232,4 +232,9 @@ public class PurpurConfig {
|
|||||||
loggerSuppressUnrecognizedRecipeErrors = getBoolean("settings.logger.suppress-unrecognized-recipe-errors", loggerSuppressUnrecognizedRecipeErrors);
|
loggerSuppressUnrecognizedRecipeErrors = getBoolean("settings.logger.suppress-unrecognized-recipe-errors", loggerSuppressUnrecognizedRecipeErrors);
|
||||||
loggerSuppressSetBlockFarChunk = getBoolean("settings.logger.suppress-setblock-in-far-chunk-errors", loggerSuppressSetBlockFarChunk);
|
loggerSuppressSetBlockFarChunk = getBoolean("settings.logger.suppress-setblock-in-far-chunk-errors", loggerSuppressSetBlockFarChunk);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static boolean tpsCatchup = true;
|
||||||
|
private static void tpsCatchup() {
|
||||||
|
tpsCatchup = getBoolean("settings.tps-catchup", tpsCatchup);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user