mirror of
https://github.com/Dreeam-qwq/Gale.git
synced 2025-12-23 16:59:23 +00:00
Updated Upstream (Paper)
Upstream has released updates that appear to apply and compile correctly Paper Changes: PaperMC/Paper@3b45454 Port random ticking optimisation from Moonrise PaperMC/Paper@77fcb29 Apply incremental player/level saving patch PaperMC/Paper@9fd7710 Apply automatic regionfile header recalculation patch PaperMC/Paper@b57b24d Do not try to stop main thread during watchdog shutdown
This commit is contained in:
@@ -64,4 +64,5 @@ Binaries are licensed under GPL-3.0.
|
|||||||
|
|
||||||
## TODO
|
## TODO
|
||||||
check Cache CubeVoxelShape shape array (crash)
|
check Cache CubeVoxelShape shape array (crash)
|
||||||
|
check performance of Use aging cache for biome temperatures
|
||||||
check backupRegionFile() in Add xor-shift random patch
|
check backupRegionFile() in Add xor-shift random patch
|
||||||
@@ -2,7 +2,7 @@ group=org.galemc.gale
|
|||||||
version=1.21-R0.1-SNAPSHOT
|
version=1.21-R0.1-SNAPSHOT
|
||||||
|
|
||||||
mcVersion=1.21
|
mcVersion=1.21
|
||||||
paperRef=8b230185755c54a85194d85461f0a4262185c10c
|
paperRef=b57b24d549c65ddc5eb3edcc1ecc6aad2826dbd8
|
||||||
|
|
||||||
org.gradle.caching=false
|
org.gradle.caching=false
|
||||||
org.gradle.parallel=true
|
org.gradle.parallel=true
|
||||||
|
|||||||
@@ -463,25 +463,6 @@ index 790bad0494454ca12ee152e3de6da3da634d9b20..2596e0ee4df5b96f181e28a742ef3459
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
|
||||||
index 54e581db732c3a104142a2bbc228ecbe16aec0fc..bccbc04c3322db5050871abcbf5ef592c38e95d4 100644
|
|
||||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
|
||||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
|
||||||
@@ -1029,7 +1029,13 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
|
||||||
shutdownThread = Thread.currentThread();
|
|
||||||
org.spigotmc.WatchdogThread.doStop(); // Paper
|
|
||||||
if (!isSameThread()) {
|
|
||||||
- MinecraftServer.LOGGER.info("Stopping main thread (Ignore any thread death message you see! - DO NOT REPORT THREAD DEATH TO PAPER)");
|
|
||||||
+ // Gale start - branding changes
|
|
||||||
+ /*
|
|
||||||
+ We do not want people to report thread issues to Paper,
|
|
||||||
+ but we do want people to report thread issues to Gale.
|
|
||||||
+ */
|
|
||||||
+ MinecraftServer.LOGGER.info("Stopping main thread (Ignore any thread death message you see! - DO NOT REPORT THREAD DEATH TO PAPER - If you think this is a Gale bug, please report it at https://github.com/GaleMC/Gale/issues)");
|
|
||||||
+ // Gale end - branding changes
|
|
||||||
while (this.getRunningThread().isAlive()) {
|
|
||||||
this.getRunningThread().stop();
|
|
||||||
try {
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/damagesource/DamageSource.java b/src/main/java/net/minecraft/world/damagesource/DamageSource.java
|
diff --git a/src/main/java/net/minecraft/world/damagesource/DamageSource.java b/src/main/java/net/minecraft/world/damagesource/DamageSource.java
|
||||||
index bb1a60180e58c1333e7bb33e8acf1b0225eda8a8..4d037e899e0b5548be406ad55acd2062603b7da1 100644
|
index bb1a60180e58c1333e7bb33e8acf1b0225eda8a8..4d037e899e0b5548be406ad55acd2062603b7da1 100644
|
||||||
--- a/src/main/java/net/minecraft/world/damagesource/DamageSource.java
|
--- a/src/main/java/net/minecraft/world/damagesource/DamageSource.java
|
||||||
@@ -496,10 +477,10 @@ index bb1a60180e58c1333e7bb33e8acf1b0225eda8a8..4d037e899e0b5548be406ad55acd2062
|
|||||||
DamageSource damageSource = this.cloneInstance();
|
DamageSource damageSource = this.cloneInstance();
|
||||||
damageSource.customEventDamager = entity;
|
damageSource.customEventDamager = entity;
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java
|
diff --git a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java
|
||||||
index 0615fd82b71efb9a397de01615050e6d906c2844..b797ca4b68d110bbf64eac4ae422a7bc8bce145a 100644
|
index 40689256711cc94a806ca1da346f4f62eda31526..11cf6a20550e252501a92be5bdffafcff007cbf9 100644
|
||||||
--- a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java
|
--- a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java
|
||||||
+++ b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java
|
+++ b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java
|
||||||
@@ -146,7 +146,13 @@ public class RegionFileStorage implements AutoCloseable, ca.spottedleaf.moonrise
|
@@ -177,7 +177,13 @@ public class RegionFileStorage implements AutoCloseable, ca.spottedleaf.moonrise
|
||||||
|
|
||||||
// Paper start
|
// Paper start
|
||||||
private static void printOversizedLog(String msg, Path file, int x, int z) {
|
private static void printOversizedLog(String msg, Path file, int x, int z) {
|
||||||
|
|||||||
@@ -189,7 +189,7 @@ index 8f23276796037d048eb114952891a01a40971b3e..ac9ceb54b894119cb30a22d37e035e2c
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
index bccbc04c3322db5050871abcbf5ef592c38e95d4..6c7ab5870ec1393f1e23e6b6e4c346ec547f1eb8 100644
|
index aeae4f8d4ead24db315631c3d2c0b930d0d51e02..4dac66a7c5750e130db7bb5181672a879f83ce98 100644
|
||||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -3,9 +3,6 @@ package net.minecraft.server;
|
@@ -3,9 +3,6 @@ package net.minecraft.server;
|
||||||
@@ -289,10 +289,10 @@ index 7d82cc6b847124cf4225428ba310309544928148..ac703c9ef504779dffbd8d7e676dbb51
|
|||||||
if (this.convertOldUsers()) {
|
if (this.convertOldUsers()) {
|
||||||
this.getProfileCache().save(false); // Paper
|
this.getProfileCache().save(false); // Paper
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
index 4e5fc39f3839d4d626925bcef1c83415376195f4..6ff76ecf4c0f30e2ede834c3ec5199ba65295481 100644
|
index b3ca52c0a1c4c9c2f4d86b83ad2d6308e3ba9e7c..90f5c98ed793fafb4b6f95b66f35583d15af77d8 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
@@ -536,7 +536,7 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
@@ -527,7 +527,7 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
||||||
// Holder holder = worlddimension.type(); // CraftBukkit - decompile error
|
// Holder holder = worlddimension.type(); // CraftBukkit - decompile error
|
||||||
|
|
||||||
// Objects.requireNonNull(minecraftserver); // CraftBukkit - decompile error
|
// Objects.requireNonNull(minecraftserver); // CraftBukkit - decompile error
|
||||||
@@ -302,7 +302,7 @@ index 4e5fc39f3839d4d626925bcef1c83415376195f4..6ff76ecf4c0f30e2ede834c3ec5199ba
|
|||||||
this.convertable = convertable_conversionsession;
|
this.convertable = convertable_conversionsession;
|
||||||
this.uuid = WorldUUID.getUUID(convertable_conversionsession.levelDirectory.path().toFile());
|
this.uuid = WorldUUID.getUUID(convertable_conversionsession.levelDirectory.path().toFile());
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||||
index a72a189f537e0a64c2c31e7eefbb49fa896a6f3c..fa7b08052d57a5425020b391a7dec3b6ce8a81b7 100644
|
index bbb0d543197001fe8bb5179dde7201327fec4274..3a791b1f4b2e652408faf9ae133cef1e3f89b980 100644
|
||||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||||
@@ -12,7 +12,6 @@ import java.util.function.Supplier;
|
@@ -12,7 +12,6 @@ import java.util.function.Supplier;
|
||||||
@@ -343,9 +343,9 @@ index a72a189f537e0a64c2c31e7eefbb49fa896a6f3c..fa7b08052d57a5425020b391a7dec3b6
|
|||||||
|
|
||||||
public final com.destroystokyo.paper.antixray.ChunkPacketBlockController chunkPacketBlockController; // Paper - Anti-Xray
|
public final com.destroystokyo.paper.antixray.ChunkPacketBlockController chunkPacketBlockController; // Paper - Anti-Xray
|
||||||
public final co.aikar.timings.WorldTimingsHandler timings; // Paper
|
public final co.aikar.timings.WorldTimingsHandler timings; // Paper
|
||||||
@@ -652,9 +656,10 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl
|
@@ -684,9 +688,10 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl
|
||||||
}
|
}
|
||||||
// Paper end - optimise collisions
|
// Paper end - optimise random ticking
|
||||||
|
|
||||||
- protected Level(WritableLevelData worlddatamutable, ResourceKey<Level> resourcekey, RegistryAccess iregistrycustom, Holder<DimensionType> holder, Supplier<ProfilerFiller> supplier, boolean flag, boolean flag1, long i, int j, org.bukkit.generator.ChunkGenerator gen, org.bukkit.generator.BiomeProvider biomeProvider, org.bukkit.World.Environment env, java.util.function.Function<org.spigotmc.SpigotWorldConfig, io.papermc.paper.configuration.WorldConfiguration> paperWorldConfigCreator, java.util.concurrent.Executor executor) { // Paper - create paper world config & Anti-Xray
|
- protected Level(WritableLevelData worlddatamutable, ResourceKey<Level> resourcekey, RegistryAccess iregistrycustom, Holder<DimensionType> holder, Supplier<ProfilerFiller> supplier, boolean flag, boolean flag1, long i, int j, org.bukkit.generator.ChunkGenerator gen, org.bukkit.generator.BiomeProvider biomeProvider, org.bukkit.World.Environment env, java.util.function.Function<org.spigotmc.SpigotWorldConfig, io.papermc.paper.configuration.WorldConfiguration> paperWorldConfigCreator, java.util.concurrent.Executor executor) { // Paper - create paper world config & Anti-Xray
|
||||||
+ protected Level(WritableLevelData worlddatamutable, ResourceKey<Level> resourcekey, RegistryAccess iregistrycustom, Holder<DimensionType> holder, Supplier<ProfilerFiller> supplier, boolean flag, boolean flag1, long i, int j, org.bukkit.generator.ChunkGenerator gen, org.bukkit.generator.BiomeProvider biomeProvider, org.bukkit.World.Environment env, java.util.function.Function<org.spigotmc.SpigotWorldConfig, io.papermc.paper.configuration.WorldConfiguration> paperWorldConfigCreator, java.util.function.Function<org.spigotmc.SpigotWorldConfig, GaleWorldConfiguration> galeWorldConfigCreator, java.util.concurrent.Executor executor) { // Paper - create paper world config & Anti-Xray // Gale - Gale configuration
|
+ protected Level(WritableLevelData worlddatamutable, ResourceKey<Level> resourcekey, RegistryAccess iregistrycustom, Holder<DimensionType> holder, Supplier<ProfilerFiller> supplier, boolean flag, boolean flag1, long i, int j, org.bukkit.generator.ChunkGenerator gen, org.bukkit.generator.BiomeProvider biomeProvider, org.bukkit.World.Environment env, java.util.function.Function<org.spigotmc.SpigotWorldConfig, io.papermc.paper.configuration.WorldConfiguration> paperWorldConfigCreator, java.util.function.Function<org.spigotmc.SpigotWorldConfig, GaleWorldConfiguration> galeWorldConfigCreator, java.util.concurrent.Executor executor) { // Paper - create paper world config & Anti-Xray // Gale - Gale configuration
|
||||||
|
|||||||
@@ -7,10 +7,10 @@ License: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
|
|||||||
Gale - https://galemc.org
|
Gale - https://galemc.org
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
index 6c7ab5870ec1393f1e23e6b6e4c346ec547f1eb8..ab978cb0ed5ae972beb642adf644cdae142f70ae 100644
|
index 4dac66a7c5750e130db7bb5181672a879f83ce98..5f5cad9b8f978b251bec18e89de9a657122e4c5f 100644
|
||||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -1593,7 +1593,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1578,7 +1578,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
}
|
}
|
||||||
|
|
||||||
public void tickServer(BooleanSupplier shouldKeepTicking) {
|
public void tickServer(BooleanSupplier shouldKeepTicking) {
|
||||||
@@ -19,7 +19,7 @@ index 6c7ab5870ec1393f1e23e6b6e4c346ec547f1eb8..ab978cb0ed5ae972beb642adf644cdae
|
|||||||
long i = Util.getNanos();
|
long i = Util.getNanos();
|
||||||
|
|
||||||
// Paper start - move oversleep into full server tick
|
// Paper start - move oversleep into full server tick
|
||||||
@@ -1651,7 +1651,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1648,7 +1648,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
this.logTickMethodTime(i);
|
this.logTickMethodTime(i);
|
||||||
this.profiler.pop();
|
this.profiler.pop();
|
||||||
org.spigotmc.WatchdogThread.tick(); // Spigot
|
org.spigotmc.WatchdogThread.tick(); // Spigot
|
||||||
|
|||||||
@@ -164,7 +164,7 @@ index e9775b4506909bee65a74964f0d5391a0513de1d..1c4dd8acdcd571aceffe4b78599ca2c7
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
index ab978cb0ed5ae972beb642adf644cdae142f70ae..9aceca3b61a6b79be0637268faf21e6eccdf0c63 100644
|
index 5f5cad9b8f978b251bec18e89de9a657122e4c5f..ece0bbc6524aa2db40a480b575d2e257fe4d84cd 100644
|
||||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -103,18 +103,9 @@ import net.minecraft.util.datafix.DataFixers;
|
@@ -103,18 +103,9 @@ import net.minecraft.util.datafix.DataFixers;
|
||||||
@@ -215,8 +215,8 @@ index ab978cb0ed5ae972beb642adf644cdae142f70ae..9aceca3b61a6b79be0637268faf21e6e
|
|||||||
this.random = RandomSource.create();
|
this.random = RandomSource.create();
|
||||||
this.port = -1;
|
this.port = -1;
|
||||||
this.levels = Maps.newLinkedHashMap();
|
this.levels = Maps.newLinkedHashMap();
|
||||||
@@ -1047,9 +1023,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1032,9 +1008,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
}
|
org.spigotmc.WatchdogThread.doStop(); // Paper
|
||||||
// Paper end
|
// Paper end
|
||||||
// CraftBukkit end
|
// CraftBukkit end
|
||||||
- if (this.metricsRecorder.isRecording()) {
|
- if (this.metricsRecorder.isRecording()) {
|
||||||
@@ -225,7 +225,7 @@ index ab978cb0ed5ae972beb642adf644cdae142f70ae..9aceca3b61a6b79be0637268faf21e6e
|
|||||||
|
|
||||||
MinecraftServer.LOGGER.info("Stopping server");
|
MinecraftServer.LOGGER.info("Stopping server");
|
||||||
Commands.COMMAND_SENDING_POOL.shutdownNow(); // Paper - Perf: Async command map building; Shutdown and don't bother finishing
|
Commands.COMMAND_SENDING_POOL.shutdownNow(); // Paper - Perf: Async command map building; Shutdown and don't bother finishing
|
||||||
@@ -1304,16 +1277,9 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1289,16 +1262,9 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
|
|
||||||
boolean flag = i == 0L;
|
boolean flag = i == 0L;
|
||||||
|
|
||||||
@@ -242,7 +242,7 @@ index ab978cb0ed5ae972beb642adf644cdae142f70ae..9aceca3b61a6b79be0637268faf21e6e
|
|||||||
this.tickServer(flag ? () -> {
|
this.tickServer(flag ? () -> {
|
||||||
return false;
|
return false;
|
||||||
} : this::haveTime);
|
} : this::haveTime);
|
||||||
@@ -1324,7 +1290,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1309,7 +1275,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
throw new RuntimeException("Chunk system crash propagated to tick()", crash);
|
throw new RuntimeException("Chunk system crash propagated to tick()", crash);
|
||||||
}
|
}
|
||||||
// Paper end - rewrite chunk system
|
// Paper end - rewrite chunk system
|
||||||
@@ -250,7 +250,7 @@ index ab978cb0ed5ae972beb642adf644cdae142f70ae..9aceca3b61a6b79be0637268faf21e6e
|
|||||||
this.mayHaveDelayedTasks = true;
|
this.mayHaveDelayedTasks = true;
|
||||||
this.delayedTasksMaxNextTickTimeNanos = Math.max(Util.getNanos() + i, this.nextTickTimeNanos);
|
this.delayedTasksMaxNextTickTimeNanos = Math.max(Util.getNanos() + i, this.nextTickTimeNanos);
|
||||||
this.startMeasuringTaskExecutionTime();
|
this.startMeasuringTaskExecutionTime();
|
||||||
@@ -1334,9 +1299,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1319,9 +1284,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
this.tickRateManager.endTickWork();
|
this.tickRateManager.endTickWork();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -260,7 +260,7 @@ index ab978cb0ed5ae972beb642adf644cdae142f70ae..9aceca3b61a6b79be0637268faf21e6e
|
|||||||
this.isReady = true;
|
this.isReady = true;
|
||||||
JvmProfiler.INSTANCE.onServerTick(this.smoothedTickTimeMillis);
|
JvmProfiler.INSTANCE.onServerTick(this.smoothedTickTimeMillis);
|
||||||
}
|
}
|
||||||
@@ -1546,7 +1509,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1531,7 +1494,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
}
|
}
|
||||||
|
|
||||||
public void doRunTask(TickTask ticktask) { // CraftBukkit - decompile error
|
public void doRunTask(TickTask ticktask) { // CraftBukkit - decompile error
|
||||||
@@ -268,17 +268,23 @@ index ab978cb0ed5ae972beb642adf644cdae142f70ae..9aceca3b61a6b79be0637268faf21e6e
|
|||||||
super.doRunTask(ticktask);
|
super.doRunTask(ticktask);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1619,9 +1581,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1604,7 +1566,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
this.ticksUntilAutosave = this.autosavePeriod;
|
if (playerSaveInterval < 0) {
|
||||||
// CraftBukkit end
|
playerSaveInterval = autosavePeriod;
|
||||||
MinecraftServer.LOGGER.debug("Autosave started");
|
|
||||||
- this.profiler.push("save");
|
|
||||||
this.saveEverything(true, false, false);
|
|
||||||
- this.profiler.pop();
|
|
||||||
MinecraftServer.LOGGER.debug("Autosave finished");
|
|
||||||
}
|
}
|
||||||
|
- this.profiler.push("save");
|
||||||
|
final boolean fullSave = autosavePeriod > 0 && this.tickCount % autosavePeriod == 0;
|
||||||
|
try {
|
||||||
|
this.isSaving = true;
|
||||||
|
@@ -1619,7 +1580,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
|
} finally {
|
||||||
|
this.isSaving = false;
|
||||||
|
}
|
||||||
|
- this.profiler.pop();
|
||||||
|
// Paper end - Incremental chunk and player saving
|
||||||
io.papermc.paper.util.CachedLists.reset(); // Paper
|
io.papermc.paper.util.CachedLists.reset(); // Paper
|
||||||
@@ -1635,7 +1595,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
// Paper start - move executeAll() into full server tick timing
|
||||||
|
@@ -1632,7 +1592,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
long remaining = (TICK_TIME - (endTime - lastTick)) - catchupTime;
|
long remaining = (TICK_TIME - (endTime - lastTick)) - catchupTime;
|
||||||
new com.destroystokyo.paper.event.server.ServerTickEndEvent(this.tickCount, ((double)(endTime - lastTick) / 1000000D), remaining).callEvent();
|
new com.destroystokyo.paper.event.server.ServerTickEndEvent(this.tickCount, ((double)(endTime - lastTick) / 1000000D), remaining).callEvent();
|
||||||
// Paper end - Server Tick Events
|
// Paper end - Server Tick Events
|
||||||
@@ -286,7 +292,7 @@ index ab978cb0ed5ae972beb642adf644cdae142f70ae..9aceca3b61a6b79be0637268faf21e6e
|
|||||||
long j = Util.getNanos() - i;
|
long j = Util.getNanos() - i;
|
||||||
int k = this.tickCount % 100;
|
int k = this.tickCount % 100;
|
||||||
|
|
||||||
@@ -1649,7 +1608,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1646,7 +1605,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
this.tickTimes60s.add(this.tickCount, j);
|
this.tickTimes60s.add(this.tickCount, j);
|
||||||
// Paper end - Add tick times API and /mspt command
|
// Paper end - Add tick times API and /mspt command
|
||||||
this.logTickMethodTime(i);
|
this.logTickMethodTime(i);
|
||||||
@@ -294,7 +300,7 @@ index ab978cb0ed5ae972beb642adf644cdae142f70ae..9aceca3b61a6b79be0637268faf21e6e
|
|||||||
org.spigotmc.WatchdogThread.tick(); // Spigot
|
org.spigotmc.WatchdogThread.tick(); // Spigot
|
||||||
co.aikar.timings.TimingsManager.FULL_SERVER_TICK.stopTimingFullServerTick(); // Paper // Gale - final timings calls
|
co.aikar.timings.TimingsManager.FULL_SERVER_TICK.stopTimingFullServerTick(); // Paper // Gale - final timings calls
|
||||||
}
|
}
|
||||||
@@ -1740,11 +1698,9 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1737,11 +1695,9 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
});
|
});
|
||||||
// Paper end - Folia scheduler API
|
// Paper end - Folia scheduler API
|
||||||
io.papermc.paper.adventure.providers.ClickCallbackProviderImpl.CALLBACK_MANAGER.handleQueue(this.tickCount); // Paper
|
io.papermc.paper.adventure.providers.ClickCallbackProviderImpl.CALLBACK_MANAGER.handleQueue(this.tickCount); // Paper
|
||||||
@@ -306,7 +312,7 @@ index ab978cb0ed5ae972beb642adf644cdae142f70ae..9aceca3b61a6b79be0637268faf21e6e
|
|||||||
//Iterator iterator = this.getAllLevels().iterator(); // Paper - Throw exception on world create while being ticked; moved down
|
//Iterator iterator = this.getAllLevels().iterator(); // Paper - Throw exception on world create while being ticked; moved down
|
||||||
|
|
||||||
// CraftBukkit start
|
// CraftBukkit start
|
||||||
@@ -1786,21 +1742,12 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1783,21 +1739,12 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
net.minecraft.world.level.block.entity.HopperBlockEntity.skipHopperEvents = worldserver.paperConfig().hopper.disableMoveEvent || org.bukkit.event.inventory.InventoryMoveItemEvent.getHandlerList().getRegisteredListeners().length == 0; // Paper - Perf: Optimize Hoppers
|
net.minecraft.world.level.block.entity.HopperBlockEntity.skipHopperEvents = worldserver.paperConfig().hopper.disableMoveEvent || org.bukkit.event.inventory.InventoryMoveItemEvent.getHandlerList().getRegisteredListeners().length == 0; // Paper - Perf: Optimize Hoppers
|
||||||
worldserver.updateLagCompensationTick(); // Paper - lag compensation
|
worldserver.updateLagCompensationTick(); // Paper - lag compensation
|
||||||
|
|
||||||
@@ -328,7 +334,7 @@ index ab978cb0ed5ae972beb642adf644cdae142f70ae..9aceca3b61a6b79be0637268faf21e6e
|
|||||||
try {
|
try {
|
||||||
worldserver.timings.doTick.startTiming(); // Spigot
|
worldserver.timings.doTick.startTiming(); // Spigot
|
||||||
worldserver.tick(shouldKeepTicking);
|
worldserver.tick(shouldKeepTicking);
|
||||||
@@ -1812,17 +1759,13 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1809,17 +1756,13 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
throw new ReportedException(crashreport);
|
throw new ReportedException(crashreport);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -346,7 +352,7 @@ index ab978cb0ed5ae972beb642adf644cdae142f70ae..9aceca3b61a6b79be0637268faf21e6e
|
|||||||
MinecraftTimings.playerListTimer.startTiming(); // Spigot // Paper
|
MinecraftTimings.playerListTimer.startTiming(); // Spigot // Paper
|
||||||
this.playerList.tick();
|
this.playerList.tick();
|
||||||
MinecraftTimings.playerListTimer.stopTiming(); // Spigot // Paper
|
MinecraftTimings.playerListTimer.stopTiming(); // Spigot // Paper
|
||||||
@@ -1830,15 +1773,12 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1827,15 +1770,12 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
GameTestTicker.SINGLETON.tick();
|
GameTestTicker.SINGLETON.tick();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -362,7 +368,7 @@ index ab978cb0ed5ae972beb642adf644cdae142f70ae..9aceca3b61a6b79be0637268faf21e6e
|
|||||||
iterator = this.playerList.getPlayers().iterator();
|
iterator = this.playerList.getPlayers().iterator();
|
||||||
|
|
||||||
while (iterator.hasNext()) {
|
while (iterator.hasNext()) {
|
||||||
@@ -1848,7 +1788,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1845,7 +1785,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
entityplayer.connection.resumeFlushing();
|
entityplayer.connection.resumeFlushing();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -370,7 +376,7 @@ index ab978cb0ed5ae972beb642adf644cdae142f70ae..9aceca3b61a6b79be0637268faf21e6e
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void synchronizeTime(ServerLevel world) {
|
private void synchronizeTime(ServerLevel world) {
|
||||||
@@ -1856,7 +1795,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1853,7 +1792,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
}
|
}
|
||||||
|
|
||||||
public void forceTimeSynchronization() {
|
public void forceTimeSynchronization() {
|
||||||
@@ -378,7 +384,7 @@ index ab978cb0ed5ae972beb642adf644cdae142f70ae..9aceca3b61a6b79be0637268faf21e6e
|
|||||||
Iterator iterator = this.getAllLevels().iterator();
|
Iterator iterator = this.getAllLevels().iterator();
|
||||||
|
|
||||||
while (iterator.hasNext()) {
|
while (iterator.hasNext()) {
|
||||||
@@ -1864,8 +1802,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1861,8 +1799,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
|
|
||||||
this.synchronizeTime(worldserver);
|
this.synchronizeTime(worldserver);
|
||||||
}
|
}
|
||||||
@@ -387,7 +393,7 @@ index ab978cb0ed5ae972beb642adf644cdae142f70ae..9aceca3b61a6b79be0637268faf21e6e
|
|||||||
}
|
}
|
||||||
|
|
||||||
public boolean isLevelEnabled(Level world) {
|
public boolean isLevelEnabled(Level world) {
|
||||||
@@ -2577,7 +2513,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -2574,7 +2510,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
}
|
}
|
||||||
|
|
||||||
public ProfilerFiller getProfiler() {
|
public ProfilerFiller getProfiler() {
|
||||||
@@ -396,7 +402,7 @@ index ab978cb0ed5ae972beb642adf644cdae142f70ae..9aceca3b61a6b79be0637268faf21e6e
|
|||||||
}
|
}
|
||||||
|
|
||||||
public abstract boolean isSingleplayerOwner(GameProfile profile);
|
public abstract boolean isSingleplayerOwner(GameProfile profile);
|
||||||
@@ -2822,53 +2758,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -2819,53 +2755,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
}
|
}
|
||||||
// CraftBukkit end
|
// CraftBukkit end
|
||||||
|
|
||||||
@@ -450,7 +456,7 @@ index ab978cb0ed5ae972beb642adf644cdae142f70ae..9aceca3b61a6b79be0637268faf21e6e
|
|||||||
public Path getWorldPath(LevelResource worldSavePath) {
|
public Path getWorldPath(LevelResource worldSavePath) {
|
||||||
return this.storageSource.getLevelPath(worldSavePath);
|
return this.storageSource.getLevelPath(worldSavePath);
|
||||||
}
|
}
|
||||||
@@ -2918,25 +2807,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -2915,25 +2804,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
return this.isSaving;
|
return this.isSaving;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -476,7 +482,7 @@ index ab978cb0ed5ae972beb642adf644cdae142f70ae..9aceca3b61a6b79be0637268faf21e6e
|
|||||||
public int getMaxChainedNeighborUpdates() {
|
public int getMaxChainedNeighborUpdates() {
|
||||||
return 1000000;
|
return 1000000;
|
||||||
}
|
}
|
||||||
@@ -3035,56 +2905,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -3032,56 +2902,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -643,7 +649,7 @@ index 6df79aab2f0a75bbe347dc92e9ed5d62ceec7983..d3c0c50646794b36ffa5c6a8f6292eca
|
|||||||
|
|
||||||
public boolean hasWork() {
|
public boolean hasWork() {
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ServerChunkCache.java b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
diff --git a/src/main/java/net/minecraft/server/level/ServerChunkCache.java b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
||||||
index 36fbbf45ae064a345bf4aafbb9ac527197326eb9..2baf654b926d96c198ffe31835a7a45748078194 100644
|
index 3575fe6f57457ab865a29d20836512f6f5a98115..ccd6a21e502bfd25a0a84fdf1b6d6f2606cf7156 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
--- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
+++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
||||||
@@ -22,7 +22,6 @@ import net.minecraft.network.protocol.Packet;
|
@@ -22,7 +22,6 @@ import net.minecraft.network.protocol.Packet;
|
||||||
@@ -752,7 +758,7 @@ index 36fbbf45ae064a345bf4aafbb9ac527197326eb9..2baf654b926d96c198ffe31835a7a457
|
|||||||
}
|
}
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
index 6ff76ecf4c0f30e2ede834c3ec5199ba65295481..4919999f2df67a97ad0607f90fc3dc28a787e817 100644
|
index 90f5c98ed793fafb4b6f95b66f35583d15af77d8..f027997cb227bbadf6000ddb236fa6622304216d 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
@@ -80,7 +80,6 @@ import net.minecraft.util.ProgressListener;
|
@@ -80,7 +80,6 @@ import net.minecraft.util.ProgressListener;
|
||||||
@@ -763,7 +769,7 @@ index 6ff76ecf4c0f30e2ede834c3ec5199ba65295481..4919999f2df67a97ad0607f90fc3dc28
|
|||||||
import net.minecraft.util.valueproviders.IntProvider;
|
import net.minecraft.util.valueproviders.IntProvider;
|
||||||
import net.minecraft.util.valueproviders.UniformInt;
|
import net.minecraft.util.valueproviders.UniformInt;
|
||||||
import net.minecraft.world.DifficultyInstance;
|
import net.minecraft.world.DifficultyInstance;
|
||||||
@@ -536,15 +535,17 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
@@ -527,15 +526,17 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
||||||
// Holder holder = worlddimension.type(); // CraftBukkit - decompile error
|
// Holder holder = worlddimension.type(); // CraftBukkit - decompile error
|
||||||
|
|
||||||
// Objects.requireNonNull(minecraftserver); // CraftBukkit - decompile error
|
// Objects.requireNonNull(minecraftserver); // CraftBukkit - decompile error
|
||||||
@@ -784,7 +790,7 @@ index 6ff76ecf4c0f30e2ede834c3ec5199ba65295481..4919999f2df67a97ad0607f90fc3dc28
|
|||||||
this.pathTypesByPosCache = new PathTypeCache();
|
this.pathTypesByPosCache = new PathTypeCache();
|
||||||
this.navigatingMobs = new ObjectOpenHashSet();
|
this.navigatingMobs = new ObjectOpenHashSet();
|
||||||
this.blockEvents = new ObjectLinkedOpenHashSet();
|
this.blockEvents = new ObjectLinkedOpenHashSet();
|
||||||
@@ -657,16 +658,12 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
@@ -648,16 +649,12 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
||||||
}
|
}
|
||||||
|
|
||||||
public void tick(BooleanSupplier shouldKeepTicking) {
|
public void tick(BooleanSupplier shouldKeepTicking) {
|
||||||
@@ -801,7 +807,7 @@ index 6ff76ecf4c0f30e2ede834c3ec5199ba65295481..4919999f2df67a97ad0607f90fc3dc28
|
|||||||
this.advanceWeatherCycle();
|
this.advanceWeatherCycle();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -698,30 +695,23 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
@@ -689,30 +686,23 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
||||||
this.tickTime();
|
this.tickTime();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -832,7 +838,7 @@ index 6ff76ecf4c0f30e2ede834c3ec5199ba65295481..4919999f2df67a97ad0607f90fc3dc28
|
|||||||
if (flag) {
|
if (flag) {
|
||||||
this.timings.doSounds.startTiming(); // Spigot
|
this.timings.doSounds.startTiming(); // Spigot
|
||||||
this.runBlockEvents();
|
this.runBlockEvents();
|
||||||
@@ -729,7 +719,6 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
@@ -720,7 +710,6 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
||||||
}
|
}
|
||||||
|
|
||||||
this.handlingTick = false;
|
this.handlingTick = false;
|
||||||
@@ -840,7 +846,7 @@ index 6ff76ecf4c0f30e2ede834c3ec5199ba65295481..4919999f2df67a97ad0607f90fc3dc28
|
|||||||
boolean flag1 = !paperConfig().unsupportedSettings.disableWorldTickingWhenEmpty || !this.players.isEmpty() || !this.getForcedChunks().isEmpty(); // CraftBukkit - this prevents entity cleanup, other issues on servers with no players // Paper - restore this
|
boolean flag1 = !paperConfig().unsupportedSettings.disableWorldTickingWhenEmpty || !this.players.isEmpty() || !this.getForcedChunks().isEmpty(); // CraftBukkit - this prevents entity cleanup, other issues on servers with no players // Paper - restore this
|
||||||
|
|
||||||
if (flag1) {
|
if (flag1) {
|
||||||
@@ -737,12 +726,9 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
@@ -728,12 +717,9 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
||||||
}
|
}
|
||||||
|
|
||||||
if (flag1 || this.emptyTime++ < 300) {
|
if (flag1 || this.emptyTime++ < 300) {
|
||||||
@@ -853,7 +859,7 @@ index 6ff76ecf4c0f30e2ede834c3ec5199ba65295481..4919999f2df67a97ad0607f90fc3dc28
|
|||||||
}
|
}
|
||||||
|
|
||||||
org.spigotmc.ActivationRange.activateEntities(this); // Spigot
|
org.spigotmc.ActivationRange.activateEntities(this); // Spigot
|
||||||
@@ -752,9 +738,7 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
@@ -743,9 +729,7 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
||||||
if (false && this.shouldDiscardEntity(entity)) { // CraftBukkit - We prevent spawning in general, so this butchering is not needed
|
if (false && this.shouldDiscardEntity(entity)) { // CraftBukkit - We prevent spawning in general, so this butchering is not needed
|
||||||
entity.discard();
|
entity.discard();
|
||||||
} else if (!tickratemanager.isEntityFrozen(entity)) {
|
} else if (!tickratemanager.isEntityFrozen(entity)) {
|
||||||
@@ -863,7 +869,7 @@ index 6ff76ecf4c0f30e2ede834c3ec5199ba65295481..4919999f2df67a97ad0607f90fc3dc28
|
|||||||
if (true || this.chunkSource.chunkMap.getDistanceManager().inEntityTickingRange(entity.chunkPosition().toLong())) { // Paper - rewrite chunk system
|
if (true || this.chunkSource.chunkMap.getDistanceManager().inEntityTickingRange(entity.chunkPosition().toLong())) { // Paper - rewrite chunk system
|
||||||
Entity entity1 = entity.getVehicle();
|
Entity entity1 = entity.getVehicle();
|
||||||
|
|
||||||
@@ -766,22 +750,17 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
@@ -757,22 +741,17 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
||||||
entity.stopRiding();
|
entity.stopRiding();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -886,7 +892,7 @@ index 6ff76ecf4c0f30e2ede834c3ec5199ba65295481..4919999f2df67a97ad0607f90fc3dc28
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -836,9 +815,7 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
@@ -884,9 +863,7 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
||||||
boolean flag = this.isRaining();
|
boolean flag = this.isRaining();
|
||||||
int j = chunkcoordintpair.getMinBlockX();
|
int j = chunkcoordintpair.getMinBlockX();
|
||||||
int k = chunkcoordintpair.getMinBlockZ();
|
int k = chunkcoordintpair.getMinBlockZ();
|
||||||
@@ -896,7 +902,7 @@ index 6ff76ecf4c0f30e2ede834c3ec5199ba65295481..4919999f2df67a97ad0607f90fc3dc28
|
|||||||
if (!this.paperConfig().environment.disableThunder && flag && this.isThundering() && this.spigotConfig.thunderChance > 0 && this.random.nextInt(this.spigotConfig.thunderChance) == 0) { // Spigot // Paper - Option to disable thunder
|
if (!this.paperConfig().environment.disableThunder && flag && this.isThundering() && this.spigotConfig.thunderChance > 0 && this.random.nextInt(this.spigotConfig.thunderChance) == 0) { // Spigot // Paper - Option to disable thunder
|
||||||
BlockPos blockposition = this.findLightningTargetAround(this.getBlockRandomPos(j, 0, k, 15));
|
BlockPos blockposition = this.findLightningTargetAround(this.getBlockRandomPos(j, 0, k, 15));
|
||||||
|
|
||||||
@@ -867,8 +844,6 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
@@ -915,8 +892,6 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -905,30 +911,14 @@ index 6ff76ecf4c0f30e2ede834c3ec5199ba65295481..4919999f2df67a97ad0607f90fc3dc28
|
|||||||
if (!this.paperConfig().environment.disableIceAndSnow) { // Paper - Option to disable ice and snow
|
if (!this.paperConfig().environment.disableIceAndSnow) { // Paper - Option to disable ice and snow
|
||||||
for (int l = 0; l < randomTickSpeed; ++l) {
|
for (int l = 0; l < randomTickSpeed; ++l) {
|
||||||
if (this.random.nextInt(48) == 0) {
|
if (this.random.nextInt(48) == 0) {
|
||||||
@@ -877,7 +852,6 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
@@ -925,14 +900,12 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
||||||
}
|
}
|
||||||
} // Paper - Option to disable ice and snow
|
} // Paper - Option to disable ice and snow
|
||||||
|
|
||||||
- gameprofilerfiller.popPush("tickBlocks");
|
- gameprofilerfiller.popPush("tickBlocks");
|
||||||
timings.chunkTicksBlocks.startTiming(); // Paper
|
timings.chunkTicksBlocks.startTiming(); // Paper
|
||||||
if (randomTickSpeed > 0) {
|
if (randomTickSpeed > 0) {
|
||||||
LevelChunkSection[] achunksection = chunk.getSections();
|
this.optimiseRandomTick(chunk, randomTickSpeed); // Paper - optimise random ticking
|
||||||
@@ -892,7 +866,6 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
|
||||||
for (int l1 = 0; l1 < randomTickSpeed; ++l1) {
|
|
||||||
BlockPos blockposition1 = this.getBlockRandomPos(j, k1, k, 15);
|
|
||||||
|
|
||||||
- gameprofilerfiller.push("randomTick");
|
|
||||||
BlockState iblockdata = chunksection.getBlockState(blockposition1.getX() - j, blockposition1.getY() - k1, blockposition1.getZ() - k);
|
|
||||||
|
|
||||||
if (iblockdata.isRandomlyTicking()) {
|
|
||||||
@@ -905,14 +878,12 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
|
||||||
fluid.randomTick(this, blockposition1, this.random);
|
|
||||||
}
|
|
||||||
|
|
||||||
- gameprofilerfiller.pop();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
timings.chunkTicksBlocks.stopTiming(); // Paper
|
timings.chunkTicksBlocks.stopTiming(); // Paper
|
||||||
@@ -936,7 +926,7 @@ index 6ff76ecf4c0f30e2ede834c3ec5199ba65295481..4919999f2df67a97ad0607f90fc3dc28
|
|||||||
}
|
}
|
||||||
|
|
||||||
@VisibleForTesting
|
@VisibleForTesting
|
||||||
@@ -1240,19 +1211,13 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
@@ -1260,19 +1233,13 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
||||||
try {
|
try {
|
||||||
// Paper end - timings
|
// Paper end - timings
|
||||||
entity.setOldPosAndRot();
|
entity.setOldPosAndRot();
|
||||||
@@ -956,7 +946,7 @@ index 6ff76ecf4c0f30e2ede834c3ec5199ba65295481..4919999f2df67a97ad0607f90fc3dc28
|
|||||||
} finally { timer.stopTiming(); } // Paper - timings
|
} finally { timer.stopTiming(); } // Paper - timings
|
||||||
Iterator iterator = entity.getPassengers().iterator();
|
Iterator iterator = entity.getPassengers().iterator();
|
||||||
|
|
||||||
@@ -1281,12 +1246,7 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
@@ -1301,12 +1268,7 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
||||||
// Paper end
|
// Paper end
|
||||||
passenger.setOldPosAndRot();
|
passenger.setOldPosAndRot();
|
||||||
++passenger.tickCount;
|
++passenger.tickCount;
|
||||||
@@ -969,7 +959,7 @@ index 6ff76ecf4c0f30e2ede834c3ec5199ba65295481..4919999f2df67a97ad0607f90fc3dc28
|
|||||||
// Paper start - EAR 2
|
// Paper start - EAR 2
|
||||||
if (isActive) {
|
if (isActive) {
|
||||||
passenger.rideTick();
|
passenger.rideTick();
|
||||||
@@ -1298,7 +1258,6 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
@@ -1318,7 +1280,6 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
||||||
vehicle.positionRider(passenger);
|
vehicle.positionRider(passenger);
|
||||||
}
|
}
|
||||||
// Paper end - EAR 2
|
// Paper end - EAR 2
|
||||||
@@ -978,10 +968,10 @@ index 6ff76ecf4c0f30e2ede834c3ec5199ba65295481..4919999f2df67a97ad0607f90fc3dc28
|
|||||||
|
|
||||||
while (iterator.hasNext()) {
|
while (iterator.hasNext()) {
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||||
index 9d1e68c09fa7093cf0f6fa636f90cb15a44cbb38..57cc965c7147d0a1fac150e7bcae0f76d0b5c5ab 100644
|
index 71882332ee61023d656a6de3955ca34fcef1f536..ca7dba4f8b9a4d87fe7e990abd3f575db100bff6 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||||
@@ -1373,7 +1373,6 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
@@ -1374,7 +1374,6 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||||
this.unsetRemoved();
|
this.unsetRemoved();
|
||||||
*/
|
*/
|
||||||
// CraftBukkit end
|
// CraftBukkit end
|
||||||
@@ -989,7 +979,7 @@ index 9d1e68c09fa7093cf0f6fa636f90cb15a44cbb38..57cc965c7147d0a1fac150e7bcae0f76
|
|||||||
if (worldserver != null && resourcekey == LevelStem.OVERWORLD && worldserver.getTypeKey() == LevelStem.NETHER) { // CraftBukkit - empty to fall through to null to event
|
if (worldserver != null && resourcekey == LevelStem.OVERWORLD && worldserver.getTypeKey() == LevelStem.NETHER) { // CraftBukkit - empty to fall through to null to event
|
||||||
this.enteredNetherPosition = this.position();
|
this.enteredNetherPosition = this.position();
|
||||||
}
|
}
|
||||||
@@ -1389,8 +1388,6 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
@@ -1390,8 +1389,6 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||||
worldserver = ((CraftWorld) exit.getWorld()).getHandle();
|
worldserver = ((CraftWorld) exit.getWorld()).getHandle();
|
||||||
// CraftBukkit end
|
// CraftBukkit end
|
||||||
|
|
||||||
@@ -998,7 +988,7 @@ index 9d1e68c09fa7093cf0f6fa636f90cb15a44cbb38..57cc965c7147d0a1fac150e7bcae0f76
|
|||||||
// CraftBukkit start
|
// CraftBukkit start
|
||||||
this.isChangingDimension = true; // CraftBukkit - Set teleport invulnerability only if player changing worlds
|
this.isChangingDimension = true; // CraftBukkit - Set teleport invulnerability only if player changing worlds
|
||||||
LevelData worlddata = worldserver.getLevelData();
|
LevelData worlddata = worldserver.getLevelData();
|
||||||
@@ -1407,7 +1404,6 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
@@ -1408,7 +1405,6 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||||
this.connection.teleport(exit); // CraftBukkit - use internal teleport without event
|
this.connection.teleport(exit); // CraftBukkit - use internal teleport without event
|
||||||
this.connection.resetPosition();
|
this.connection.resetPosition();
|
||||||
worldserver.addDuringTeleport(this);
|
worldserver.addDuringTeleport(this);
|
||||||
@@ -1777,7 +1767,7 @@ index a248d859cbce48f4a34c4771a7acffc17d7edc84..fbcf01243381ec5bb9d81b45ace22a86
|
|||||||
|
|
||||||
if (this.fire) {
|
if (this.fire) {
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||||
index fa7b08052d57a5425020b391a7dec3b6ce8a81b7..9be6e2cf104f39bce8703b2cf235804e286f1a56 100644
|
index 3a791b1f4b2e652408faf9ae133cef1e3f89b980..950d8d94ce2ae521b50b6aa523a92fe2be99a250 100644
|
||||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||||
@@ -133,7 +133,6 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl
|
@@ -133,7 +133,6 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl
|
||||||
@@ -1804,16 +1794,16 @@ index fa7b08052d57a5425020b391a7dec3b6ce8a81b7..9be6e2cf104f39bce8703b2cf235804e
|
|||||||
final List<Entity> ret = new java.util.ArrayList<>();
|
final List<Entity> ret = new java.util.ArrayList<>();
|
||||||
|
|
||||||
((ca.spottedleaf.moonrise.patches.chunk_system.level.ChunkSystemLevel)this).moonrise$getEntityLookup().getHardCollidingEntities(entity, box, ret, predicate);
|
((ca.spottedleaf.moonrise.patches.chunk_system.level.ChunkSystemLevel)this).moonrise$getEntityLookup().getHardCollidingEntities(entity, box, ret, predicate);
|
||||||
@@ -656,7 +653,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl
|
@@ -688,7 +685,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl
|
||||||
}
|
}
|
||||||
// Paper end - optimise collisions
|
// Paper end - optimise random ticking
|
||||||
|
|
||||||
- protected Level(WritableLevelData worlddatamutable, ResourceKey<Level> resourcekey, RegistryAccess iregistrycustom, Holder<DimensionType> holder, Supplier<ProfilerFiller> supplier, boolean flag, boolean flag1, long i, int j, org.bukkit.generator.ChunkGenerator gen, org.bukkit.generator.BiomeProvider biomeProvider, org.bukkit.World.Environment env, java.util.function.Function<org.spigotmc.SpigotWorldConfig, io.papermc.paper.configuration.WorldConfiguration> paperWorldConfigCreator, java.util.function.Function<org.spigotmc.SpigotWorldConfig, GaleWorldConfiguration> galeWorldConfigCreator, java.util.concurrent.Executor executor) { // Paper - create paper world config & Anti-Xray // Gale - Gale configuration
|
- protected Level(WritableLevelData worlddatamutable, ResourceKey<Level> resourcekey, RegistryAccess iregistrycustom, Holder<DimensionType> holder, Supplier<ProfilerFiller> supplier, boolean flag, boolean flag1, long i, int j, org.bukkit.generator.ChunkGenerator gen, org.bukkit.generator.BiomeProvider biomeProvider, org.bukkit.World.Environment env, java.util.function.Function<org.spigotmc.SpigotWorldConfig, io.papermc.paper.configuration.WorldConfiguration> paperWorldConfigCreator, java.util.function.Function<org.spigotmc.SpigotWorldConfig, GaleWorldConfiguration> galeWorldConfigCreator, java.util.concurrent.Executor executor) { // Paper - create paper world config & Anti-Xray // Gale - Gale configuration
|
||||||
+ protected Level(WritableLevelData worlddatamutable, ResourceKey<Level> resourcekey, RegistryAccess iregistrycustom, Holder<DimensionType> holder, boolean flag, boolean flag1, long i, int j, org.bukkit.generator.ChunkGenerator gen, org.bukkit.generator.BiomeProvider biomeProvider, org.bukkit.World.Environment env, java.util.function.Function<org.spigotmc.SpigotWorldConfig, io.papermc.paper.configuration.WorldConfiguration> paperWorldConfigCreator, java.util.function.Function<org.spigotmc.SpigotWorldConfig, GaleWorldConfiguration> galeWorldConfigCreator, java.util.concurrent.Executor executor) { // Paper - create paper world config & Anti-Xray // Gale - Gale configuration // Gale - Purpur - remove vanilla profiler
|
+ protected Level(WritableLevelData worlddatamutable, ResourceKey<Level> resourcekey, RegistryAccess iregistrycustom, Holder<DimensionType> holder, boolean flag, boolean flag1, long i, int j, org.bukkit.generator.ChunkGenerator gen, org.bukkit.generator.BiomeProvider biomeProvider, org.bukkit.World.Environment env, java.util.function.Function<org.spigotmc.SpigotWorldConfig, io.papermc.paper.configuration.WorldConfiguration> paperWorldConfigCreator, java.util.function.Function<org.spigotmc.SpigotWorldConfig, GaleWorldConfiguration> galeWorldConfigCreator, java.util.concurrent.Executor executor) { // Paper - create paper world config & Anti-Xray // Gale - Gale configuration // Gale - Purpur - remove vanilla profiler
|
||||||
this.spigotConfig = new org.spigotmc.SpigotWorldConfig(((net.minecraft.world.level.storage.PrimaryLevelData) worlddatamutable).getLevelName()); // Spigot
|
this.spigotConfig = new org.spigotmc.SpigotWorldConfig(((net.minecraft.world.level.storage.PrimaryLevelData) worlddatamutable).getLevelName()); // Spigot
|
||||||
this.paperConfig = paperWorldConfigCreator.apply(this.spigotConfig); // Paper - create paper world config
|
this.paperConfig = paperWorldConfigCreator.apply(this.spigotConfig); // Paper - create paper world config
|
||||||
this.galeConfig = galeWorldConfigCreator.apply(this.spigotConfig); // Gale - Gale configuration
|
this.galeConfig = galeWorldConfigCreator.apply(this.spigotConfig); // Gale - Gale configuration
|
||||||
@@ -671,7 +668,6 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl
|
@@ -703,7 +700,6 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl
|
||||||
}
|
}
|
||||||
|
|
||||||
// CraftBukkit end
|
// CraftBukkit end
|
||||||
@@ -1821,7 +1811,7 @@ index fa7b08052d57a5425020b391a7dec3b6ce8a81b7..9be6e2cf104f39bce8703b2cf235804e
|
|||||||
this.levelData = worlddatamutable;
|
this.levelData = worlddatamutable;
|
||||||
this.dimensionTypeRegistration = holder;
|
this.dimensionTypeRegistration = holder;
|
||||||
final DimensionType dimensionmanager = (DimensionType) holder.value();
|
final DimensionType dimensionmanager = (DimensionType) holder.value();
|
||||||
@@ -1339,9 +1335,6 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl
|
@@ -1371,9 +1367,6 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void tickBlockEntities() {
|
protected void tickBlockEntities() {
|
||||||
@@ -1831,7 +1821,7 @@ index fa7b08052d57a5425020b391a7dec3b6ce8a81b7..9be6e2cf104f39bce8703b2cf235804e
|
|||||||
this.timings.tileEntityPending.startTiming(); // Spigot
|
this.timings.tileEntityPending.startTiming(); // Spigot
|
||||||
this.tickingBlockEntities = true;
|
this.tickingBlockEntities = true;
|
||||||
if (!this.pendingBlockEntityTickers.isEmpty()) {
|
if (!this.pendingBlockEntityTickers.isEmpty()) {
|
||||||
@@ -1384,7 +1377,6 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl
|
@@ -1416,7 +1409,6 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl
|
||||||
this.timings.tileEntityTick.stopTiming(); // Spigot
|
this.timings.tileEntityTick.stopTiming(); // Spigot
|
||||||
this.tickingBlockEntities = false;
|
this.tickingBlockEntities = false;
|
||||||
co.aikar.timings.TimingHistory.tileEntityTicks += this.blockEntityTickers.size(); // Paper
|
co.aikar.timings.TimingHistory.tileEntityTicks += this.blockEntityTickers.size(); // Paper
|
||||||
@@ -1839,7 +1829,7 @@ index fa7b08052d57a5425020b391a7dec3b6ce8a81b7..9be6e2cf104f39bce8703b2cf235804e
|
|||||||
this.spigotConfig.currentPrimedTnt = 0; // Spigot
|
this.spigotConfig.currentPrimedTnt = 0; // Spigot
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1596,7 +1588,6 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl
|
@@ -1628,7 +1620,6 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<Entity> getEntities(@Nullable Entity except, AABB box, Predicate<? super Entity> predicate) {
|
public List<Entity> getEntities(@Nullable Entity except, AABB box, Predicate<? super Entity> predicate) {
|
||||||
@@ -1847,7 +1837,7 @@ index fa7b08052d57a5425020b391a7dec3b6ce8a81b7..9be6e2cf104f39bce8703b2cf235804e
|
|||||||
// Paper start - rewrite chunk system
|
// Paper start - rewrite chunk system
|
||||||
final List<Entity> ret = new java.util.ArrayList<>();
|
final List<Entity> ret = new java.util.ArrayList<>();
|
||||||
|
|
||||||
@@ -1622,8 +1613,6 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl
|
@@ -1654,8 +1645,6 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl
|
||||||
public <T extends Entity> void getEntities(final EntityTypeTest<Entity, T> entityTypeTest,
|
public <T extends Entity> void getEntities(final EntityTypeTest<Entity, T> entityTypeTest,
|
||||||
final AABB boundingBox, final Predicate<? super T> predicate,
|
final AABB boundingBox, final Predicate<? super T> predicate,
|
||||||
final List<? super T> into, final int maxCount) {
|
final List<? super T> into, final int maxCount) {
|
||||||
@@ -1856,7 +1846,7 @@ index fa7b08052d57a5425020b391a7dec3b6ce8a81b7..9be6e2cf104f39bce8703b2cf235804e
|
|||||||
if (entityTypeTest instanceof net.minecraft.world.entity.EntityType<T> byType) {
|
if (entityTypeTest instanceof net.minecraft.world.entity.EntityType<T> byType) {
|
||||||
if (maxCount != Integer.MAX_VALUE) {
|
if (maxCount != Integer.MAX_VALUE) {
|
||||||
((ca.spottedleaf.moonrise.patches.chunk_system.level.ChunkSystemLevel)this).moonrise$getEntityLookup().getEntities(byType, boundingBox, into, predicate, maxCount);
|
((ca.spottedleaf.moonrise.patches.chunk_system.level.ChunkSystemLevel)this).moonrise$getEntityLookup().getEntities(byType, boundingBox, into, predicate, maxCount);
|
||||||
@@ -1917,11 +1906,11 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl
|
@@ -1949,11 +1938,11 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl
|
||||||
}
|
}
|
||||||
|
|
||||||
public ProfilerFiller getProfiler() {
|
public ProfilerFiller getProfiler() {
|
||||||
|
|||||||
@@ -31,12 +31,12 @@ You should have received a copy of the GNU General Public License
|
|||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||||
index 9be6e2cf104f39bce8703b2cf235804e286f1a56..d54120728655bc32d480f16161e302dc897d4f5f 100644
|
index 950d8d94ce2ae521b50b6aa523a92fe2be99a250..e82f6b86e70410b43335c0f6bf9fd9e85a9bb9a2 100644
|
||||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||||
@@ -653,6 +653,15 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl
|
@@ -685,6 +685,15 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl
|
||||||
}
|
}
|
||||||
// Paper end - optimise collisions
|
// Paper end - optimise random ticking
|
||||||
|
|
||||||
+ // Gale start - Airplane - inline level height
|
+ // Gale start - Airplane - inline level height
|
||||||
+ private final int minBuildHeight, levelHeightAccessorMinSection, height, maxBuildHeight, levelHeightAccessorMaxSection;
|
+ private final int minBuildHeight, levelHeightAccessorMinSection, height, maxBuildHeight, levelHeightAccessorMaxSection;
|
||||||
@@ -50,7 +50,7 @@ index 9be6e2cf104f39bce8703b2cf235804e286f1a56..d54120728655bc32d480f16161e302dc
|
|||||||
protected Level(WritableLevelData worlddatamutable, ResourceKey<Level> resourcekey, RegistryAccess iregistrycustom, Holder<DimensionType> holder, boolean flag, boolean flag1, long i, int j, org.bukkit.generator.ChunkGenerator gen, org.bukkit.generator.BiomeProvider biomeProvider, org.bukkit.World.Environment env, java.util.function.Function<org.spigotmc.SpigotWorldConfig, io.papermc.paper.configuration.WorldConfiguration> paperWorldConfigCreator, java.util.function.Function<org.spigotmc.SpigotWorldConfig, GaleWorldConfiguration> galeWorldConfigCreator, java.util.concurrent.Executor executor) { // Paper - create paper world config & Anti-Xray // Gale - Gale configuration // Gale - Purpur - remove vanilla profiler
|
protected Level(WritableLevelData worlddatamutable, ResourceKey<Level> resourcekey, RegistryAccess iregistrycustom, Holder<DimensionType> holder, boolean flag, boolean flag1, long i, int j, org.bukkit.generator.ChunkGenerator gen, org.bukkit.generator.BiomeProvider biomeProvider, org.bukkit.World.Environment env, java.util.function.Function<org.spigotmc.SpigotWorldConfig, io.papermc.paper.configuration.WorldConfiguration> paperWorldConfigCreator, java.util.function.Function<org.spigotmc.SpigotWorldConfig, GaleWorldConfiguration> galeWorldConfigCreator, java.util.concurrent.Executor executor) { // Paper - create paper world config & Anti-Xray // Gale - Gale configuration // Gale - Purpur - remove vanilla profiler
|
||||||
this.spigotConfig = new org.spigotmc.SpigotWorldConfig(((net.minecraft.world.level.storage.PrimaryLevelData) worlddatamutable).getLevelName()); // Spigot
|
this.spigotConfig = new org.spigotmc.SpigotWorldConfig(((net.minecraft.world.level.storage.PrimaryLevelData) worlddatamutable).getLevelName()); // Spigot
|
||||||
this.paperConfig = paperWorldConfigCreator.apply(this.spigotConfig); // Paper - create paper world config
|
this.paperConfig = paperWorldConfigCreator.apply(this.spigotConfig); // Paper - create paper world config
|
||||||
@@ -672,6 +681,13 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl
|
@@ -704,6 +713,13 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl
|
||||||
this.dimensionTypeRegistration = holder;
|
this.dimensionTypeRegistration = holder;
|
||||||
final DimensionType dimensionmanager = (DimensionType) holder.value();
|
final DimensionType dimensionmanager = (DimensionType) holder.value();
|
||||||
|
|
||||||
@@ -31,10 +31,10 @@ You should have received a copy of the GNU General Public License
|
|||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
index 4919999f2df67a97ad0607f90fc3dc28a787e817..9ff8779e47c82fd2fdfd43a07a256062140c64d7 100644
|
index f027997cb227bbadf6000ddb236fa6622304216d..8b8dbaf0a2cb8cb39bf178edb1a78f60f2043096 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
@@ -750,7 +750,20 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
@@ -741,7 +741,20 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
||||||
entity.stopRiding();
|
entity.stopRiding();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -57,10 +57,10 @@ index 4919999f2df67a97ad0607f90fc3dc28a787e817..9ff8779e47c82fd2fdfd43a07a256062
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||||
index d54120728655bc32d480f16161e302dc897d4f5f..3335409c3a5fbe3234a3de10d54189a82bf23043 100644
|
index e82f6b86e70410b43335c0f6bf9fd9e85a9bb9a2..4ec5f84925a52d6391439ec183c04be0114b39b5 100644
|
||||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||||
@@ -1400,15 +1400,15 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl
|
@@ -1432,15 +1432,15 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl
|
||||||
try {
|
try {
|
||||||
tickConsumer.accept(entity);
|
tickConsumer.accept(entity);
|
||||||
} catch (Throwable throwable) {
|
} catch (Throwable throwable) {
|
||||||
@@ -142,18 +142,18 @@ index 4b48cac0c8861dfaad16d5ecfa3e73c9b5db0bb7..a4091552f900b06fd629a22b0685759d
|
|||||||
if (vec3d.length() > 0.0D) {
|
if (vec3d.length() > 0.0D) {
|
||||||
if (k1 > 0) {
|
if (k1 > 0) {
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java b/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java
|
diff --git a/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java b/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java
|
||||||
index d4bd71f70f80ea74947e6d478ff636be2ab7d432..93834db062943a77432920064cff084e9fb45141 100644
|
index c3b1caa352b988ec44fa2b2eb0536517711f5460..33747ef8211066155cd70ce2818862cf3e79db53 100644
|
||||||
--- a/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java
|
--- a/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java
|
||||||
+++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java
|
+++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java
|
||||||
@@ -25,6 +25,7 @@ public class LevelChunkSection implements ca.spottedleaf.moonrise.patches.collis
|
@@ -25,6 +25,7 @@ public class LevelChunkSection implements ca.spottedleaf.moonrise.patches.block_
|
||||||
public final PalettedContainer<BlockState> states;
|
public final PalettedContainer<BlockState> states;
|
||||||
// CraftBukkit start - read/write
|
// CraftBukkit start - read/write
|
||||||
private PalettedContainer<Holder<Biome>> biomes;
|
private PalettedContainer<Holder<Biome>> biomes;
|
||||||
+ public short fluidStateCount; // Gale - Airplane - reduce entity fluid lookups if no fluids
|
+ public short fluidStateCount; // Gale - Airplane - reduce entity fluid lookups if no fluids
|
||||||
|
|
||||||
// Paper start - optimise collisions
|
// Paper start - block counting
|
||||||
private int specialCollidingBlocks;
|
private static final it.unimi.dsi.fastutil.ints.IntArrayList FULL_LIST = new it.unimi.dsi.fastutil.ints.IntArrayList(16*16*16);
|
||||||
@@ -91,6 +92,7 @@ public class LevelChunkSection implements ca.spottedleaf.moonrise.patches.collis
|
@@ -104,6 +105,7 @@ public class LevelChunkSection implements ca.spottedleaf.moonrise.patches.block_
|
||||||
|
|
||||||
if (!fluid.isEmpty()) {
|
if (!fluid.isEmpty()) {
|
||||||
--this.tickingFluidCount;
|
--this.tickingFluidCount;
|
||||||
@@ -161,15 +161,15 @@ index d4bd71f70f80ea74947e6d478ff636be2ab7d432..93834db062943a77432920064cff084e
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (!state.isAir()) {
|
if (!state.isAir()) {
|
||||||
@@ -102,6 +104,7 @@ public class LevelChunkSection implements ca.spottedleaf.moonrise.patches.collis
|
@@ -115,6 +117,7 @@ public class LevelChunkSection implements ca.spottedleaf.moonrise.patches.block_
|
||||||
|
|
||||||
if (!fluid1.isEmpty()) {
|
if (!fluid1.isEmpty()) {
|
||||||
++this.tickingFluidCount;
|
++this.tickingFluidCount;
|
||||||
+ ++this.fluidStateCount; // Gale - Airplane - reduce entity fluid lookups if no fluids
|
+ ++this.fluidStateCount; // Gale - Airplane - reduce entity fluid lookups if no fluids
|
||||||
}
|
}
|
||||||
|
|
||||||
// Paper start - optimise collisions
|
// Paper start - block counting
|
||||||
@@ -181,6 +184,7 @@ public class LevelChunkSection implements ca.spottedleaf.moonrise.patches.collis
|
@@ -208,6 +211,7 @@ public class LevelChunkSection implements ca.spottedleaf.moonrise.patches.block_
|
||||||
if (fluid.isRandomlyTicking()) {
|
if (fluid.isRandomlyTicking()) {
|
||||||
this.tickingFluidCount += paletteCount;
|
this.tickingFluidCount += paletteCount;
|
||||||
}
|
}
|
||||||
@@ -13,10 +13,10 @@ As part of: EmpireCraft (https://github.com/starlis/empirecraft)
|
|||||||
Licensed under: MIT (https://opensource.org/licenses/MIT)
|
Licensed under: MIT (https://opensource.org/licenses/MIT)
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||||
index 57cc965c7147d0a1fac150e7bcae0f76d0b5c5ab..d18c3c20b556fbf5146eb7cc614cc1b0e442d52e 100644
|
index ca7dba4f8b9a4d87fe7e990abd3f575db100bff6..f0ba5738958382cf22033c3c909df9e4ee3c83b6 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||||
@@ -295,6 +295,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
@@ -296,6 +296,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||||
public boolean joining = true;
|
public boolean joining = true;
|
||||||
public boolean sentListPacket = false;
|
public boolean sentListPacket = false;
|
||||||
public boolean supressTrackerForLogin = false; // Paper - Fire PlayerJoinEvent when Player is actually ready
|
public boolean supressTrackerForLogin = false; // Paper - Fire PlayerJoinEvent when Player is actually ready
|
||||||
@@ -38,7 +38,7 @@ index 13adcb90134f03cf951c3e7eaa3123e033224df6..4ff3dbb9c1bcac000e4ed293cbc1a48a
|
|||||||
// CraftBukkit start
|
// CraftBukkit start
|
||||||
if (sync) {
|
if (sync) {
|
||||||
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
index 5f20606cc2c79ad9a4c4d4d6c9e6a2a31a88b282..b6236d28c6ef3b94625950eb5934ebb11c14c9f4 100644
|
index dfcaff15a145bf29e8a538d853bb04aec8c36179..3badc71743dbd4a1360081da1819a57bbb3c4e3d 100644
|
||||||
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
@@ -350,6 +350,8 @@ public abstract class PlayerList {
|
@@ -350,6 +350,8 @@ public abstract class PlayerList {
|
||||||
@@ -29,7 +29,7 @@ index 14e412ebf75b0e06ab53a1c8f9dd1be6ad1e2680..f962e82e2c70f328a23dc99193d072f8
|
|||||||
}
|
}
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
index b6236d28c6ef3b94625950eb5934ebb11c14c9f4..a34407257d6281e499498247712a2291c67aed25 100644
|
index 3badc71743dbd4a1360081da1819a57bbb3c4e3d..98bef79ab2307bf57b13c0ad0f39a5eaf967c3df 100644
|
||||||
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
@@ -102,6 +102,7 @@ import net.minecraft.world.phys.Vec3;
|
@@ -102,6 +102,7 @@ import net.minecraft.world.phys.Vec3;
|
||||||
@@ -40,7 +40,7 @@ index b6236d28c6ef3b94625950eb5934ebb11c14c9f4..a34407257d6281e499498247712a2291
|
|||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
|
|
||||||
// CraftBukkit start
|
// CraftBukkit start
|
||||||
@@ -1373,7 +1374,7 @@ public abstract class PlayerList {
|
@@ -1386,7 +1387,7 @@ public abstract class PlayerList {
|
||||||
// Paper end
|
// Paper end
|
||||||
boolean flag = this.verifyChatTrusted(message);
|
boolean flag = this.verifyChatTrusted(message);
|
||||||
|
|
||||||
@@ -13,7 +13,7 @@ As part of: JettPack (https://gitlab.com/Titaniumtown/JettPack)
|
|||||||
Licensed under: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
|
Licensed under: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
index a34407257d6281e499498247712a2291c67aed25..aabca85eb35085511b24ace968d3bf1b85303445 100644
|
index 98bef79ab2307bf57b13c0ad0f39a5eaf967c3df..87d547fa078bf0b9bde3f919e081af0921ee6225 100644
|
||||||
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
@@ -483,7 +483,13 @@ public abstract class PlayerList {
|
@@ -483,7 +483,13 @@ public abstract class PlayerList {
|
||||||
@@ -102,7 +102,7 @@ index 87d2b3ec165e2e9e4bdbedd7adddaa2130ed507b..1260b9abca3d194507f3f982add32ef0
|
|||||||
|
|
||||||
public void callEntitiesLoadEvent() {
|
public void callEntitiesLoadEvent() {
|
||||||
diff --git a/src/main/java/ca/spottedleaf/moonrise/patches/collisions/CollisionUtil.java b/src/main/java/ca/spottedleaf/moonrise/patches/collisions/CollisionUtil.java
|
diff --git a/src/main/java/ca/spottedleaf/moonrise/patches/collisions/CollisionUtil.java b/src/main/java/ca/spottedleaf/moonrise/patches/collisions/CollisionUtil.java
|
||||||
index 3cbd02085cc3e2ddb15458faea4b553868cff39a..0bb41d25325011c8afb8ea6caa890ffe0edd4bbb 100644
|
index 748ab4d637ce463272bae4fdbab6842a27385126..6a3f1d5362b29db321d6c03d0f5ab5e6c915a02d 100644
|
||||||
--- a/src/main/java/ca/spottedleaf/moonrise/patches/collisions/CollisionUtil.java
|
--- a/src/main/java/ca/spottedleaf/moonrise/patches/collisions/CollisionUtil.java
|
||||||
+++ b/src/main/java/ca/spottedleaf/moonrise/patches/collisions/CollisionUtil.java
|
+++ b/src/main/java/ca/spottedleaf/moonrise/patches/collisions/CollisionUtil.java
|
||||||
@@ -1113,7 +1113,7 @@ public final class CollisionUtil {
|
@@ -1113,7 +1113,7 @@ public final class CollisionUtil {
|
||||||
@@ -487,7 +487,7 @@ index 0ee04fe6ff6a4d09754f326526ae04fe7226bab2..365598a660e79d266f5d4a439cb1ba01
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
diff --git a/src/main/java/net/minecraft/util/ZeroBitStorage.java b/src/main/java/net/minecraft/util/ZeroBitStorage.java
|
diff --git a/src/main/java/net/minecraft/util/ZeroBitStorage.java b/src/main/java/net/minecraft/util/ZeroBitStorage.java
|
||||||
index 50040c497a819cd1229042ab3cb057d34a32cacc..e085197001ba0e50dc84fe488cf531cce0950cb1 100644
|
index 15c5164d0ef41a978c16ee317fa73e97f2480207..0723c625c38e567f13b77dfe2a98684e5a6b9417 100644
|
||||||
--- a/src/main/java/net/minecraft/util/ZeroBitStorage.java
|
--- a/src/main/java/net/minecraft/util/ZeroBitStorage.java
|
||||||
+++ b/src/main/java/net/minecraft/util/ZeroBitStorage.java
|
+++ b/src/main/java/net/minecraft/util/ZeroBitStorage.java
|
||||||
@@ -5,7 +5,7 @@ import java.util.function.IntConsumer;
|
@@ -5,7 +5,7 @@ import java.util.function.IntConsumer;
|
||||||
@@ -669,10 +669,10 @@ index fce49b17905ab97e691aa8499a5dfed67adf0c40..986d0151aeeb2ce0f752c424c526fb0c
|
|||||||
if (stackPredicate.test(itemStack)) {
|
if (stackPredicate.test(itemStack)) {
|
||||||
ItemEnchantments itemEnchantments = itemStack.getOrDefault(DataComponents.ENCHANTMENTS, ItemEnchantments.EMPTY);
|
ItemEnchantments itemEnchantments = itemStack.getOrDefault(DataComponents.ENCHANTMENTS, ItemEnchantments.EMPTY);
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||||
index 3335409c3a5fbe3234a3de10d54189a82bf23043..d02812eabc5ab5d5671f227ad83d98a1a0d3bb0c 100644
|
index 4ec5f84925a52d6391439ec183c04be0114b39b5..9da1b9e2afac5d6a82eeff66f685c032c19e0366 100644
|
||||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||||
@@ -1689,7 +1689,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl
|
@@ -1721,7 +1721,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl
|
||||||
public org.bukkit.entity.Entity[] getChunkEntities(int chunkX, int chunkZ) {
|
public org.bukkit.entity.Entity[] getChunkEntities(int chunkX, int chunkZ) {
|
||||||
ca.spottedleaf.moonrise.patches.chunk_system.level.entity.ChunkEntitySlices slices = ((ServerLevel)this).moonrise$getEntityLookup().getChunk(chunkX, chunkZ);
|
ca.spottedleaf.moonrise.patches.chunk_system.level.entity.ChunkEntitySlices slices = ((ServerLevel)this).moonrise$getEntityLookup().getChunk(chunkX, chunkZ);
|
||||||
if (slices == null) {
|
if (slices == null) {
|
||||||
@@ -214,7 +214,7 @@ index 0000000000000000000000000000000000000000..349618b7f544bf9a30e0796d4d9a2640
|
|||||||
+ }
|
+ }
|
||||||
+}
|
+}
|
||||||
diff --git a/src/main/java/net/minecraft/util/BitStorage.java b/src/main/java/net/minecraft/util/BitStorage.java
|
diff --git a/src/main/java/net/minecraft/util/BitStorage.java b/src/main/java/net/minecraft/util/BitStorage.java
|
||||||
index 68648c5a5e3ff079f832092af0f2f801c42d1ede..5a85e499aeb02885cab5ba7d571d6f6ae470bce8 100644
|
index 19661e106612b8e4e152085fb398db7bd06acc23..f852d2c0c0e37df78dbea28e183aee3572978dee 100644
|
||||||
--- a/src/main/java/net/minecraft/util/BitStorage.java
|
--- a/src/main/java/net/minecraft/util/BitStorage.java
|
||||||
+++ b/src/main/java/net/minecraft/util/BitStorage.java
|
+++ b/src/main/java/net/minecraft/util/BitStorage.java
|
||||||
@@ -1,6 +1,7 @@
|
@@ -1,6 +1,7 @@
|
||||||
@@ -223,17 +223,17 @@ index 68648c5a5e3ff079f832092af0f2f801c42d1ede..5a85e499aeb02885cab5ba7d571d6f6a
|
|||||||
import java.util.function.IntConsumer;
|
import java.util.function.IntConsumer;
|
||||||
+import net.minecraft.world.level.chunk.Palette;
|
+import net.minecraft.world.level.chunk.Palette;
|
||||||
|
|
||||||
public interface BitStorage {
|
public interface BitStorage extends ca.spottedleaf.moonrise.patches.block_counting.BlockCountingBitStorage { // Paper - block counting
|
||||||
int getAndSet(int index, int value);
|
int getAndSet(int index, int value);
|
||||||
@@ -20,4 +21,6 @@ public interface BitStorage {
|
@@ -38,4 +39,6 @@ public interface BitStorage extends ca.spottedleaf.moonrise.patches.block_counti
|
||||||
void unpack(int[] out);
|
return ret;
|
||||||
|
}
|
||||||
BitStorage copy();
|
// Paper end - block counting
|
||||||
+
|
+
|
||||||
+ <T> void compact(Palette<T> srcPalette, Palette<T> dstPalette, short[] out); // Gale - Lithium - faster chunk serialization
|
+ <T> void compact(Palette<T> srcPalette, Palette<T> dstPalette, short[] out); // Gale - Lithium - faster chunk serialization
|
||||||
}
|
}
|
||||||
diff --git a/src/main/java/net/minecraft/util/SimpleBitStorage.java b/src/main/java/net/minecraft/util/SimpleBitStorage.java
|
diff --git a/src/main/java/net/minecraft/util/SimpleBitStorage.java b/src/main/java/net/minecraft/util/SimpleBitStorage.java
|
||||||
index 9f438d9c6eb05e43d24e4af68188a3d4c46a938c..0af2e2cc59db228e01afa880f83c2024dade4ff0 100644
|
index 8acf2f2491a8d9d13392c5e89b2bd5c9918285e1..0b8b0cf58f637d72eae28e21266df14183f11fb1 100644
|
||||||
--- a/src/main/java/net/minecraft/util/SimpleBitStorage.java
|
--- a/src/main/java/net/minecraft/util/SimpleBitStorage.java
|
||||||
+++ b/src/main/java/net/minecraft/util/SimpleBitStorage.java
|
+++ b/src/main/java/net/minecraft/util/SimpleBitStorage.java
|
||||||
@@ -2,6 +2,7 @@ package net.minecraft.util;
|
@@ -2,6 +2,7 @@ package net.minecraft.util;
|
||||||
@@ -244,7 +244,7 @@ index 9f438d9c6eb05e43d24e4af68188a3d4c46a938c..0af2e2cc59db228e01afa880f83c2024
|
|||||||
import org.apache.commons.lang3.Validate;
|
import org.apache.commons.lang3.Validate;
|
||||||
|
|
||||||
public class SimpleBitStorage implements BitStorage {
|
public class SimpleBitStorage implements BitStorage {
|
||||||
@@ -367,4 +368,45 @@ public class SimpleBitStorage implements BitStorage {
|
@@ -401,4 +402,45 @@ public class SimpleBitStorage implements BitStorage {
|
||||||
super(message);
|
super(message);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -291,13 +291,13 @@ index 9f438d9c6eb05e43d24e4af68188a3d4c46a938c..0af2e2cc59db228e01afa880f83c2024
|
|||||||
+
|
+
|
||||||
}
|
}
|
||||||
diff --git a/src/main/java/net/minecraft/util/ZeroBitStorage.java b/src/main/java/net/minecraft/util/ZeroBitStorage.java
|
diff --git a/src/main/java/net/minecraft/util/ZeroBitStorage.java b/src/main/java/net/minecraft/util/ZeroBitStorage.java
|
||||||
index e085197001ba0e50dc84fe488cf531cce0950cb1..267d22559002741c113755e75e7c75e4232cf644 100644
|
index 0723c625c38e567f13b77dfe2a98684e5a6b9417..b02a0d9c71550d39aad08ed0932043531b661305 100644
|
||||||
--- a/src/main/java/net/minecraft/util/ZeroBitStorage.java
|
--- a/src/main/java/net/minecraft/util/ZeroBitStorage.java
|
||||||
+++ b/src/main/java/net/minecraft/util/ZeroBitStorage.java
|
+++ b/src/main/java/net/minecraft/util/ZeroBitStorage.java
|
||||||
@@ -62,4 +62,6 @@ public class ZeroBitStorage implements BitStorage {
|
@@ -80,4 +80,6 @@ public class ZeroBitStorage implements BitStorage {
|
||||||
public BitStorage copy() {
|
return ret;
|
||||||
return this;
|
|
||||||
}
|
}
|
||||||
|
// Paper end - block counting
|
||||||
+
|
+
|
||||||
+ @Override public <T> void compact(net.minecraft.world.level.chunk.Palette<T> srcPalette, net.minecraft.world.level.chunk.Palette<T> dstPalette, short[] out) {} // Gale - Lithium - faster chunk serialization
|
+ @Override public <T> void compact(net.minecraft.world.level.chunk.Palette<T> srcPalette, net.minecraft.world.level.chunk.Palette<T> dstPalette, short[] out) {} // Gale - Lithium - faster chunk serialization
|
||||||
}
|
}
|
||||||
@@ -13,10 +13,10 @@ As part of: SportPaper (https://github.com/Electroid/SportPaper)
|
|||||||
Licensed under: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
|
Licensed under: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
index 9ff8779e47c82fd2fdfd43a07a256062140c64d7..cbe5bd9902fa948a9c928c75961a6525404708b5 100644
|
index 8b8dbaf0a2cb8cb39bf178edb1a78f60f2043096..ec3edbfe8c9a7aef5a9f37fa1d2279acf4827660 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
@@ -1549,7 +1549,17 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
@@ -1600,7 +1600,17 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void destroyBlockProgress(int entityId, BlockPos pos, int progress) {
|
public void destroyBlockProgress(int entityId, BlockPos pos, int progress) {
|
||||||
@@ -35,7 +35,7 @@ index 9ff8779e47c82fd2fdfd43a07a256062140c64d7..cbe5bd9902fa948a9c928c75961a6525
|
|||||||
|
|
||||||
// CraftBukkit start
|
// CraftBukkit start
|
||||||
Player entityhuman = null;
|
Player entityhuman = null;
|
||||||
@@ -1583,7 +1593,7 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
@@ -1634,7 +1644,7 @@ public class ServerLevel extends Level implements WorldGenLevel, ca.spottedleaf.
|
||||||
// CraftBukkit end
|
// CraftBukkit end
|
||||||
|
|
||||||
if (d0 * d0 + d1 * d1 + d2 * d2 < 1024.0D) {
|
if (d0 * d0 + d1 * d1 + d2 * d2 < 1024.0D) {
|
||||||
@@ -37,7 +37,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|||||||
SOFTWARE.
|
SOFTWARE.
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
index aabca85eb35085511b24ace968d3bf1b85303445..d77e3502ce709166126047da1f63d229a0943a90 100644
|
index 87d547fa078bf0b9bde3f919e081af0921ee6225..4cb9ce2d80507a1b73bf09a78e3593612f913d44 100644
|
||||||
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
@@ -13,6 +13,8 @@ import java.net.SocketAddress;
|
@@ -13,6 +13,8 @@ import java.net.SocketAddress;
|
||||||
@@ -70,7 +70,7 @@ index aabca85eb35085511b24ace968d3bf1b85303445..d77e3502ce709166126047da1f63d229
|
|||||||
this.playersByName.put(player.getScoreboardName().toLowerCase(java.util.Locale.ROOT), player); // Spigot
|
this.playersByName.put(player.getScoreboardName().toLowerCase(java.util.Locale.ROOT), player); // Spigot
|
||||||
this.playersByUUID.put(player.getUUID(), player);
|
this.playersByUUID.put(player.getUUID(), player);
|
||||||
// this.broadcastAll(ClientboundPlayerInfoUpdatePacket.createPlayerInitializing(List.of(entityplayer))); // CraftBukkit - replaced with loop below
|
// this.broadcastAll(ClientboundPlayerInfoUpdatePacket.createPlayerInitializing(List.of(entityplayer))); // CraftBukkit - replaced with loop below
|
||||||
@@ -660,6 +664,7 @@ public abstract class PlayerList {
|
@@ -661,6 +665,7 @@ public abstract class PlayerList {
|
||||||
entityplayer.retireScheduler(); // Paper - Folia schedulers
|
entityplayer.retireScheduler(); // Paper - Folia schedulers
|
||||||
entityplayer.getAdvancements().stopListening();
|
entityplayer.getAdvancements().stopListening();
|
||||||
this.players.remove(entityplayer);
|
this.players.remove(entityplayer);
|
||||||
@@ -78,7 +78,7 @@ index aabca85eb35085511b24ace968d3bf1b85303445..d77e3502ce709166126047da1f63d229
|
|||||||
this.playersByName.remove(entityplayer.getScoreboardName().toLowerCase(java.util.Locale.ROOT)); // Spigot
|
this.playersByName.remove(entityplayer.getScoreboardName().toLowerCase(java.util.Locale.ROOT)); // Spigot
|
||||||
this.server.getCustomBossEvents().onPlayerDisconnect(entityplayer);
|
this.server.getCustomBossEvents().onPlayerDisconnect(entityplayer);
|
||||||
UUID uuid = entityplayer.getUUID();
|
UUID uuid = entityplayer.getUUID();
|
||||||
@@ -816,6 +821,7 @@ public abstract class PlayerList {
|
@@ -817,6 +822,7 @@ public abstract class PlayerList {
|
||||||
public ServerPlayer respawn(ServerPlayer entityplayer, boolean flag, Entity.RemovalReason entity_removalreason, RespawnReason reason, Location location) {
|
public ServerPlayer respawn(ServerPlayer entityplayer, boolean flag, Entity.RemovalReason entity_removalreason, RespawnReason reason, Location location) {
|
||||||
entityplayer.stopRiding(); // CraftBukkit
|
entityplayer.stopRiding(); // CraftBukkit
|
||||||
this.players.remove(entityplayer);
|
this.players.remove(entityplayer);
|
||||||
@@ -86,7 +86,7 @@ index aabca85eb35085511b24ace968d3bf1b85303445..d77e3502ce709166126047da1f63d229
|
|||||||
this.playersByName.remove(entityplayer.getScoreboardName().toLowerCase(java.util.Locale.ROOT)); // Spigot
|
this.playersByName.remove(entityplayer.getScoreboardName().toLowerCase(java.util.Locale.ROOT)); // Spigot
|
||||||
entityplayer.serverLevel().removePlayerImmediately(entityplayer, entity_removalreason);
|
entityplayer.serverLevel().removePlayerImmediately(entityplayer, entity_removalreason);
|
||||||
/* CraftBukkit start
|
/* CraftBukkit start
|
||||||
@@ -898,6 +904,7 @@ public abstract class PlayerList {
|
@@ -899,6 +905,7 @@ public abstract class PlayerList {
|
||||||
if (!entityplayer.connection.isDisconnected()) {
|
if (!entityplayer.connection.isDisconnected()) {
|
||||||
worldserver.addRespawnedPlayer(entityplayer1);
|
worldserver.addRespawnedPlayer(entityplayer1);
|
||||||
this.players.add(entityplayer1);
|
this.players.add(entityplayer1);
|
||||||
@@ -94,7 +94,7 @@ index aabca85eb35085511b24ace968d3bf1b85303445..d77e3502ce709166126047da1f63d229
|
|||||||
this.playersByName.put(entityplayer1.getScoreboardName().toLowerCase(java.util.Locale.ROOT), entityplayer1); // Spigot
|
this.playersByName.put(entityplayer1.getScoreboardName().toLowerCase(java.util.Locale.ROOT), entityplayer1); // Spigot
|
||||||
this.playersByUUID.put(entityplayer1.getUUID(), entityplayer1);
|
this.playersByUUID.put(entityplayer1.getUUID(), entityplayer1);
|
||||||
}
|
}
|
||||||
@@ -976,20 +983,55 @@ public abstract class PlayerList {
|
@@ -977,20 +984,55 @@ public abstract class PlayerList {
|
||||||
this.sendPlayerPermissionLevel(player, i, recalculatePermissions); // Paper - avoid recalculating permissions if possible
|
this.sendPlayerPermissionLevel(player, i, recalculatePermissions); // Paper - avoid recalculating permissions if possible
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -37,10 +37,10 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|||||||
SOFTWARE.
|
SOFTWARE.
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
index d77e3502ce709166126047da1f63d229a0943a90..876bffc0d03cd3a781c4139a9b5e4858215afdc9 100644
|
index 4cb9ce2d80507a1b73bf09a78e3593612f913d44..e523dbfb89c77e396d8ac4a7678642399fdd28f2 100644
|
||||||
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
@@ -1019,14 +1019,18 @@ public abstract class PlayerList {
|
@@ -1020,14 +1020,18 @@ public abstract class PlayerList {
|
||||||
// Gale start - Purpur - spread out sending all player info
|
// Gale start - Purpur - spread out sending all player info
|
||||||
ServerPlayer[] sendAllPlayerInfoBucket = this.sendAllPlayerInfoBuckets[this.sendAllPlayerInfoIn];
|
ServerPlayer[] sendAllPlayerInfoBucket = this.sendAllPlayerInfoBuckets[this.sendAllPlayerInfoIn];
|
||||||
if (sendAllPlayerInfoBucket != null) {
|
if (sendAllPlayerInfoBucket != null) {
|
||||||
@@ -13,10 +13,10 @@ As part of: MultiPaper (https://github.com/MultiPaper/MultiPaper)
|
|||||||
Licensed under: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
|
Licensed under: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||||
index d18c3c20b556fbf5146eb7cc614cc1b0e442d52e..705890ab08f97158faaccadbaf7e534666ce86ff 100644
|
index f0ba5738958382cf22033c3c909df9e4ee3c83b6..60455f936a9f8a517b62f867ec4a7ac767dc5783 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||||
@@ -2150,12 +2150,18 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
@@ -2151,12 +2151,18 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void crit(Entity target) {
|
public void crit(Entity target) {
|
||||||
@@ -13,7 +13,7 @@ As part of: MultiPaper (https://github.com/MultiPaper/MultiPaper)
|
|||||||
Licensed under: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
|
Licensed under: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ServerChunkCache.java b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
diff --git a/src/main/java/net/minecraft/server/level/ServerChunkCache.java b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
||||||
index 2baf654b926d96c198ffe31835a7a45748078194..fe96ee6b36d38a7da61c80715716365d2a33f07d 100644
|
index ccd6a21e502bfd25a0a84fdf1b6d6f2606cf7156..3b81ba4c283e474493e9bc97bbfa230a7878cdbc 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
--- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
+++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
||||||
@@ -431,11 +431,16 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon
|
@@ -431,11 +431,16 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon
|
||||||
@@ -14,7 +14,7 @@ As part of: MultiPaper (https://github.com/MultiPaper/MultiPaper)
|
|||||||
Licensed under: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
|
Licensed under: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html)
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
index 876bffc0d03cd3a781c4139a9b5e4858215afdc9..28354aa3ed55f7a86c210f805b1aecb5ae06b466 100644
|
index e523dbfb89c77e396d8ac4a7678642399fdd28f2..503eafc89cbbd7286108eb2edf32af01d5e5c57d 100644
|
||||||
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||||
@@ -275,6 +275,13 @@ public abstract class PlayerList {
|
@@ -275,6 +275,13 @@ public abstract class PlayerList {
|
||||||
@@ -59,10 +59,10 @@ index 039a86034928a5eb7aaa2d7ca76a7bddcca346bd..7c32c60100cf2bd109eb8762efa856c1
|
|||||||
}
|
}
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
index 9aceca3b61a6b79be0637268faf21e6eccdf0c63..fc0f6639472ee2a3756152a586fb4166eeafb1a6 100644
|
index ece0bbc6524aa2db40a480b575d2e257fe4d84cd..b1eac1f972fcb4a3706febdbeb2c4a4892d03f0f 100644
|
||||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -1148,6 +1148,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1133,6 +1133,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
private static final long MAX_CATCHUP_BUFFER = TICK_TIME * TPS * 60L;
|
private static final long MAX_CATCHUP_BUFFER = TICK_TIME * TPS * 60L;
|
||||||
private long lastTick = 0;
|
private long lastTick = 0;
|
||||||
private long catchupTime = 0;
|
private long catchupTime = 0;
|
||||||
@@ -70,7 +70,7 @@ index 9aceca3b61a6b79be0637268faf21e6eccdf0c63..fc0f6639472ee2a3756152a586fb4166
|
|||||||
public final RollingAverage tps1 = new RollingAverage(60);
|
public final RollingAverage tps1 = new RollingAverage(60);
|
||||||
public final RollingAverage tps5 = new RollingAverage(60 * 5);
|
public final RollingAverage tps5 = new RollingAverage(60 * 5);
|
||||||
public final RollingAverage tps15 = new RollingAverage(60 * 15);
|
public final RollingAverage tps15 = new RollingAverage(60 * 15);
|
||||||
@@ -1262,6 +1263,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1247,6 +1248,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
if (++MinecraftServer.currentTick % MinecraftServer.SAMPLE_INTERVAL == 0) {
|
if (++MinecraftServer.currentTick % MinecraftServer.SAMPLE_INTERVAL == 0) {
|
||||||
final long diff = currentTime - tickSection;
|
final long diff = currentTime - tickSection;
|
||||||
final java.math.BigDecimal currentTps = TPS_BASE.divide(new java.math.BigDecimal(diff), 30, java.math.RoundingMode.HALF_UP);
|
final java.math.BigDecimal currentTps = TPS_BASE.divide(new java.math.BigDecimal(diff), 30, java.math.RoundingMode.HALF_UP);
|
||||||
@@ -23,10 +23,10 @@ The above copyright notice and this permission notice shall be included in all c
|
|||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
index fc0f6639472ee2a3756152a586fb4166eeafb1a6..af3cca0c4d00247231d31ea596268b57767e8d3a 100644
|
index b1eac1f972fcb4a3706febdbeb2c4a4892d03f0f..a5e4e457bf76bd27f6edeff229e75217643b842d 100644
|
||||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -1196,6 +1196,11 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1181,6 +1181,11 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
// Paper end
|
// Paper end
|
||||||
// Spigot End
|
// Spigot End
|
||||||
|
|
||||||
@@ -38,7 +38,7 @@ index fc0f6639472ee2a3756152a586fb4166eeafb1a6..af3cca0c4d00247231d31ea596268b57
|
|||||||
protected void runServer() {
|
protected void runServer() {
|
||||||
try {
|
try {
|
||||||
long serverStartTime = Util.getNanos(); // Paper
|
long serverStartTime = Util.getNanos(); // Paper
|
||||||
@@ -1282,9 +1287,11 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1267,9 +1272,11 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
//MinecraftServer.currentTick = (int) (System.currentTimeMillis() / 50); // CraftBukkit // Paper - don't overwrite current tick time
|
//MinecraftServer.currentTick = (int) (System.currentTimeMillis() / 50); // CraftBukkit // Paper - don't overwrite current tick time
|
||||||
lastTick = currentTime;
|
lastTick = currentTime;
|
||||||
this.nextTickTimeNanos += i;
|
this.nextTickTimeNanos += i;
|
||||||
@@ -50,7 +50,7 @@ index fc0f6639472ee2a3756152a586fb4166eeafb1a6..af3cca0c4d00247231d31ea596268b57
|
|||||||
// Paper start - rewrite chunk system
|
// Paper start - rewrite chunk system
|
||||||
final Throwable crash = this.chunkSystemCrash;
|
final Throwable crash = this.chunkSystemCrash;
|
||||||
if (crash != null) {
|
if (crash != null) {
|
||||||
@@ -1448,9 +1455,11 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1433,9 +1440,11 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
|
|
||||||
protected void waitUntilNextTick() {
|
protected void waitUntilNextTick() {
|
||||||
//this.executeAll(); // Paper - move this into the tick method for timings
|
//this.executeAll(); // Paper - move this into the tick method for timings
|
||||||
@@ -26,10 +26,10 @@ index b47a8a082170bcb630c4354be7c77a4cac71d105..b49e3f2cdc1fa5ff3723fae452404664
|
|||||||
double d1 = (double) (center.y - maxRange);
|
double d1 = (double) (center.y - maxRange);
|
||||||
double d2 = (double) (center.x + maxRange);
|
double d2 = (double) (center.x + maxRange);
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||||
index 705890ab08f97158faaccadbaf7e534666ce86ff..3993b360455361acf6c49495283285992d71d927 100644
|
index 60455f936a9f8a517b62f867ec4a7ac767dc5783..4a69885e173cebc8ab427e02145e1020282ea95d 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||||
@@ -467,7 +467,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
@@ -468,7 +468,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||||
long l = k * k;
|
long l = k * k;
|
||||||
int i1 = l > 2147483647L ? Integer.MAX_VALUE : (int) l;
|
int i1 = l > 2147483647L ? Integer.MAX_VALUE : (int) l;
|
||||||
int j1 = this.getCoprime(i1);
|
int j1 = this.getCoprime(i1);
|
||||||
@@ -38,7 +38,7 @@ index 705890ab08f97158faaccadbaf7e534666ce86ff..3993b360455361acf6c4949528328599
|
|||||||
|
|
||||||
for (int l1 = 0; l1 < i1; ++l1) {
|
for (int l1 = 0; l1 < i1; ++l1) {
|
||||||
int i2 = (k1 + j1 * l1) % i1;
|
int i2 = (k1 + j1 * l1) % i1;
|
||||||
@@ -506,7 +506,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
@@ -507,7 +507,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
|
||||||
long l = k * k;
|
long l = k * k;
|
||||||
int i1 = l > 2147483647L ? Integer.MAX_VALUE : (int) l;
|
int i1 = l > 2147483647L ? Integer.MAX_VALUE : (int) l;
|
||||||
int j1 = this.getCoprime(i1);
|
int j1 = this.getCoprime(i1);
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user