Updated Upstream (Paper)

This commit is contained in:
AlphaKR93
2024-01-25 16:00:44 +09:00
parent 33db373ae2
commit 04203941c1
13 changed files with 316 additions and 341 deletions

View File

@@ -1,7 +1,7 @@
version = 1.20.4-R0.1-SNAPSHOT
mcVersion = 1.20.4
paperCommit = 25013d997057eb89471d285db2a4b40acde6272d
paperCommit = 1831240d1c48086fc0199584787cd2013d4d4b5f
purpurCommit = 11391a2b82ea206c3a02dde459da5ad3a9db17e0
org.gradle.caching = true

View File

@@ -701,7 +701,7 @@ index 9af4bc16da09e59009c47911219e99450cdf2aa5..529fb1beadefc79ce6bf5755d5223301
+ // Purpur end
}
diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java
index bf4b94ea2577e9d7e344385209fc0644a4e6bfbb..eea802fbee51e919595f6501161bf2fd58d6a1c1 100644
index efa2043e044b0e461780e808c347d6ec00f6da0a..3d4481ea5328735357a7c60c99e5b3a073e7aa0f 100644
--- a/src/main/java/org/bukkit/World.java
+++ b/src/main/java/org/bukkit/World.java
@@ -4172,6 +4172,86 @@ public interface World extends RegionAccessor, WorldInfo, PluginMessageRecipient
@@ -1177,10 +1177,10 @@ index bc84b892cae5fe7019a3ad481e9da79956efa1fe..48eb5b00c460cccde29d327cef1d63fc
+ // Purpur end
}
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
index ae61a39b25267b84fe0b8766e4b12d9b24b44ded..3aa79be25d63f704170baaf799482ccdde6a2830 100644
index 815631a6157b87a9ead270fe0b11ac3892a3fbf4..48ef9837cc26313e76678555d7187eb3b9c8e4d7 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -3574,4 +3574,123 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
@@ -3578,4 +3578,123 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
@Override
Spigot spigot();
// Spigot end

View File

@@ -86,10 +86,10 @@ index 376e8983fdfdbb6c3e5fd8ad0f6a05e655b622bf..658e9b4590a82d179907feea04e129fd
+ classpath(sourceSets.main.map { it.runtimeClasspath })
}
diff --git a/src/main/java/co/aikar/timings/TimingsExport.java b/src/main/java/co/aikar/timings/TimingsExport.java
index a2f71a6d1a9e98133dff6cd0f625da9435a8af14..ff940e43ca35094bbcae6c7d471d3c4aeb7c1727 100644
index 7620c72a4c243cbeea245203ce03a97cbfa7d922..b35a9f4c5f8960864c402ede8a51fb5ab9c4fcc0 100644
--- a/src/main/java/co/aikar/timings/TimingsExport.java
+++ b/src/main/java/co/aikar/timings/TimingsExport.java
@@ -242,7 +242,8 @@ public class TimingsExport extends Thread {
@@ -240,7 +240,8 @@ public class TimingsExport extends Thread {
parent.put("config", createObject(
pair("spigot", mapAsJSON(Bukkit.spigot().getSpigotConfig(), null)),
pair("bukkit", mapAsJSON(Bukkit.spigot().getBukkitConfig(), null)),
@@ -1497,19 +1497,18 @@ index ba12919c3f9aec34a9e64993b143ae92be5eb172..9efeab9078e2d08903e482718b840797
} else {
this.lastTimeStamp = body.timeStamp();
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 49ab2773658a2c6fababa316707762a8e2b19c58..9e632e6d865a802119aa70a2f393d3cab46e9aae 100644
index 23d2264dfc4f763a7198eb543e7f86a5a5aa85c3..b1671cb6275369efe3e643bce40a3fd7318a6fa0 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -314,6 +314,8 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
// Paper start - lag compensation
public static final long SERVER_INIT = System.nanoTime();
// Paper end - lag compensation
+
@@ -311,6 +311,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
public volatile Thread shutdownThread; // Paper
public volatile boolean abnormalExit = false; // Paper
public static final long SERVER_INIT = System.nanoTime(); // Paper - Lag compensation
+ public gg.pufferfish.pufferfish.util.AsyncExecutor mobSpawnExecutor = new gg.pufferfish.pufferfish.util.AsyncExecutor("MobSpawning"); // Pufferfish - optimize mob spawning
public static <S extends MinecraftServer> S spin(Function<Thread, S> serverFactory) {
AtomicReference<S> atomicreference = new AtomicReference();
@@ -1217,6 +1219,12 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -1214,6 +1215,12 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
this.profiler.popPush("nextTickWait");
this.mayHaveDelayedTasks = true;
this.delayedTasksMaxNextTickTimeNanos = Math.max(Util.getNanos() + i, this.nextTickTimeNanos);
@@ -1522,16 +1521,16 @@ index 49ab2773658a2c6fababa316707762a8e2b19c58..9e632e6d865a802119aa70a2f393d3ca
this.waitUntilNextTick();
if (flag) {
this.tickRateManager.endTickWork();
@@ -1852,7 +1860,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -1850,7 +1857,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@DontObfuscate
public String getServerModName() {
- return "Paper"; // Paper - Paper > // Spigot - Spigot > // CraftBukkit - cb > vanilla!
- return "Paper"; // Paper
+ return "Pufferfish"; // Pufferfish - Pufferfish > // Paper - Paper > // Spigot - Spigot > // CraftBukkit - cb > vanilla!
}
public SystemReport fillSystemReport(SystemReport details) {
@@ -2439,6 +2447,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -2437,6 +2444,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
}
public ProfilerFiller getProfiler() {
@@ -1561,7 +1560,7 @@ index 6de6dad36203479677a29ad61e21bc369d4e5513..c5f92c80d7ca1e1c7f5b9304a5a1173e
}
}
diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java
index 424de333bf4fc5632410c689d9b17b2eab3371c4..b72969b3bc4319387e3946ea01c5b05acd8a87cb 100644
index 5a7278b093e37b95fb005ad5cc3cac90ac36f8fb..28d05b46952397bb664a1c8dae71816cafee89ce 100644
--- a/src/main/java/net/minecraft/server/level/ChunkMap.java
+++ b/src/main/java/net/minecraft/server/level/ChunkMap.java
@@ -243,7 +243,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
@@ -1573,7 +1572,7 @@ index 424de333bf4fc5632410c689d9b17b2eab3371c4..b72969b3bc4319387e3946ea01c5b05a
// Paper end - optimise chunk tick iteration
public ChunkMap(ServerLevel world, LevelStorageSource.LevelStorageAccess session, DataFixer dataFixer, StructureTemplateManager structureTemplateManager, Executor executor, BlockableEventLoop<Runnable> mainThreadExecutor, LightChunkGetter chunkProvider, ChunkGenerator chunkGenerator, ChunkProgressListener worldGenerationProgressListener, ChunkStatusUpdateListener chunkStatusChangeListener, Supplier<DimensionDataStorage> persistentStateManagerFactory, int viewDistance, boolean dsync) {
@@ -1458,8 +1458,28 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
@@ -1448,8 +1448,28 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
return ChunkMap.this.level.getServer().getScaledTrackingDistance(initialDistance);
}
@@ -1602,7 +1601,7 @@ index 424de333bf4fc5632410c689d9b17b2eab3371c4..b72969b3bc4319387e3946ea01c5b05a
Iterator iterator = this.entity.getIndirectPassengers().iterator();
while (iterator.hasNext()) {
@@ -1471,6 +1491,9 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
@@ -1461,6 +1481,9 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
i = j;
}
}
@@ -1613,20 +1612,19 @@ index 424de333bf4fc5632410c689d9b17b2eab3371c4..b72969b3bc4319387e3946ea01c5b05a
return this.scaledRange(i);
}
diff --git a/src/main/java/net/minecraft/server/level/ServerChunkCache.java b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
index 77a2458b8acb21c64676934cd8d6b05ef6351c10..ad8e79c72841ff80f8af3580d2cdb89c13f6d688 100644
index 366c0c9b45a819f7f94ebe3e49b8ab7f9edf9ce7..12f11576c41ded54f759da16f54f6d7b460c10ed 100644
--- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java
+++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
@@ -73,6 +73,9 @@ public class ServerChunkCache extends ChunkSource {
@@ -75,6 +75,8 @@ public class ServerChunkCache extends ChunkSource {
final it.unimi.dsi.fastutil.longs.Long2ObjectOpenHashMap<LevelChunk> loadedChunkMap = new it.unimi.dsi.fastutil.longs.Long2ObjectOpenHashMap<>(8192, 0.5f);
final java.util.concurrent.atomic.AtomicLong chunkFutureAwaitCounter = new java.util.concurrent.atomic.AtomicLong(); // Paper - chunk system rewrite
private final LevelChunk[] lastLoadedChunks = new LevelChunk[4 * 4];
+
+ public boolean firstRunSpawnCounts = true; // Pufferfish
+ public final java.util.concurrent.atomic.AtomicBoolean _pufferfish_spawnCountsReady = new java.util.concurrent.atomic.AtomicBoolean(false); // Pufferfish - optimize countmobs
// Paper end
private static int getChunkCacheKey(int x, int z) {
return x & 3 | ((z & 3) << 2);
@@ -528,6 +531,7 @@ public class ServerChunkCache extends ChunkSource {
public ServerChunkCache(ServerLevel world, LevelStorageSource.LevelStorageAccess session, DataFixer dataFixer, StructureTemplateManager structureTemplateManager, Executor workerExecutor, ChunkGenerator chunkGenerator, int viewDistance, int simulationDistance, boolean dsync, ChunkProgressListener worldGenerationProgressListener, ChunkStatusUpdateListener chunkStatusChangeListener, Supplier<DimensionDataStorage> persistentStateManagerFactory) {
@@ -513,6 +515,7 @@ public class ServerChunkCache extends ChunkSource {
// Paper - optimise chunk tick iteration
@@ -1634,7 +1632,7 @@ index 77a2458b8acb21c64676934cd8d6b05ef6351c10..ad8e79c72841ff80f8af3580d2cdb89c
if (this.level.getServer().tickRateManager().runsNormally()) {
gameprofilerfiller.popPush("naturalSpawnCount");
this.level.timings.countNaturalMobs.startTiming(); // Paper - timings
@@ -536,6 +540,7 @@ public class ServerChunkCache extends ChunkSource {
@@ -521,6 +524,7 @@ public class ServerChunkCache extends ChunkSource {
int naturalSpawnChunkCount = k;
NaturalSpawner.SpawnState spawnercreature_d; // moved down
if ((this.spawnFriendlies || this.spawnEnemies) && this.level.paperConfig().entities.spawning.perPlayerMobSpawns) { // don't count mobs when animals and monsters are disabled
@@ -1642,7 +1640,7 @@ index 77a2458b8acb21c64676934cd8d6b05ef6351c10..ad8e79c72841ff80f8af3580d2cdb89c
// re-set mob counts
for (ServerPlayer player : this.level.players) {
// Paper start - per player mob spawning backoff
@@ -550,14 +555,18 @@ public class ServerChunkCache extends ChunkSource {
@@ -535,14 +539,18 @@ public class ServerChunkCache extends ChunkSource {
}
// Paper end - per player mob spawning backoff
}
@@ -1664,7 +1662,7 @@ index 77a2458b8acb21c64676934cd8d6b05ef6351c10..ad8e79c72841ff80f8af3580d2cdb89c
gameprofilerfiller.popPush("spawnAndTick");
boolean flag = this.level.getGameRules().getBoolean(GameRules.RULE_DOMOBSPAWNING) && !this.level.players().isEmpty(); // CraftBukkit
@@ -647,8 +656,8 @@ public class ServerChunkCache extends ChunkSource {
@@ -632,8 +640,8 @@ public class ServerChunkCache extends ChunkSource {
if (tick && chunk1.chunkStatus.isOrAfter(net.minecraft.server.level.FullChunkStatus.ENTITY_TICKING)) {
// Paper end - optimise chunk tick iteration
chunk1.incrementInhabitedTime(j);
@@ -1675,7 +1673,7 @@ index 77a2458b8acb21c64676934cd8d6b05ef6351c10..ad8e79c72841ff80f8af3580d2cdb89c
}
if (true || this.level.shouldTickBlocksAt(chunkcoordintpair.toLong())) { // Paper - optimise chunk tick iteration
@@ -695,6 +704,40 @@ public class ServerChunkCache extends ChunkSource {
@@ -680,6 +688,40 @@ public class ServerChunkCache extends ChunkSource {
gameprofilerfiller.pop();
gameprofilerfiller.pop();
}
@@ -1717,7 +1715,7 @@ index 77a2458b8acb21c64676934cd8d6b05ef6351c10..ad8e79c72841ff80f8af3580d2cdb89c
private void getFullChunk(long pos, Consumer<LevelChunk> chunkConsumer) {
diff --git a/src/main/java/net/minecraft/server/level/ServerEntity.java b/src/main/java/net/minecraft/server/level/ServerEntity.java
index ae188ae314336d971303023c7b7b8ecf32bae253..79914528f6d255355284b04253218a7c4dec1ead 100644
index 529ab44baaf573b97cf7e89560c548642733188f..db55ad9aaabfa1ea998754f3ac352d1698936696 100644
--- a/src/main/java/net/minecraft/server/level/ServerEntity.java
+++ b/src/main/java/net/minecraft/server/level/ServerEntity.java
@@ -183,7 +183,8 @@ public class ServerEntity {
@@ -1739,7 +1737,7 @@ index ae188ae314336d971303023c7b7b8ecf32bae253..79914528f6d255355284b04253218a7c
this.wasOnGround = this.entity.onGround();
this.teleportDelay = 0;
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index fa203e66887f5db1083728166e2f81ea4f656bd7..6c4a30779346985a7423286965bcc6446a777785 100644
index 6934e9dac0d69c043b73b7c46d59f2d39b37c67f..dbe612427b894df9da1335b94163ba9b89b090c0 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -894,6 +894,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -1789,13 +1787,13 @@ index fa203e66887f5db1083728166e2f81ea4f656bd7..6c4a30779346985a7423286965bcc644
gameprofilerfiller.push("thunder");
final BlockPos.MutableBlockPos blockposition = this.chunkTickMutablePosition; // Paper - use mutable to reduce allocation rate, final to force compile fail on change
- if (!this.paperConfig().environment.disableThunder && flag && this.isThundering() && this.spigotConfig.thunderChance > 0 && this.random.nextInt(this.spigotConfig.thunderChance) == 0) { // Spigot // Paper - disable thunder
+ if (!this.paperConfig().environment.disableThunder && flag && this.isThundering() && this.spigotConfig.thunderChance > 0 && /*this.random.nextInt(this.spigotConfig.thunderChance) == 0 &&*/ chunk.shouldDoLightning(this.random)) { // Spigot // Paper - disable thunder // Pufferfish - replace random with shouldDoLightning
- 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 &&*/ chunk.shouldDoLightning(this.random)) { // Spigot // Paper - Option to disable thunder // Pufferfish - replace random with shouldDoLightning
blockposition.set(this.findLightningTargetAround(this.getBlockRandomPos(j, 0, k, 15))); // Paper
if (this.isRainingAt(blockposition)) {
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 42b433d9461d0912b39542263684323369469ac0..79701158989205af7b70ab5d312c1d3fa27c6cd2 100644
index 6f9ec543185b6f68bb1eaa61a7ebea9d866d688f..7b74541d648de48579221945e4bab963882cc1f2 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -1121,6 +1121,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl
@@ -1919,7 +1917,7 @@ index d6cbe98e67fdbf8db46338a88ab1356dd63b50a3..20dd3a63b2f955b05a75eb240e33ae4c
int LARGE_MAX_STACK_SIZE = 64;
int DEFAULT_DISTANCE_LIMIT = 8;
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 554fc0d4e791a98a46216714f0fb07e178ddabe4..8328fb75f117a523301ed31b79fbee33ca82cbad 100644
index 2c06f3ebf7e1069727387bfc60db30c958c14b5a..37977541fee452d1c4ae9a27ee1c9b758fe0dd90 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -308,7 +308,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -1931,16 +1929,23 @@ index 554fc0d4e791a98a46216714f0fb07e178ddabe4..8328fb75f117a523301ed31b79fbee33
private ChunkPos chunkPosition;
private Vec3 deltaMovement;
private float yRot;
@@ -439,6 +439,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -438,6 +438,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
public UUID getOriginWorld() {
return this.originWorld;
}
// Paper end
+<<<<<<< HEAD
// Paper end - Entity origin API
// Paper start - make end portalling safe
public BlockPos portalBlock;
@@ -501,6 +502,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
return chunkMap.playerEntityTrackerTrackMaps[type.ordinal()].getObjectsInRange(MCUtil.getCoordinateKey(this));
}
// Paper end - optimise entity tracking
+ // Pufferfish start
+ public boolean activatedPriorityReset = false; // DAB
+ public int activatedPriority = gg.pufferfish.pufferfish.PufferfishConfig.maximumActivationPrio; // golf score
+ public final BlockPos.MutableBlockPos cachedBlockPos = new BlockPos.MutableBlockPos(); // used where needed
+ // Pufferfish end
+
public float getBukkitYaw() {
return this.yRot;
}
@@ -1957,7 +1962,7 @@ index 554fc0d4e791a98a46216714f0fb07e178ddabe4..8328fb75f117a523301ed31b79fbee33
this.baseTick();
}
@@ -4407,16 +4419,18 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -4402,16 +4414,18 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
}
public boolean updateFluidHeightAndDoFluidPushing(TagKey<Fluid> tag, double speed) {
@@ -1983,7 +1988,7 @@ index 554fc0d4e791a98a46216714f0fb07e178ddabe4..8328fb75f117a523301ed31b79fbee33
double d1 = 0.0D;
boolean flag = this.isPushedByFluid();
boolean flag1 = false;
@@ -4424,14 +4438,61 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -4419,14 +4433,61 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
int k1 = 0;
BlockPos.MutableBlockPos blockposition_mutableblockposition = new BlockPos.MutableBlockPos();
@@ -2051,7 +2056,7 @@ index 554fc0d4e791a98a46216714f0fb07e178ddabe4..8328fb75f117a523301ed31b79fbee33
if (d2 >= axisalignedbb.minY) {
flag1 = true;
@@ -4453,9 +4514,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -4448,9 +4509,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
// CraftBukkit end
}
}
@@ -2078,7 +2083,7 @@ index edc723ea5ca3a325106e7af38c60dbf9f0f5fb77..ab6cd363231a668c9b16df825a72d320
private String descriptionId;
@Nullable
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
index ca1900d29a86b9b39078da39b071950128c08c23..47d9d45a5244ea991bedd16ff9ef0a40128b0258 100644
index 6071451339080bbdd98fb634791a56988984c8bc..5641bc7f50cef7819ddaeb76a4a4f9c80f473d31 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
@@ -142,7 +142,6 @@ import org.bukkit.event.entity.EntityTeleportEvent;
@@ -2140,7 +2145,7 @@ index ca1900d29a86b9b39078da39b071950128c08c23..47d9d45a5244ea991bedd16ff9ef0a40
if (this.isSpectator()) {
return false;
diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java
index 22506c5c823c65e65034a962312c1dbd44356e23..4e5038e3cb6644e14d4b0022444386c50c827d0b 100644
index 24629412d2b4acaa81788ce70412b03387cc777c..a181a298334212847166409a2121476ba5871cb2 100644
--- a/src/main/java/net/minecraft/world/entity/Mob.java
+++ b/src/main/java/net/minecraft/world/entity/Mob.java
@@ -221,14 +221,16 @@ public abstract class Mob extends LivingEntity implements Targeting {
@@ -2231,7 +2236,7 @@ index 646d9a121d908a2fc3e4e302484dd5cd1bfc6804..e546ecdccde352502e26a8668eaaafe0
}
diff --git a/src/main/java/net/minecraft/world/entity/ai/goal/GoalSelector.java b/src/main/java/net/minecraft/world/entity/ai/goal/GoalSelector.java
index b738ee2d3801fadfd09313f05ae24593e56b0ec6..1635818fc4b1788c0d397085239df6dd75b210ab 100644
index 676f5485a4ca9252e911213dcda8d51776b637b6..2d63ee8fef87264d4b61290effa6ba86a787aa61 100644
--- a/src/main/java/net/minecraft/world/entity/ai/goal/GoalSelector.java
+++ b/src/main/java/net/minecraft/world/entity/ai/goal/GoalSelector.java
@@ -53,9 +53,12 @@ public class GoalSelector {
@@ -2701,7 +2706,7 @@ index 27b0a79f7a7c47047216aae42944bac2a2151181..a097cfc528f709c80575f35483b68783
autorecipestackmanager.initialize(this); // Paper - better exact choice recipes
int i = 0;
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
index ae42d5b3dea423a144056c64337af213609923d4..6ee7286797da79a3d47a85b1a4b7139804571969 100644
index b33bb001a48788e727e2f01788a6163024121bf3..2bae36d00a830a2640960024818566bb9351424b 100644
--- a/src/main/java/net/minecraft/world/level/Level.java
+++ b/src/main/java/net/minecraft/world/level/Level.java
@@ -211,6 +211,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
@@ -2713,22 +2718,6 @@ index ae42d5b3dea423a144056c64337af213609923d4..6ee7286797da79a3d47a85b1a4b71398
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; Async-Anti-Xray: Pass executor
this.spigotConfig = new org.spigotmc.SpigotWorldConfig(((net.minecraft.world.level.storage.PrimaryLevelData) worlddatamutable).getLevelName()); // Spigot
@@ -1317,13 +1319,13 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
try {
tickConsumer.accept(entity);
MinecraftServer.getServer().executeMidTickTasks(); // Paper - execute chunk tasks mid tick
- } catch (Throwable throwable) {
+ } catch (Throwable throwable) { // Pufferfish - diff on change ServerLevel.tick
if (throwable instanceof ThreadDeath) throw throwable; // Paper
// Paper start - Prevent tile entity and entity crashes
final String msg = String.format("Entity threw exception at %s:%s,%s,%s", entity.level().getWorld().getName(), entity.getX(), entity.getY(), entity.getZ());
MinecraftServer.LOGGER.error(msg, throwable);
getCraftServer().getPluginManager().callEvent(new ServerExceptionEvent(new ServerInternalException(msg, throwable)));
- entity.discard();
+ entity.discard(); // Pufferfish - diff on change ServerLevel.tick
// Paper end
}
}
@@ -1797,6 +1799,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
}
@@ -2738,7 +2727,7 @@ index ae42d5b3dea423a144056c64337af213609923d4..6ee7286797da79a3d47a85b1a4b71398
}
diff --git a/src/main/java/net/minecraft/world/level/NaturalSpawner.java b/src/main/java/net/minecraft/world/level/NaturalSpawner.java
index 1712bd7c3a9b515c7bf8909f7392a385ef243ff9..00b965de947cb13a178061278d1ffa4342e8e065 100644
index 17e9f3a30e287faf210e08dc7eb177a70f049f43..96fc603c2fccc1d9610248b2116d35696bc65e4e 100644
--- a/src/main/java/net/minecraft/world/level/NaturalSpawner.java
+++ b/src/main/java/net/minecraft/world/level/NaturalSpawner.java
@@ -429,12 +429,12 @@ public final class NaturalSpawner {
@@ -3000,7 +2989,7 @@ index a94300a457b25f0e33a8eeabba6dd5720ca9ab1e..b41635dd0569ff7df909df492d3e850a
}
diff --git a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
index d85ed706703e50f76df8db414827ccd41a5985d9..177673cc19cd70f60bb489cb2e74b39fbb8f8d24 100644
index 6ec3fc801453fd54c25b642e6fa71c19b463311d..922191159fadf8e89646d7299aadee4aa851f71a 100644
--- a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
+++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
@@ -86,6 +86,18 @@ public class LevelChunk extends ChunkAccess {
@@ -3032,7 +3021,7 @@ index d85ed706703e50f76df8db414827ccd41a5985d9..177673cc19cd70f60bb489cb2e74b39f
// CraftBukkit start
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 b10c652f53edfbf29f28b047d3b3c8edca21bc56..0806ec65a6c4e0518be01db9af2dd118d73da98d 100644
index 796bbef3544e06b8e7aac7e8ac5f740a2613f4bd..2422ca3ffc6ab7178cacf933b8013f85e7de4bd9 100644
--- a/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 {
@@ -3273,7 +3262,7 @@ index ebe65474a4a05ff1637d7f37ebcfe690af59def5..42142c512b12e5b269c19f1e821c50e7
@Nullable
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 28b02fee73a3ab604f6921800a7ede59e2e6f414..a6b8e768edacd1600992af5fd0a4562f1420b568 100644
index 25f41119bcc19bab7cd2fdb044147b3f78a8ef1c..5b01cd1b9a07fc8600fddb9d9e0aea3ac5a288f0 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -264,7 +264,7 @@ import javax.annotation.Nullable; // Paper
@@ -3336,7 +3325,7 @@ index 774556a62eb240da42e84db4502e2ed43495be17..80553face9c70c2a3d897681e7761df8
if (stream != null) {
diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java
index fafc8b84d6b6368c70b8eedfdb4c3a9deace9c26..a69814d3a6214af734d670fe5545518a5f8a8dc5 100644
index c39894e824334f1dc52e0466cf9d84f7e219be70..41cddf7e42f0e8f80973e482a95e55d3bd19f659 100644
--- a/src/main/java/org/spigotmc/ActivationRange.java
+++ b/src/main/java/org/spigotmc/ActivationRange.java
@@ -38,6 +38,10 @@ import co.aikar.timings.MinecraftTimings;
@@ -3350,7 +3339,7 @@ index fafc8b84d6b6368c70b8eedfdb4c3a9deace9c26..a69814d3a6214af734d670fe5545518a
public class ActivationRange
{
@@ -222,6 +226,25 @@ public class ActivationRange
@@ -221,6 +225,25 @@ public class ActivationRange
}
// Paper end - Configurable marker ticking
ActivationRange.activateEntity(entity);
@@ -3376,7 +3365,7 @@ index fafc8b84d6b6368c70b8eedfdb4c3a9deace9c26..a69814d3a6214af734d670fe5545518a
}
// Paper end
}
@@ -238,12 +261,12 @@ public class ActivationRange
@@ -237,12 +260,12 @@ public class ActivationRange
if ( MinecraftServer.currentTick > entity.activatedTick )
{
if ( entity.defaultActivationState )
@@ -3391,7 +3380,7 @@ index fafc8b84d6b6368c70b8eedfdb4c3a9deace9c26..a69814d3a6214af734d670fe5545518a
entity.activatedTick = MinecraftServer.currentTick;
}
}
@@ -297,7 +320,7 @@ public class ActivationRange
@@ -296,7 +319,7 @@ public class ActivationRange
if ( entity instanceof LivingEntity )
{
LivingEntity living = (LivingEntity) entity;

File diff suppressed because it is too large Load Diff

View File

@@ -176,10 +176,10 @@ index 61840cfd64caba6595dfc99c91c76a195638d4ee..b94f711b8bd56d159745b59f8b842d19
if (Boolean.getBoolean("Paper.isRunDev")) {
net.minecraft.server.packs.VanillaPackResourcesBuilder.developmentConfig = builder -> {
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 16b5f59dd3658bb9fc5be629aa4e1bc0ce356243..b0e3af53bda197d4b8f19c0d400511ac398aebbe 100644
index 1b04d3f93b7fbe5c08f5063e64761a254ede45b5..9b356fee4f2d858b86356017760ad6d13a9de727 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -959,7 +959,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -955,7 +955,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
shutdownThread = Thread.currentThread();
org.spigotmc.WatchdogThread.doStop(); // Paper
if (!isSameThread()) {
@@ -189,7 +189,7 @@ index 16b5f59dd3658bb9fc5be629aa4e1bc0ce356243..b0e3af53bda197d4b8f19c0d400511ac
this.getRunningThread().stop();
try {
diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServerProperties.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServerProperties.java
index 33e876787234033c4d39ccab691ba61a778828a5..e8ed7b12f09da333182d1826814e8c72918ddae8 100644
index ae75edfaa9e4c72f11fbb7ffc66294be47c206cc..a66dcea06424518290576c7647ae0717040586f9 100644
--- a/src/main/java/net/minecraft/server/dedicated/DedicatedServerProperties.java
+++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServerProperties.java
@@ -57,7 +57,7 @@ public class DedicatedServerProperties extends Settings<DedicatedServerPropertie
@@ -233,7 +233,7 @@ index 7f07ffab0835d45d4d170fe171d7fa996d5913d9..a2b7441d1f5998f2b05903d07b587b42
servergui.runFinalizers();
}
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 a25e7183da64f726773aa279707ae67941246b46..b43eaeb826dbd5f276d13e4ca755ea07c1ef9335 100644
index fe312b1aef579cb4bf81bdd967cf72ff880d7505..97628761958289612ada0374f56e7d8f6af21512 100644
--- a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java
+++ b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java
@@ -153,7 +153,7 @@ public class RegionFileStorage implements AutoCloseable {
@@ -246,7 +246,7 @@ index a25e7183da64f726773aa279707ae67941246b46..b43eaeb826dbd5f276d13e4ca755ea07
private static CompoundTag readOversizedChunk(RegionFile regionfile, ChunkPos chunkCoordinate) throws IOException {
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 679f7874931bf068da800a8e8aa68285971b6996..fed4ac63da94674b6f5d59ca9065a84a29ca0e3f 100644
index 7db5fb71e8ffdc9291eadceb2682f7f98d1ab37a..d6d668bf3e2e88408768b7c84de471e5b7338067 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -264,7 +264,7 @@ import javax.annotation.Nullable; // Paper
@@ -259,7 +259,7 @@ index 679f7874931bf068da800a8e8aa68285971b6996..fed4ac63da94674b6f5d59ca9065a84a
private final String bukkitVersion = Versioning.getBukkitVersion();
private final Logger logger = Logger.getLogger("Minecraft");
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
index 3511c7361e2287bb47a74aa3426234b0054c405d..c0c48d8498e4b38178f73ac6a08dad64fc5a005b 100644
index 146f229b8e8888e2c0256c007c71c675c27e71a5..0f3ef5b27f72ba558765798d5f91d60bf5623029 100644
--- a/src/main/java/org/bukkit/craftbukkit/Main.java
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java
@@ -141,7 +141,7 @@ public class Main {
@@ -370,7 +370,7 @@ index e9fc2b4661f5275b93db5d3fdf25a8bdc3b38920..c65f68359edfc01bca2c9fd98812d693
serverModName = getString("settings.server-mod-name", serverModName);
}
diff --git a/src/main/java/org/spigotmc/WatchdogThread.java b/src/main/java/org/spigotmc/WatchdogThread.java
index 5fc8cc40ab627eba0b2110c73d31af213a935733..daa9f608c0b49f9b5804ba38a8146f30eb1b6783 100644
index f7296691cb4af7814de1520347b307ff209082e4..090eb94fe8088d0ae98bfbe8bbd32a3cac2015d0 100644
--- a/src/main/java/org/spigotmc/WatchdogThread.java
+++ b/src/main/java/org/spigotmc/WatchdogThread.java
@@ -155,14 +155,14 @@ public final class WatchdogThread extends io.papermc.paper.util.TickThread // Pa
@@ -391,7 +391,7 @@ index 5fc8cc40ab627eba0b2110c73d31af213a935733..daa9f608c0b49f9b5804ba38a8146f30
//
if ( net.minecraft.world.level.Level.lastPhysicsProblem != null )
{
@@ -185,12 +185,12 @@ public final class WatchdogThread extends io.papermc.paper.util.TickThread // Pa
@@ -184,12 +184,12 @@ public final class WatchdogThread extends io.papermc.paper.util.TickThread // Pa
// Paper end
} else
{
@@ -403,10 +403,10 @@ index 5fc8cc40ab627eba0b2110c73d31af213a935733..daa9f608c0b49f9b5804ba38a8146f30
log.log( Level.SEVERE, "------------------------------" );
- log.log( Level.SEVERE, "Server thread dump (Look for plugins here before reporting to Purpur!):" ); // Paper // Purpur
+ log.log( Level.SEVERE, "Server thread dump (Look for plugins here before reporting to Plazma!):" ); // Paper // Purpur // Plazma - Branding
io.papermc.paper.chunk.system.scheduling.ChunkTaskScheduler.dumpAllChunkLoadInfo(isLongTimeout); // Paper // Paper - rewrite chunk system
io.papermc.paper.chunk.system.scheduling.ChunkTaskScheduler.dumpAllChunkLoadInfo(isLongTimeout); // Paper - rewrite chunk system
this.dumpTickingInfo(); // Paper - log detailed tick information
WatchdogThread.dumpThread( ManagementFactory.getThreadMXBean().getThreadInfo( MinecraftServer.getServer().serverThread.getId(), Integer.MAX_VALUE ), log );
@@ -206,7 +206,7 @@ public final class WatchdogThread extends io.papermc.paper.util.TickThread // Pa
@@ -205,7 +205,7 @@ public final class WatchdogThread extends io.papermc.paper.util.TickThread // Pa
WatchdogThread.dumpThread( thread, log );
}
} else {

View File

@@ -259,18 +259,18 @@ index fa1c0aee8c3a4d0868482cf5c703bbfd08e09874..a2502999965e88e30202894e7bc82b15
+ */ // Plazma - Configurable Plazma
}
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index b0e3af53bda197d4b8f19c0d400511ac398aebbe..a837ac3d163457a150f01fc3083eaee23b0ae53c 100644
index 9b356fee4f2d858b86356017760ad6d13a9de727..791e958f2277d277ed50a9c94e94e99d29e5d90a 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -307,6 +307,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -306,6 +306,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
public final double[] recentTps = new double[ 4 ]; // Purpur
// Spigot end
public final io.papermc.paper.configuration.PaperConfigurations paperConfigurations; // Paper - add paper configuration files
+ public final org.plazmamc.plazma.configurations.PlazmaConfigurations plazmaConfigurations; // Plazma - Configurable Plazma
public static long currentTickLong = 0L; // Paper - track current tick as a long
public boolean isIteratingOverLevels = false; // Paper - Throw exception on world create while being ticked
public boolean lagging = false; // Purpur
protected boolean upnp = false; // Purpur
@@ -419,6 +420,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -415,6 +416,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
Runtime.getRuntime().addShutdownHook(new org.bukkit.craftbukkit.util.ServerShutdownThread(this));
// CraftBukkit end
this.paperConfigurations = services.paperConfigurations(); // Paper - add paper configuration files
@@ -278,7 +278,7 @@ index b0e3af53bda197d4b8f19c0d400511ac398aebbe..a837ac3d163457a150f01fc3083eaee2
}
private void readScoreboard(DimensionDataStorage persistentStateManager) {
@@ -1459,6 +1461,15 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -1456,6 +1458,15 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
}
// Paper end - execute chunk tasks mid tick
@@ -354,7 +354,7 @@ index 043a48d8c90e2e008b06fb5a643378a0fa948aaa..d2ea4c6470706138a1e6cebb8c591abb
// Purpur start
try {
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index 65a60983be85707883bd330e79a8c1f03428f2c9..fdc5b9e2c5dd5b99f06b21ddb42a00c7238bc84d 100644
index 75b3de5c1e26815aa04dba3f09f2ef7807767154..ac7fcbc10f6b971621b5aae31aee467ed6cd8458 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -695,7 +695,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -380,7 +380,7 @@ index 361e0d5ec35219c2706c7344efc25ee6d50a2460..d96495237467adb38263c8925e7253c5
}
}
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
index f638224f8ae018030fa00962cd3c75fc31ab2488..a4d6b11a2d74f57bce7ad9797cd9ce32769d2de5 100644
index f0ed437afcc175fbf6fac939265300cdf884b8cb..04a9ee3eb58afcb328302cb202684af911a1f540 100644
--- a/src/main/java/net/minecraft/world/level/Level.java
+++ b/src/main/java/net/minecraft/world/level/Level.java
@@ -176,7 +176,12 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
@@ -410,7 +410,7 @@ index f638224f8ae018030fa00962cd3c75fc31ab2488..a4d6b11a2d74f57bce7ad9797cd9ce32
this.playerBreedingCooldowns = this.getNewBreedingCooldownCache(); // Purpur
this.generator = gen;
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index fed4ac63da94674b6f5d59ca9065a84a29ca0e3f..0a933294eafc179ec4c8a1145bfdd2be590853b3 100644
index d6d668bf3e2e88408768b7c84de471e5b7338067..35212e2418d0b5ac6813a778071368748fd6b926 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1051,6 +1051,7 @@ public final class CraftServer implements Server {
@@ -421,7 +421,7 @@ index fed4ac63da94674b6f5d59ca9065a84a29ca0e3f..0a933294eafc179ec4c8a1145bfdd2be
org.purpurmc.purpur.PurpurConfig.init((File) console.options.valueOf("purpur-settings")); // Purpur
for (ServerLevel world : this.console.getAllLevels()) {
// world.serverLevelData.setDifficulty(config.difficulty); // Paper - per level difficulty
@@ -3094,6 +3095,13 @@ public final class CraftServer implements Server {
@@ -3081,6 +3082,13 @@ public final class CraftServer implements Server {
}
// Purpur end
@@ -436,7 +436,7 @@ index fed4ac63da94674b6f5d59ca9065a84a29ca0e3f..0a933294eafc179ec4c8a1145bfdd2be
public void restart() {
org.spigotmc.RestartCommand.restart();
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
index c0c48d8498e4b38178f73ac6a08dad64fc5a005b..268a2f3d4a04e9630190555d3ef211af23ca41cb 100644
index 0f3ef5b27f72ba558765798d5f91d60bf5623029..2c82f8c25006123bacec5107a6380a67e927cc1d 100644
--- a/src/main/java/org/bukkit/craftbukkit/Main.java
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java
@@ -195,6 +195,14 @@ public class Main {

View File

@@ -61,10 +61,10 @@ index d2ea4c6470706138a1e6cebb8c591abb14c96a18..84cf2b2e289af0a43c9cc64a9c7e045f
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index e2f58fe299694db1b8975a502b42c832ef23ffb9..3803a04804fc11553c85507a257939552ce4890f 100644
index c103f734ac8f4a58990a33cfefd8066b798a603e..ada7af155d02b580b8262ff4ca37b44d79792cec 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -1468,6 +1468,7 @@ public abstract class PlayerList {
@@ -1467,6 +1467,7 @@ public abstract class PlayerList {
public void broadcastChatMessage(PlayerChatMessage message, Predicate<ServerPlayer> shouldSendFiltered, @Nullable ServerPlayer sender, ChatType.Bound params, @Nullable Function<net.kyori.adventure.audience.Audience, Component> unsignedFunction) {
// Paper end
boolean flag = this.verifyChatTrusted(message);

View File

@@ -65,7 +65,7 @@ index 38854a047c6da7e2551f206478d17628e765168d..c989f0ddca966cb522fca68734baa5cc
public int forkLimit() {
return this.forkLimit;
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 6a35b99af142a9379c4e494acbc5cc1da92da737..c0aed5db053cb39cdf9963f22f29c63fe4c42ede 100644
index 791e958f2277d277ed50a9c94e94e99d29e5d90a..91264d763a28f5ddeb2096be7a73ed091dcc6def 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -113,16 +113,18 @@ import net.minecraft.util.Unit;
@@ -103,7 +103,7 @@ index 6a35b99af142a9379c4e494acbc5cc1da92da737..c0aed5db053cb39cdf9963f22f29c63f
@Nullable
private MinecraftServer.TimeProfiler debugCommandProfiler;
private boolean debugCommandProfilerDelayStart;
@@ -2485,10 +2489,12 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -2482,10 +2486,12 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
}
}
@@ -116,7 +116,7 @@ index 6a35b99af142a9379c4e494acbc5cc1da92da737..c0aed5db053cb39cdf9963f22f29c63f
public abstract boolean isSingleplayerOwner(GameProfile profile);
@@ -2725,6 +2731,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -2722,6 +2728,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
}
// CraftBukkit end
@@ -124,7 +124,7 @@ index 6a35b99af142a9379c4e494acbc5cc1da92da737..c0aed5db053cb39cdf9963f22f29c63f
private void startMetricsRecordingTick() {
if (false && this.willStartRecordingMetrics) { // Purpur
this.metricsRecorder = ActiveMetricsRecorder.createStarted(new ServerMetricsSamplersProvider(Util.timeSource, this.isDedicatedServer()), Util.timeSource, Util.ioPool(), new MetricsPersister("server"), this.onMetricsRecordingStopped, (path) -> {
@@ -2751,12 +2758,12 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -2748,12 +2755,12 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
}
public void startRecordingMetrics(Consumer<ProfileResults> resultConsumer, Consumer<Path> dumpConsumer) {
@@ -139,7 +139,7 @@ index 6a35b99af142a9379c4e494acbc5cc1da92da737..c0aed5db053cb39cdf9963f22f29c63f
}
public void stopRecordingMetrics() {
@@ -2771,6 +2778,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -2768,6 +2775,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
//this.metricsRecorder.cancel(); // Purpur
//this.profiler = this.metricsRecorder.getProfiler(); // Purpur
}
@@ -205,7 +205,7 @@ index 5dd0dcb47211cec69189115bf4eab1dffc3ca8cf..1b54ec6a39f40f3334b49348941290b5
public class ServerFunctionManager {
diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java
index 206808a14c03b36c7974dea7c3d0bfda38cabfcd..c5ea437e6524b39fb6779112380f57cf4a0bbe15 100644
index 06554a000da1f6ba7360fa907deeead7341b09ea..69bccd2d35af4dae43ce77da1f0b0a436da1ad3e 100644
--- a/src/main/java/net/minecraft/server/level/ChunkMap.java
+++ b/src/main/java/net/minecraft/server/level/ChunkMap.java
@@ -68,7 +68,7 @@ import net.minecraft.server.level.progress.ChunkProgressListener;
@@ -218,7 +218,7 @@ index 206808a14c03b36c7974dea7c3d0bfda38cabfcd..c5ea437e6524b39fb6779112380f57cf
import net.minecraft.util.thread.ProcessorHandle;
import net.minecraft.util.thread.ProcessorMailbox;
diff --git a/src/main/java/net/minecraft/server/level/ServerChunkCache.java b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
index a5067485fb6683e3255681a9c5a6df86c90ce0fa..837a15b271c8d3bb73ce2a821ffae8ea259e67c6 100644
index 658aa2d0e206b050640aded4895684163e183a70..522cefa06b8a01047c6008ccc39a962b395d71bb 100644
--- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java
+++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
@@ -23,7 +23,7 @@ import net.minecraft.core.SectionPos;
@@ -231,7 +231,7 @@ index a5067485fb6683e3255681a9c5a6df86c90ce0fa..837a15b271c8d3bb73ce2a821ffae8ea
import net.minecraft.world.entity.Entity;
import net.minecraft.world.entity.ai.village.poi.PoiManager;
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index ea50d6ac03c13fdffad038718d39cd02abdb23d4..d3053983028c031db7c99e53033c831ae822d5c6 100644
index ac7fcbc10f6b971621b5aae31aee467ed6cd8458..4247a66f621bbe8e02493aea714094c424eb6fcb 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -78,7 +78,7 @@ import net.minecraft.util.Mth;
@@ -804,7 +804,7 @@ index f012d23b22b1a9d1acb6c020c66dc727f7fe9e1a..23cf0ff4c86c3d05668b1ed176364606
+ */ // Plazma - Completely remove Mojang Profiler
}
diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java
index b8948e2b8390f7b670766d2453a01483c32d854c..4f544168859ee5813a66b39e0ef055250a4381f2 100644
index 11062e250657cb839ca046d6c224647915d3ee7b..27c7263cabaa7bbd2ca371627ed9235ae5c5ff41 100644
--- a/src/main/java/net/minecraft/world/entity/Mob.java
+++ b/src/main/java/net/minecraft/world/entity/Mob.java
@@ -148,8 +148,8 @@ public abstract class Mob extends LivingEntity implements Targeting {
@@ -819,7 +819,7 @@ index b8948e2b8390f7b670766d2453a01483c32d854c..4f544168859ee5813a66b39e0ef05525
this.moveControl = new org.purpurmc.purpur.controller.MoveControllerWASD(this); // Purpur
this.jumpControl = new JumpControl(this);
diff --git a/src/main/java/net/minecraft/world/entity/ai/goal/GoalSelector.java b/src/main/java/net/minecraft/world/entity/ai/goal/GoalSelector.java
index 02978315bc2b828cc603ce7478408f3f82c249c2..a162b7e03934921d133b6d45cdeeb06df2fb83c0 100644
index bb068bffc9e2f035dee90276156129ce750a7cd7..766349777b3b2d947e3b05dfaacae3e747806b86 100644
--- a/src/main/java/net/minecraft/world/entity/ai/goal/GoalSelector.java
+++ b/src/main/java/net/minecraft/world/entity/ai/goal/GoalSelector.java
@@ -11,7 +11,7 @@ import java.util.Set;
@@ -875,7 +875,7 @@ index d87124f5356180a37e581febc6141fdc5f1395a7..681e3fcd759a26578e054f88e8048e39
// CraftBukkit start - SPIGOT-5667 make sure all types are populated and mutable
Map<RecipeType<?>, Object2ObjectLinkedOpenHashMap<ResourceLocation, RecipeHolder<?>>> map1 = Maps.newHashMap();
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
index f2d0ba8fec1ba5a40bfdb71998bf2311c6343a5e..dbd7463711e8628889716441a435b52004edcc95 100644
index 04a9ee3eb58afcb328302cb202684af911a1f540..ac16b4aefc4bcc95aa9ac10a354a6a3a912842e7 100644
--- a/src/main/java/net/minecraft/world/level/Level.java
+++ b/src/main/java/net/minecraft/world/level/Level.java
@@ -41,7 +41,7 @@ import net.minecraft.sounds.SoundSource;
@@ -954,7 +954,7 @@ index 0f1025495237aebe30132ace0832aa5718d6f9bb..cb12c0a7db86a1f3e1e34a9fbe0b67e5
+ */ // Plazma - Completely remove Mojang Profiler
}
diff --git a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
index f782fee9243129d0990777dcd2d74735ceb5e64e..933dfc69b4befd6cd02df8fd41037e5325a4d55a 100644
index 1b49ecbf8fdbe8b734f8ca5191dc9ed70aa66af7..88bf97e8a8242b5bf182ec84688671ca5a6106cb 100644
--- a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
+++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
@@ -25,7 +25,7 @@ import net.minecraft.network.FriendlyByteBuf;

View File

@@ -7,10 +7,10 @@ Subject: [PATCH] Apply various optimizations
Akarin - Swaps the predicate order of collision
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index f10933fc78cbb0ead042c1870d93d0447f640896..8156e42e7e22cd64b981ee645c2b02e455f71ec4 100644
index 4bbede7891d103d68caa6265903479f2ce98683e..ef30864618d19a52a5cf91559b820f889e1da155 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -2144,8 +2144,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -2145,8 +2145,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
public void playerTouch(Player player) {}
public void push(Entity entity) {
@@ -21,7 +21,7 @@ index f10933fc78cbb0ead042c1870d93d0447f640896..8156e42e7e22cd64b981ee645c2b02e4
if (this.level.paperConfig().collisions.onlyPlayersCollide && !(entity instanceof ServerPlayer || this instanceof ServerPlayer)) return; // Paper - Collision option for requiring a player participant
double d0 = entity.getX() - this.getX();
double d1 = entity.getZ() - this.getZ();
@@ -2173,8 +2174,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@@ -2174,8 +2175,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
entity.push(d0, 0.0D, d1);
}
}

View File

@@ -94,7 +94,7 @@ index 84cf2b2e289af0a43c9cc64a9c7e045ffaf9c62b..3b7a0e6220e93157b171d227676147b0
// Paper start - Add setting for proxy online mode status
diff --git a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
index fa5107deb090a779ddc2fdd0fd6de05e1fcf85b9..901408f39509fab160180e13dcee6499542b49ca 100644
index 02e65b0bd212d46855baee48fab35dc95a88b43f..59c96512dcdac551e9919c3893e1340f86e3e861 100644
--- a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
@@ -271,10 +271,31 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
@@ -130,10 +130,10 @@ index fa5107deb090a779ddc2fdd0fd6de05e1fcf85b9..901408f39509fab160180e13dcee6499
if (packet == null || this.processedDisconnect) { // Spigot
return;
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index 3803a04804fc11553c85507a257939552ce4890f..56ee7057defed5c9281aa557d20608c275fac9d6 100644
index ada7af155d02b580b8262ff4ca37b44d79792cec..d8b0f270369e28da1226cd2ad4480dea3f347593 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -1499,6 +1499,7 @@ public abstract class PlayerList {
@@ -1498,6 +1498,7 @@ public abstract class PlayerList {
}
public boolean verifyChatTrusted(PlayerChatMessage message) { // Paper - private -> public

View File

@@ -5,14 +5,15 @@ Subject: [PATCH] Configurable entity sensor tick
diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java
index 2d5568ac864a7f557bc5a21ad796206c25caf028..6ac01887e963d1272c7bb40b0a807b13f616e2a5 100644
index 27c7263cabaa7bbd2ca371627ed9235ae5c5ff41..0991e62d7d4dc2de03c0e6ca8a6cf62c0bd3d59b 100644
--- a/src/main/java/net/minecraft/world/entity/Mob.java
+++ b/src/main/java/net/minecraft/world/entity/Mob.java
@@ -937,10 +937,10 @@ public abstract class Mob extends LivingEntity implements Targeting {
@@ -937,10 +937,11 @@ public abstract class Mob extends LivingEntity implements Targeting {
}
// Paper end
// Paper end - Allow nerfed mobs to jump and float
//this.level().getProfiler().push("sensing"); // Purpur
- this.sensing.tick();
+ //this.sensing.tick(); // Plazma - Moved down
//this.level().getProfiler().pop(); // Purpur
int i = this.level().getServer().getTickCount() + this.getId();

View File

@@ -7,13 +7,13 @@ Subject: [PATCH] Add entity spawn deadlock timer
- AbsolemJackdaw/FixMySpawnR
diff --git a/src/main/java/net/minecraft/world/level/BaseSpawner.java b/src/main/java/net/minecraft/world/level/BaseSpawner.java
index 28e8403f1f91effd7eb5a50855f823f8adc90b6b..1b9989387d94429538e724329737b304232756e6 100644
index 2c36aca7a4d21a5c8663dc9736bc837cdfe69d72..cef4abeba32012c3d813fd6d1af284d0fd91762b 100644
--- a/src/main/java/net/minecraft/world/level/BaseSpawner.java
+++ b/src/main/java/net/minecraft/world/level/BaseSpawner.java
@@ -48,6 +48,8 @@ public abstract class BaseSpawner {
public int requiredPlayerRange = 16;
public int spawnRange = 4;
private int tickDelay = 0; // Paper
private int tickDelay = 0; // Paper - Configurable mob spawner tick rate
+ private int blockExistsTick = 0; // Plazma - Add entity spawn deadlock timer
+ private boolean blockLockedByTime = false; // Plazma - Add entity spawn deadlock timer

View File

@@ -411,10 +411,10 @@ index ccdc2345465313991f065e1176b58fb7d5e8722f..bb50e69a4d84e4753db77be071cc6fc7
// Paper end - Multi Block Change API
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index b8251ca497a0c676b9885af87a106b4b5eb5d221..833a03146da779e0f4b2e4a345e73a35e62756b4 100644
index f5c5a6d32074bf737dc4876afb6ba13b3fb03a7d..db84a32edf006ee61f716de673de34b1890fc837 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1503,13 +1503,10 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -1500,13 +1500,10 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
}
private Optional<ServerStatus.Favicon> loadStatusIcon() {
@@ -478,7 +478,7 @@ index f65d6dc2b1596232707be402cf0377b5ab90cc01..6735382b229bf6ab66f1ccdf6122215e
return map;
});
diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java
index c5ea437e6524b39fb6779112380f57cf4a0bbe15..79688571001aafcb0941f9acaa41201b535d8366 100644
index 69bccd2d35af4dae43ce77da1f0b0a436da1ad3e..d0a1ecca75acfaf416f08fb1dd13f1c49bc5b225 100644
--- a/src/main/java/net/minecraft/server/level/ChunkMap.java
+++ b/src/main/java/net/minecraft/server/level/ChunkMap.java
@@ -109,6 +109,7 @@ import org.bukkit.craftbukkit.generator.CustomChunkGenerator;
@@ -489,7 +489,7 @@ index c5ea437e6524b39fb6779112380f57cf4a0bbe15..79688571001aafcb0941f9acaa41201b
private static final byte CHUNK_TYPE_REPLACEABLE = -1;
private static final byte CHUNK_TYPE_UNKNOWN = 0;
private static final byte CHUNK_TYPE_FULL = 1;
@@ -1357,7 +1358,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
@@ -1347,7 +1348,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
// stuff could have been removed, so we need to check the trackedPlayers set
// for players that were removed
@@ -499,7 +499,7 @@ index c5ea437e6524b39fb6779112380f57cf4a0bbe15..79688571001aafcb0941f9acaa41201b
this.updatePlayer(conn.getPlayer());
}
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index d3053983028c031db7c99e53033c831ae822d5c6..c946cff8e8bd126dc0d9d05489b15395755056d4 100644
index 4247a66f621bbe8e02493aea714094c424eb6fcb..b9cfc2f69be627aa19842127eb9ad0d729f647f4 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -1449,7 +1449,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -512,7 +512,7 @@ index d3053983028c031db7c99e53033c831ae822d5c6..c946cff8e8bd126dc0d9d05489b15395
return ret;
}
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 02d4cb5eea668fe8c48b4e5a3df94f05c23796eb..362062ff9f454e0dc2c5633e1f7e29d865a013ce 100644
index 64666af7f8c4e2ad9a47e20131b4654fabae9cc5..51cd58031cc9f32085ac2435f01485ec09df5ff7 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -3264,7 +3264,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl
@@ -558,10 +558,10 @@ index 8757db8c7f9dc4fbdaf2324f6da639cbf1514b5d..3a995fb30a00b313d9b4de52ad11eac5
ServerConfigurationPacketListenerImpl serverconfigurationpacketlistenerimpl = new ServerConfigurationPacketListenerImpl(this.server, this.connection, commonlistenercookie, this.player); // CraftBukkit
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index 5630d7efd841346abcf530247bc1b8535d8c8e5e..4dd5f4fb94c2a25100dcc24b91a0f6059a61d070 100644
index d8b0f270369e28da1226cd2ad4480dea3f347593..796d51bd84fea602d94df1c849f81e7b1efc81e8 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -716,7 +716,7 @@ public abstract class PlayerList {
@@ -715,7 +715,7 @@ public abstract class PlayerList {
while (iterator.hasNext()) {
entityplayer = (ServerPlayer) iterator.next();
this.save(entityplayer); // CraftBukkit - Force the player's inventory to be saved
@@ -596,7 +596,7 @@ index 0ee04fe6ff6a4d09754f326526ae04fe7226bab2..5663ce568a1daa638b7387bee8b9917c
}
}
diff --git a/src/main/java/net/minecraft/util/ZeroBitStorage.java b/src/main/java/net/minecraft/util/ZeroBitStorage.java
index 311625277a26c9c187025a1036978229241b965f..33d70d547f614704e7ac36b9f49bbb7ca13d968c 100644
index f8de91393564b3691c17339ac9196cc0fc1cf748..d0e380e51562f423a0dd937026dfec08d6bd5e18 100644
--- a/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;
@@ -752,7 +752,7 @@ index dbc27afbccb027963ae3f035c268835adedbb933..320916acbf22cd5d9a7aff7d3550de75
}
diff --git a/src/main/java/net/minecraft/world/entity/monster/Spider.java b/src/main/java/net/minecraft/world/entity/monster/Spider.java
index ad643331e0ea388dc28329828d2cb005d176eb9f..867b543f45ea7a865f5326fbcc3d3517b50be16a 100644
index b44ffeb4cc0ef63fdd25683f60c5a20fcdeb9135..284aa2340079a4bdf9f1916b28596ea4a06a53ba 100644
--- a/src/main/java/net/minecraft/world/entity/monster/Spider.java
+++ b/src/main/java/net/minecraft/world/entity/monster/Spider.java
@@ -95,7 +95,7 @@ public class Spider extends Monster {
@@ -765,7 +765,7 @@ index ad643331e0ea388dc28329828d2cb005d176eb9f..867b543f45ea7a865f5326fbcc3d3517
this.targetSelector.addGoal(3, new Spider.SpiderTargetGoal<>(this, IronGolem.class));
}
diff --git a/src/main/java/net/minecraft/world/entity/monster/Zombie.java b/src/main/java/net/minecraft/world/entity/monster/Zombie.java
index a161f8316dc38148a60ad3a661eb2d50a34ec068..d196a70e8d02772c7cdb89bd85aad28bf9f2260b 100644
index c531d830f4d6b2d2213e160d7e1a5b50b80dbea5..18f33b417573417d5e3eb06768d9b59362c2dcf1 100644
--- a/src/main/java/net/minecraft/world/entity/monster/Zombie.java
+++ b/src/main/java/net/minecraft/world/entity/monster/Zombie.java
@@ -166,7 +166,7 @@ public class Zombie extends Monster {
@@ -864,7 +864,7 @@ index a907b79fd8291a0e92db138f37239d17424188a1..a402db6baa4b24b4c6750b01b8b2f56e
int i = 0;
diff --git a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFile.java b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFile.java
index 4373ae3b454ad3fb8550e83b868e98cc04893c1b..eeee5fe71f0894113582282cebaad4705c94afac 100644
index 6cf83502a954cce9c562ec036bfeddb477d38b73..d28bffce82d0b40c31f240c016621ac06bbad178 100644
--- a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFile.java
+++ b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFile.java
@@ -444,7 +444,7 @@ public class RegionFile implements AutoCloseable {
@@ -1001,10 +1001,10 @@ index 16d2aa4556bc9f32a2def7f9ca282aa3fa23fb87..8514da343ce287298477f2c977e49491
@Nullable
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 27f4ef85818f1735371a7aedd8ce311d65a3b406..b250e673213e1cd1215260db0f0cb360c62cb288 100644
index 137595efe9e828810cf1f006027ac96606ad8821..3f13abec289e53990b0dd6a04cab4cf07adf1dd9 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -462,7 +462,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -420,7 +420,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
public void sendTitle(Title title) {
Preconditions.checkNotNull(title, "Title is null");
setTitleTimes(title.getFadeIn(), title.getStay(), title.getFadeOut());