diff --git a/build-data/paper.at b/build-data/paper.at index 8767263493..8f7c25d530 100644 --- a/build-data/paper.at +++ b/build-data/paper.at @@ -191,3 +191,6 @@ public net.minecraft.world.entity.monster.Vindicator isJohnny public net.minecraft.server.level.Ticket createdTick public net.minecraft.server.level.ServerChunkCache CHUNK_STATUSES public net.minecraft.server.level.ChunkHolder pos + +# Incremental chunk saving +public net.minecraft.world.level.entity.PersistentEntitySectionManager storeChunkSections(JLjava/util/function/Consumer;)Z diff --git a/patches/removed/1.17/0455-incremental-chunk-saving.patch b/patches/server/0456-incremental-chunk-saving.patch similarity index 93% rename from patches/removed/1.17/0455-incremental-chunk-saving.patch rename to patches/server/0456-incremental-chunk-saving.patch index 26796dc778..385e71c9f2 100644 --- a/patches/removed/1.17/0455-incremental-chunk-saving.patch +++ b/patches/server/0456-incremental-chunk-saving.patch @@ -3,10 +3,9 @@ From: Shane Freeder Date: Sun, 9 Jun 2019 03:53:22 +0100 Subject: [PATCH] incremental chunk saving -1.17 Update note: Patch has been applied already, needs updating to properly save entities diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index 2216fc05ef5f1c2f7e4dcab7bb20b9944838c5f4..66c8e729b1e01c0ecf7c7c58bda8e06f202a31fe 100644 +index 9e5810eb0085ad956f0bd1cd69fa88909d9d638a..77e90a6b7d29ad989fd961e00a6fd97c7e5ec4fe 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -44,6 +44,21 @@ public class PaperWorldConfig { @@ -32,7 +31,7 @@ index 2216fc05ef5f1c2f7e4dcab7bb20b9944838c5f4..66c8e729b1e01c0ecf7c7c58bda8e06f config.addDefault("world-settings.default." + path, def); return config.getBoolean("world-settings." + worldName + "." + path, config.getBoolean("world-settings.default." + path)); diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 11dbe48c8a8c29cd28d725c43505e326a6e626ff..363dcebb3b2d5a2512776a191f6716ed3d0e8aff 100644 +index e3d6a4f64948d5b793fd82262b08753d8a60609e..04531db7c26b9defe76d2584d960132ad79dc0fa 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -300,6 +300,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop 100) { // Spigot diff --git a/src/main/java/net/minecraft/server/level/ChunkHolder.java b/src/main/java/net/minecraft/server/level/ChunkHolder.java -index c2401b2ff0547335ddbbeb05c07b74552c246fc9..c1db5cc45dbc7dd24a1ef4dbf88a8efb6c7f2d57 100644 +index 948a817a1d6f4435655931357aa094b889771e82..88c7ae09e29a32309bf2a63ac0593b42d3fe6a42 100644 --- a/src/main/java/net/minecraft/server/level/ChunkHolder.java +++ b/src/main/java/net/minecraft/server/level/ChunkHolder.java @@ -111,6 +111,8 @@ public class ChunkHolder { @@ -140,7 +139,7 @@ index c2401b2ff0547335ddbbeb05c07b74552c246fc9..c1db5cc45dbc7dd24a1ef4dbf88a8efb for (int i = 0; i < this.futures.length(); ++i) { CompletableFuture> completablefuture = (CompletableFuture) this.futures.get(i); diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index b9049dd6e5f254289f20aefefaf68e2ef5adac1b..87ad15eaf8823021030e377078e18bbca4ac5e33 100644 +index 39c7ffe656b6e1217d1e7bcf45f68501ed7e015d..07ecd8fd4d0806309c2ac3a465f1ddae3b164e60 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java @@ -97,6 +97,7 @@ import net.minecraft.world.level.levelgen.structure.templatesystem.StructureMana @@ -184,7 +183,7 @@ index b9049dd6e5f254289f20aefefaf68e2ef5adac1b..87ad15eaf8823021030e377078e18bbc + if (ichunkaccess instanceof LevelChunk) { + boolean shouldSave = ((LevelChunk)ichunkaccess).lastSaveTime <= maxSaveTime; + -+ if (shouldSave && this.save(ichunkaccess)) { ++ if (shouldSave && this.save(ichunkaccess) && this.level.entityManager.storeChunkSections(playerchunk.pos.toLong(), entity -> {})) { + ++savedThisTick; + + if (!playerchunk.setHasBeenLoaded()) { @@ -224,15 +223,15 @@ index b9049dd6e5f254289f20aefefaf68e2ef5adac1b..87ad15eaf8823021030e377078e18bbc } // Paper end -@@ -909,6 +969,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -918,6 +978,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider this.level.unload(chunk); } + this.autoSaveQueue.remove(holder); // Paper - // Paper start - async chunk saving - try { -@@ -1273,6 +1334,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider + this.lightEngine.updateChunkStatus(ichunkaccess.getPos()); + this.lightEngine.tryScheduleUpdate(); +@@ -1271,6 +1332,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider if (!chunk.isUnsaved()) { return false; } else { @@ -241,7 +240,7 @@ index b9049dd6e5f254289f20aefefaf68e2ef5adac1b..87ad15eaf8823021030e377078e18bbc ChunkPos chunkcoordintpair = chunk.getPos(); diff --git a/src/main/java/net/minecraft/server/level/ServerChunkCache.java b/src/main/java/net/minecraft/server/level/ServerChunkCache.java -index e46ccbca0cfa63dd5143080375193a95a9249d60..094c07c3208b0c05f918b7ee19f1d5b9ceeece47 100644 +index 135d162a926bd258d2aa001b7d0ef880fd3f2fb9..334f1ad2a5ce236b58a82b1ef2e143eaa3909f12 100644 --- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java +++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java @@ -672,6 +672,15 @@ public class ServerChunkCache extends ChunkSource { @@ -261,10 +260,10 @@ index e46ccbca0cfa63dd5143080375193a95a9249d60..094c07c3208b0c05f918b7ee19f1d5b9 public void close() throws IOException { // CraftBukkit start diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 2188666675192cb02e0bccf845cf7863486a305b..225823ef8bb4171f770f90f083689850aa6a171e 100644 +index d724ce8cf79fe7194e79da2e8e369777bbe638d2..1ffb6c12a2eadc0fee0081f980594ac8b5bc4277 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java -@@ -1023,6 +1023,38 @@ public class ServerLevel extends net.minecraft.world.level.Level implements Worl +@@ -1003,6 +1003,37 @@ public class ServerLevel extends net.minecraft.world.level.Level implements Worl return !this.server.isUnderSpawnProtection(this, pos, player) && this.getWorldBorder().isWithinBounds(pos); } @@ -285,7 +284,6 @@ index 2188666675192cb02e0bccf845cf7863486a305b..225823ef8bb4171f770f90f083689850 + if (!this.noSave()) chunkproviderserver.saveIncrementally(); + this.timings.worldSaveChunks.stopTiming(); // Paper + -+ + // Copied from save() + // CraftBukkit start - moved from MinecraftServer.saveChunks + if (doFull) { // Paper @@ -316,7 +314,7 @@ index a857953f3488e79fd601ac63881bc4d87708afa7..3cf3b0486f786d7d043cce75767753e1 default boolean generateFlatBedrock() { if (this instanceof ProtoChunk) { 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 be5dfaa7259e5415e3ccbefdc2eae402fe2aebe0..6d7c90b3f41a2e5a1514fa32e1e088f5be9cb90d 100644 +index cc72c5c7e63794974080648abc94646819ea0924..199efaefef890d2695682cc695b02c6ca3f971e2 100644 --- a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java +++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java @@ -108,6 +108,13 @@ public class LevelChunk implements ChunkAccess { diff --git a/patches/server/0456-Fix-missing-chunks-due-to-integer-overflow.patch b/patches/server/0457-Fix-missing-chunks-due-to-integer-overflow.patch similarity index 100% rename from patches/server/0456-Fix-missing-chunks-due-to-integer-overflow.patch rename to patches/server/0457-Fix-missing-chunks-due-to-integer-overflow.patch diff --git a/patches/server/0457-Fix-CraftScheduler-runTaskTimerAsynchronously-Plugin.patch b/patches/server/0458-Fix-CraftScheduler-runTaskTimerAsynchronously-Plugin.patch similarity index 100% rename from patches/server/0457-Fix-CraftScheduler-runTaskTimerAsynchronously-Plugin.patch rename to patches/server/0458-Fix-CraftScheduler-runTaskTimerAsynchronously-Plugin.patch diff --git a/patches/server/0458-Fix-piston-physics-inconsistency-MC-188840.patch b/patches/server/0459-Fix-piston-physics-inconsistency-MC-188840.patch similarity index 100% rename from patches/server/0458-Fix-piston-physics-inconsistency-MC-188840.patch rename to patches/server/0459-Fix-piston-physics-inconsistency-MC-188840.patch diff --git a/patches/server/0459-Fix-sand-duping.patch b/patches/server/0460-Fix-sand-duping.patch similarity index 100% rename from patches/server/0459-Fix-sand-duping.patch rename to patches/server/0460-Fix-sand-duping.patch diff --git a/patches/server/0460-Prevent-position-desync-in-playerconnection-causing-.patch b/patches/server/0461-Prevent-position-desync-in-playerconnection-causing-.patch similarity index 100% rename from patches/server/0460-Prevent-position-desync-in-playerconnection-causing-.patch rename to patches/server/0461-Prevent-position-desync-in-playerconnection-causing-.patch diff --git a/patches/server/0461-Inventory-getHolder-method-without-block-snapshot.patch b/patches/server/0462-Inventory-getHolder-method-without-block-snapshot.patch similarity index 100% rename from patches/server/0461-Inventory-getHolder-method-without-block-snapshot.patch rename to patches/server/0462-Inventory-getHolder-method-without-block-snapshot.patch diff --git a/patches/server/0462-Expose-Arrow-getItemStack.patch b/patches/server/0463-Expose-Arrow-getItemStack.patch similarity index 100% rename from patches/server/0462-Expose-Arrow-getItemStack.patch rename to patches/server/0463-Expose-Arrow-getItemStack.patch diff --git a/patches/server/0463-Add-and-implement-PlayerRecipeBookClickEvent.patch b/patches/server/0464-Add-and-implement-PlayerRecipeBookClickEvent.patch similarity index 100% rename from patches/server/0463-Add-and-implement-PlayerRecipeBookClickEvent.patch rename to patches/server/0464-Add-and-implement-PlayerRecipeBookClickEvent.patch diff --git a/patches/server/0464-Hide-sync-chunk-writes-behind-flag.patch b/patches/server/0465-Hide-sync-chunk-writes-behind-flag.patch similarity index 100% rename from patches/server/0464-Hide-sync-chunk-writes-behind-flag.patch rename to patches/server/0465-Hide-sync-chunk-writes-behind-flag.patch diff --git a/patches/server/0465-Add-permission-for-command-blocks.patch b/patches/server/0466-Add-permission-for-command-blocks.patch similarity index 100% rename from patches/server/0465-Add-permission-for-command-blocks.patch rename to patches/server/0466-Add-permission-for-command-blocks.patch diff --git a/patches/server/0466-Ensure-Entity-AABB-s-are-never-invalid.patch b/patches/server/0467-Ensure-Entity-AABB-s-are-never-invalid.patch similarity index 94% rename from patches/server/0466-Ensure-Entity-AABB-s-are-never-invalid.patch rename to patches/server/0467-Ensure-Entity-AABB-s-are-never-invalid.patch index f1988656b9..26b15ce29d 100644 --- a/patches/server/0466-Ensure-Entity-AABB-s-are-never-invalid.patch +++ b/patches/server/0467-Ensure-Entity-AABB-s-are-never-invalid.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Ensure Entity AABB's are never invalid diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 2cf6c22de0416fad843a901d2ffb97a55937290f..f4465c2352451400591691711281bbf8fdb9974e 100644 +index 51fae584a6ccb99a5423a415db433f5488465b1c..c1205f97775a8c0431a9fb200228f5677b9c52d0 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -560,7 +560,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n diff --git a/patches/server/0467-Optimize-WorldBorder-collision-checks-and-air.patch b/patches/server/0468-Optimize-WorldBorder-collision-checks-and-air.patch similarity index 97% rename from patches/server/0467-Optimize-WorldBorder-collision-checks-and-air.patch rename to patches/server/0468-Optimize-WorldBorder-collision-checks-and-air.patch index 123bf6bbdb..27a9e00163 100644 --- a/patches/server/0467-Optimize-WorldBorder-collision-checks-and-air.patch +++ b/patches/server/0468-Optimize-WorldBorder-collision-checks-and-air.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Optimize WorldBorder collision checks and air diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index f4465c2352451400591691711281bbf8fdb9974e..5a8ea643e2a79af8b02a9ada6b9d9d159f6b637d 100644 +index c1205f97775a8c0431a9fb200228f5677b9c52d0..0013f6f793cf70992ec83a454089aa800cd76ef5 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -1044,7 +1044,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n diff --git a/patches/server/0468-Fix-Per-World-Difficulty-Remembering-Difficulty.patch b/patches/server/0469-Fix-Per-World-Difficulty-Remembering-Difficulty.patch similarity index 96% rename from patches/server/0468-Fix-Per-World-Difficulty-Remembering-Difficulty.patch rename to patches/server/0469-Fix-Per-World-Difficulty-Remembering-Difficulty.patch index 5c6d630dda..e3590ab0ef 100644 --- a/patches/server/0468-Fix-Per-World-Difficulty-Remembering-Difficulty.patch +++ b/patches/server/0469-Fix-Per-World-Difficulty-Remembering-Difficulty.patch @@ -8,10 +8,10 @@ makes it so that the server keeps the last difficulty used instead of restoring the server.properties every single load. diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 11dbe48c8a8c29cd28d725c43505e326a6e626ff..f87409af9218e8003da370444ea97695023de439 100644 +index 04531db7c26b9defe76d2584d960132ad79dc0fa..ccca42f9a1cd72e7f4fe21bd626b61f06c51e2e7 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java -@@ -1711,11 +1711,14 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop playersInMobSpawnRange; -@@ -486,7 +615,7 @@ public class ChunkHolder { +@@ -488,7 +617,7 @@ public class ChunkHolder { // CraftBukkit start // ChunkUnloadEvent: Called before the chunk is unloaded: isChunkLoaded is still true and chunk can still be modified by plugins. if (playerchunk_state.isOrAfter(ChunkHolder.FullChunkStatus.BORDER) && !playerchunk_state1.isOrAfter(ChunkHolder.FullChunkStatus.BORDER)) { @@ -244,7 +244,7 @@ index 948a817a1d6f4435655931357aa094b889771e82..7dbf99df56562238ba02493e7c39995a LevelChunk chunk = (LevelChunk)either.left().orElse(null); if (chunk != null) { chunkStorage.callbackExecutor.execute(() -> { -@@ -539,13 +668,14 @@ public class ChunkHolder { +@@ -553,13 +682,14 @@ public class ChunkHolder { this.fullChunkFuture = chunkStorage.prepareAccessibleChunk(this); this.scheduleFullChunkPromotion(chunkStorage, this.fullChunkFuture, executor, ChunkHolder.FullChunkStatus.BORDER); // Paper start - cache ticking ready status @@ -260,7 +260,7 @@ index 948a817a1d6f4435655931357aa094b889771e82..7dbf99df56562238ba02493e7c39995a } }); this.updateChunkToSave(this.fullChunkFuture, "full"); -@@ -569,7 +699,7 @@ public class ChunkHolder { +@@ -583,7 +713,7 @@ public class ChunkHolder { this.tickingChunkFuture = chunkStorage.prepareTickingChunk(this); this.scheduleFullChunkPromotion(chunkStorage, this.tickingChunkFuture, executor, ChunkHolder.FullChunkStatus.TICKING); // Paper start - cache ticking ready status @@ -269,7 +269,7 @@ index 948a817a1d6f4435655931357aa094b889771e82..7dbf99df56562238ba02493e7c39995a either.ifLeft(chunk -> { // note: Here is a very good place to add callbacks to logic waiting on this. ChunkHolder.this.isTickingReady = true; -@@ -599,7 +729,7 @@ public class ChunkHolder { +@@ -613,7 +743,7 @@ public class ChunkHolder { this.entityTickingChunkFuture = chunkStorage.prepareEntityTickingChunk(this.pos); this.scheduleFullChunkPromotion(chunkStorage, this.entityTickingChunkFuture, executor, ChunkHolder.FullChunkStatus.ENTITY_TICKING); // Paper start - cache ticking ready status @@ -278,7 +278,7 @@ index 948a817a1d6f4435655931357aa094b889771e82..7dbf99df56562238ba02493e7c39995a either.ifLeft(chunk -> { ChunkHolder.this.isEntityTickingReady = true; }); -@@ -617,12 +747,30 @@ public class ChunkHolder { +@@ -631,12 +761,30 @@ public class ChunkHolder { this.demoteFullChunk(chunkStorage, playerchunk_state1); } @@ -312,10 +312,10 @@ index 948a817a1d6f4435655931357aa094b889771e82..7dbf99df56562238ba02493e7c39995a if (chunk != null) { chunkStorage.callbackExecutor.execute(() -> { diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index 39c7ffe656b6e1217d1e7bcf45f68501ed7e015d..c5340b254c0d4ae2fbffe7253da12b89224d8608 100644 +index 07ecd8fd4d0806309c2ac3a465f1ddae3b164e60..f0ad0eef003067f3b582d6eda2b89964fdd556ea 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java -@@ -148,6 +148,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -149,6 +149,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider public final ServerLevel level; private final ThreadedLevelLightEngine lightEngine; private final BlockableEventLoop mainThreadExecutor; @@ -323,7 +323,7 @@ index 39c7ffe656b6e1217d1e7bcf45f68501ed7e015d..c5340b254c0d4ae2fbffe7253da12b89 public final ChunkGenerator generator; private final Supplier overworldDataStorage; public final Supplier getWorldPersistentDataSupplier() { return this.overworldDataStorage; } // Paper - OBFHELPER private final PoiManager poiManager; -@@ -186,6 +187,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -187,6 +188,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider @Override public void execute(Runnable runnable) { @@ -331,7 +331,7 @@ index 39c7ffe656b6e1217d1e7bcf45f68501ed7e015d..c5340b254c0d4ae2fbffe7253da12b89 if (this.queue == null) { this.queue = new java.util.ArrayDeque<>(); } -@@ -194,6 +196,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -195,6 +197,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider @Override public void run() { @@ -339,7 +339,7 @@ index 39c7ffe656b6e1217d1e7bcf45f68501ed7e015d..c5340b254c0d4ae2fbffe7253da12b89 if (this.queue == null) { return; } -@@ -350,6 +353,15 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -351,6 +354,15 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider this.level = world; this.generator = chunkGenerator; this.mainThreadExecutor = mainThreadExecutor; @@ -355,7 +355,7 @@ index 39c7ffe656b6e1217d1e7bcf45f68501ed7e015d..c5340b254c0d4ae2fbffe7253da12b89 ProcessorMailbox threadedmailbox = ProcessorMailbox.create(executor, "worldgen"); Objects.requireNonNull(mainThreadExecutor); -@@ -445,6 +457,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -446,6 +458,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider this.playerViewDistanceTickMap = new com.destroystokyo.paper.util.misc.PlayerAreaMap(this.pooledLinkedPlayerHashSets, (ServerPlayer player, int rangeX, int rangeZ, int currPosX, int currPosZ, int prevPosX, int prevPosZ, com.destroystokyo.paper.util.misc.PooledLinkedHashSets.PooledObjectLinkedOpenHashSet newState) -> { @@ -363,7 +363,7 @@ index 39c7ffe656b6e1217d1e7bcf45f68501ed7e015d..c5340b254c0d4ae2fbffe7253da12b89 if (newState.size() != 1) { return; } -@@ -463,7 +476,14 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -464,7 +477,14 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider } ChunkPos chunkPos = new ChunkPos(rangeX, rangeZ); ChunkMap.this.level.getChunkSource().removeTicketAtLevel(TicketType.PLAYER, chunkPos, 31, chunkPos); // entity ticking level, TODO check on update @@ -379,7 +379,7 @@ index 39c7ffe656b6e1217d1e7bcf45f68501ed7e015d..c5340b254c0d4ae2fbffe7253da12b89 this.playerViewDistanceNoTickMap = new com.destroystokyo.paper.util.misc.PlayerAreaMap(this.pooledLinkedPlayerHashSets); this.playerViewDistanceBroadcastMap = new com.destroystokyo.paper.util.misc.PlayerAreaMap(this.pooledLinkedPlayerHashSets, (ServerPlayer player, int rangeX, int rangeZ, int currPosX, int currPosZ, int prevPosX, int prevPosZ, -@@ -481,6 +501,116 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -482,6 +502,116 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider // Paper end - no-tick view distance } @@ -496,7 +496,7 @@ index 39c7ffe656b6e1217d1e7bcf45f68501ed7e015d..c5340b254c0d4ae2fbffe7253da12b89 // Paper start public void updatePlayerMobTypeMap(Entity entity) { if (!this.level.paperConfig.perPlayerMobSpawns) { -@@ -639,6 +769,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -640,6 +770,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider List>> list = Lists.newArrayList(); int j = centerChunk.x; int k = centerChunk.z; @@ -504,7 +504,7 @@ index 39c7ffe656b6e1217d1e7bcf45f68501ed7e015d..c5340b254c0d4ae2fbffe7253da12b89 for (int l = -margin; l <= margin; ++l) { for (int i1 = -margin; i1 <= margin; ++i1) { -@@ -657,6 +788,14 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -658,6 +789,14 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider ChunkStatus chunkstatus = (ChunkStatus) distanceToStatus.apply(j1); CompletableFuture> completablefuture = playerchunk.getOrScheduleFuture(chunkstatus, this); @@ -519,7 +519,7 @@ index 39c7ffe656b6e1217d1e7bcf45f68501ed7e015d..c5340b254c0d4ae2fbffe7253da12b89 list.add(completablefuture); } -@@ -1041,14 +1180,24 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1102,14 +1241,24 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider }; CompletableFuture chunkSaveFuture = this.level.asyncChunkTaskManager.getChunkSaveFuture(pos.x, pos.z); @@ -549,7 +549,7 @@ index 39c7ffe656b6e1217d1e7bcf45f68501ed7e015d..c5340b254c0d4ae2fbffe7253da12b89 return ret; // Paper end } -@@ -1180,7 +1329,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1241,7 +1390,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider long i = playerchunk.getPos().toLong(); Objects.requireNonNull(playerchunk); @@ -941,7 +941,7 @@ index d94241bcca4f2fd5e464a860bd356af504dc68b7..e82dcc43ae03c31e9e3ec31dbcfecfde } } diff --git a/src/main/java/net/minecraft/server/level/ServerChunkCache.java b/src/main/java/net/minecraft/server/level/ServerChunkCache.java -index 135d162a926bd258d2aa001b7d0ef880fd3f2fb9..52f1e2c06cccfead14032cd83ed2dadd668d923c 100644 +index 334f1ad2a5ce236b58a82b1ef2e143eaa3909f12..c0bbb1acd7d83a70c9f2c34f7d19cea0039e0567 100644 --- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java +++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java @@ -446,6 +446,26 @@ public class ServerChunkCache extends ChunkSource { @@ -1174,7 +1174,7 @@ index f72471ac82907a0d5112598b3289689495285944..6e1f8323d028790d1f55d51edb3214d0 net.minecraft.world.level.chunk.LevelChunk chunk = (net.minecraft.world.level.chunk.LevelChunk) either.left().orElse(null); if (chunk != null) addTicket(x, z); // Paper diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 5bab49aa7f4a99dc6387fcf57bc39b16f912e6ab..443dcc97f8056df408b8abab6e71a6f5467c6aaf 100644 +index 4dae19fec0c4914d7b9cc3d41fb8ce36b08fbc81..160254615dac48af2af474c303b57dd293fb224b 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -889,6 +889,16 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0488-Improve-Chunk-Status-Transition-Speed.patch b/patches/server/0489-Improve-Chunk-Status-Transition-Speed.patch similarity index 89% rename from patches/server/0488-Improve-Chunk-Status-Transition-Speed.patch rename to patches/server/0489-Improve-Chunk-Status-Transition-Speed.patch index fc00843c1f..505d097380 100644 --- a/patches/server/0488-Improve-Chunk-Status-Transition-Speed.patch +++ b/patches/server/0489-Improve-Chunk-Status-Transition-Speed.patch @@ -36,13 +36,13 @@ scenario / path: Previously would have hopped to SERVER around 12+ times there extra. diff --git a/src/main/java/net/minecraft/server/level/ChunkHolder.java b/src/main/java/net/minecraft/server/level/ChunkHolder.java -index 377993f325400a9bc77f5fbc77d9ec50f5d76638..c28f693bf7da42570d95ab97ccb0ec2bf06f53ee 100644 +index 914678af675be57fecc92189c709da971b8b0ae8..779b230c18316242f4322d55b8b28900ca793dac 100644 --- a/src/main/java/net/minecraft/server/level/ChunkHolder.java +++ b/src/main/java/net/minecraft/server/level/ChunkHolder.java -@@ -240,6 +240,13 @@ public class ChunkHolder { - this.playersInChunkTickRange = this.chunkMap.playerChunkTickRangeMap.getObjectsInRange(key); - } +@@ -242,6 +242,13 @@ public class ChunkHolder { // Paper end - optimise isOutsideOfRange + long lastAutoSaveTime; // Paper - incremental autosave + long inactiveTimeStart; // Paper - incremental autosave + // Paper start - optimize chunk status progression without jumping through thread pool + public boolean canAdvanceStatus() { + ChunkStatus status = getChunkHolderStatus(); @@ -54,10 +54,10 @@ index 377993f325400a9bc77f5fbc77d9ec50f5d76638..c28f693bf7da42570d95ab97ccb0ec2b public ChunkHolder(ChunkPos pos, int level, LevelHeightAccessor world, LevelLightEngine lightingProvider, ChunkHolder.LevelChangeListener levelUpdateListener, ChunkHolder.PlayerProvider playersWatchingChunkProvider) { this.futures = new AtomicReferenceArray(ChunkHolder.CHUNK_STATUSES.size()); diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index eced6724126f5c967df95c9c1febef9833b9de26..2921cc7226bba37af0b3c950038b909806c093a9 100644 +index f0ad0eef003067f3b582d6eda2b89964fdd556ea..67a6524adc6dec62649bd9aa52fca0f98bb57e52 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java -@@ -838,7 +838,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -839,7 +839,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider return either.mapLeft((list) -> { return (LevelChunk) list.get(list.size() / 2); }); @@ -66,7 +66,7 @@ index eced6724126f5c967df95c9c1febef9833b9de26..2921cc7226bba37af0b3c950038b9098 } @Nullable -@@ -1220,6 +1220,12 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1281,6 +1281,12 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider return "chunkGenerate " + requiredStatus.getName(); }); Executor executor = (runnable) -> { diff --git a/patches/server/0489-Optimize-NetworkManager-Exception-Handling.patch b/patches/server/0490-Optimize-NetworkManager-Exception-Handling.patch similarity index 100% rename from patches/server/0489-Optimize-NetworkManager-Exception-Handling.patch rename to patches/server/0490-Optimize-NetworkManager-Exception-Handling.patch diff --git a/patches/server/0490-Optimize-the-advancement-data-player-iteration-to-be.patch b/patches/server/0491-Optimize-the-advancement-data-player-iteration-to-be.patch similarity index 100% rename from patches/server/0490-Optimize-the-advancement-data-player-iteration-to-be.patch rename to patches/server/0491-Optimize-the-advancement-data-player-iteration-to-be.patch diff --git a/patches/server/0491-Fix-arrows-never-despawning-MC-125757.patch b/patches/server/0492-Fix-arrows-never-despawning-MC-125757.patch similarity index 100% rename from patches/server/0491-Fix-arrows-never-despawning-MC-125757.patch rename to patches/server/0492-Fix-arrows-never-despawning-MC-125757.patch diff --git a/patches/server/0492-Thread-Safe-Vanilla-Command-permission-checking.patch b/patches/server/0493-Thread-Safe-Vanilla-Command-permission-checking.patch similarity index 100% rename from patches/server/0492-Thread-Safe-Vanilla-Command-permission-checking.patch rename to patches/server/0493-Thread-Safe-Vanilla-Command-permission-checking.patch diff --git a/patches/server/0493-Move-range-check-for-block-placing-up.patch b/patches/server/0494-Move-range-check-for-block-placing-up.patch similarity index 100% rename from patches/server/0493-Move-range-check-for-block-placing-up.patch rename to patches/server/0494-Move-range-check-for-block-placing-up.patch diff --git a/patches/server/0494-Fix-SPIGOT-5989.patch b/patches/server/0495-Fix-SPIGOT-5989.patch similarity index 100% rename from patches/server/0494-Fix-SPIGOT-5989.patch rename to patches/server/0495-Fix-SPIGOT-5989.patch diff --git a/patches/server/0495-Fix-SPIGOT-5824-Bukkit-world-container-is-not-used.patch b/patches/server/0496-Fix-SPIGOT-5824-Bukkit-world-container-is-not-used.patch similarity index 100% rename from patches/server/0495-Fix-SPIGOT-5824-Bukkit-world-container-is-not-used.patch rename to patches/server/0496-Fix-SPIGOT-5824-Bukkit-world-container-is-not-used.patch diff --git a/patches/server/0496-Fix-SPIGOT-5885-Unable-to-disable-advancements.patch b/patches/server/0497-Fix-SPIGOT-5885-Unable-to-disable-advancements.patch similarity index 100% rename from patches/server/0496-Fix-SPIGOT-5885-Unable-to-disable-advancements.patch rename to patches/server/0497-Fix-SPIGOT-5885-Unable-to-disable-advancements.patch diff --git a/patches/server/0497-Fix-AdvancementDataPlayer-leak-due-from-quitting-ear.patch b/patches/server/0498-Fix-AdvancementDataPlayer-leak-due-from-quitting-ear.patch similarity index 100% rename from patches/server/0497-Fix-AdvancementDataPlayer-leak-due-from-quitting-ear.patch rename to patches/server/0498-Fix-AdvancementDataPlayer-leak-due-from-quitting-ear.patch diff --git a/patches/server/0498-Add-missing-strikeLighting-call-to-World-spigot-stri.patch b/patches/server/0499-Add-missing-strikeLighting-call-to-World-spigot-stri.patch similarity index 100% rename from patches/server/0498-Add-missing-strikeLighting-call-to-World-spigot-stri.patch rename to patches/server/0499-Add-missing-strikeLighting-call-to-World-spigot-stri.patch diff --git a/patches/removed/1.17/0499-Incremental-player-saving.patch b/patches/server/0500-Incremental-player-saving.patch similarity index 92% rename from patches/removed/1.17/0499-Incremental-player-saving.patch rename to patches/server/0500-Incremental-player-saving.patch index eecba40662..3819816156 100644 --- a/patches/removed/1.17/0499-Incremental-player-saving.patch +++ b/patches/server/0500-Incremental-player-saving.patch @@ -3,7 +3,6 @@ From: Aikar Date: Sun, 9 Aug 2020 08:59:25 +0300 Subject: [PATCH] Incremental player saving -1.17 Update note: Patch has been updated already, re-removed temporarily as it depends on 'incremental chunk saving' patch diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java index b67ba8f75e4a3358d7c2462918b85b0bf9b5a922..fdbd8b89bb8bf3b61f60b812b90483c98a3d5ccb 100644 @@ -26,7 +25,7 @@ index b67ba8f75e4a3358d7c2462918b85b0bf9b5a922..fdbd8b89bb8bf3b61f60b812b90483c9 + } } diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 1feda8b44364c748497174944b26abc4f058f354..1889de77a5e3d9371005b6bd451e2c0e57e96a93 100644 +index ccca42f9a1cd72e7f4fe21bd626b61f06c51e2e7..7ee2099dd22eaab384a16ef6a4ab50791fa16aac 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -955,7 +955,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop 100) ? 10 : 20; + } } + + public static int maxJoinsPerTick; diff --git a/patches/server/0513-Optimize-redstone-algorithm.patch b/patches/server/0515-Optimize-redstone-algorithm.patch similarity index 99% rename from patches/server/0513-Optimize-redstone-algorithm.patch rename to patches/server/0515-Optimize-redstone-algorithm.patch index ed7013bf16..11885443f3 100644 --- a/patches/server/0513-Optimize-redstone-algorithm.patch +++ b/patches/server/0515-Optimize-redstone-algorithm.patch @@ -19,7 +19,7 @@ Aside from making the obvious class/function renames and obfhelpers I didn't nee Just added Bukkit's event system and took a few liberties with dead code and comment misspellings. diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index fbd433f7d48282365c73e2a76f14c2755b49d930..1ecf4ba21f0e7dd620804d952e11140ffd5af30b 100644 +index 2252b9f36ea22a655592c6f176d18b70b7440e4e..8504f4dcfca35c8fe8e266af59762edde76bec77 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -43,6 +43,16 @@ public class PaperWorldConfig { diff --git a/patches/server/0514-Fix-hex-colors-not-working-in-some-kick-messages.patch b/patches/server/0516-Fix-hex-colors-not-working-in-some-kick-messages.patch similarity index 100% rename from patches/server/0514-Fix-hex-colors-not-working-in-some-kick-messages.patch rename to patches/server/0516-Fix-hex-colors-not-working-in-some-kick-messages.patch diff --git a/patches/server/0515-PortalCreateEvent-needs-to-know-its-entity.patch b/patches/server/0517-PortalCreateEvent-needs-to-know-its-entity.patch similarity index 98% rename from patches/server/0515-PortalCreateEvent-needs-to-know-its-entity.patch rename to patches/server/0517-PortalCreateEvent-needs-to-know-its-entity.patch index 12974f967d..84099519ed 100644 --- a/patches/server/0515-PortalCreateEvent-needs-to-know-its-entity.patch +++ b/patches/server/0517-PortalCreateEvent-needs-to-know-its-entity.patch @@ -5,7 +5,7 @@ Subject: [PATCH] PortalCreateEvent needs to know its entity diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index b2a88d2005795d8d92c3f550d9f8eeb316a45298..2c73eec83af8bbf7f1dba08315542c94f81512a6 100644 +index b513fa552440da7a722dfe8cbf92e7294495cd67..f85e9fb13ddeb5c3260592e3cdfe958a14bd63f6 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -407,7 +407,7 @@ public final class ItemStack { diff --git a/patches/server/0516-Fix-CraftTeam-null-check.patch b/patches/server/0518-Fix-CraftTeam-null-check.patch similarity index 90% rename from patches/server/0516-Fix-CraftTeam-null-check.patch rename to patches/server/0518-Fix-CraftTeam-null-check.patch index 72439c7b46..61de747dfd 100644 --- a/patches/server/0516-Fix-CraftTeam-null-check.patch +++ b/patches/server/0518-Fix-CraftTeam-null-check.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fix CraftTeam null check diff --git a/src/main/java/org/bukkit/craftbukkit/scoreboard/CraftTeam.java b/src/main/java/org/bukkit/craftbukkit/scoreboard/CraftTeam.java -index c2dc4d65170eba2d914cf2efdcc231254fec7c02..3d4d4ae34cfbe32a844c7a4bc6cd6fd32e252297 100644 +index f86776aa42bd5520f8aaeaa46bb93ec4d5b4e27d..2b87a652798cb632fe76bf20e9e7f8cb8bfb3b7b 100644 --- a/src/main/java/org/bukkit/craftbukkit/scoreboard/CraftTeam.java +++ b/src/main/java/org/bukkit/craftbukkit/scoreboard/CraftTeam.java @@ -253,7 +253,7 @@ final class CraftTeam extends CraftScoreboardComponent implements Team { diff --git a/patches/server/0517-Add-more-Evoker-API.patch b/patches/server/0519-Add-more-Evoker-API.patch similarity index 100% rename from patches/server/0517-Add-more-Evoker-API.patch rename to patches/server/0519-Add-more-Evoker-API.patch diff --git a/patches/server/0518-Add-a-way-to-get-translation-keys-for-blocks-entitie.patch b/patches/server/0520-Add-a-way-to-get-translation-keys-for-blocks-entitie.patch similarity index 97% rename from patches/server/0518-Add-a-way-to-get-translation-keys-for-blocks-entitie.patch rename to patches/server/0520-Add-a-way-to-get-translation-keys-for-blocks-entitie.patch index 48d5e01eb1..899ada9bd4 100644 --- a/patches/server/0518-Add-a-way-to-get-translation-keys-for-blocks-entitie.patch +++ b/patches/server/0520-Add-a-way-to-get-translation-keys-for-blocks-entitie.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Add a way to get translation keys for blocks, entities and diff --git a/src/main/java/net/minecraft/world/entity/EntityType.java b/src/main/java/net/minecraft/world/entity/EntityType.java -index 872f92ac1a6bc86ce54700dbf555ceea4fab2057..b3c07e22d4e7107ca22242661fa9ecf2d81fc9e4 100644 +index 9be6bcd490562ceefcadcfbbb6f650688737278b..f901ac92e5187868a01946c0744773f4f59af82e 100644 --- a/src/main/java/net/minecraft/world/entity/EntityType.java +++ b/src/main/java/net/minecraft/world/entity/EntityType.java @@ -291,6 +291,7 @@ public class EntityType implements EntityTypeTest { diff --git a/patches/server/0519-Create-HoverEvent-from-ItemStack-Entity.patch b/patches/server/0521-Create-HoverEvent-from-ItemStack-Entity.patch similarity index 96% rename from patches/server/0519-Create-HoverEvent-from-ItemStack-Entity.patch rename to patches/server/0521-Create-HoverEvent-from-ItemStack-Entity.patch index b71640c7c6..312798c243 100644 --- a/patches/server/0519-Create-HoverEvent-from-ItemStack-Entity.patch +++ b/patches/server/0521-Create-HoverEvent-from-ItemStack-Entity.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Create HoverEvent from ItemStack Entity diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java -index 6ec39de514ceed7e5ffe9a8dc94c2ffd2902cd98..9cde8ae979287d342574da066f65731324725dea 100644 +index 001e89e85fb935c539c53c8e9c78927e26e099d8..d1ca61f394c0efa1688069e5d1fb529348d5985f 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java @@ -368,5 +368,40 @@ public final class CraftItemFactory implements ItemFactory { diff --git a/patches/server/0520-Cache-block-data-strings.patch b/patches/server/0522-Cache-block-data-strings.patch similarity index 95% rename from patches/server/0520-Cache-block-data-strings.patch rename to patches/server/0522-Cache-block-data-strings.patch index 49d39787e1..1b2222a7fd 100644 --- a/patches/server/0520-Cache-block-data-strings.patch +++ b/patches/server/0522-Cache-block-data-strings.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Cache block data strings diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index f87409af9218e8003da370444ea97695023de439..c3fc81457b534bf7a41ce2b021790cb3396ea56e 100644 +index 7ee2099dd22eaab384a16ef6a4ab50791fa16aac..d3aff6b0bbf52855adbcd3baca8ca9cb28d1128b 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java -@@ -2023,6 +2023,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop cachedSingleHashSet; // Paper boolean needsChunkCenterUpdate; // Paper - no-tick view distance @@ -49,10 +49,10 @@ index 36dccc209afb838cd3dbdfd26893cf5481d6653f..c49d9eb34883342e685c5363a4d33bf4 this.connection.disconnect(ichatbasecomponent); }); diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 4b8f1a9e4d9654443e695ef0f18299ebb2507465..f3e59b028d05c2d65ed2dab6717df68b68405fe5 100644 +index b45a9548a156d9d9de1c8a46a81a69226ea54d72..24a1f72fa81584dcdb447a4e2d1d68462c6357ee 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java -@@ -587,7 +587,7 @@ public abstract class PlayerList { +@@ -588,7 +588,7 @@ public abstract class PlayerList { entityplayer.closeContainer(org.bukkit.event.inventory.InventoryCloseEvent.Reason.DISCONNECT); // Paper } diff --git a/patches/server/0551-Seed-based-feature-search.patch b/patches/server/0553-Seed-based-feature-search.patch similarity index 96% rename from patches/server/0551-Seed-based-feature-search.patch rename to patches/server/0553-Seed-based-feature-search.patch index 4d501e6de3..dfafd5c41a 100644 --- a/patches/server/0551-Seed-based-feature-search.patch +++ b/patches/server/0553-Seed-based-feature-search.patch @@ -21,10 +21,10 @@ changes but this should usually not happen. A config option to disable this completely is added though in case that should ever be necessary. diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index 1f673932e329f7e713a37a8c06345a184650f0eb..aa4feec29980d344fdcf0623b81bd07590e06b9d 100644 +index a03b835320bb99c38ec5f23f0c23284c08bd4171..45e65d1c56b693d8f7c5c12da7774849c737aa96 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -@@ -361,6 +361,14 @@ public class PaperWorldConfig { +@@ -376,6 +376,14 @@ public class PaperWorldConfig { } } diff --git a/patches/server/0552-Add-Wandering-Trader-spawn-rate-config-options.patch b/patches/server/0554-Add-Wandering-Trader-spawn-rate-config-options.patch similarity index 98% rename from patches/server/0552-Add-Wandering-Trader-spawn-rate-config-options.patch rename to patches/server/0554-Add-Wandering-Trader-spawn-rate-config-options.patch index d2f671b97c..401f525748 100644 --- a/patches/server/0552-Add-Wandering-Trader-spawn-rate-config-options.patch +++ b/patches/server/0554-Add-Wandering-Trader-spawn-rate-config-options.patch @@ -11,7 +11,7 @@ in IWorldServerData are removed as they were only used in certain places, with h values used in other places. diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index a3c76e0515ee38cb5dc55e7dbf3f91cac5ef4c28..5f25edb32b3e1194cf03c19574fc2ebd07b9a15e 100644 +index 45e65d1c56b693d8f7c5c12da7774849c737aa96..935bb237f8ecd63ca4cec64a7c7a341c9d3358e5 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -61,6 +61,19 @@ public class PaperWorldConfig { diff --git a/patches/server/0553-Significantly-improve-performance-of-the-end-generat.patch b/patches/server/0555-Significantly-improve-performance-of-the-end-generat.patch similarity index 100% rename from patches/server/0553-Significantly-improve-performance-of-the-end-generat.patch rename to patches/server/0555-Significantly-improve-performance-of-the-end-generat.patch diff --git a/patches/server/0554-Expose-world-spawn-angle.patch b/patches/server/0556-Expose-world-spawn-angle.patch similarity index 93% rename from patches/server/0554-Expose-world-spawn-angle.patch rename to patches/server/0556-Expose-world-spawn-angle.patch index 55ea06f16c..fa8f6f62be 100644 --- a/patches/server/0554-Expose-world-spawn-angle.patch +++ b/patches/server/0556-Expose-world-spawn-angle.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Expose world spawn angle diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index f3e59b028d05c2d65ed2dab6717df68b68405fe5..acead204b21b58af3c4f35963a5699e2a75beead 100644 +index 24a1f72fa81584dcdb447a4e2d1d68462c6357ee..1c6ea9dd4335c573d6f83d38f77470333139580b 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java -@@ -865,7 +865,7 @@ public abstract class PlayerList { +@@ -866,7 +866,7 @@ public abstract class PlayerList { if (location == null) { worldserver1 = this.server.getLevel(Level.OVERWORLD); blockposition = entityplayer1.getSpawnPoint(worldserver1); diff --git a/patches/server/0555-Add-Destroy-Speed-API.patch b/patches/server/0557-Add-Destroy-Speed-API.patch similarity index 100% rename from patches/server/0555-Add-Destroy-Speed-API.patch rename to patches/server/0557-Add-Destroy-Speed-API.patch diff --git a/patches/server/0556-Fix-Player-spawnParticle-x-y-z-precision-loss.patch b/patches/server/0558-Fix-Player-spawnParticle-x-y-z-precision-loss.patch similarity index 93% rename from patches/server/0556-Fix-Player-spawnParticle-x-y-z-precision-loss.patch rename to patches/server/0558-Fix-Player-spawnParticle-x-y-z-precision-loss.patch index 0853879b5a..f73063fc6a 100644 --- a/patches/server/0556-Fix-Player-spawnParticle-x-y-z-precision-loss.patch +++ b/patches/server/0558-Fix-Player-spawnParticle-x-y-z-precision-loss.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fix Player spawnParticle x/y/z precision loss diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 5a2c999f95684e02131daf7a9582cdf48feb6290..9fe60810f0184ad4c65228457eb3adb86ac22c29 100644 +index abc5f4be2f58532d88978e53d7d9b52ddb46ff48..476e74d70f594e2d53a21924173cc4aa0882a4fc 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -2061,7 +2061,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0557-Add-LivingEntity-clearActiveItem.patch b/patches/server/0559-Add-LivingEntity-clearActiveItem.patch similarity index 100% rename from patches/server/0557-Add-LivingEntity-clearActiveItem.patch rename to patches/server/0559-Add-LivingEntity-clearActiveItem.patch diff --git a/patches/server/0558-Add-PlayerItemCooldownEvent.patch b/patches/server/0560-Add-PlayerItemCooldownEvent.patch similarity index 100% rename from patches/server/0558-Add-PlayerItemCooldownEvent.patch rename to patches/server/0560-Add-PlayerItemCooldownEvent.patch diff --git a/patches/server/0559-More-lightning-API.patch b/patches/server/0561-More-lightning-API.patch similarity index 100% rename from patches/server/0559-More-lightning-API.patch rename to patches/server/0561-More-lightning-API.patch diff --git a/patches/server/0560-Climbing-should-not-bypass-cramming-gamerule.patch b/patches/server/0562-Climbing-should-not-bypass-cramming-gamerule.patch similarity index 97% rename from patches/server/0560-Climbing-should-not-bypass-cramming-gamerule.patch rename to patches/server/0562-Climbing-should-not-bypass-cramming-gamerule.patch index d80855929c..f9535efc2a 100644 --- a/patches/server/0560-Climbing-should-not-bypass-cramming-gamerule.patch +++ b/patches/server/0562-Climbing-should-not-bypass-cramming-gamerule.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Climbing should not bypass cramming gamerule diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index 5f25edb32b3e1194cf03c19574fc2ebd07b9a15e..edf82e84c2938ed70d51eb1199a4e92504c8c604 100644 +index 935bb237f8ecd63ca4cec64a7c7a341c9d3358e5..208690ceca2485b54acde5123ba494d71367791b 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -74,6 +74,11 @@ public class PaperWorldConfig { @@ -21,7 +21,7 @@ index 5f25edb32b3e1194cf03c19574fc2ebd07b9a15e..edf82e84c2938ed70d51eb1199a4e925 private void keepLoadedRange() { keepLoadedRange = (short) (getInt("keep-spawn-loaded-range", Math.min(spigotConfig.viewDistance, 10)) * 16); diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index f562f29193f30ac38112a1e9db45da4efe10eeb0..bb6ee8e9c7665ab5c88b71dc68269c79997dc024 100644 +index ad5eda7c87648badbae109494d3c00c21f1ea316..8000473728491c304b27a64c5ba5e83b1fdcee0c 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -1724,6 +1724,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n diff --git a/patches/server/0561-Added-missing-default-perms-for-commands.patch b/patches/server/0563-Added-missing-default-perms-for-commands.patch similarity index 100% rename from patches/server/0561-Added-missing-default-perms-for-commands.patch rename to patches/server/0563-Added-missing-default-perms-for-commands.patch diff --git a/patches/server/0562-Add-PlayerShearBlockEvent.patch b/patches/server/0564-Add-PlayerShearBlockEvent.patch similarity index 100% rename from patches/server/0562-Add-PlayerShearBlockEvent.patch rename to patches/server/0564-Add-PlayerShearBlockEvent.patch diff --git a/patches/server/0563-Set-spigots-verbose-world-setting-to-false-by-def.patch b/patches/server/0565-Set-spigots-verbose-world-setting-to-false-by-def.patch similarity index 100% rename from patches/server/0563-Set-spigots-verbose-world-setting-to-false-by-def.patch rename to patches/server/0565-Set-spigots-verbose-world-setting-to-false-by-def.patch diff --git a/patches/server/0564-Fix-curing-zombie-villager-discount-exploit.patch b/patches/server/0566-Fix-curing-zombie-villager-discount-exploit.patch similarity index 96% rename from patches/server/0564-Fix-curing-zombie-villager-discount-exploit.patch rename to patches/server/0566-Fix-curing-zombie-villager-discount-exploit.patch index 800cef9824..9f5cfb3599 100644 --- a/patches/server/0564-Fix-curing-zombie-villager-discount-exploit.patch +++ b/patches/server/0566-Fix-curing-zombie-villager-discount-exploit.patch @@ -8,7 +8,7 @@ and curing a villager on repeat by simply resetting the relevant part of the reputation when it is cured. diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index edf82e84c2938ed70d51eb1199a4e92504c8c604..89bab0807b568cd19e3c84cc1314bdbb6463fb7e 100644 +index 208690ceca2485b54acde5123ba494d71367791b..561976466cae6e4df63433c4631c516c32a80bca 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -79,6 +79,11 @@ public class PaperWorldConfig { diff --git a/patches/server/0565-Limit-recipe-packets.patch b/patches/server/0567-Limit-recipe-packets.patch similarity index 97% rename from patches/server/0565-Limit-recipe-packets.patch rename to patches/server/0567-Limit-recipe-packets.patch index 3df1e152a3..a0203e607e 100644 --- a/patches/server/0565-Limit-recipe-packets.patch +++ b/patches/server/0567-Limit-recipe-packets.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Limit recipe packets diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java -index 649e46115260259820a9d2255ad669b926319a3f..f9d438325aed9d488d8aa60e0ae68a3789ae8c39 100644 +index 7d50aded88f5b7dfebaea1aebc86231f7b5c4e25..652d87fc5d566dba8018c81676329f0e0bca471b 100644 --- a/src/main/java/com/destroystokyo/paper/PaperConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java @@ -334,6 +334,13 @@ public class PaperConfig { diff --git a/patches/server/0566-Fix-CraftSound-backwards-compatibility.patch b/patches/server/0568-Fix-CraftSound-backwards-compatibility.patch similarity index 100% rename from patches/server/0566-Fix-CraftSound-backwards-compatibility.patch rename to patches/server/0568-Fix-CraftSound-backwards-compatibility.patch diff --git a/patches/server/0567-MC-4-Fix-item-position-desync.patch b/patches/server/0569-MC-4-Fix-item-position-desync.patch similarity index 93% rename from patches/server/0567-MC-4-Fix-item-position-desync.patch rename to patches/server/0569-MC-4-Fix-item-position-desync.patch index e3db8cbd64..26b1d4b0fd 100644 --- a/patches/server/0567-MC-4-Fix-item-position-desync.patch +++ b/patches/server/0569-MC-4-Fix-item-position-desync.patch @@ -9,10 +9,10 @@ loss, which forces the server to lose the same precision as the client keeping them in sync. diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java -index f9d438325aed9d488d8aa60e0ae68a3789ae8c39..8900ba1b0aad1c1112bde31dc5b66a96ab24d8e7 100644 +index 652d87fc5d566dba8018c81676329f0e0bca471b..c56e7fb18f9a56c8025eb70a524f028b5942da37 100644 --- a/src/main/java/com/destroystokyo/paper/PaperConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java -@@ -463,4 +463,9 @@ public class PaperConfig { +@@ -474,4 +474,9 @@ public class PaperConfig { private static void trackPluginScoreboards() { trackPluginScoreboards = getBoolean("settings.track-plugin-scoreboards", false); } @@ -41,7 +41,7 @@ index b30c08bfb8c55161543a4ef09f2e462e0a1fe4ae..ec93f5300cc7d423ec0d292f0f8443f9 public Vec3 updateEntityPosition(Vec3 orig) { diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 0ed626fa9299d34ce5d63e6cddd30480ee62d52b..46b10bb5480bf792da0fdfbb2797d0ac9ad81477 100644 +index 8000473728491c304b27a64c5ba5e83b1fdcee0c..1476be2f56c1f61be97497b9a86efacd8563e638 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -3751,6 +3751,16 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n diff --git a/patches/server/0568-Player-Chunk-Load-Unload-Events.patch b/patches/server/0570-Player-Chunk-Load-Unload-Events.patch similarity index 90% rename from patches/server/0568-Player-Chunk-Load-Unload-Events.patch rename to patches/server/0570-Player-Chunk-Load-Unload-Events.patch index dc229c0cf2..fbf2cfdef2 100644 --- a/patches/server/0568-Player-Chunk-Load-Unload-Events.patch +++ b/patches/server/0570-Player-Chunk-Load-Unload-Events.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Player Chunk Load/Unload Events diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 4444e1235fdd5a3630e71848e1269b5d05bf1c55..b6daeb86db4f066429888bc9e442961f062f993a 100644 +index 09a0c6fd3746bb182a4262f47c9f1754db30bbd5..556f71fea6badb9745f7c455f85907a69c2c9797 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -2088,11 +2088,21 @@ public class ServerPlayer extends Player { +@@ -2089,11 +2089,21 @@ public class ServerPlayer extends Player { public void trackChunk(ChunkPos chunkcoordintpair, Packet packet, Packet packet1) { this.connection.send(packet1); this.connection.send(packet); diff --git a/patches/server/0569-Optimize-Dynamic-get-Missing-Keys.patch b/patches/server/0571-Optimize-Dynamic-get-Missing-Keys.patch similarity index 100% rename from patches/server/0569-Optimize-Dynamic-get-Missing-Keys.patch rename to patches/server/0571-Optimize-Dynamic-get-Missing-Keys.patch diff --git a/patches/server/0570-Expose-LivingEntity-hurt-direction.patch b/patches/server/0572-Expose-LivingEntity-hurt-direction.patch similarity index 100% rename from patches/server/0570-Expose-LivingEntity-hurt-direction.patch rename to patches/server/0572-Expose-LivingEntity-hurt-direction.patch diff --git a/patches/server/0571-Add-OBSTRUCTED-reason-to-BedEnterResult.patch b/patches/server/0573-Add-OBSTRUCTED-reason-to-BedEnterResult.patch similarity index 100% rename from patches/server/0571-Add-OBSTRUCTED-reason-to-BedEnterResult.patch rename to patches/server/0573-Add-OBSTRUCTED-reason-to-BedEnterResult.patch diff --git a/patches/server/0572-Do-not-crash-from-invalid-ingredient-lists-in-Villag.patch b/patches/server/0574-Do-not-crash-from-invalid-ingredient-lists-in-Villag.patch similarity index 100% rename from patches/server/0572-Do-not-crash-from-invalid-ingredient-lists-in-Villag.patch rename to patches/server/0574-Do-not-crash-from-invalid-ingredient-lists-in-Villag.patch diff --git a/patches/server/0573-added-PlayerTradeEvent.patch b/patches/server/0575-added-PlayerTradeEvent.patch similarity index 100% rename from patches/server/0573-added-PlayerTradeEvent.patch rename to patches/server/0575-added-PlayerTradeEvent.patch diff --git a/patches/server/0574-Implement-TargetHitEvent.patch b/patches/server/0576-Implement-TargetHitEvent.patch similarity index 100% rename from patches/server/0574-Implement-TargetHitEvent.patch rename to patches/server/0576-Implement-TargetHitEvent.patch diff --git a/patches/server/0575-Additional-Block-Material-API-s.patch b/patches/server/0577-Additional-Block-Material-API-s.patch similarity index 100% rename from patches/server/0575-Additional-Block-Material-API-s.patch rename to patches/server/0577-Additional-Block-Material-API-s.patch diff --git a/patches/server/0576-Fix-harming-potion-dupe.patch b/patches/server/0578-Fix-harming-potion-dupe.patch similarity index 100% rename from patches/server/0576-Fix-harming-potion-dupe.patch rename to patches/server/0578-Fix-harming-potion-dupe.patch diff --git a/patches/server/0577-Implement-API-to-get-Material-from-Boats-and-Minecar.patch b/patches/server/0579-Implement-API-to-get-Material-from-Boats-and-Minecar.patch similarity index 100% rename from patches/server/0577-Implement-API-to-get-Material-from-Boats-and-Minecar.patch rename to patches/server/0579-Implement-API-to-get-Material-from-Boats-and-Minecar.patch diff --git a/patches/server/0578-Cache-burn-durations.patch b/patches/server/0580-Cache-burn-durations.patch similarity index 100% rename from patches/server/0578-Cache-burn-durations.patch rename to patches/server/0580-Cache-burn-durations.patch diff --git a/patches/server/0579-Allow-disabling-mob-spawner-spawn-egg-transformation.patch b/patches/server/0581-Allow-disabling-mob-spawner-spawn-egg-transformation.patch similarity index 95% rename from patches/server/0579-Allow-disabling-mob-spawner-spawn-egg-transformation.patch rename to patches/server/0581-Allow-disabling-mob-spawner-spawn-egg-transformation.patch index 26e26f398d..c45d656abc 100644 --- a/patches/server/0579-Allow-disabling-mob-spawner-spawn-egg-transformation.patch +++ b/patches/server/0581-Allow-disabling-mob-spawner-spawn-egg-transformation.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Allow disabling mob spawner spawn egg transformation diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index 89bab0807b568cd19e3c84cc1314bdbb6463fb7e..592717db9c9e8efda88c6a464c51a5d76f9694dc 100644 +index 561976466cae6e4df63433c4631c516c32a80bca..0079b4423c022a68aa9bee5b81910714ef3d1cd8 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -84,6 +84,11 @@ public class PaperWorldConfig { diff --git a/patches/server/0580-Fix-Not-a-string-Map-Conversion-spam.patch b/patches/server/0582-Fix-Not-a-string-Map-Conversion-spam.patch similarity index 100% rename from patches/server/0580-Fix-Not-a-string-Map-Conversion-spam.patch rename to patches/server/0582-Fix-Not-a-string-Map-Conversion-spam.patch diff --git a/patches/server/0581-Implement-PlayerFlowerPotManipulateEvent.patch b/patches/server/0583-Implement-PlayerFlowerPotManipulateEvent.patch similarity index 100% rename from patches/server/0581-Implement-PlayerFlowerPotManipulateEvent.patch rename to patches/server/0583-Implement-PlayerFlowerPotManipulateEvent.patch diff --git a/patches/server/0582-Fix-interact-event-not-being-called-in-adventure.patch b/patches/server/0584-Fix-interact-event-not-being-called-in-adventure.patch similarity index 100% rename from patches/server/0582-Fix-interact-event-not-being-called-in-adventure.patch rename to patches/server/0584-Fix-interact-event-not-being-called-in-adventure.patch diff --git a/patches/server/0583-Zombie-API-breaking-doors.patch b/patches/server/0585-Zombie-API-breaking-doors.patch similarity index 100% rename from patches/server/0583-Zombie-API-breaking-doors.patch rename to patches/server/0585-Zombie-API-breaking-doors.patch diff --git a/patches/server/0584-Fix-nerfed-slime-when-splitting.patch b/patches/server/0586-Fix-nerfed-slime-when-splitting.patch similarity index 100% rename from patches/server/0584-Fix-nerfed-slime-when-splitting.patch rename to patches/server/0586-Fix-nerfed-slime-when-splitting.patch diff --git a/patches/server/0585-Add-EntityLoadCrossbowEvent.patch b/patches/server/0587-Add-EntityLoadCrossbowEvent.patch similarity index 100% rename from patches/server/0585-Add-EntityLoadCrossbowEvent.patch rename to patches/server/0587-Add-EntityLoadCrossbowEvent.patch diff --git a/patches/server/0586-Guardian-beam-workaround.patch b/patches/server/0588-Guardian-beam-workaround.patch similarity index 100% rename from patches/server/0586-Guardian-beam-workaround.patch rename to patches/server/0588-Guardian-beam-workaround.patch diff --git a/patches/server/0587-Added-WorldGameRuleChangeEvent.patch b/patches/server/0589-Added-WorldGameRuleChangeEvent.patch similarity index 100% rename from patches/server/0587-Added-WorldGameRuleChangeEvent.patch rename to patches/server/0589-Added-WorldGameRuleChangeEvent.patch diff --git a/patches/server/0588-Added-ServerResourcesReloadedEvent.patch b/patches/server/0590-Added-ServerResourcesReloadedEvent.patch similarity index 93% rename from patches/server/0588-Added-ServerResourcesReloadedEvent.patch rename to patches/server/0590-Added-ServerResourcesReloadedEvent.patch index fa0d2a543b..8979f285de 100644 --- a/patches/server/0588-Added-ServerResourcesReloadedEvent.patch +++ b/patches/server/0590-Added-ServerResourcesReloadedEvent.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Added ServerResourcesReloadedEvent diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 75e4d69e69509a94f0e112fe121369a6f8952ee7..e73c211627f7aa5d6aa5525dba7e9601fbbc6794 100644 +index 504d14404ed180f5193552983e5dc08e2efcfd6d..6fe5fc1fef179d1f82265290bc701e91616f16b6 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java -@@ -2002,7 +2002,13 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop completablefuture = CompletableFuture.supplyAsync(() -> { Stream stream = datapacks.stream(); // CraftBukkit - decompile error PackRepository resourcepackrepository = this.packRepository; -@@ -2018,6 +2024,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop { this.getServer().execute(() -> { diff --git a/patches/server/0597-Fix-villager-boat-exploit.patch b/patches/server/0599-Fix-villager-boat-exploit.patch similarity index 89% rename from patches/server/0597-Fix-villager-boat-exploit.patch rename to patches/server/0599-Fix-villager-boat-exploit.patch index cd44bc81c4..9d8f15f9dc 100644 --- a/patches/server/0597-Fix-villager-boat-exploit.patch +++ b/patches/server/0599-Fix-villager-boat-exploit.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Fix villager boat exploit diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index acead204b21b58af3c4f35963a5699e2a75beead..12e305d87fc4cbf22891adb1e4bf7e9e734f7285 100644 +index 1c6ea9dd4335c573d6f83d38f77470333139580b..efec443a8e9ab62b365cba3d7a10020f7c636291 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java -@@ -612,6 +612,15 @@ public abstract class PlayerList { +@@ -613,6 +613,15 @@ public abstract class PlayerList { PlayerList.LOGGER.debug("Removing player mount"); entityplayer.stopRiding(); entity.getPassengersAndSelf().forEach((entity1) -> { diff --git a/patches/server/0598-Add-sendOpLevel-API.patch b/patches/server/0600-Add-sendOpLevel-API.patch similarity index 91% rename from patches/server/0598-Add-sendOpLevel-API.patch rename to patches/server/0600-Add-sendOpLevel-API.patch index f1c0a29e70..5cabbaf6a4 100644 --- a/patches/server/0598-Add-sendOpLevel-API.patch +++ b/patches/server/0600-Add-sendOpLevel-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add sendOpLevel API diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 12e305d87fc4cbf22891adb1e4bf7e9e734f7285..b7bdfdcbd5fc4330ca6eea31c2b86e3edc535a07 100644 +index efec443a8e9ab62b365cba3d7a10020f7c636291..14d0345ca49acb0a463df2fdfa6cfc7b6f856244 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java -@@ -1114,22 +1114,29 @@ public abstract class PlayerList { +@@ -1115,22 +1115,29 @@ public abstract class PlayerList { } private void sendPlayerPermissionLevel(ServerPlayer player, int permissionLevel) { @@ -46,7 +46,7 @@ index 12e305d87fc4cbf22891adb1e4bf7e9e734f7285..b7bdfdcbd5fc4330ca6eea31c2b86e3e // Paper start diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 9fe60810f0184ad4c65228457eb3adb86ac22c29..bb79f5aedf79f42e4ae6c45faa9373a0e8c94159 100644 +index 476e74d70f594e2d53a21924173cc4aa0882a4fc..a28625f0b6e98b61f395a1b3ee07c2f7bc195893 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -552,6 +552,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0599-Add-StructureLocateEvent.patch b/patches/server/0601-Add-StructureLocateEvent.patch similarity index 100% rename from patches/server/0599-Add-StructureLocateEvent.patch rename to patches/server/0601-Add-StructureLocateEvent.patch diff --git a/patches/server/0600-Collision-option-for-requiring-a-player-participant.patch b/patches/server/0602-Collision-option-for-requiring-a-player-participant.patch similarity index 96% rename from patches/server/0600-Collision-option-for-requiring-a-player-participant.patch rename to patches/server/0602-Collision-option-for-requiring-a-player-participant.patch index 8667059d72..c20886cd7d 100644 --- a/patches/server/0600-Collision-option-for-requiring-a-player-participant.patch +++ b/patches/server/0602-Collision-option-for-requiring-a-player-participant.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Collision option for requiring a player participant diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index ef1c9b4676ce993740af150953e8ba86b6568bf4..b1b27ea88850d85ed247541c8f26f30e2884676b 100644 +index 4227e7fc46e22265316b42bbdb166d60e5aed94e..3d16e4a6bf842a209c760fd89f8edf995cabce7d 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -64,6 +64,18 @@ public class PaperWorldConfig { @@ -28,7 +28,7 @@ index ef1c9b4676ce993740af150953e8ba86b6568bf4..b1b27ea88850d85ed247541c8f26f30e public int wanderingTraderSpawnDayTicks = 24000; public int wanderingTraderSpawnChanceFailureIncrement = 25; diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 7194e2b51ab8aca929eb970e0a6ff31a07a4c09f..8c5bf69b89822c8211d472ba3b4b809fa436948a 100644 +index 1476be2f56c1f61be97497b9a86efacd8563e638..2c25e5ca42a700e1be52781f605a1583df249b85 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -1607,6 +1607,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, n diff --git a/patches/server/0601-Remove-ProjectileHitEvent-call-when-fireballs-dead.patch b/patches/server/0603-Remove-ProjectileHitEvent-call-when-fireballs-dead.patch similarity index 100% rename from patches/server/0601-Remove-ProjectileHitEvent-call-when-fireballs-dead.patch rename to patches/server/0603-Remove-ProjectileHitEvent-call-when-fireballs-dead.patch diff --git a/patches/server/0602-Return-chat-component-with-empty-text-instead-of-thr.patch b/patches/server/0604-Return-chat-component-with-empty-text-instead-of-thr.patch similarity index 100% rename from patches/server/0602-Return-chat-component-with-empty-text-instead-of-thr.patch rename to patches/server/0604-Return-chat-component-with-empty-text-instead-of-thr.patch diff --git a/patches/server/0603-Make-schedule-command-per-world.patch b/patches/server/0605-Make-schedule-command-per-world.patch similarity index 100% rename from patches/server/0603-Make-schedule-command-per-world.patch rename to patches/server/0605-Make-schedule-command-per-world.patch diff --git a/patches/server/0604-Configurable-max-leash-distance.patch b/patches/server/0606-Configurable-max-leash-distance.patch similarity index 94% rename from patches/server/0604-Configurable-max-leash-distance.patch rename to patches/server/0606-Configurable-max-leash-distance.patch index ed60a7ee45..bbc48021c8 100644 --- a/patches/server/0604-Configurable-max-leash-distance.patch +++ b/patches/server/0606-Configurable-max-leash-distance.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Configurable max leash distance diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index b1b27ea88850d85ed247541c8f26f30e2884676b..5a7ad59aba34364f8832b2f532325f9d9241952b 100644 +index 3d16e4a6bf842a209c760fd89f8edf995cabce7d..70815cb7393008f8b02e83e68fe27bb5202d00f6 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -@@ -248,6 +248,12 @@ public class PaperWorldConfig { +@@ -263,6 +263,12 @@ public class PaperWorldConfig { } } diff --git a/patches/server/0605-Implement-BlockPreDispenseEvent.patch b/patches/server/0607-Implement-BlockPreDispenseEvent.patch similarity index 100% rename from patches/server/0605-Implement-BlockPreDispenseEvent.patch rename to patches/server/0607-Implement-BlockPreDispenseEvent.patch diff --git a/patches/server/0606-Added-Vanilla-Entity-Tags.patch b/patches/server/0608-Added-Vanilla-Entity-Tags.patch similarity index 100% rename from patches/server/0606-Added-Vanilla-Entity-Tags.patch rename to patches/server/0608-Added-Vanilla-Entity-Tags.patch diff --git a/patches/server/0607-added-Wither-API.patch b/patches/server/0609-added-Wither-API.patch similarity index 100% rename from patches/server/0607-added-Wither-API.patch rename to patches/server/0609-added-Wither-API.patch diff --git a/patches/server/0608-Added-firing-of-PlayerChangeBeaconEffectEvent.patch b/patches/server/0610-Added-firing-of-PlayerChangeBeaconEffectEvent.patch similarity index 100% rename from patches/server/0608-Added-firing-of-PlayerChangeBeaconEffectEvent.patch rename to patches/server/0610-Added-firing-of-PlayerChangeBeaconEffectEvent.patch diff --git a/patches/server/0609-Fix-console-spam-when-removing-chests-in-water.patch b/patches/server/0611-Fix-console-spam-when-removing-chests-in-water.patch similarity index 100% rename from patches/server/0609-Fix-console-spam-when-removing-chests-in-water.patch rename to patches/server/0611-Fix-console-spam-when-removing-chests-in-water.patch diff --git a/patches/server/0610-Add-toggle-for-always-placing-the-dragon-egg.patch b/patches/server/0612-Add-toggle-for-always-placing-the-dragon-egg.patch similarity index 92% rename from patches/server/0610-Add-toggle-for-always-placing-the-dragon-egg.patch rename to patches/server/0612-Add-toggle-for-always-placing-the-dragon-egg.patch index a57e08f83f..3d18fad468 100644 --- a/patches/server/0610-Add-toggle-for-always-placing-the-dragon-egg.patch +++ b/patches/server/0612-Add-toggle-for-always-placing-the-dragon-egg.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add toggle for always placing the dragon egg diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index 5a7ad59aba34364f8832b2f532325f9d9241952b..618acd1b5e65cbff345b35a9ea90f5c77f76436c 100644 +index 70815cb7393008f8b02e83e68fe27bb5202d00f6..7fc5bf095afa6d5881285b89091d2ff48ffb69f0 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -@@ -739,5 +739,10 @@ public class PaperWorldConfig { +@@ -754,5 +754,10 @@ public class PaperWorldConfig { private void perPlayerMobSpawns() { perPlayerMobSpawns = getBoolean("per-player-mob-spawns", false); } diff --git a/patches/server/0611-Added-PlayerStonecutterRecipeSelectEvent.patch b/patches/server/0613-Added-PlayerStonecutterRecipeSelectEvent.patch similarity index 100% rename from patches/server/0611-Added-PlayerStonecutterRecipeSelectEvent.patch rename to patches/server/0613-Added-PlayerStonecutterRecipeSelectEvent.patch diff --git a/patches/server/0612-Add-dropLeash-variable-to-EntityUnleashEvent.patch b/patches/server/0614-Add-dropLeash-variable-to-EntityUnleashEvent.patch similarity index 98% rename from patches/server/0612-Add-dropLeash-variable-to-EntityUnleashEvent.patch rename to patches/server/0614-Add-dropLeash-variable-to-EntityUnleashEvent.patch index 0820728b89..b9087bfff0 100644 --- a/patches/server/0612-Add-dropLeash-variable-to-EntityUnleashEvent.patch +++ b/patches/server/0614-Add-dropLeash-variable-to-EntityUnleashEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add dropLeash variable to EntityUnleashEvent diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java -index 623fd2220007eec7a8e799a647e7c657aae5ee6d..ecd6ce01f541a2885384dac47095422b86e194fa 100644 +index e5ad2b5eb3ac4e068239c0e490ea47ed7cfc8106..6c603926c0d582b16268fd0888bc685442e0c8cd 100644 --- a/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java @@ -1208,12 +1208,15 @@ public abstract class Mob extends LivingEntity { diff --git a/patches/server/0613-Skip-distance-map-update-when-spawning-disabled.patch b/patches/server/0615-Skip-distance-map-update-when-spawning-disabled.patch similarity index 87% rename from patches/server/0613-Skip-distance-map-update-when-spawning-disabled.patch rename to patches/server/0615-Skip-distance-map-update-when-spawning-disabled.patch index 6c369ceb62..5b19dd2761 100644 --- a/patches/server/0613-Skip-distance-map-update-when-spawning-disabled.patch +++ b/patches/server/0615-Skip-distance-map-update-when-spawning-disabled.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Skip distance map update when spawning disabled. diff --git a/src/main/java/net/minecraft/server/level/ServerChunkCache.java b/src/main/java/net/minecraft/server/level/ServerChunkCache.java -index 80cda453dc9dd8267eff8a6445d5cd63a13a64c3..1ac3ca6b7968a4217339b5a284981cd578773e0f 100644 +index c0bbb1acd7d83a70c9f2c34f7d19cea0039e0567..570875c060896c80d8c75e86e29a918f86b5865f 100644 --- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java +++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java -@@ -802,7 +802,7 @@ public class ServerChunkCache extends ChunkSource { +@@ -811,7 +811,7 @@ public class ServerChunkCache extends ChunkSource { int l = this.distanceManager.getNaturalSpawnChunkCount(); // Paper start - per player mob spawning NaturalSpawner.SpawnState spawnercreature_d; // moved down diff --git a/patches/server/0614-Reset-shield-blocking-on-dimension-change.patch b/patches/server/0616-Reset-shield-blocking-on-dimension-change.patch similarity index 83% rename from patches/server/0614-Reset-shield-blocking-on-dimension-change.patch rename to patches/server/0616-Reset-shield-blocking-on-dimension-change.patch index 2cb7b490d8..830f8a3cce 100644 --- a/patches/server/0614-Reset-shield-blocking-on-dimension-change.patch +++ b/patches/server/0616-Reset-shield-blocking-on-dimension-change.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Reset shield blocking on dimension change diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index b6daeb86db4f066429888bc9e442961f062f993a..2fa2ba45fa1d79d9c78d80cca2aeebedad5a9ba0 100644 +index 556f71fea6badb9745f7c455f85907a69c2c9797..63a89a95cb40d2e39104c2c3f3991dd40cf1ca01 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -1140,6 +1140,11 @@ public class ServerPlayer extends Player { +@@ -1141,6 +1141,11 @@ public class ServerPlayer extends Player { this.level.getCraftServer().getPluginManager().callEvent(changeEvent); // CraftBukkit end } diff --git a/patches/server/0615-add-DragonEggFormEvent.patch b/patches/server/0617-add-DragonEggFormEvent.patch similarity index 100% rename from patches/server/0615-add-DragonEggFormEvent.patch rename to patches/server/0617-add-DragonEggFormEvent.patch diff --git a/patches/server/0616-EntityMoveEvent.patch b/patches/server/0618-EntityMoveEvent.patch similarity index 93% rename from patches/server/0616-EntityMoveEvent.patch rename to patches/server/0618-EntityMoveEvent.patch index 3debcaab2c..d388be64a2 100644 --- a/patches/server/0616-EntityMoveEvent.patch +++ b/patches/server/0618-EntityMoveEvent.patch @@ -5,10 +5,10 @@ Subject: [PATCH] EntityMoveEvent diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index e73c211627f7aa5d6aa5525dba7e9601fbbc6794..d66d93c0eb5a26b61821029f9c470a73e6a0ca93 100644 +index 6fe5fc1fef179d1f82265290bc701e91616f16b6..4c46dd3100133a2107e3f0c93c571d32edb62663 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java -@@ -1509,6 +1509,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop 0; // Paper @@ -17,7 +17,7 @@ index e73c211627f7aa5d6aa5525dba7e9601fbbc6794..d66d93c0eb5a26b61821029f9c470a73 this.profiler.push(() -> { diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 0f6c872288b1ea7cf1dc552827d116360d3c54bb..150b3b2411a803d6fb4d2f105752d6dd334d261d 100644 +index ff1ad929cb4494c7a97fe5e240421e25b7ff0857..40bd401191973c695f64b92d284363a77f051914 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -200,6 +200,7 @@ public class ServerLevel extends net.minecraft.world.level.Level implements Worl diff --git a/patches/server/0617-added-option-to-disable-pathfinding-updates-on-block.patch b/patches/server/0619-added-option-to-disable-pathfinding-updates-on-block.patch similarity index 82% rename from patches/server/0617-added-option-to-disable-pathfinding-updates-on-block.patch rename to patches/server/0619-added-option-to-disable-pathfinding-updates-on-block.patch index f5c40c8731..ffe9cdd0e3 100644 --- a/patches/server/0617-added-option-to-disable-pathfinding-updates-on-block.patch +++ b/patches/server/0619-added-option-to-disable-pathfinding-updates-on-block.patch @@ -5,10 +5,10 @@ Subject: [PATCH] added option to disable pathfinding updates on block changes diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index 618acd1b5e65cbff345b35a9ea90f5c77f76436c..4a44e264e817169ed0d8933d3645c3c6439eed81 100644 +index 7fc5bf095afa6d5881285b89091d2ff48ffb69f0..0eba516110b82d917c3374a9fe5bbf337b83fad6 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -@@ -744,5 +744,10 @@ public class PaperWorldConfig { +@@ -759,5 +759,10 @@ public class PaperWorldConfig { private void enderDragonsDeathAlwaysPlacesDragonEgg() { enderDragonsDeathAlwaysPlacesDragonEgg = getBoolean("ender-dragons-death-always-places-dragon-egg", enderDragonsDeathAlwaysPlacesDragonEgg); } @@ -20,10 +20,10 @@ index 618acd1b5e65cbff345b35a9ea90f5c77f76436c..4a44e264e817169ed0d8933d3645c3c6 } diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 150b3b2411a803d6fb4d2f105752d6dd334d261d..e37d6b2627d29c5023aa2ad82456e73dd214f54d 100644 +index 40bd401191973c695f64b92d284363a77f051914..ab9938294e4b0044cb601953c06a04c15db9b9ec 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java -@@ -1314,6 +1314,7 @@ public class ServerLevel extends net.minecraft.world.level.Level implements Worl +@@ -1345,6 +1345,7 @@ public class ServerLevel extends net.minecraft.world.level.Level implements Worl @Override public void sendBlockUpdated(BlockPos pos, BlockState oldState, BlockState newState, int flags) { this.getChunkSource().blockChanged(pos); @@ -31,7 +31,7 @@ index 150b3b2411a803d6fb4d2f105752d6dd334d261d..e37d6b2627d29c5023aa2ad82456e73d VoxelShape voxelshape = oldState.getCollisionShape(this, pos); VoxelShape voxelshape1 = newState.getCollisionShape(this, pos); -@@ -1341,6 +1342,7 @@ public class ServerLevel extends net.minecraft.world.level.Level implements Worl +@@ -1372,6 +1373,7 @@ public class ServerLevel extends net.minecraft.world.level.Level implements Worl } } diff --git a/patches/server/0618-Inline-shift-direction-fields.patch b/patches/server/0620-Inline-shift-direction-fields.patch similarity index 100% rename from patches/server/0618-Inline-shift-direction-fields.patch rename to patches/server/0620-Inline-shift-direction-fields.patch diff --git a/patches/server/0619-Allow-adding-items-to-BlockDropItemEvent.patch b/patches/server/0621-Allow-adding-items-to-BlockDropItemEvent.patch similarity index 100% rename from patches/server/0619-Allow-adding-items-to-BlockDropItemEvent.patch rename to patches/server/0621-Allow-adding-items-to-BlockDropItemEvent.patch diff --git a/patches/server/0620-Add-getMainThreadExecutor-to-BukkitScheduler.patch b/patches/server/0622-Add-getMainThreadExecutor-to-BukkitScheduler.patch similarity index 100% rename from patches/server/0620-Add-getMainThreadExecutor-to-BukkitScheduler.patch rename to patches/server/0622-Add-getMainThreadExecutor-to-BukkitScheduler.patch diff --git a/patches/server/0621-living-entity-allow-attribute-registration.patch b/patches/server/0623-living-entity-allow-attribute-registration.patch similarity index 100% rename from patches/server/0621-living-entity-allow-attribute-registration.patch rename to patches/server/0623-living-entity-allow-attribute-registration.patch diff --git a/patches/server/0622-fix-dead-slime-setSize-invincibility.patch b/patches/server/0624-fix-dead-slime-setSize-invincibility.patch similarity index 100% rename from patches/server/0622-fix-dead-slime-setSize-invincibility.patch rename to patches/server/0624-fix-dead-slime-setSize-invincibility.patch diff --git a/patches/server/0623-Merchant-getRecipes-should-return-an-immutable-list.patch b/patches/server/0625-Merchant-getRecipes-should-return-an-immutable-list.patch similarity index 100% rename from patches/server/0623-Merchant-getRecipes-should-return-an-immutable-list.patch rename to patches/server/0625-Merchant-getRecipes-should-return-an-immutable-list.patch diff --git a/patches/server/0624-misc-debugging-dumps.patch b/patches/server/0626-misc-debugging-dumps.patch similarity index 93% rename from patches/server/0624-misc-debugging-dumps.patch rename to patches/server/0626-misc-debugging-dumps.patch index 5a04da65b1..2e32d7e9a0 100644 --- a/patches/server/0624-misc-debugging-dumps.patch +++ b/patches/server/0626-misc-debugging-dumps.patch @@ -29,10 +29,10 @@ index 0000000000000000000000000000000000000000..2d5494d2813b773e60ddba6790b750a9 + } +} diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index d66d93c0eb5a26b61821029f9c470a73e6a0ca93..ed0e697e290ea6504ba337763aabc8c689a44523 100644 +index 4c46dd3100133a2107e3f0c93c571d32edb62663..e9f5039403847a5483e67f95c900593e2f89cb60 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java -@@ -912,6 +912,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop implements EntityTypeTest { diff --git a/patches/server/0643-copy-TESign-isEditable-from-snapshots.patch b/patches/server/0645-copy-TESign-isEditable-from-snapshots.patch similarity index 100% rename from patches/server/0643-copy-TESign-isEditable-from-snapshots.patch rename to patches/server/0645-copy-TESign-isEditable-from-snapshots.patch diff --git a/patches/server/0644-Drop-carried-item-when-player-has-disconnected.patch b/patches/server/0646-Drop-carried-item-when-player-has-disconnected.patch similarity index 88% rename from patches/server/0644-Drop-carried-item-when-player-has-disconnected.patch rename to patches/server/0646-Drop-carried-item-when-player-has-disconnected.patch index b742371432..c74f156a32 100644 --- a/patches/server/0644-Drop-carried-item-when-player-has-disconnected.patch +++ b/patches/server/0646-Drop-carried-item-when-player-has-disconnected.patch @@ -7,10 +7,10 @@ Fixes disappearance of held items, when a player gets disconnected and PlayerDro Closes #5036 diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 9bfc77aaf71385f7a029b937a0551d1fb7e7cb5a..cff9bf6fd164bda0f57221312a7b5270fa620ad1 100644 +index 458188eb409a945fdaea68eb9681ba7625dd39cd..22529dec70914a8b2ffdb8a4677eca23ac754249 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java -@@ -605,6 +605,14 @@ public abstract class PlayerList { +@@ -606,6 +606,14 @@ public abstract class PlayerList { } // Paper end diff --git a/patches/server/0645-forced-whitelist-use-configurable-kick-message.patch b/patches/server/0647-forced-whitelist-use-configurable-kick-message.patch similarity index 89% rename from patches/server/0645-forced-whitelist-use-configurable-kick-message.patch rename to patches/server/0647-forced-whitelist-use-configurable-kick-message.patch index eb81cf9aa4..463e4263ab 100644 --- a/patches/server/0645-forced-whitelist-use-configurable-kick-message.patch +++ b/patches/server/0647-forced-whitelist-use-configurable-kick-message.patch @@ -5,7 +5,7 @@ Subject: [PATCH] forced whitelist: use configurable kick message diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index ed0e697e290ea6504ba337763aabc8c689a44523..8ab99b04ef3e85b64ea78680aa85df1a0894399f 100644 +index e9f5039403847a5483e67f95c900593e2f89cb60..6f68e45bdb01605a93af1a4117743c6b0ee26056 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -77,7 +77,6 @@ import net.minecraft.nbt.NbtOps; @@ -16,7 +16,7 @@ index ed0e697e290ea6504ba337763aabc8c689a44523..8ab99b04ef3e85b64ea78680aa85df1a import net.minecraft.network.protocol.Packet; import net.minecraft.network.protocol.game.ClientboundChangeDifficultyPacket; import net.minecraft.network.protocol.game.ClientboundSetTimePacket; -@@ -2109,7 +2108,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop 0.0F) { diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 9b97c8060321ba48f87e743d9ef5c55d9c9239b2..a9d6154cb9cd347306f745e752cabdf94ed61744 100644 +index 92181c6f3168317a01df0e27daec32f826ff1dee..cc098fd2a2e78caede4d36a61d513406a1ea8908 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java -@@ -799,6 +799,12 @@ public abstract class PlayerList { +@@ -800,6 +800,12 @@ public abstract class PlayerList { } public ServerPlayer moveToWorld(ServerPlayer entityplayer, ServerLevel worldserver, boolean flag, Location location, boolean avoidSuffocation) { @@ -34,7 +34,7 @@ index 9b97c8060321ba48f87e743d9ef5c55d9c9239b2..a9d6154cb9cd347306f745e752cabdf9 entityplayer.stopRiding(); // CraftBukkit this.players.remove(entityplayer); this.playersByName.remove(entityplayer.getScoreboardName().toLowerCase(java.util.Locale.ROOT)); // Spigot -@@ -889,7 +895,7 @@ public abstract class PlayerList { +@@ -890,7 +896,7 @@ public abstract class PlayerList { } Player respawnPlayer = this.cserver.getPlayer(entityplayer1); diff --git a/patches/server/0669-Add-Channel-initialization-listeners.patch b/patches/server/0671-Add-Channel-initialization-listeners.patch similarity index 100% rename from patches/server/0669-Add-Channel-initialization-listeners.patch rename to patches/server/0671-Add-Channel-initialization-listeners.patch diff --git a/patches/server/0670-Send-empty-commands-if-tab-completion-is-disabled.patch b/patches/server/0672-Send-empty-commands-if-tab-completion-is-disabled.patch similarity index 100% rename from patches/server/0670-Send-empty-commands-if-tab-completion-is-disabled.patch rename to patches/server/0672-Send-empty-commands-if-tab-completion-is-disabled.patch diff --git a/patches/server/0671-Add-more-WanderingTrader-API.patch b/patches/server/0673-Add-more-WanderingTrader-API.patch similarity index 100% rename from patches/server/0671-Add-more-WanderingTrader-API.patch rename to patches/server/0673-Add-more-WanderingTrader-API.patch diff --git a/patches/server/0672-Add-EntityBlockStorage-clearEntities.patch b/patches/server/0674-Add-EntityBlockStorage-clearEntities.patch similarity index 100% rename from patches/server/0672-Add-EntityBlockStorage-clearEntities.patch rename to patches/server/0674-Add-EntityBlockStorage-clearEntities.patch diff --git a/patches/server/0673-Add-Adventure-message-to-PlayerAdvancementDoneEvent.patch b/patches/server/0675-Add-Adventure-message-to-PlayerAdvancementDoneEvent.patch similarity index 100% rename from patches/server/0673-Add-Adventure-message-to-PlayerAdvancementDoneEvent.patch rename to patches/server/0675-Add-Adventure-message-to-PlayerAdvancementDoneEvent.patch diff --git a/patches/server/0674-Add-raw-address-to-AsyncPlayerPreLoginEvent.patch b/patches/server/0676-Add-raw-address-to-AsyncPlayerPreLoginEvent.patch similarity index 100% rename from patches/server/0674-Add-raw-address-to-AsyncPlayerPreLoginEvent.patch rename to patches/server/0676-Add-raw-address-to-AsyncPlayerPreLoginEvent.patch diff --git a/patches/server/0675-Inventory-close.patch b/patches/server/0677-Inventory-close.patch similarity index 100% rename from patches/server/0675-Inventory-close.patch rename to patches/server/0677-Inventory-close.patch diff --git a/patches/server/0676-call-PortalCreateEvent-players-and-end-platform.patch b/patches/server/0678-call-PortalCreateEvent-players-and-end-platform.patch similarity index 94% rename from patches/server/0676-call-PortalCreateEvent-players-and-end-platform.patch rename to patches/server/0678-call-PortalCreateEvent-players-and-end-platform.patch index 1e9b5dd549..6494fbca10 100644 --- a/patches/server/0676-call-PortalCreateEvent-players-and-end-platform.patch +++ b/patches/server/0678-call-PortalCreateEvent-players-and-end-platform.patch @@ -17,10 +17,10 @@ index b98316165c6d10945ccc9e5e0c3f0be9cfc3e889..84eca485a09c6d147f3baa277e398de5 return this.set(this.getX() + dx, this.getY() + dy, this.getZ() + dz); } diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 654befb6433647c701ef7966fd37baea3c2ba39b..57e2a6af2bc9e08797e3d06262d4af4bd156f34b 100644 +index 63a89a95cb40d2e39104c2c3f3991dd40cf1ca01..d61f7dc29968b6297c7f3884c0fcb255073ddb99 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -1167,15 +1167,21 @@ public class ServerPlayer extends Player { +@@ -1168,15 +1168,21 @@ public class ServerPlayer extends Player { private void createEndPlatform(ServerLevel world, BlockPos centerPos) { BlockPos.MutableBlockPos blockposition_mutableblockposition = centerPos.mutable(); diff --git a/patches/server/0677-Add-a-should-burn-in-sunlight-API-for-Phantoms-and-S.patch b/patches/server/0679-Add-a-should-burn-in-sunlight-API-for-Phantoms-and-S.patch similarity index 100% rename from patches/server/0677-Add-a-should-burn-in-sunlight-API-for-Phantoms-and-S.patch rename to patches/server/0679-Add-a-should-burn-in-sunlight-API-for-Phantoms-and-S.patch diff --git a/patches/server/0678-Fix-CraftPotionBrewer-cache.patch b/patches/server/0680-Fix-CraftPotionBrewer-cache.patch similarity index 100% rename from patches/server/0678-Fix-CraftPotionBrewer-cache.patch rename to patches/server/0680-Fix-CraftPotionBrewer-cache.patch diff --git a/patches/server/0679-Add-basic-Datapack-API.patch b/patches/server/0681-Add-basic-Datapack-API.patch similarity index 100% rename from patches/server/0679-Add-basic-Datapack-API.patch rename to patches/server/0681-Add-basic-Datapack-API.patch diff --git a/patches/server/0680-Add-environment-variable-to-disable-server-gui.patch b/patches/server/0682-Add-environment-variable-to-disable-server-gui.patch similarity index 100% rename from patches/server/0680-Add-environment-variable-to-disable-server-gui.patch rename to patches/server/0682-Add-environment-variable-to-disable-server-gui.patch diff --git a/patches/server/0681-additions-to-PlayerGameModeChangeEvent.patch b/patches/server/0683-additions-to-PlayerGameModeChangeEvent.patch similarity index 96% rename from patches/server/0681-additions-to-PlayerGameModeChangeEvent.patch rename to patches/server/0683-additions-to-PlayerGameModeChangeEvent.patch index d46dddee41..c4bf09954b 100644 --- a/patches/server/0681-additions-to-PlayerGameModeChangeEvent.patch +++ b/patches/server/0683-additions-to-PlayerGameModeChangeEvent.patch @@ -45,10 +45,10 @@ index d75f78d2e3fb1376e8f6a8668c98a04a693c99e1..79f6089b934124c3309c6bee2e48b36b } diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 57e2a6af2bc9e08797e3d06262d4af4bd156f34b..5d3269c6912a23aef26d5b155c04c2cd567cefba 100644 +index d61f7dc29968b6297c7f3884c0fcb255073ddb99..fdbc2d74947b2f6e9ba256b0c22d94e7654536c7 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -1784,8 +1784,15 @@ public class ServerPlayer extends Player { +@@ -1785,8 +1785,15 @@ public class ServerPlayer extends Player { } public boolean setGameMode(GameType gameMode) { @@ -66,7 +66,7 @@ index 57e2a6af2bc9e08797e3d06262d4af4bd156f34b..5d3269c6912a23aef26d5b155c04c2cd } else { this.connection.send(new ClientboundGameEventPacket(ClientboundGameEventPacket.CHANGE_GAME_MODE, (float) gameMode.getId())); if (gameMode == GameType.SPECTATOR) { -@@ -1797,7 +1804,7 @@ public class ServerPlayer extends Player { +@@ -1798,7 +1805,7 @@ public class ServerPlayer extends Player { this.onUpdateAbilities(); this.updateEffectVisibility(); @@ -75,7 +75,7 @@ index 57e2a6af2bc9e08797e3d06262d4af4bd156f34b..5d3269c6912a23aef26d5b155c04c2cd } } -@@ -2179,6 +2186,14 @@ public class ServerPlayer extends Player { +@@ -2180,6 +2187,14 @@ public class ServerPlayer extends Player { } public void loadGameTypes(@Nullable CompoundTag nbt) { diff --git a/patches/server/0682-Clear-SyncLoadInfo.patch b/patches/server/0684-Clear-SyncLoadInfo.patch similarity index 100% rename from patches/server/0682-Clear-SyncLoadInfo.patch rename to patches/server/0684-Clear-SyncLoadInfo.patch diff --git a/patches/server/0683-ItemStack-repair-check-API.patch b/patches/server/0685-ItemStack-repair-check-API.patch similarity index 100% rename from patches/server/0683-ItemStack-repair-check-API.patch rename to patches/server/0685-ItemStack-repair-check-API.patch diff --git a/patches/server/0684-More-Enchantment-API.patch b/patches/server/0686-More-Enchantment-API.patch similarity index 100% rename from patches/server/0684-More-Enchantment-API.patch rename to patches/server/0686-More-Enchantment-API.patch diff --git a/patches/server/0685-Add-command-line-option-to-load-extra-plugin-jars-no.patch b/patches/server/0687-Add-command-line-option-to-load-extra-plugin-jars-no.patch similarity index 100% rename from patches/server/0685-Add-command-line-option-to-load-extra-plugin-jars-no.patch rename to patches/server/0687-Add-command-line-option-to-load-extra-plugin-jars-no.patch diff --git a/patches/server/0686-Fix-and-optimise-world-force-upgrading.patch b/patches/server/0688-Fix-and-optimise-world-force-upgrading.patch similarity index 98% rename from patches/server/0686-Fix-and-optimise-world-force-upgrading.patch rename to patches/server/0688-Fix-and-optimise-world-force-upgrading.patch index 5c60318d59..b5ce4bf85a 100644 --- a/patches/server/0686-Fix-and-optimise-world-force-upgrading.patch +++ b/patches/server/0688-Fix-and-optimise-world-force-upgrading.patch @@ -263,10 +263,10 @@ index cf0a74b8a1c31d4bc493eb09a69ee2bd94cb6485..6fa1a7da70896d0ff34d38698769195a Main.LOGGER.info("Forcing world upgrade! {}", session.getLevelId()); // CraftBukkit WorldUpgrader worldupgrader = new WorldUpgrader(session, dataFixer, worlds, eraseCache); diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index c567d8a80fb9caca186bd4c4a7f5199a3eb6f494..c582610142e9f8568c330c7c804926b9ccdaec09 100644 +index 6f68e45bdb01605a93af1a4117743c6b0ee26056..f9e15a804388e2aeff8b45d7fba151651438f1c6 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java -@@ -562,13 +562,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop