diff --git a/patches/server/0009-MC-Utils.patch b/patches/server/0009-MC-Utils.patch index e7930bb85b..c1fb4fcbe0 100644 --- a/patches/server/0009-MC-Utils.patch +++ b/patches/server/0009-MC-Utils.patch @@ -2088,7 +2088,7 @@ index 0000000000000000000000000000000000000000..a743703502cea333bd4231b6557de50e +} diff --git a/src/main/java/com/destroystokyo/paper/util/set/OptimizedSmallEnumSet.java b/src/main/java/com/destroystokyo/paper/util/set/OptimizedSmallEnumSet.java new file mode 100644 -index 0000000000000000000000000000000000000000..b3329c6fcd6758a781a51f5ba8f5052ac1c77b49 +index 0000000000000000000000000000000000000000..653cbd10c7280f3aeeaaff712d083dde461da092 --- /dev/null +++ b/src/main/java/com/destroystokyo/paper/util/set/OptimizedSmallEnumSet.java @@ -0,0 +1,71 @@ @@ -2114,7 +2114,7 @@ index 0000000000000000000000000000000000000000..b3329c6fcd6758a781a51f5ba8f5052a + this.enumClass = clazz; + } + -+ public boolean addUnchecked(final E element) { ++ public boolean add(final E element) { + final int ordinal = element.ordinal(); + final long key = 1L << ordinal; + @@ -2124,7 +2124,7 @@ index 0000000000000000000000000000000000000000..b3329c6fcd6758a781a51f5ba8f5052a + return (prev & key) == 0; + } + -+ public boolean removeUnchecked(final E element) { ++ public boolean remove(final E element) { + final int ordinal = element.ordinal(); + final long key = 1L << ordinal; + @@ -2142,7 +2142,7 @@ index 0000000000000000000000000000000000000000..b3329c6fcd6758a781a51f5ba8f5052a + return Long.bitCount(this.backingSet); + } + -+ public void addAllUnchecked(final Collection enums) { ++ public void addAll(final Collection enums) { + for (final E element : enums) { + if (element == null) { + throw new NullPointerException("Null element"); @@ -2159,7 +2159,7 @@ index 0000000000000000000000000000000000000000..b3329c6fcd6758a781a51f5ba8f5052a + return (other.backingSet & this.backingSet) != 0; + } + -+ public boolean hasElement(final E element) { ++ public boolean contains(final E element) { + return (this.backingSet & (1L << element.ordinal())) != 0; + } +} @@ -6345,7 +6345,7 @@ index 1641bdf8725df778ba91bf5cd22c1ebbb3745058..facfdbb87e89f4db33ce13233c2ba436 + // Paper end } diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index f083356fe490ecebdc1486784f4833d778b816f4..a4d1136fcd75ecdf2cbd7af591d4acb4dfd248ba 100644 +index f083356fe490ecebdc1486784f4833d778b816f4..c721642337652ba4cf984ba3c263655b717d3b03 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java @@ -168,6 +168,62 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider @@ -6411,7 +6411,7 @@ index f083356fe490ecebdc1486784f4833d778b816f4..a4d1136fcd75ecdf2cbd7af591d4acb4 public ChunkMap(ServerLevel world, LevelStorageSource.LevelStorageAccess session, DataFixer dataFixer, StructureTemplateManager structureTemplateManager, Executor executor, BlockableEventLoop mainThreadExecutor, LightChunkGetter chunkProvider, ChunkGenerator chunkGenerator, ChunkProgressListener worldGenerationProgressListener, ChunkStatusUpdateListener chunkStatusChangeListener, Supplier persistentStateManagerFactory, int viewDistance, boolean dsync) { super(session.getDimensionPath(world.dimension()).resolve("region"), dataFixer, dsync); this.visibleChunkMap = this.updatingChunkMap.clone(); -@@ -221,7 +277,19 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -221,8 +277,20 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider this.overworldDataStorage = persistentStateManagerFactory; this.poiManager = new PoiManager(path.resolve("poi"), dataFixer, dsync, iregistrycustom, world); this.setServerViewDistance(viewDistance); @@ -6420,18 +6420,30 @@ index f083356fe490ecebdc1486784f4833d778b816f4..a4d1136fcd75ecdf2cbd7af591d4acb4 + this.regionManagers.add(this.dataRegionManager); + this.nearbyPlayers = new io.papermc.paper.util.player.NearbyPlayers(this.level); + // Paper end -+ } -+ + } + + // Paper start + // always use accessor, so folia can override + public final io.papermc.paper.util.player.NearbyPlayers getNearbyPlayers() { + return this.nearbyPlayers; - } ++ } + // Paper end - ++ protected ChunkGenerator generator() { return this.generator; -@@ -322,6 +390,15 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider + } +@@ -246,6 +314,10 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider + }); + } + ++ public int getMobCountNear(final ServerPlayer player, final net.minecraft.world.entity.MobCategory mobCategory) { ++ return -1; ++ } ++ + private static double euclideanDistanceSquared(ChunkPos pos, Entity entity) { + double d0 = (double) SectionPos.sectionToBlockCoord(pos.x, 8); + double d1 = (double) SectionPos.sectionToBlockCoord(pos.z, 8); +@@ -322,6 +394,15 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider } } @@ -6447,7 +6459,7 @@ index f083356fe490ecebdc1486784f4833d778b816f4..a4d1136fcd75ecdf2cbd7af591d4acb4 private CompletableFuture, ChunkHolder.ChunkLoadingFailure>> getChunkRangeFuture(ChunkHolder centerChunk, int margin, IntFunction distanceToStatus) { if (margin == 0) { ChunkStatus chunkstatus = (ChunkStatus) distanceToStatus.apply(0); -@@ -418,9 +495,9 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -418,9 +499,9 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider }; stringbuilder.append("Updating:").append(System.lineSeparator()); @@ -6459,7 +6471,7 @@ index f083356fe490ecebdc1486784f4833d778b816f4..a4d1136fcd75ecdf2cbd7af591d4acb4 CrashReport crashreport = CrashReport.forThrowable(exception, "Chunk loading"); CrashReportCategory crashreportsystemdetails = crashreport.addCategory("Chunk loading"); -@@ -462,8 +539,14 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -462,8 +543,14 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider holder.setTicketLevel(level); } else { holder = new ChunkHolder(new ChunkPos(pos), level, this.level, this.lightEngine, this.queueSorter, this); @@ -6474,7 +6486,7 @@ index f083356fe490ecebdc1486784f4833d778b816f4..a4d1136fcd75ecdf2cbd7af591d4acb4 this.updatingChunkMap.put(pos, holder); this.modified = true; } -@@ -485,7 +568,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -485,7 +572,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider protected void saveAllChunks(boolean flush) { if (flush) { @@ -6483,7 +6495,7 @@ index f083356fe490ecebdc1486784f4833d778b816f4..a4d1136fcd75ecdf2cbd7af591d4acb4 MutableBoolean mutableboolean = new MutableBoolean(); do { -@@ -514,7 +597,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -514,7 +601,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider }); this.flushWorker(); } else { @@ -6492,7 +6504,7 @@ index f083356fe490ecebdc1486784f4833d778b816f4..a4d1136fcd75ecdf2cbd7af591d4acb4 } } -@@ -533,7 +616,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -533,7 +620,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider } public boolean hasWork() { @@ -6501,7 +6513,7 @@ index f083356fe490ecebdc1486784f4833d778b816f4..a4d1136fcd75ecdf2cbd7af591d4acb4 } private void processUnloads(BooleanSupplier shouldKeepTicking) { -@@ -544,6 +627,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -544,6 +631,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider ChunkHolder playerchunk = (ChunkHolder) this.updatingChunkMap.remove(j); if (playerchunk != null) { @@ -6509,7 +6521,7 @@ index f083356fe490ecebdc1486784f4833d778b816f4..a4d1136fcd75ecdf2cbd7af591d4acb4 this.pendingUnloads.put(j, playerchunk); this.modified = true; ++i; -@@ -561,7 +645,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -561,7 +649,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider } int l = 0; @@ -6518,7 +6530,7 @@ index f083356fe490ecebdc1486784f4833d778b816f4..a4d1136fcd75ecdf2cbd7af591d4acb4 while (l < 20 && shouldKeepTicking.getAsBoolean() && objectiterator.hasNext()) { if (this.saveChunkIfNeeded((ChunkHolder) objectiterator.next())) { -@@ -579,7 +663,11 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -579,7 +667,11 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider if (completablefuture1 != completablefuture) { this.scheduleUnload(pos, holder); } else { @@ -6531,7 +6543,7 @@ index f083356fe490ecebdc1486784f4833d778b816f4..a4d1136fcd75ecdf2cbd7af591d4acb4 if (ichunkaccess instanceof LevelChunk) { ((LevelChunk) ichunkaccess).setLoaded(false); } -@@ -595,7 +683,9 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -595,7 +687,9 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider this.lightEngine.tryScheduleUpdate(); this.progressListener.onStatusChange(ichunkaccess.getPos(), (ChunkStatus) null); this.chunkSaveCooldowns.remove(ichunkaccess.getPos().toLong()); @@ -6542,7 +6554,7 @@ index f083356fe490ecebdc1486784f4833d778b816f4..a4d1136fcd75ecdf2cbd7af591d4acb4 } }; -@@ -1038,7 +1128,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1038,7 +1132,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider } public int size() { @@ -6551,7 +6563,7 @@ index f083356fe490ecebdc1486784f4833d778b816f4..a4d1136fcd75ecdf2cbd7af591d4acb4 } public DistanceManager getDistanceManager() { -@@ -1046,19 +1136,19 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1046,19 +1140,19 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider } protected Iterable getChunks() { @@ -6576,7 +6588,7 @@ index f083356fe490ecebdc1486784f4833d778b816f4..a4d1136fcd75ecdf2cbd7af591d4acb4 Optional optional = Optional.ofNullable(playerchunk.getLastAvailable()); Optional optional1 = optional.flatMap((ichunkaccess) -> { return ichunkaccess instanceof LevelChunk ? Optional.of((LevelChunk) ichunkaccess) : Optional.empty(); -@@ -1183,6 +1273,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1183,6 +1277,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider player.setChunkTrackingView(ChunkTrackingView.EMPTY); this.updateChunkTracking(player); @@ -6584,7 +6596,7 @@ index f083356fe490ecebdc1486784f4833d778b816f4..a4d1136fcd75ecdf2cbd7af591d4acb4 } else { SectionPos sectionposition = player.getLastSectionPos(); -@@ -1191,6 +1282,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1191,6 +1286,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider this.distanceManager.removePlayer(sectionposition, player); } @@ -6592,7 +6604,7 @@ index f083356fe490ecebdc1486784f4833d778b816f4..a4d1136fcd75ecdf2cbd7af591d4acb4 this.applyChunkTrackingView(player, ChunkTrackingView.EMPTY); } -@@ -1242,6 +1334,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1242,6 +1338,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider this.updateChunkTracking(player); } @@ -6600,7 +6612,7 @@ index f083356fe490ecebdc1486784f4833d778b816f4..a4d1136fcd75ecdf2cbd7af591d4acb4 } private void updateChunkTracking(ServerPlayer player) { -@@ -1494,7 +1587,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1494,7 +1591,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider private class ChunkDistanceManager extends DistanceManager { protected ChunkDistanceManager(Executor workerExecutor, Executor mainThreadExecutor) { @@ -7355,7 +7367,7 @@ index 3c707d6674b2594b09503b959a31c1f4ad3981e6..db61b6b0158a9bcc0e1d735e34fe3671 public BlockState getBlockState(BlockPos pos) { return Blocks.AIR.defaultBlockState(); diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 00ddf94c5bade8c0c486337ce920f59d63cb64e2..32afa096f148ebb546963bae7c9c9b194cb1a99c 100644 +index 00ddf94c5bade8c0c486337ce920f59d63cb64e2..d89431b476b032f3ff86097bb91b86016d4e3371 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -93,6 +93,7 @@ import org.bukkit.craftbukkit.CraftServer; @@ -7366,7 +7378,21 @@ index 00ddf94c5bade8c0c486337ce920f59d63cb64e2..32afa096f148ebb546963bae7c9c9b19 import org.bukkit.craftbukkit.block.data.CraftBlockData; import org.bukkit.craftbukkit.util.CraftSpawnCategory; import org.bukkit.craftbukkit.util.CraftNamespacedKey; -@@ -295,18 +296,52 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -279,6 +280,13 @@ public abstract class Level implements LevelAccessor, AutoCloseable { + return null; + } + ++ // Paper start ++ public net.minecraft.world.phys.BlockHitResult.Type clipDirect(Vec3 start, Vec3 end, net.minecraft.world.phys.shapes.CollisionContext context) { ++ // To be patched over ++ return this.clip(new ClipContext(start, end, ClipContext.Block.COLLIDER, ClipContext.Fluid.NONE, context)).getType(); ++ } ++ // Paper end ++ + public boolean isInWorldBounds(BlockPos pos) { + return !this.isOutsideBuildHeight(pos) && Level.isInWorldBoundsHorizontal(pos); + } +@@ -295,18 +303,52 @@ public abstract class Level implements LevelAccessor, AutoCloseable { return y < -20000000 || y >= 20000000; } @@ -7383,15 +7409,14 @@ index 00ddf94c5bade8c0c486337ce920f59d63cb64e2..32afa096f148ebb546963bae7c9c9b19 } + // Paper start - if loaded - @Nullable - @Override -- public ChunkAccess getChunk(int chunkX, int chunkZ, ChunkStatus leastStatus, boolean create) { ++ @Nullable ++ @Override + public final ChunkAccess getChunkIfLoadedImmediately(int x, int z) { + return ((ServerLevel)this).chunkSource.getChunkAtIfLoadedImmediately(x, z); + } + + @Override -+ @Nullable + @Nullable + public final BlockState getBlockStateIfLoaded(BlockPos pos) { + // CraftBukkit start - tree generation + if (this.captureTreeGeneration) { @@ -7417,13 +7442,14 @@ index 00ddf94c5bade8c0c486337ce920f59d63cb64e2..32afa096f148ebb546963bae7c9c9b19 + return chunk == null ? null : chunk.getFluidState(blockposition); + } + -+ @Override + @Override +- public ChunkAccess getChunk(int chunkX, int chunkZ, ChunkStatus leastStatus, boolean create) { + public final ChunkAccess getChunk(int chunkX, int chunkZ, ChunkStatus leastStatus, boolean create) { // Paper - final for inline + // Paper end ChunkAccess ichunkaccess = this.getChunkSource().getChunk(chunkX, chunkZ, leastStatus, create); if (ichunkaccess == null && create) { -@@ -317,7 +352,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -317,7 +359,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { } @Override @@ -7432,7 +7458,7 @@ index 00ddf94c5bade8c0c486337ce920f59d63cb64e2..32afa096f148ebb546963bae7c9c9b19 return this.setBlock(pos, state, flags, 512); } -@@ -555,7 +590,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -555,7 +597,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { if (this.isOutsideBuildHeight(pos)) { return Blocks.VOID_AIR.defaultBlockState(); } else { @@ -7566,8 +7592,25 @@ index 532a0cae6db0d830e720a72e9021aa7a8ed0f106..e5e562f75e7d4b6a750f192842940c5e this.upgradeData = upgradeData; this.levelHeightAccessor = heightLimitView; this.sections = new LevelChunkSection[heightLimitView.getSectionsCount()]; +diff --git a/src/main/java/net/minecraft/world/level/chunk/EmptyLevelChunk.java b/src/main/java/net/minecraft/world/level/chunk/EmptyLevelChunk.java +index ca0991b07def35b4697ba6d5569bf9a080e48a1c..2ee1658532cb00d7bcd1d11e03f19d21ca7f2a9e 100644 +--- a/src/main/java/net/minecraft/world/level/chunk/EmptyLevelChunk.java ++++ b/src/main/java/net/minecraft/world/level/chunk/EmptyLevelChunk.java +@@ -25,6 +25,12 @@ public class EmptyLevelChunk extends LevelChunk { + public BlockState getBlockState(BlockPos pos) { + return Blocks.VOID_AIR.defaultBlockState(); + } ++ // Paper start ++ @Override ++ public BlockState getBlockState(final int x, final int y, final int z) { ++ return Blocks.VOID_AIR.defaultBlockState(); ++ } ++ // Paper end + + @Nullable + @Override 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 57805b84054e44a3d7c95cf269316a42205bb99c..e9670e43a146288ad0e5a33dfc02b90fc1eee95b 100644 +index 57805b84054e44a3d7c95cf269316a42205bb99c..409007f6e6940e5ea92e3cbaa74e55cdee50325b 100644 --- a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java +++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java @@ -114,6 +114,109 @@ public class LevelChunk extends ChunkAccess { @@ -7680,7 +7723,33 @@ index 57805b84054e44a3d7c95cf269316a42205bb99c..e9670e43a146288ad0e5a33dfc02b90f public LevelChunk(ServerLevel world, ProtoChunk protoChunk, @Nullable LevelChunk.PostLoadProcessor entityLoader) { this(world, protoChunk.getPos(), protoChunk.getUpgradeData(), protoChunk.unpackBlockTicks(), protoChunk.unpackFluidTicks(), protoChunk.getInhabitedTime(), protoChunk.getSections(), entityLoader, protoChunk.getBlendingData()); Iterator iterator = protoChunk.getBlockEntities().values().iterator(); -@@ -224,6 +327,18 @@ public class LevelChunk extends ChunkAccess { +@@ -181,8 +284,25 @@ public class LevelChunk extends ChunkAccess { + } + } + ++ // Paper start - Perf: Reduce instructions and provide final method ++ public BlockState getBlockState(final int x, final int y, final int z) { ++ return this.getBlockStateFinal(x, y, z); ++ } ++ public BlockState getBlockStateFinal(final int x, final int y, final int z) { ++ // Copied and modified from below ++ final int sectionIndex = this.getSectionIndex(y); ++ if (sectionIndex < 0 || sectionIndex >= this.sections.length ++ || this.sections[sectionIndex].nonEmptyBlockCount == 0) { ++ return Blocks.AIR.defaultBlockState(); ++ } ++ return this.sections[sectionIndex].states.get((y & 15) << 8 | (z & 15) << 4 | x & 15); ++ } + @Override + public BlockState getBlockState(BlockPos pos) { ++ if (true) { ++ return this.getBlockStateFinal(pos.getX(), pos.getY(), pos.getZ()); ++ } ++ // Paper end - Perf: Reduce instructions and provide final method + int i = pos.getX(); + int j = pos.getY(); + int k = pos.getZ(); +@@ -224,6 +344,18 @@ public class LevelChunk extends ChunkAccess { } } @@ -7699,7 +7768,7 @@ index 57805b84054e44a3d7c95cf269316a42205bb99c..e9670e43a146288ad0e5a33dfc02b90f @Override public FluidState getFluidState(BlockPos pos) { return this.getFluidState(pos.getX(), pos.getY(), pos.getZ()); -@@ -537,7 +652,25 @@ public class LevelChunk extends ChunkAccess { +@@ -537,7 +669,25 @@ public class LevelChunk extends ChunkAccess { // CraftBukkit start public void loadCallback() { @@ -7725,7 +7794,7 @@ index 57805b84054e44a3d7c95cf269316a42205bb99c..e9670e43a146288ad0e5a33dfc02b90f if (server != null) { /* * If it's a new world, the first few chunks are generated inside -@@ -578,6 +711,22 @@ public class LevelChunk extends ChunkAccess { +@@ -578,6 +728,22 @@ public class LevelChunk extends ChunkAccess { server.getPluginManager().callEvent(unloadEvent); // note: saving can be prevented, but not forced if no saving is actually required this.mustNotSave = !unloadEvent.isSaveChunk(); @@ -7748,6 +7817,19 @@ index 57805b84054e44a3d7c95cf269316a42205bb99c..e9670e43a146288ad0e5a33dfc02b90f } @Override +diff --git a/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java b/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java +index d59392c322936ce89b759ac9787c8f4f0b228af6..2d6daf76a56574c9727b404feb4f86347f04cbae 100644 +--- a/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java ++++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java +@@ -19,7 +19,7 @@ public class LevelChunkSection { + public static final int SECTION_HEIGHT = 16; + public static final int SECTION_SIZE = 4096; + public static final int BIOME_CONTAINER_BITS = 2; +- private short nonEmptyBlockCount; ++ short nonEmptyBlockCount; // Paper - package private + private short tickingBlockCount; + private short tickingFluidCount; + public final PalettedContainer states; diff --git a/src/main/java/net/minecraft/world/level/chunk/ProtoChunk.java b/src/main/java/net/minecraft/world/level/chunk/ProtoChunk.java index 51a0ddcee9a9cb1040fda643a6442d2e2e15b8a0..38ec21faaa16df5485a81a581506700a5ab0a440 100644 --- a/src/main/java/net/minecraft/world/level/chunk/ProtoChunk.java @@ -8275,6 +8357,20 @@ index 96c4f7aed548a181f6b1487e58dcf157bae52daa..837e3d6ee71566b5a6f37a4943829133 @Override public void clear() { // Create new array to reset memory usage to initial capacity +diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java +index 0c7c97f27853843ec714e47f5b570f9d09bbba14..ff422d4d4f2b764370f0ee2af13034853c1d3fe1 100644 +--- a/src/main/java/org/spigotmc/ActivationRange.java ++++ b/src/main/java/org/spigotmc/ActivationRange.java +@@ -34,6 +34,9 @@ public class ActivationRange + + public enum ActivationType + { ++ WATER, // Paper ++ FLYING_MONSTER, // Paper ++ VILLAGER, // Paper + MONSTER, + ANIMAL, + RAIDER, diff --git a/src/main/java/org/spigotmc/SpigotConfig.java b/src/main/java/org/spigotmc/SpigotConfig.java index df29015e3d5ca49297fe87090fd6446962e59adb..e6e070db9a6ee78e65dbff6f18cb5c8784202b9f 100644 --- a/src/main/java/org/spigotmc/SpigotConfig.java diff --git a/patches/server/0014-Timings-v2.patch b/patches/server/0014-Timings-v2.patch index 4021cecfe8..ebb0a225cd 100644 --- a/patches/server/0014-Timings-v2.patch +++ b/patches/server/0014-Timings-v2.patch @@ -974,7 +974,7 @@ index 813fd87df0dfed8fe46389db8333d1d9f409fbe4..dfb37ddb89c2f43d9f9a34a6b2d38616 // CraftBukkit end } diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index a4d1136fcd75ecdf2cbd7af591d4acb4dfd248ba..17af50aa1ab310a5f0f221e2cd4e9e902c28a092 100644 +index c721642337652ba4cf984ba3c263655b717d3b03..23e830d4cbe94a91c34ebb426311c8f861280b16 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java @@ -1,8 +1,10 @@ @@ -988,7 +988,7 @@ index a4d1136fcd75ecdf2cbd7af591d4acb4dfd248ba..17af50aa1ab310a5f0f221e2cd4e9e90 import com.google.common.collect.Lists; import com.google.common.collect.Queues; import com.google.common.collect.Sets; -@@ -897,6 +899,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -901,6 +903,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider ChunkStatus chunkstatus = ChunkLevel.generationStatus(chunkHolder.getTicketLevel()); return !chunkstatus.isOrAfter(ChunkStatus.FULL) ? ChunkHolder.UNLOADED_CHUNK : either.mapLeft((ichunkaccess) -> { @@ -996,7 +996,7 @@ index a4d1136fcd75ecdf2cbd7af591d4acb4dfd248ba..17af50aa1ab310a5f0f221e2cd4e9e90 ChunkPos chunkcoordintpair = chunkHolder.getPos(); ProtoChunk protochunk = (ProtoChunk) ichunkaccess; LevelChunk chunk; -@@ -921,6 +924,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -925,6 +928,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider } return chunk; @@ -1004,7 +1004,7 @@ index a4d1136fcd75ecdf2cbd7af591d4acb4dfd248ba..17af50aa1ab310a5f0f221e2cd4e9e90 }); }, (runnable) -> { ProcessorHandle mailbox = this.mainThreadMailbox; -@@ -1472,6 +1476,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1476,6 +1480,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider List list = Lists.newArrayList(); List list1 = this.level.players(); ObjectIterator objectiterator = this.entityMap.values().iterator(); @@ -1012,7 +1012,7 @@ index a4d1136fcd75ecdf2cbd7af591d4acb4dfd248ba..17af50aa1ab310a5f0f221e2cd4e9e90 ChunkMap.TrackedEntity playerchunkmap_entitytracker; -@@ -1496,14 +1501,17 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1500,14 +1505,17 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider playerchunkmap_entitytracker.serverEntity.sendChanges(); } } @@ -1472,7 +1472,7 @@ index b71b702471599fc8f1de42919ade8ee6a4e6247c..2e47008a8ff1bb56b752d4eb880173b9 if (!this.level().isClientSide && this.isSensitiveToWater() && this.isInWaterRainOrBubble()) { this.hurt(this.damageSources().drown(), 1.0F); diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 32afa096f148ebb546963bae7c9c9b194cb1a99c..6dbc4c74b4d6b8e6c4763366e70ca9292b4a25d5 100644 +index d89431b476b032f3ff86097bb91b86016d4e3371..aa22d4024cdd0ecb1c0442ecdeae00822597362e 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -91,7 +91,6 @@ import org.bukkit.Bukkit; @@ -1501,7 +1501,7 @@ index 32afa096f148ebb546963bae7c9c9b194cb1a99c..6dbc4c74b4d6b8e6c4763366e70ca929 this.entityLimiter = new org.spigotmc.TickLimiter(this.spigotConfig.entityMaxTickTime); this.tileLimiter = new org.spigotmc.TickLimiter(this.spigotConfig.tileMaxTickTime); } -@@ -718,15 +717,14 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -725,15 +724,14 @@ public abstract class Level implements LevelAccessor, AutoCloseable { this.timings.tileEntityTick.stopTiming(); // Spigot this.tickingBlockEntities = false; @@ -1557,10 +1557,10 @@ index c02fa35cefc9194d1838abbe4f2dc2b226a41e41..b300d12e9e00519028b53aca9c3fb01f private static final CraftPersistentDataTypeRegistry DATA_TYPE_REGISTRY = new CraftPersistentDataTypeRegistry(); public CraftPersistentDataContainer persistentDataContainer; 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 e9670e43a146288ad0e5a33dfc02b90fc1eee95b..93a73367e004979a015704d94a5669d154a2f71b 100644 +index 409007f6e6940e5ea92e3cbaa74e55cdee50325b..c2179ea2a16ae0fac0b59d81a57abf13f563843f 100644 --- a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java +++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java -@@ -681,6 +681,7 @@ public class LevelChunk extends ChunkAccess { +@@ -698,6 +698,7 @@ public class LevelChunk extends ChunkAccess { server.getPluginManager().callEvent(new org.bukkit.event.world.ChunkLoadEvent(bukkitChunk, this.needsDecoration)); if (this.needsDecoration) { @@ -1568,7 +1568,7 @@ index e9670e43a146288ad0e5a33dfc02b90fc1eee95b..93a73367e004979a015704d94a5669d1 this.needsDecoration = false; java.util.Random random = new java.util.Random(); random.setSeed(this.level.getSeed()); -@@ -700,6 +701,7 @@ public class LevelChunk extends ChunkAccess { +@@ -717,6 +718,7 @@ public class LevelChunk extends ChunkAccess { } } server.getPluginManager().callEvent(new org.bukkit.event.world.ChunkPopulateEvent(bukkitChunk)); @@ -2048,7 +2048,7 @@ index 72c1b7f1468c47ad7053a7ff6b3248324b2bf604..677335c3888adc25fbf3c5ec4d5a6c5e * This helper class represents the different NBT Tags. *

diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java -index 0c7c97f27853843ec714e47f5b570f9d09bbba14..e01ef22189ce80429eb0054e416547577fd3cc5d 100644 +index ff422d4d4f2b764370f0ee2af13034853c1d3fe1..a5da6c1cae0afbde684be250e2fc3c0c32a1265b 100644 --- a/src/main/java/org/spigotmc/ActivationRange.java +++ b/src/main/java/org/spigotmc/ActivationRange.java @@ -27,7 +27,7 @@ import net.minecraft.world.entity.projectile.ThrownTrident; @@ -2060,7 +2060,7 @@ index 0c7c97f27853843ec714e47f5b570f9d09bbba14..e01ef22189ce80429eb0054e41654757 public class ActivationRange { -@@ -71,8 +71,8 @@ public class ActivationRange +@@ -74,8 +74,8 @@ public class ActivationRange /** * These entities are excluded from Activation range checks. * @@ -2071,7 +2071,7 @@ index 0c7c97f27853843ec714e47f5b570f9d09bbba14..e01ef22189ce80429eb0054e41654757 * @return boolean If it should always tick. */ public static boolean initializeEntityActivationState(Entity entity, SpigotWorldConfig config) -@@ -107,7 +107,7 @@ public class ActivationRange +@@ -110,7 +110,7 @@ public class ActivationRange */ public static void activateEntities(Level world) { @@ -2080,7 +2080,7 @@ index 0c7c97f27853843ec714e47f5b570f9d09bbba14..e01ef22189ce80429eb0054e41654757 final int miscActivationRange = world.spigotConfig.miscActivationRange; final int raiderActivationRange = world.spigotConfig.raiderActivationRange; final int animalActivationRange = world.spigotConfig.animalActivationRange; -@@ -134,7 +134,7 @@ public class ActivationRange +@@ -137,7 +137,7 @@ public class ActivationRange world.getEntities().get(ActivationRange.maxBB, ActivationRange::activateEntity); } @@ -2089,7 +2089,7 @@ index 0c7c97f27853843ec714e47f5b570f9d09bbba14..e01ef22189ce80429eb0054e41654757 } /** -@@ -229,10 +229,8 @@ public class ActivationRange +@@ -232,10 +232,8 @@ public class ActivationRange */ public static boolean checkIfActive(Entity entity) { @@ -2100,7 +2100,7 @@ index 0c7c97f27853843ec714e47f5b570f9d09bbba14..e01ef22189ce80429eb0054e41654757 return true; } -@@ -256,7 +254,6 @@ public class ActivationRange +@@ -259,7 +257,6 @@ public class ActivationRange { isActive = false; } diff --git a/patches/server/0016-Starlight.patch b/patches/server/0016-Starlight.patch index e4923c64b3..90fac0047e 100644 --- a/patches/server/0016-Starlight.patch +++ b/patches/server/0016-Starlight.patch @@ -4493,7 +4493,7 @@ index facfdbb87e89f4db33ce13233c2ba4366d35c15b..807a6bb1026dac2c4cd0a50afe06fd62 private final DebugBuffer chunkToSaveHistory; public int oldTicketLevel; diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index 17af50aa1ab310a5f0f221e2cd4e9e902c28a092..5ae30cd3af88c4f4179a4dc0c94906cfbfb7ff29 100644 +index 23e830d4cbe94a91c34ebb426311c8f861280b16..ed095afdf8be843b9a608130040739c0b21dbe0a 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java @@ -125,7 +125,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider @@ -5037,7 +5037,7 @@ index d5b1fd0ff3f64675f90dd9f7f328a106e0992d51..846ae3fd184a1d63b743aa25e0456045 return (ChunkStatus) BuiltInRegistries.CHUNK_STATUS.get(ResourceLocation.tryParse(id)); } diff --git a/src/main/java/net/minecraft/world/level/chunk/EmptyLevelChunk.java b/src/main/java/net/minecraft/world/level/chunk/EmptyLevelChunk.java -index ca0991b07def35b4697ba6d5569bf9a080e48a1c..f49cc61840c6588fca301b4c5c3aaeede03a323e 100644 +index 2ee1658532cb00d7bcd1d11e03f19d21ca7f2a9e..ac754827172a4de600d0a57a7d11853481a2dbf2 100644 --- a/src/main/java/net/minecraft/world/level/chunk/EmptyLevelChunk.java +++ b/src/main/java/net/minecraft/world/level/chunk/EmptyLevelChunk.java @@ -21,6 +21,40 @@ public class EmptyLevelChunk extends LevelChunk { @@ -5135,7 +5135,7 @@ index 6bb508105641b5729572736c5c3f9bd6711e309a..60e760b42dd6471a229dfd45490dcf8c @Override public BlockEntity getBlockEntity(BlockPos pos) { 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 93a73367e004979a015704d94a5669d154a2f71b..17725dba7cbcdce00cd23c3956eaf1642d9c424f 100644 +index c2179ea2a16ae0fac0b59d81a57abf13f563843f..3e51fb9fe05d5b974ae41ccc0acbb516a07c114b 100644 --- a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java +++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java @@ -219,6 +219,12 @@ public class LevelChunk extends ChunkAccess { @@ -5160,7 +5160,7 @@ index 93a73367e004979a015704d94a5669d154a2f71b..17725dba7cbcdce00cd23c3956eaf164 this.setLightCorrect(protoChunk.isLightCorrect()); this.unsaved = true; this.needsDecoration = true; // CraftBukkit -@@ -409,7 +415,7 @@ public class LevelChunk extends ChunkAccess { +@@ -426,7 +432,7 @@ public class LevelChunk extends ChunkAccess { ProfilerFiller gameprofilerfiller = this.level.getProfiler(); gameprofilerfiller.push("updateSkyLightSources"); diff --git a/patches/server/0018-Rewrite-chunk-system.patch b/patches/server/0018-Rewrite-chunk-system.patch index 9fe74587e1..e74f01d432 100644 --- a/patches/server/0018-Rewrite-chunk-system.patch +++ b/patches/server/0018-Rewrite-chunk-system.patch @@ -17522,7 +17522,7 @@ index 807a6bb1026dac2c4cd0a50afe06fd62ce23558b..2b998bdbe49bf8211b755e0eb7c1bf13 // Paper end } diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index 5ae30cd3af88c4f4179a4dc0c94906cfbfb7ff29..5a653dffecd3877c84ac8197e1ef4b7bbc9820ce 100644 +index ed095afdf8be843b9a608130040739c0b21dbe0a..2a52f5fc867f35b9d94b813d5cdd92249c60ee8b 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java @@ -119,10 +119,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider @@ -17654,7 +17654,7 @@ index 5ae30cd3af88c4f4179a4dc0c94906cfbfb7ff29..5a653dffecd3877c84ac8197e1ef4b7b this.distanceManager = new ChunkMap.ChunkDistanceManager(executor, mainThreadExecutor); this.overworldDataStorage = persistentStateManagerFactory; this.poiManager = new PoiManager(path.resolve("poi"), dataFixer, dsync, iregistrycustom, world); -@@ -326,23 +298,15 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -330,23 +302,15 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider } boolean isChunkTracked(ServerPlayer player, int chunkX, int chunkZ) { @@ -17684,7 +17684,7 @@ index 5ae30cd3af88c4f4179a4dc0c94906cfbfb7ff29..5a653dffecd3877c84ac8197e1ef4b7b } protected ThreadedLevelLightEngine getLightEngine() { -@@ -351,20 +315,22 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -355,20 +319,22 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider @Nullable protected ChunkHolder getUpdatingChunkIfPresent(long pos) { @@ -17714,7 +17714,7 @@ index 5ae30cd3af88c4f4179a4dc0c94906cfbfb7ff29..5a653dffecd3877c84ac8197e1ef4b7b } public String getChunkDebugData(ChunkPos chunkPos) { -@@ -394,92 +360,12 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -398,92 +364,12 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider // Paper start public final int getEffectiveViewDistance() { @@ -17809,7 +17809,7 @@ index 5ae30cd3af88c4f4179a4dc0c94906cfbfb7ff29..5a653dffecd3877c84ac8197e1ef4b7b } public ReportedException debugFuturesAndCreateReportedException(IllegalStateException exception, String details) { -@@ -509,263 +395,72 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -513,263 +399,72 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider } public CompletableFuture> prepareEntityTickingChunk(ChunkHolder chunk) { @@ -18093,7 +18093,7 @@ index 5ae30cd3af88c4f4179a4dc0c94906cfbfb7ff29..5a653dffecd3877c84ac8197e1ef4b7b return nbt.contains("Status", 8); } -@@ -801,54 +496,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -805,54 +500,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider } private CompletableFuture> scheduleChunkGeneration(ChunkHolder holder, ChunkStatus requiredStatus) { @@ -18149,7 +18149,7 @@ index 5ae30cd3af88c4f4179a4dc0c94906cfbfb7ff29..5a653dffecd3877c84ac8197e1ef4b7b } protected void releaseLightTicket(ChunkPos pos) { -@@ -859,7 +507,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -863,7 +511,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider })); } @@ -18158,7 +18158,7 @@ index 5ae30cd3af88c4f4179a4dc0c94906cfbfb7ff29..5a653dffecd3877c84ac8197e1ef4b7b ChunkStatus chunkstatus1; if (distance == 0) { -@@ -871,7 +519,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -875,7 +523,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider return chunkstatus1; } @@ -18167,7 +18167,7 @@ index 5ae30cd3af88c4f4179a4dc0c94906cfbfb7ff29..5a653dffecd3877c84ac8197e1ef4b7b if (!nbt.isEmpty()) { // CraftBukkit start - these are spawned serialized (DefinedStructure) and we don't call an add event below at the moment due to ordering complexities world.addWorldGenChunkEntities(EntityType.loadEntitiesRecursive(nbt, world).filter((entity) -> { -@@ -886,111 +534,27 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -890,111 +538,27 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider needsRemoval = true; } return !needsRemoval; @@ -18284,7 +18284,7 @@ index 5ae30cd3af88c4f4179a4dc0c94906cfbfb7ff29..5a653dffecd3877c84ac8197e1ef4b7b } public int getTickingGenerated() { -@@ -998,130 +562,52 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1002,130 +566,52 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider } private boolean saveChunkIfNeeded(ChunkHolder chunkHolder) { @@ -18432,7 +18432,7 @@ index 5ae30cd3af88c4f4179a4dc0c94906cfbfb7ff29..5a653dffecd3877c84ac8197e1ef4b7b } @Nullable -@@ -1144,30 +630,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1148,30 +634,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider } void dumpChunks(Writer writer) throws IOException { @@ -18464,7 +18464,7 @@ index 5ae30cd3af88c4f4179a4dc0c94906cfbfb7ff29..5a653dffecd3877c84ac8197e1ef4b7b } private static String printFuture(CompletableFuture> future) { -@@ -1186,6 +649,35 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1190,6 +653,35 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider } } @@ -18500,7 +18500,7 @@ index 5ae30cd3af88c4f4179a4dc0c94906cfbfb7ff29..5a653dffecd3877c84ac8197e1ef4b7b private CompletableFuture> readChunk(ChunkPos chunkPos) { return this.read(chunkPos).thenApplyAsync((optional) -> { return optional.map((nbttagcompound) -> this.upgradeChunkTag(nbttagcompound, chunkPos)); // CraftBukkit -@@ -1275,8 +767,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1279,8 +771,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider this.distanceManager.addPlayer(SectionPos.of((EntityAccess) player), player); } @@ -18510,7 +18510,7 @@ index 5ae30cd3af88c4f4179a4dc0c94906cfbfb7ff29..5a653dffecd3877c84ac8197e1ef4b7b this.addPlayerToDistanceMaps(player); // Paper - distance maps } else { SectionPos sectionposition = player.getLastSectionPos(); -@@ -1287,7 +778,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1291,7 +782,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider } this.removePlayerFromDistanceMaps(player); // Paper - distance maps @@ -18519,7 +18519,7 @@ index 5ae30cd3af88c4f4179a4dc0c94906cfbfb7ff29..5a653dffecd3877c84ac8197e1ef4b7b } } -@@ -1335,73 +826,30 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1339,73 +830,30 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider this.playerMap.unIgnorePlayer(player); } @@ -18603,7 +18603,7 @@ index 5ae30cd3af88c4f4179a4dc0c94906cfbfb7ff29..5a653dffecd3877c84ac8197e1ef4b7b } public void addEntity(Entity entity) { -@@ -1465,13 +913,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1469,13 +917,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider } protected void tick() { @@ -18618,7 +18618,7 @@ index 5ae30cd3af88c4f4179a4dc0c94906cfbfb7ff29..5a653dffecd3877c84ac8197e1ef4b7b List list = Lists.newArrayList(); List list1 = this.level.players(); -@@ -1580,16 +1022,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1584,16 +1026,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider } public void waitForLightBeforeSending(ChunkPos centerPos, int radius) { @@ -18636,7 +18636,7 @@ index 5ae30cd3af88c4f4179a4dc0c94906cfbfb7ff29..5a653dffecd3877c84ac8197e1ef4b7b } private class ChunkDistanceManager extends DistanceManager { -@@ -1600,7 +1033,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1604,7 +1037,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider @Override protected boolean isChunkToRemove(long pos) { @@ -21076,10 +21076,10 @@ index b6a3c75b84d9f768afee33aa0f226207b307c1c0..2ec2b1d9d987c7f31c685aec3d3c87f4 List getEntities(EntityTypeTest filter, AABB box, Predicate predicate); diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 6dbc4c74b4d6b8e6c4763366e70ca9292b4a25d5..796c7ecedbf7a82697598918d484d80635fb16a8 100644 +index aa22d4024cdd0ecb1c0442ecdeae00822597362e..d3a7de8d3fd92d36d3df257cae5686fc7f61d3c3 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java -@@ -456,6 +456,11 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -463,6 +463,11 @@ public abstract class Level implements LevelAccessor, AutoCloseable { if ((i & 2) != 0 && (!this.isClientSide || (i & 4) == 0) && (this.isClientSide || chunk == null || (chunk.getFullStatus() != null && chunk.getFullStatus().isOrAfter(FullChunkStatus.BLOCK_TICKING)))) { // allow chunk to be null here as chunk.isReady() is false when we send our notification during block placement this.sendBlockUpdated(blockposition, iblockdata1, iblockdata, i); @@ -21091,7 +21091,7 @@ index 6dbc4c74b4d6b8e6c4763366e70ca9292b4a25d5..796c7ecedbf7a82697598918d484d806 } if ((i & 1) != 0) { -@@ -816,7 +821,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -823,7 +828,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { return this.capturedTileEntities.get(blockposition); } // CraftBukkit end @@ -21100,7 +21100,7 @@ index 6dbc4c74b4d6b8e6c4763366e70ca9292b4a25d5..796c7ecedbf7a82697598918d484d806 } public void setBlockEntity(BlockEntity blockEntity) { -@@ -907,26 +912,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -914,26 +919,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { public List getEntities(@Nullable Entity except, AABB box, Predicate predicate) { this.getProfiler().incrementCounter("getEntities"); List list = Lists.newArrayList(); @@ -21128,7 +21128,7 @@ index 6dbc4c74b4d6b8e6c4763366e70ca9292b4a25d5..796c7ecedbf7a82697598918d484d806 return list; } -@@ -944,34 +930,23 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -951,34 +937,23 @@ public abstract class Level implements LevelAccessor, AutoCloseable { public void getEntities(EntityTypeTest filter, AABB box, Predicate predicate, List result, int limit) { this.getProfiler().incrementCounter("getEntities"); @@ -21179,7 +21179,7 @@ index 6dbc4c74b4d6b8e6c4763366e70ca9292b4a25d5..796c7ecedbf7a82697598918d484d806 } @Nullable -@@ -1243,4 +1218,45 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -1250,4 +1225,45 @@ public abstract class Level implements LevelAccessor, AutoCloseable { private ExplosionInteraction() {} } @@ -21333,7 +21333,7 @@ index 846ae3fd184a1d63b743aa25e045604576697c96..a907b79fd8291a0e92db138f37239d17 public int getIndex() { 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 17725dba7cbcdce00cd23c3956eaf1642d9c424f..6fb729809dffc1c0ab6957a127f8403df20aae96 100644 +index 3e51fb9fe05d5b974ae41ccc0acbb516a07c114b..a664126bbcd29026e9d6770e362aa04c2c0b3fc8 100644 --- a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java +++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java @@ -83,6 +83,7 @@ public class LevelChunk extends ChunkAccess { @@ -21344,7 +21344,7 @@ index 17725dba7cbcdce00cd23c3956eaf1642d9c424f..6fb729809dffc1c0ab6957a127f8403d public LevelChunk(Level world, ChunkPos pos) { this(world, pos, UpgradeData.EMPTY, new LevelChunkTicks<>(), new LevelChunkTicks<>(), 0L, (LevelChunkSection[]) null, (LevelChunk.PostLoadProcessor) null, (BlendingData) null); -@@ -656,9 +657,26 @@ public class LevelChunk extends ChunkAccess { +@@ -673,9 +674,26 @@ public class LevelChunk extends ChunkAccess { } @@ -21374,7 +21374,7 @@ index 17725dba7cbcdce00cd23c3956eaf1642d9c424f..6fb729809dffc1c0ab6957a127f8403d int chunkX = this.chunkPos.x; int chunkZ = this.chunkPos.z; net.minecraft.server.level.ServerChunkCache chunkProvider = this.level.getChunkSource(); -@@ -673,10 +691,55 @@ public class LevelChunk extends ChunkAccess { +@@ -690,10 +708,55 @@ public class LevelChunk extends ChunkAccess { } } this.setNeighbourLoaded(0, 0, this); @@ -21432,7 +21432,7 @@ index 17725dba7cbcdce00cd23c3956eaf1642d9c424f..6fb729809dffc1c0ab6957a127f8403d if (server != null) { /* * If it's a new world, the first few chunks are generated inside -@@ -685,6 +748,7 @@ public class LevelChunk extends ChunkAccess { +@@ -702,6 +765,7 @@ public class LevelChunk extends ChunkAccess { */ org.bukkit.Chunk bukkitChunk = new org.bukkit.craftbukkit.CraftChunk(this); server.getPluginManager().callEvent(new org.bukkit.event.world.ChunkLoadEvent(bukkitChunk, this.needsDecoration)); @@ -21440,7 +21440,7 @@ index 17725dba7cbcdce00cd23c3956eaf1642d9c424f..6fb729809dffc1c0ab6957a127f8403d if (this.needsDecoration) { try (co.aikar.timings.Timing ignored = this.level.timings.chunkLoadPopulate.startTiming()) { // Paper -@@ -713,9 +777,11 @@ public class LevelChunk extends ChunkAccess { +@@ -730,9 +794,11 @@ public class LevelChunk extends ChunkAccess { } public void unloadCallback() { @@ -21453,7 +21453,7 @@ index 17725dba7cbcdce00cd23c3956eaf1642d9c424f..6fb729809dffc1c0ab6957a127f8403d server.getPluginManager().callEvent(unloadEvent); // note: saving can be prevented, but not forced if no saving is actually required this.mustNotSave = !unloadEvent.isSaveChunk(); -@@ -737,9 +803,26 @@ public class LevelChunk extends ChunkAccess { +@@ -754,9 +820,26 @@ public class LevelChunk extends ChunkAccess { // Paper end } @@ -21481,7 +21481,7 @@ index 17725dba7cbcdce00cd23c3956eaf1642d9c424f..6fb729809dffc1c0ab6957a127f8403d } // CraftBukkit end -@@ -808,7 +891,9 @@ public class LevelChunk extends ChunkAccess { +@@ -825,7 +908,9 @@ public class LevelChunk extends ChunkAccess { return this.blockEntities; } @@ -21491,7 +21491,7 @@ index 17725dba7cbcdce00cd23c3956eaf1642d9c424f..6fb729809dffc1c0ab6957a127f8403d ChunkPos chunkcoordintpair = this.getPos(); for (int i = 0; i < this.postProcessing.length; ++i) { -@@ -829,6 +914,7 @@ public class LevelChunk extends ChunkAccess { +@@ -846,6 +931,7 @@ public class LevelChunk extends ChunkAccess { BlockState iblockdata1 = Block.updateFromNeighbourShapes(iblockdata, this.level, blockposition); this.level.setBlock(blockposition, iblockdata1, 20); @@ -21499,7 +21499,7 @@ index 17725dba7cbcdce00cd23c3956eaf1642d9c424f..6fb729809dffc1c0ab6957a127f8403d } } -@@ -846,6 +932,10 @@ public class LevelChunk extends ChunkAccess { +@@ -863,6 +949,10 @@ public class LevelChunk extends ChunkAccess { this.pendingBlockEntities.clear(); this.upgradeData.upgrade(this); @@ -21510,7 +21510,7 @@ index 17725dba7cbcdce00cd23c3956eaf1642d9c424f..6fb729809dffc1c0ab6957a127f8403d } @Nullable -@@ -895,7 +985,7 @@ public class LevelChunk extends ChunkAccess { +@@ -912,7 +1002,7 @@ public class LevelChunk extends ChunkAccess { } public FullChunkStatus getFullStatus() { @@ -22959,10 +22959,10 @@ index 440660dfa70d57e94ae4eef1dce783aee5034f7e..187eda2dd40785eb09528c86718d6b4f + // Paper end } diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java -index e01ef22189ce80429eb0054e416547577fd3cc5d..47e7fd7baf3ec6ed3ec9b5e6d73ed8611c2b1ce1 100644 +index a5da6c1cae0afbde684be250e2fc3c0c32a1265b..a5ab3e1d52ff68730a4b9069e6d25a3d31c25da5 100644 --- a/src/main/java/org/spigotmc/ActivationRange.java +++ b/src/main/java/org/spigotmc/ActivationRange.java -@@ -132,7 +132,13 @@ public class ActivationRange +@@ -135,7 +135,13 @@ public class ActivationRange ActivationType.ANIMAL.boundingBox = player.getBoundingBox().inflate( animalActivationRange, 256, animalActivationRange ); ActivationType.MONSTER.boundingBox = player.getBoundingBox().inflate( monsterActivationRange, 256, monsterActivationRange ); diff --git a/patches/server/0034-Prevent-tile-entity-and-entity-crashes.patch b/patches/server/0034-Prevent-tile-entity-and-entity-crashes.patch index c059488d43..746e45c7bc 100644 --- a/patches/server/0034-Prevent-tile-entity-and-entity-crashes.patch +++ b/patches/server/0034-Prevent-tile-entity-and-entity-crashes.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Prevent tile entity and entity crashes diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index e4f8318efc90f37aa478122865d0383d39896603..e68e6b5df3606cee5a14a00c5451963191ac2cd8 100644 +index 6818173e3f798b4d89a17c6934020cc929ec5e4e..5315def7ff7ba0be6c09be86453284f3aed29576 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java -@@ -732,11 +732,11 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -739,11 +739,11 @@ public abstract class Level implements LevelAccessor, AutoCloseable { try { tickConsumer.accept(entity); } catch (Throwable throwable) { @@ -44,10 +44,10 @@ index b300d12e9e00519028b53aca9c3fb01f589eaa91..63acd109a79ed752a05df3d4f1b99309 } } 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 6fb729809dffc1c0ab6957a127f8403df20aae96..db3ee1f1d8429d3d646623877adc9f6920b7764f 100644 +index a664126bbcd29026e9d6770e362aa04c2c0b3fc8..92ae6e100cd70772dfc781bb630f41e94f0cdd06 100644 --- a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java +++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java -@@ -1142,11 +1142,11 @@ public class LevelChunk extends ChunkAccess { +@@ -1159,11 +1159,11 @@ public class LevelChunk extends ChunkAccess { gameprofilerfiller.pop(); } catch (Throwable throwable) { diff --git a/patches/server/0037-Always-tick-falling-blocks.patch b/patches/server/0037-Always-tick-falling-blocks.patch index 10ac3a3800..7a7d5ab515 100644 --- a/patches/server/0037-Always-tick-falling-blocks.patch +++ b/patches/server/0037-Always-tick-falling-blocks.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Always tick falling blocks diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java -index 47e7fd7baf3ec6ed3ec9b5e6d73ed8611c2b1ce1..e4efed4e50188b71ff30238b3517a924b45b24b8 100644 +index a5ab3e1d52ff68730a4b9069e6d25a3d31c25da5..2cb5bbe371333f566b4d6d3ee8016857986e9af0 100644 --- a/src/main/java/org/spigotmc/ActivationRange.java +++ b/src/main/java/org/spigotmc/ActivationRange.java -@@ -89,6 +89,7 @@ public class ActivationRange +@@ -92,6 +92,7 @@ public class ActivationRange || entity instanceof AbstractHurtingProjectile || entity instanceof LightningBolt || entity instanceof PrimedTnt diff --git a/patches/server/0049-Disable-spigot-tick-limiters.patch b/patches/server/0049-Disable-spigot-tick-limiters.patch index d70dcfc316..1d5c8ca844 100644 --- a/patches/server/0049-Disable-spigot-tick-limiters.patch +++ b/patches/server/0049-Disable-spigot-tick-limiters.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Disable spigot tick limiters diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 989425423bb4dab3fe57ab9407bc0676675dada0..8be40065d6f0d53d5a264464fc4be208c7bad3a9 100644 +index fcf3be628e5ee6155ebc4e73c24043731f2f7894..f7407f5204a2cbfcc46987d5e0a34770b2e5abbf 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java -@@ -705,9 +705,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -712,9 +712,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { boolean flag = this.tickRateManager().runsNormally(); int tilesThisCycle = 0; diff --git a/patches/server/0060-Add-exception-reporting-event.patch b/patches/server/0060-Add-exception-reporting-event.patch index adf9e7af33..8d89dd05f7 100644 --- a/patches/server/0060-Add-exception-reporting-event.patch +++ b/patches/server/0060-Add-exception-reporting-event.patch @@ -88,7 +88,7 @@ index c6fb4c33d7ea52b88d8fc0d90748cbab7387c565..2b5b2869589991be37a4f128faabbff5 } diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 1b5eb2685c43804e5e4014ff1b70f52652be67f5..0032914a53154d11e2d36267771fd2da6d2f1d05 100644 +index f7407f5204a2cbfcc46987d5e0a34770b2e5abbf..813a79866794bad9d0da105345641a6e9136ddf8 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -1,5 +1,10 @@ @@ -102,7 +102,7 @@ index 1b5eb2685c43804e5e4014ff1b70f52652be67f5..0032914a53154d11e2d36267771fd2da import com.google.common.collect.Lists; import com.mojang.serialization.Codec; import java.io.IOException; -@@ -734,6 +739,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -741,6 +746,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { // Paper start - Prevent tile entity and entity crashes final String msg = String.format("Entity threw exception at %s:%s,%s,%s", entity.level().getWorld().getName(), entity.getX(), entity.getY(), entity.getZ()); MinecraftServer.LOGGER.error(msg, throwable); @@ -131,7 +131,7 @@ index 5d65baba605dd83e5f74d526aeda36d8ede8c014..604766a286d00bb4b40c20482376fe80 } 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 db3ee1f1d8429d3d646623877adc9f6920b7764f..7208b7b916ff179e8dbe9925fb246e3652b4f9c2 100644 +index 92ae6e100cd70772dfc781bb630f41e94f0cdd06..40a829fa6b6410c2736af96ef1a46cf589056641 100644 --- a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java +++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java @@ -1,6 +1,7 @@ @@ -142,7 +142,7 @@ index db3ee1f1d8429d3d646623877adc9f6920b7764f..7208b7b916ff179e8dbe9925fb246e36 import com.google.common.collect.Maps; import com.google.common.collect.UnmodifiableIterator; import com.mojang.logging.LogUtils; -@@ -564,10 +565,16 @@ public class LevelChunk extends ChunkAccess { +@@ -581,10 +582,16 @@ public class LevelChunk extends ChunkAccess { // CraftBukkit start } else { @@ -163,7 +163,7 @@ index db3ee1f1d8429d3d646623877adc9f6920b7764f..7208b7b916ff179e8dbe9925fb246e36 // CraftBukkit end } } -@@ -1145,6 +1152,7 @@ public class LevelChunk extends ChunkAccess { +@@ -1162,6 +1169,7 @@ public class LevelChunk extends ChunkAccess { // Paper start - Prevent tile entity and entity crashes final String msg = String.format("BlockEntity threw exception at %s:%s,%s,%s", LevelChunk.this.getLevel().getWorld().getName(), this.getPos().getX(), this.getPos().getY(), this.getPos().getZ()); net.minecraft.server.MinecraftServer.LOGGER.error(msg, throwable); diff --git a/patches/server/0070-Add-World-Util-Methods.patch b/patches/server/0070-Add-World-Util-Methods.patch index 288ee97970..bd3012b249 100644 --- a/patches/server/0070-Add-World-Util-Methods.patch +++ b/patches/server/0070-Add-World-Util-Methods.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Add World Util Methods Methods that can be used for other patches to help improve logic. diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 0032914a53154d11e2d36267771fd2da6d2f1d05..85b1e406b856f3452fe44f909fa5475196f1cf58 100644 +index 813a79866794bad9d0da105345641a6e9136ddf8..e8b2e1f45ecd13ac4bfc2c3eb09f2d397b997b78 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java -@@ -345,6 +345,22 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -352,6 +352,22 @@ public abstract class Level implements LevelAccessor, AutoCloseable { return chunk == null ? null : chunk.getFluidState(blockposition); } diff --git a/patches/server/0075-Only-process-BlockPhysicsEvent-if-a-plugin-has-a-lis.patch b/patches/server/0075-Only-process-BlockPhysicsEvent-if-a-plugin-has-a-lis.patch index 32f8fee316..5db9abac5a 100644 --- a/patches/server/0075-Only-process-BlockPhysicsEvent-if-a-plugin-has-a-lis.patch +++ b/patches/server/0075-Only-process-BlockPhysicsEvent-if-a-plugin-has-a-lis.patch @@ -30,10 +30,10 @@ index 817e0ddc8821dd112fc5aa72bbbe11fdd1b56488..181a4e0e44cd05528c66ce87b653c33d public LevelChunk getChunkIfLoaded(int x, int z) { return this.chunkSource.getChunk(x, z, false); diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 85b1e406b856f3452fe44f909fa5475196f1cf58..c6c8e76a2820b3bd4724344db5e6852a745e663a 100644 +index e8b2e1f45ecd13ac4bfc2c3eb09f2d397b997b78..f711a4ef9168e05c7d795a1a831c608b19cc989c 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java -@@ -499,7 +499,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -506,7 +506,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { // CraftBukkit start iblockdata1.updateIndirectNeighbourShapes(this, blockposition, k, j - 1); // Don't call an event for the old block to limit event spam CraftWorld world = ((ServerLevel) this).getWorld(); diff --git a/patches/server/0099-Fix-global-sound-handling.patch b/patches/server/0099-Fix-global-sound-handling.patch index 65b37e92d7..9957b1408a 100644 --- a/patches/server/0099-Fix-global-sound-handling.patch +++ b/patches/server/0099-Fix-global-sound-handling.patch @@ -81,10 +81,10 @@ index 5bc68514a1e8a212e2681f06b918548c0ec565b6..1977e702f6af39ebf100c1f2f2edc2d1 double deltaLength = Math.sqrt(distanceSquared); double relativeX = player.getX() + (deltaX / deltaLength) * viewDistance; diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 28ff413396312df9de73805e06da70a6fc0e8201..7f0db74c7a247d313c33bafb0ec773ae8f4f3959 100644 +index d57235720e701f765dffeafaad644cf2d7207d28..945c620d9ab369d798d1abb03ad8fa4eb02cfb5a 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java -@@ -1282,4 +1282,15 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -1289,4 +1289,15 @@ public abstract class Level implements LevelAccessor, AutoCloseable { return ret; } // Paper end diff --git a/patches/server/0113-Optimize-Level.hasChunkAt-BlockPosition-Z.patch b/patches/server/0113-Optimize-Level.hasChunkAt-BlockPosition-Z.patch index 851edacf7d..94ca9a49cb 100644 --- a/patches/server/0113-Optimize-Level.hasChunkAt-BlockPosition-Z.patch +++ b/patches/server/0113-Optimize-Level.hasChunkAt-BlockPosition-Z.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Optimize Level.hasChunkAt(BlockPosition)Z Reduce method invocations for World.isLoaded(BlockPosition)Z diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 7f0db74c7a247d313c33bafb0ec773ae8f4f3959..537d532a2663a0f0384a4af1ffe008dfa395cb38 100644 +index 945c620d9ab369d798d1abb03ad8fa4eb02cfb5a..b25505d7053aa6cbe8e2c10e27d9c810dd7c9529 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java -@@ -346,6 +346,11 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -353,6 +353,11 @@ public abstract class Level implements LevelAccessor, AutoCloseable { return chunk == null ? null : chunk.getFluidState(blockposition); } diff --git a/patches/server/0159-Fix-MC-117075-Block-entity-unload-lag-spike.patch b/patches/server/0159-Fix-MC-117075-Block-entity-unload-lag-spike.patch index 9169113362..eec57ecdcb 100644 --- a/patches/server/0159-Fix-MC-117075-Block-entity-unload-lag-spike.patch +++ b/patches/server/0159-Fix-MC-117075-Block-entity-unload-lag-spike.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Fix MC-117075: Block entity unload lag spike diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 4e1b8ce73f07b8ea12f9f2b7883cd994aed73648..0e837193b5b858d0be30974c7454cf76920d58e9 100644 +index 4e55288250fdefcd55d98f94b58ce8c2411fe1b4..6e3b4a0ace95331e318ce587cb3e03670a1f5c9d 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java -@@ -732,6 +732,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -739,6 +739,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable { boolean flag = this.tickRateManager().runsNormally(); int tilesThisCycle = 0; @@ -17,7 +17,7 @@ index 4e1b8ce73f07b8ea12f9f2b7883cd994aed73648..0e837193b5b858d0be30974c7454cf76 for (tileTickPosition = 0; tileTickPosition < this.blockEntityTickers.size(); tileTickPosition++) { // Paper - Disable tick limiters this.tileTickPosition = (this.tileTickPosition < this.blockEntityTickers.size()) ? this.tileTickPosition : 0; TickingBlockEntity tickingblockentity = (TickingBlockEntity) this.blockEntityTickers.get(this.tileTickPosition); -@@ -740,12 +742,13 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -747,12 +749,13 @@ public abstract class Level implements LevelAccessor, AutoCloseable { if (tickingblockentity.isRemoved()) { // Spigot start tilesThisCycle--; diff --git a/patches/server/0160-use-CB-BlockState-implementations-for-captured-block.patch b/patches/server/0160-use-CB-BlockState-implementations-for-captured-block.patch index 1b15ed07e5..13230fb7a8 100644 --- a/patches/server/0160-use-CB-BlockState-implementations-for-captured-block.patch +++ b/patches/server/0160-use-CB-BlockState-implementations-for-captured-block.patch @@ -18,7 +18,7 @@ the blockstate that will be valid for restoration, as opposed to dropping information on restoration when the event is cancelled. diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 0e837193b5b858d0be30974c7454cf76920d58e9..a349755740483148dcdc8d490943fdce74aa4434 100644 +index 6e3b4a0ace95331e318ce587cb3e03670a1f5c9d..9d2cf866cf4f0c93dea028e3673d9a51615059af 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -157,7 +157,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { @@ -30,7 +30,7 @@ index 0e837193b5b858d0be30974c7454cf76920d58e9..a349755740483148dcdc8d490943fdce public Map capturedTileEntities = new HashMap<>(); public List captureDrops; public final it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap ticksPerSpawnCategory = new it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap<>(); -@@ -388,7 +388,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -395,7 +395,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { public boolean setBlock(BlockPos pos, BlockState state, int flags, int maxUpdateDepth) { // CraftBukkit start - tree generation if (this.captureTreeGeneration) { @@ -39,7 +39,7 @@ index 0e837193b5b858d0be30974c7454cf76920d58e9..a349755740483148dcdc8d490943fdce if (blockstate == null) { blockstate = CapturedBlockState.getTreeBlockState(this, pos, flags); this.capturedBlockStates.put(pos.immutable(), blockstate); -@@ -408,7 +408,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -415,7 +415,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable { // CraftBukkit start - capture blockstates boolean captured = false; if (this.captureBlockStates && !this.capturedBlockStates.containsKey(pos)) { @@ -49,7 +49,7 @@ index 0e837193b5b858d0be30974c7454cf76920d58e9..a349755740483148dcdc8d490943fdce this.capturedBlockStates.put(pos.immutable(), blockstate); captured = true; } -@@ -614,7 +615,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -621,7 +622,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { public BlockState getBlockState(BlockPos pos) { // CraftBukkit start - tree generation if (this.captureTreeGeneration) { diff --git a/patches/server/0165-PlayerNaturallySpawnCreaturesEvent.patch b/patches/server/0165-PlayerNaturallySpawnCreaturesEvent.patch index 87f605b172..602f2252d2 100644 --- a/patches/server/0165-PlayerNaturallySpawnCreaturesEvent.patch +++ b/patches/server/0165-PlayerNaturallySpawnCreaturesEvent.patch @@ -9,10 +9,10 @@ from triggering monster spawns on a server. Also a highly more effecient way to blanket block spawns in a world diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index 5a653dffecd3877c84ac8197e1ef4b7bbc9820ce..422ef83670f7c4a2e5b0da48dc0906ad96b8ece0 100644 +index 2a52f5fc867f35b9d94b813d5cdd92249c60ee8b..b2d679ba18e5f095d1c3e0249022fc564b1a553e 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java -@@ -700,7 +700,9 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -704,7 +704,9 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider chunkRange = (chunkRange > this.level.spigotConfig.viewDistance) ? (byte) this.level.spigotConfig.viewDistance : chunkRange; chunkRange = (chunkRange > 8) ? 8 : chunkRange; @@ -23,7 +23,7 @@ index 5a653dffecd3877c84ac8197e1ef4b7bbc9820ce..422ef83670f7c4a2e5b0da48dc0906ad // Spigot end if (!this.distanceManager.hasPlayersNearby(chunkcoordintpair.toLong())) { return false; -@@ -715,6 +717,15 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -719,6 +721,15 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider } entityplayer = (ServerPlayer) iterator.next(); diff --git a/patches/server/0218-Option-to-prevent-armor-stands-from-doing-entity-loo.patch b/patches/server/0218-Option-to-prevent-armor-stands-from-doing-entity-loo.patch index dd307e0c92..be8a38cbae 100644 --- a/patches/server/0218-Option-to-prevent-armor-stands-from-doing-entity-loo.patch +++ b/patches/server/0218-Option-to-prevent-armor-stands-from-doing-entity-loo.patch @@ -17,10 +17,10 @@ index d04d0b9cbf91beb57da7e37e72f8e7c98cf6cf4c..e6e3a7ae08f7346ccbce02b9d3623948 Iterator iterator = list.iterator(); diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index a349755740483148dcdc8d490943fdce74aa4434..9cd032be21a5239a268d41fa2d3db0f7ee2680fd 100644 +index 9d2cf866cf4f0c93dea028e3673d9a51615059af..232dfdb70e31485969a972bfad53762edacf8549 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java -@@ -770,6 +770,13 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -777,6 +777,13 @@ public abstract class Level implements LevelAccessor, AutoCloseable { // Paper end } } diff --git a/patches/server/0229-Add-Debug-Entities-option-to-debug-dupe-uuid-issues.patch b/patches/server/0229-Add-Debug-Entities-option-to-debug-dupe-uuid-issues.patch index 2e132faeaa..9710674d3e 100644 --- a/patches/server/0229-Add-Debug-Entities-option-to-debug-dupe-uuid-issues.patch +++ b/patches/server/0229-Add-Debug-Entities-option-to-debug-dupe-uuid-issues.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add Debug Entities option to debug dupe uuid issues diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index 422ef83670f7c4a2e5b0da48dc0906ad96b8ece0..e4936a70d3a686e5cba0ea9d878f6e09fbee713d 100644 +index b2d679ba18e5f095d1c3e0249022fc564b1a553e..304e3c177488773d488e5b82f65a7c16a3750a29 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java -@@ -878,6 +878,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -882,6 +882,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider } else { ChunkMap.TrackedEntity playerchunkmap_entitytracker = new ChunkMap.TrackedEntity(entity, i, j, entitytypes.trackDeltas()); @@ -16,7 +16,7 @@ index 422ef83670f7c4a2e5b0da48dc0906ad96b8ece0..e4936a70d3a686e5cba0ea9d878f6e09 this.entityMap.put(entity.getId(), playerchunkmap_entitytracker); playerchunkmap_entitytracker.updatePlayers(this.level.players()); if (entity instanceof ServerPlayer) { -@@ -920,7 +921,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -924,7 +925,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider if (playerchunkmap_entitytracker1 != null) { playerchunkmap_entitytracker1.broadcastRemoved(); } diff --git a/patches/server/0282-BlockDestroyEvent.patch b/patches/server/0282-BlockDestroyEvent.patch index 5eda372d62..86ddeb2fab 100644 --- a/patches/server/0282-BlockDestroyEvent.patch +++ b/patches/server/0282-BlockDestroyEvent.patch @@ -11,7 +11,7 @@ floating in the air. This can replace many uses of BlockPhysicsEvent diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 2a849e7125e2a6294aab49a436eeab8e4201fd15..a5bdbf62bdeb9fd505699a92701f9ed4724b6c85 100644 +index 097f4e01dc9dc391ea96e2f36f18f6575e344346..91f2bb15e2eea792f205f04422655fc7d80a6da2 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -31,6 +31,7 @@ import net.minecraft.nbt.CompoundTag; @@ -22,7 +22,7 @@ index 2a849e7125e2a6294aab49a436eeab8e4201fd15..a5bdbf62bdeb9fd505699a92701f9ed4 import net.minecraft.server.MinecraftServer; import net.minecraft.server.level.FullChunkStatus; import net.minecraft.server.level.ServerLevel; -@@ -584,9 +585,26 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -591,9 +592,26 @@ public abstract class Level implements LevelAccessor, AutoCloseable { return false; } else { FluidState fluid = this.getFluidState(pos); diff --git a/patches/server/0289-Entity-getEntitySpawnReason.patch b/patches/server/0288-Entity-getEntitySpawnReason.patch similarity index 100% rename from patches/server/0289-Entity-getEntitySpawnReason.patch rename to patches/server/0288-Entity-getEntitySpawnReason.patch diff --git a/patches/server/0290-Fire-event-on-GS4-query.patch b/patches/server/0289-Fire-event-on-GS4-query.patch similarity index 100% rename from patches/server/0290-Fire-event-on-GS4-query.patch rename to patches/server/0289-Fire-event-on-GS4-query.patch diff --git a/patches/server/0291-Add-PlayerPostRespawnEvent.patch b/patches/server/0290-Add-PlayerPostRespawnEvent.patch similarity index 100% rename from patches/server/0291-Add-PlayerPostRespawnEvent.patch rename to patches/server/0290-Add-PlayerPostRespawnEvent.patch diff --git a/patches/server/0292-don-t-go-below-0-for-pickupDelay-breaks-picking-up-i.patch b/patches/server/0291-don-t-go-below-0-for-pickupDelay-breaks-picking-up-i.patch similarity index 100% rename from patches/server/0292-don-t-go-below-0-for-pickupDelay-breaks-picking-up-i.patch rename to patches/server/0291-don-t-go-below-0-for-pickupDelay-breaks-picking-up-i.patch diff --git a/patches/server/0293-Server-Tick-Events.patch b/patches/server/0292-Server-Tick-Events.patch similarity index 100% rename from patches/server/0293-Server-Tick-Events.patch rename to patches/server/0292-Server-Tick-Events.patch diff --git a/patches/server/0294-PlayerDeathEvent-getItemsToKeep.patch b/patches/server/0293-PlayerDeathEvent-getItemsToKeep.patch similarity index 100% rename from patches/server/0294-PlayerDeathEvent-getItemsToKeep.patch rename to patches/server/0293-PlayerDeathEvent-getItemsToKeep.patch diff --git a/patches/server/0295-Optimize-Captured-BlockEntity-Lookup.patch b/patches/server/0294-Optimize-Captured-BlockEntity-Lookup.patch similarity index 91% rename from patches/server/0295-Optimize-Captured-BlockEntity-Lookup.patch rename to patches/server/0294-Optimize-Captured-BlockEntity-Lookup.patch index e3fa18dffb..fa5dc54585 100644 --- a/patches/server/0295-Optimize-Captured-BlockEntity-Lookup.patch +++ b/patches/server/0294-Optimize-Captured-BlockEntity-Lookup.patch @@ -10,10 +10,10 @@ Optimize to check if the captured list even has values in it, and also to just do a get call since the value can never be null. diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index a5bdbf62bdeb9fd505699a92701f9ed4724b6c85..e51f4df5b6fcd28e681a77a1aa3a9eeb0c463e1a 100644 +index 91f2bb15e2eea792f205f04422655fc7d80a6da2..ee237d0e57cbb9b8fe2ae3c84fa7d7a964ad73b9 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java -@@ -913,9 +913,12 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -920,9 +920,12 @@ public abstract class Level implements LevelAccessor, AutoCloseable { @Nullable public BlockEntity getBlockEntity(BlockPos blockposition, boolean validate) { diff --git a/patches/server/0296-Add-Heightmap-API.patch b/patches/server/0295-Add-Heightmap-API.patch similarity index 100% rename from patches/server/0296-Add-Heightmap-API.patch rename to patches/server/0295-Add-Heightmap-API.patch diff --git a/patches/server/0297-Mob-Spawner-API-Enhancements.patch b/patches/server/0296-Mob-Spawner-API-Enhancements.patch similarity index 100% rename from patches/server/0297-Mob-Spawner-API-Enhancements.patch rename to patches/server/0296-Mob-Spawner-API-Enhancements.patch diff --git a/patches/server/0298-Fix-CB-call-to-changed-postToMainThread-method.patch b/patches/server/0297-Fix-CB-call-to-changed-postToMainThread-method.patch similarity index 100% rename from patches/server/0298-Fix-CB-call-to-changed-postToMainThread-method.patch rename to patches/server/0297-Fix-CB-call-to-changed-postToMainThread-method.patch diff --git a/patches/server/0299-Fix-sounds-when-item-frames-are-modified-MC-123450.patch b/patches/server/0298-Fix-sounds-when-item-frames-are-modified-MC-123450.patch similarity index 100% rename from patches/server/0299-Fix-sounds-when-item-frames-are-modified-MC-123450.patch rename to patches/server/0298-Fix-sounds-when-item-frames-are-modified-MC-123450.patch diff --git a/patches/server/0300-Implement-CraftBlockSoundGroup.patch b/patches/server/0299-Implement-CraftBlockSoundGroup.patch similarity index 100% rename from patches/server/0300-Implement-CraftBlockSoundGroup.patch rename to patches/server/0299-Implement-CraftBlockSoundGroup.patch diff --git a/patches/server/0301-Configurable-Keep-Spawn-Loaded-range-per-world.patch b/patches/server/0300-Configurable-Keep-Spawn-Loaded-range-per-world.patch similarity index 100% rename from patches/server/0301-Configurable-Keep-Spawn-Loaded-range-per-world.patch rename to patches/server/0300-Configurable-Keep-Spawn-Loaded-range-per-world.patch diff --git a/patches/server/0302-Expose-the-internal-current-tick.patch b/patches/server/0301-Expose-the-internal-current-tick.patch similarity index 100% rename from patches/server/0302-Expose-the-internal-current-tick.patch rename to patches/server/0301-Expose-the-internal-current-tick.patch diff --git a/patches/server/0303-Show-blockstate-location-if-we-failed-to-read-it.patch b/patches/server/0302-Show-blockstate-location-if-we-failed-to-read-it.patch similarity index 100% rename from patches/server/0303-Show-blockstate-location-if-we-failed-to-read-it.patch rename to patches/server/0302-Show-blockstate-location-if-we-failed-to-read-it.patch diff --git a/patches/server/0304-Only-count-Natural-Spawned-mobs-towards-natural-spaw.patch b/patches/server/0303-Only-count-Natural-Spawned-mobs-towards-natural-spaw.patch similarity index 100% rename from patches/server/0304-Only-count-Natural-Spawned-mobs-towards-natural-spaw.patch rename to patches/server/0303-Only-count-Natural-Spawned-mobs-towards-natural-spaw.patch diff --git a/patches/server/0305-Configurable-projectile-relative-velocity.patch b/patches/server/0304-Configurable-projectile-relative-velocity.patch similarity index 100% rename from patches/server/0305-Configurable-projectile-relative-velocity.patch rename to patches/server/0304-Configurable-projectile-relative-velocity.patch diff --git a/patches/server/0306-offset-item-frame-ticking.patch b/patches/server/0305-offset-item-frame-ticking.patch similarity index 100% rename from patches/server/0306-offset-item-frame-ticking.patch rename to patches/server/0305-offset-item-frame-ticking.patch diff --git a/patches/server/0307-Prevent-consuming-the-wrong-itemstack.patch b/patches/server/0306-Prevent-consuming-the-wrong-itemstack.patch similarity index 100% rename from patches/server/0307-Prevent-consuming-the-wrong-itemstack.patch rename to patches/server/0306-Prevent-consuming-the-wrong-itemstack.patch diff --git a/patches/server/0308-Dont-send-unnecessary-sign-update.patch b/patches/server/0307-Dont-send-unnecessary-sign-update.patch similarity index 100% rename from patches/server/0308-Dont-send-unnecessary-sign-update.patch rename to patches/server/0307-Dont-send-unnecessary-sign-update.patch diff --git a/patches/server/0309-Add-option-to-disable-pillager-patrols.patch b/patches/server/0308-Add-option-to-disable-pillager-patrols.patch similarity index 100% rename from patches/server/0309-Add-option-to-disable-pillager-patrols.patch rename to patches/server/0308-Add-option-to-disable-pillager-patrols.patch diff --git a/patches/server/0310-Prevent-sync-chunk-loads-when-villagers-try-to-find-.patch b/patches/server/0309-Prevent-sync-chunk-loads-when-villagers-try-to-find-.patch similarity index 100% rename from patches/server/0310-Prevent-sync-chunk-loads-when-villagers-try-to-find-.patch rename to patches/server/0309-Prevent-sync-chunk-loads-when-villagers-try-to-find-.patch diff --git a/patches/server/0311-MC-145656-Fix-Follow-Range-Initial-Target.patch b/patches/server/0310-MC-145656-Fix-Follow-Range-Initial-Target.patch similarity index 100% rename from patches/server/0311-MC-145656-Fix-Follow-Range-Initial-Target.patch rename to patches/server/0310-MC-145656-Fix-Follow-Range-Initial-Target.patch diff --git a/patches/server/0312-Duplicate-UUID-Resolve-Option.patch b/patches/server/0311-Duplicate-UUID-Resolve-Option.patch similarity index 95% rename from patches/server/0312-Duplicate-UUID-Resolve-Option.patch rename to patches/server/0311-Duplicate-UUID-Resolve-Option.patch index ca4f4c1e6e..a21df3ae41 100644 --- a/patches/server/0312-Duplicate-UUID-Resolve-Option.patch +++ b/patches/server/0311-Duplicate-UUID-Resolve-Option.patch @@ -33,10 +33,10 @@ But for those who are ok with leaving this inconsistent behavior, you may use WA It is recommended you regenerate the entities, as these were legit entities, and deserve your love. diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index e4936a70d3a686e5cba0ea9d878f6e09fbee713d..2e6ff171ea9ca9159509e1bbd59f076b63c92776 100644 +index 304e3c177488773d488e5b82f65a7c16a3750a29..1ce59bd654cf4cb68d510b0f6a8d1a72d2761bf7 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java -@@ -533,6 +533,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -537,6 +537,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider entity.discard(); needsRemoval = true; } @@ -44,7 +44,7 @@ index e4936a70d3a686e5cba0ea9d878f6e09fbee713d..2e6ff171ea9ca9159509e1bbd59f076b return !needsRemoval; }), position); // Paper - rewrite chunk system // CraftBukkit end -@@ -544,6 +545,45 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -548,6 +549,45 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider throw new UnsupportedOperationException(); // Paper - rewrite chunk system } diff --git a/patches/server/0313-PlayerDeathEvent-shouldDropExperience.patch b/patches/server/0312-PlayerDeathEvent-shouldDropExperience.patch similarity index 100% rename from patches/server/0313-PlayerDeathEvent-shouldDropExperience.patch rename to patches/server/0312-PlayerDeathEvent-shouldDropExperience.patch diff --git a/patches/server/0314-Prevent-bees-loading-chunks-checking-hive-position.patch b/patches/server/0313-Prevent-bees-loading-chunks-checking-hive-position.patch similarity index 100% rename from patches/server/0314-Prevent-bees-loading-chunks-checking-hive-position.patch rename to patches/server/0313-Prevent-bees-loading-chunks-checking-hive-position.patch diff --git a/patches/server/0315-Don-t-load-Chunks-from-Hoppers-and-other-things.patch b/patches/server/0314-Don-t-load-Chunks-from-Hoppers-and-other-things.patch similarity index 100% rename from patches/server/0315-Don-t-load-Chunks-from-Hoppers-and-other-things.patch rename to patches/server/0314-Don-t-load-Chunks-from-Hoppers-and-other-things.patch diff --git a/patches/server/0316-Optimise-EntityGetter-getPlayerByUUID.patch b/patches/server/0315-Optimise-EntityGetter-getPlayerByUUID.patch similarity index 100% rename from patches/server/0316-Optimise-EntityGetter-getPlayerByUUID.patch rename to patches/server/0315-Optimise-EntityGetter-getPlayerByUUID.patch diff --git a/patches/server/0317-Fix-items-not-falling-correctly.patch b/patches/server/0316-Fix-items-not-falling-correctly.patch similarity index 94% rename from patches/server/0317-Fix-items-not-falling-correctly.patch rename to patches/server/0316-Fix-items-not-falling-correctly.patch index cd8d9ee71c..4c7e19ae3c 100644 --- a/patches/server/0317-Fix-items-not-falling-correctly.patch +++ b/patches/server/0316-Fix-items-not-falling-correctly.patch @@ -28,10 +28,10 @@ index 9badb48b6004c5799132ed70ddcc767bdd72510c..7d12bedc4b80b9bcf50f468a9204191b float f1 = 0.98F; diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java -index e4efed4e50188b71ff30238b3517a924b45b24b8..d5374072a97f791964033d107f023b3cc657b343 100644 +index 2cb5bbe371333f566b4d6d3ee8016857986e9af0..f60eb4bf10c32d2d92fa24992ed20525f0f0f781 100644 --- a/src/main/java/org/spigotmc/ActivationRange.java +++ b/src/main/java/org/spigotmc/ActivationRange.java -@@ -257,7 +257,7 @@ public class ActivationRange +@@ -260,7 +260,7 @@ public class ActivationRange isActive = true; } // Add a little performance juice to active entities. Skip 1/4 if not immune. diff --git a/patches/server/0318-Optimize-call-to-getFluid-for-explosions.patch b/patches/server/0317-Optimize-call-to-getFluid-for-explosions.patch similarity index 100% rename from patches/server/0318-Optimize-call-to-getFluid-for-explosions.patch rename to patches/server/0317-Optimize-call-to-getFluid-for-explosions.patch diff --git a/patches/server/0319-Fix-last-firework-in-stack-not-having-effects-when-d.patch b/patches/server/0318-Fix-last-firework-in-stack-not-having-effects-when-d.patch similarity index 100% rename from patches/server/0319-Fix-last-firework-in-stack-not-having-effects-when-d.patch rename to patches/server/0318-Fix-last-firework-in-stack-not-having-effects-when-d.patch diff --git a/patches/server/0320-Guard-against-serializing-mismatching-chunk-coordina.patch b/patches/server/0319-Guard-against-serializing-mismatching-chunk-coordina.patch similarity index 100% rename from patches/server/0320-Guard-against-serializing-mismatching-chunk-coordina.patch rename to patches/server/0319-Guard-against-serializing-mismatching-chunk-coordina.patch diff --git a/patches/server/0321-Alternative-item-despawn-rate.patch b/patches/server/0320-Alternative-item-despawn-rate.patch similarity index 100% rename from patches/server/0321-Alternative-item-despawn-rate.patch rename to patches/server/0320-Alternative-item-despawn-rate.patch diff --git a/patches/server/0322-Tracking-Range-Improvements.patch b/patches/server/0321-Tracking-Range-Improvements.patch similarity index 95% rename from patches/server/0322-Tracking-Range-Improvements.patch rename to patches/server/0321-Tracking-Range-Improvements.patch index 4975d31857..e0feadd2bf 100644 --- a/patches/server/0322-Tracking-Range-Improvements.patch +++ b/patches/server/0321-Tracking-Range-Improvements.patch @@ -8,10 +8,10 @@ Sets tracking range of watermobs to animals instead of misc and simplifies code Also ignores Enderdragon, defaulting it to Mojang's setting diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index 2e6ff171ea9ca9159509e1bbd59f076b63c92776..4b11a14bd6ba6d90c93db1e5733120bb319c9a48 100644 +index 1ce59bd654cf4cb68d510b0f6a8d1a72d2761bf7..c96b20cdd87596b6ff73478d262acdf22361858b 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java -@@ -1199,6 +1199,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1203,6 +1203,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider while (iterator.hasNext()) { Entity entity = (Entity) iterator.next(); int j = entity.getType().clientTrackingRange() * 16; diff --git a/patches/server/0323-Fix-items-vanishing-through-end-portal.patch b/patches/server/0322-Fix-items-vanishing-through-end-portal.patch similarity index 100% rename from patches/server/0323-Fix-items-vanishing-through-end-portal.patch rename to patches/server/0322-Fix-items-vanishing-through-end-portal.patch diff --git a/patches/server/0324-Bees-get-gravity-in-void.-Fixes-MC-167279.patch b/patches/server/0323-Bees-get-gravity-in-void.-Fixes-MC-167279.patch similarity index 100% rename from patches/server/0324-Bees-get-gravity-in-void.-Fixes-MC-167279.patch rename to patches/server/0323-Bees-get-gravity-in-void.-Fixes-MC-167279.patch diff --git a/patches/server/0325-Improve-Block-breakNaturally-API.patch b/patches/server/0324-Improve-Block-breakNaturally-API.patch similarity index 100% rename from patches/server/0325-Improve-Block-breakNaturally-API.patch rename to patches/server/0324-Improve-Block-breakNaturally-API.patch diff --git a/patches/server/0326-Optimise-getChunkAt-calls-for-loaded-chunks.patch b/patches/server/0325-Optimise-getChunkAt-calls-for-loaded-chunks.patch similarity index 100% rename from patches/server/0326-Optimise-getChunkAt-calls-for-loaded-chunks.patch rename to patches/server/0325-Optimise-getChunkAt-calls-for-loaded-chunks.patch diff --git a/patches/server/0327-Add-debug-for-sync-chunk-loads.patch b/patches/server/0326-Add-debug-for-sync-chunk-loads.patch similarity index 100% rename from patches/server/0327-Add-debug-for-sync-chunk-loads.patch rename to patches/server/0326-Add-debug-for-sync-chunk-loads.patch diff --git a/patches/server/0328-Improve-java-version-check.patch b/patches/server/0327-Improve-java-version-check.patch similarity index 100% rename from patches/server/0328-Improve-java-version-check.patch rename to patches/server/0327-Improve-java-version-check.patch diff --git a/patches/server/0329-Add-ThrownEggHatchEvent.patch b/patches/server/0328-Add-ThrownEggHatchEvent.patch similarity index 100% rename from patches/server/0329-Add-ThrownEggHatchEvent.patch rename to patches/server/0328-Add-ThrownEggHatchEvent.patch diff --git a/patches/server/0330-Entity-Jump-API.patch b/patches/server/0329-Entity-Jump-API.patch similarity index 98% rename from patches/server/0330-Entity-Jump-API.patch rename to patches/server/0329-Entity-Jump-API.patch index 6cb6c184cf..7d6f7e1c12 100644 --- a/patches/server/0330-Entity-Jump-API.patch +++ b/patches/server/0329-Entity-Jump-API.patch @@ -3,6 +3,8 @@ From: BillyGalbreath Date: Sat, 8 Feb 2020 23:26:11 -0600 Subject: [PATCH] Entity Jump API +== AT == +public net.minecraft.world.entity.LivingEntity jumping diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java index e06aa636bf4e18ca2810e0626f427839cd2bce88..bc51c6d8b39907d89a4f65cd7a8266df1fceab8c 100644 diff --git a/patches/server/0331-Add-option-to-nerf-pigmen-from-nether-portals.patch b/patches/server/0330-Add-option-to-nerf-pigmen-from-nether-portals.patch similarity index 100% rename from patches/server/0331-Add-option-to-nerf-pigmen-from-nether-portals.patch rename to patches/server/0330-Add-option-to-nerf-pigmen-from-nether-portals.patch diff --git a/patches/server/0332-Make-the-GUI-graph-fancier.patch b/patches/server/0331-Make-the-GUI-graph-fancier.patch similarity index 100% rename from patches/server/0332-Make-the-GUI-graph-fancier.patch rename to patches/server/0331-Make-the-GUI-graph-fancier.patch diff --git a/patches/server/0333-add-hand-to-BlockMultiPlaceEvent.patch b/patches/server/0332-add-hand-to-BlockMultiPlaceEvent.patch similarity index 100% rename from patches/server/0333-add-hand-to-BlockMultiPlaceEvent.patch rename to patches/server/0332-add-hand-to-BlockMultiPlaceEvent.patch diff --git a/patches/server/0334-Validate-tripwire-hook-placement-before-update.patch b/patches/server/0333-Validate-tripwire-hook-placement-before-update.patch similarity index 100% rename from patches/server/0334-Validate-tripwire-hook-placement-before-update.patch rename to patches/server/0333-Validate-tripwire-hook-placement-before-update.patch diff --git a/patches/server/0335-Add-option-to-allow-iron-golems-to-spawn-in-air.patch b/patches/server/0334-Add-option-to-allow-iron-golems-to-spawn-in-air.patch similarity index 100% rename from patches/server/0335-Add-option-to-allow-iron-golems-to-spawn-in-air.patch rename to patches/server/0334-Add-option-to-allow-iron-golems-to-spawn-in-air.patch diff --git a/patches/server/0336-Configurable-chance-of-villager-zombie-infection.patch b/patches/server/0335-Configurable-chance-of-villager-zombie-infection.patch similarity index 100% rename from patches/server/0336-Configurable-chance-of-villager-zombie-infection.patch rename to patches/server/0335-Configurable-chance-of-villager-zombie-infection.patch diff --git a/patches/server/0337-Optimise-Chunk-getFluid.patch b/patches/server/0336-Optimise-Chunk-getFluid.patch similarity index 89% rename from patches/server/0337-Optimise-Chunk-getFluid.patch rename to patches/server/0336-Optimise-Chunk-getFluid.patch index a6d2c62b44..68b01c18b8 100644 --- a/patches/server/0337-Optimise-Chunk-getFluid.patch +++ b/patches/server/0336-Optimise-Chunk-getFluid.patch @@ -8,10 +8,10 @@ faster on its own, however removing the try catch makes it easier to inline due to code size 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 31d2de67d3facf00491814f775ef1468b33eb51b..749a056c17efb0788ac671d536658fc84b105ff2 100644 +index a086e14729fbc3a7ad40807828a23594d41dabfb..673da3c93291c70ed83b1a06a068e4854fc4d32b 100644 --- a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java +++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java -@@ -360,18 +360,20 @@ public class LevelChunk extends ChunkAccess { +@@ -377,18 +377,20 @@ public class LevelChunk extends ChunkAccess { } public FluidState getFluidState(int x, int y, int z) { @@ -38,7 +38,7 @@ index 31d2de67d3facf00491814f775ef1468b33eb51b..749a056c17efb0788ac671d536658fc8 } catch (Throwable throwable) { CrashReport crashreport = CrashReport.forThrowable(throwable, "Getting fluid state"); CrashReportCategory crashreportsystemdetails = crashreport.addCategory("Block being got"); -@@ -381,6 +383,7 @@ public class LevelChunk extends ChunkAccess { +@@ -398,6 +400,7 @@ public class LevelChunk extends ChunkAccess { }); throw new ReportedException(crashreport); } @@ -47,7 +47,7 @@ index 31d2de67d3facf00491814f775ef1468b33eb51b..749a056c17efb0788ac671d536658fc8 // CraftBukkit start diff --git a/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java b/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java -index d59392c322936ce89b759ac9787c8f4f0b228af6..ea2fb64ff15af1cbb7b3f59386fb7a40f54e9b4f 100644 +index 2d6daf76a56574c9727b404feb4f86347f04cbae..b606e33f8b64eaba28c008cc353d88aa45549e31 100644 --- a/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java +++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java @@ -43,7 +43,7 @@ public class LevelChunkSection { diff --git a/patches/server/0338-Set-spigots-verbose-world-setting-to-false-by-def.patch b/patches/server/0337-Set-spigots-verbose-world-setting-to-false-by-def.patch similarity index 100% rename from patches/server/0338-Set-spigots-verbose-world-setting-to-false-by-def.patch rename to patches/server/0337-Set-spigots-verbose-world-setting-to-false-by-def.patch diff --git a/patches/server/0339-Add-tick-times-API-and-mspt-command.patch b/patches/server/0338-Add-tick-times-API-and-mspt-command.patch similarity index 100% rename from patches/server/0339-Add-tick-times-API-and-mspt-command.patch rename to patches/server/0338-Add-tick-times-API-and-mspt-command.patch diff --git a/patches/server/0340-Expose-MinecraftServer-isRunning.patch b/patches/server/0339-Expose-MinecraftServer-isRunning.patch similarity index 100% rename from patches/server/0340-Expose-MinecraftServer-isRunning.patch rename to patches/server/0339-Expose-MinecraftServer-isRunning.patch diff --git a/patches/server/0341-Add-Raw-Byte-ItemStack-Serialization.patch b/patches/server/0340-Add-Raw-Byte-ItemStack-Serialization.patch similarity index 100% rename from patches/server/0341-Add-Raw-Byte-ItemStack-Serialization.patch rename to patches/server/0340-Add-Raw-Byte-ItemStack-Serialization.patch diff --git a/patches/server/0342-Pillager-patrol-spawn-settings-and-per-player-option.patch b/patches/server/0341-Pillager-patrol-spawn-settings-and-per-player-option.patch similarity index 100% rename from patches/server/0342-Pillager-patrol-spawn-settings-and-per-player-option.patch rename to patches/server/0341-Pillager-patrol-spawn-settings-and-per-player-option.patch diff --git a/patches/server/0343-Remote-Connections-shouldn-t-hold-up-shutdown.patch b/patches/server/0342-Remote-Connections-shouldn-t-hold-up-shutdown.patch similarity index 100% rename from patches/server/0343-Remote-Connections-shouldn-t-hold-up-shutdown.patch rename to patches/server/0342-Remote-Connections-shouldn-t-hold-up-shutdown.patch diff --git a/patches/server/0344-Do-not-allow-bees-to-load-chunks-for-beehives.patch b/patches/server/0343-Do-not-allow-bees-to-load-chunks-for-beehives.patch similarity index 100% rename from patches/server/0344-Do-not-allow-bees-to-load-chunks-for-beehives.patch rename to patches/server/0343-Do-not-allow-bees-to-load-chunks-for-beehives.patch diff --git a/patches/server/0345-Prevent-Double-PlayerChunkMap-adds-crashing-server.patch b/patches/server/0344-Prevent-Double-PlayerChunkMap-adds-crashing-server.patch similarity index 95% rename from patches/server/0345-Prevent-Double-PlayerChunkMap-adds-crashing-server.patch rename to patches/server/0344-Prevent-Double-PlayerChunkMap-adds-crashing-server.patch index 3cb95d3899..92b79f6f56 100644 --- a/patches/server/0345-Prevent-Double-PlayerChunkMap-adds-crashing-server.patch +++ b/patches/server/0344-Prevent-Double-PlayerChunkMap-adds-crashing-server.patch @@ -7,10 +7,10 @@ Suspected case would be around the technique used in .stopRiding Stack will identify any causer of this and warn instead of crashing. diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index 4b11a14bd6ba6d90c93db1e5733120bb319c9a48..ad98c74dc6d032bedd01fffd9cdb6c8f8a267c7e 100644 +index c96b20cdd87596b6ff73478d262acdf22361858b..397fcc5f3835418bb31998b0b0cdce9427a017a2 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java -@@ -905,6 +905,13 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -909,6 +909,13 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider public void addEntity(Entity entity) { org.spigotmc.AsyncCatcher.catchOp("entity track"); // Spigot diff --git a/patches/server/0346-Don-t-tick-dead-players.patch b/patches/server/0345-Don-t-tick-dead-players.patch similarity index 100% rename from patches/server/0346-Don-t-tick-dead-players.patch rename to patches/server/0345-Don-t-tick-dead-players.patch diff --git a/patches/server/0347-Dead-Player-s-shouldn-t-be-able-to-move.patch b/patches/server/0346-Dead-Player-s-shouldn-t-be-able-to-move.patch similarity index 100% rename from patches/server/0347-Dead-Player-s-shouldn-t-be-able-to-move.patch rename to patches/server/0346-Dead-Player-s-shouldn-t-be-able-to-move.patch diff --git a/patches/server/0348-Don-t-move-existing-players-to-world-spawn.patch b/patches/server/0347-Don-t-move-existing-players-to-world-spawn.patch similarity index 100% rename from patches/server/0348-Don-t-move-existing-players-to-world-spawn.patch rename to patches/server/0347-Don-t-move-existing-players-to-world-spawn.patch diff --git a/patches/server/0349-Optimize-Pathfinding.patch b/patches/server/0348-Optimize-Pathfinding.patch similarity index 100% rename from patches/server/0349-Optimize-Pathfinding.patch rename to patches/server/0348-Optimize-Pathfinding.patch diff --git a/patches/server/0350-Reduce-Either-Optional-allocation.patch b/patches/server/0349-Reduce-Either-Optional-allocation.patch similarity index 100% rename from patches/server/0350-Reduce-Either-Optional-allocation.patch rename to patches/server/0349-Reduce-Either-Optional-allocation.patch diff --git a/patches/server/0351-Reduce-memory-footprint-of-CompoundTag.patch b/patches/server/0350-Reduce-memory-footprint-of-CompoundTag.patch similarity index 100% rename from patches/server/0351-Reduce-memory-footprint-of-CompoundTag.patch rename to patches/server/0350-Reduce-memory-footprint-of-CompoundTag.patch diff --git a/patches/server/0352-Prevent-opening-inventories-when-frozen.patch b/patches/server/0351-Prevent-opening-inventories-when-frozen.patch similarity index 100% rename from patches/server/0352-Prevent-opening-inventories-when-frozen.patch rename to patches/server/0351-Prevent-opening-inventories-when-frozen.patch diff --git a/patches/server/0353-Don-t-run-entity-collision-code-if-not-needed.patch b/patches/server/0352-Don-t-run-entity-collision-code-if-not-needed.patch similarity index 100% rename from patches/server/0353-Don-t-run-entity-collision-code-if-not-needed.patch rename to patches/server/0352-Don-t-run-entity-collision-code-if-not-needed.patch diff --git a/patches/server/0354-Implement-Player-Client-Options-API.patch b/patches/server/0353-Implement-Player-Client-Options-API.patch similarity index 100% rename from patches/server/0354-Implement-Player-Client-Options-API.patch rename to patches/server/0353-Implement-Player-Client-Options-API.patch diff --git a/patches/server/0355-Don-t-crash-if-player-is-attempted-to-be-removed-fro.patch b/patches/server/0354-Don-t-crash-if-player-is-attempted-to-be-removed-fro.patch similarity index 100% rename from patches/server/0355-Don-t-crash-if-player-is-attempted-to-be-removed-fro.patch rename to patches/server/0354-Don-t-crash-if-player-is-attempted-to-be-removed-fro.patch diff --git a/patches/server/0356-Fire-PlayerJoinEvent-when-Player-is-actually-ready.patch b/patches/server/0355-Fire-PlayerJoinEvent-when-Player-is-actually-ready.patch similarity index 97% rename from patches/server/0356-Fire-PlayerJoinEvent-when-Player-is-actually-ready.patch rename to patches/server/0355-Fire-PlayerJoinEvent-when-Player-is-actually-ready.patch index 01b9259fe2..74a7ea85ee 100644 --- a/patches/server/0356-Fire-PlayerJoinEvent-when-Player-is-actually-ready.patch +++ b/patches/server/0355-Fire-PlayerJoinEvent-when-Player-is-actually-ready.patch @@ -31,10 +31,10 @@ delays anymore. public net.minecraft.server.level.ChunkMap addEntity(Lnet/minecraft/world/entity/Entity;)V diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index ad98c74dc6d032bedd01fffd9cdb6c8f8a267c7e..1ad4e5a0a4d236012c1dfb0dbffdacd0f134b72c 100644 +index 397fcc5f3835418bb31998b0b0cdce9427a017a2..69d140fbcccc9054f15716e35a7b854b387fe21d 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java -@@ -912,6 +912,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -916,6 +916,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider return; } // Paper end - ignore and warn about illegal addEntity calls instead of crashing server diff --git a/patches/server/0357-Move-player-to-spawn-point-if-spawn-in-unloaded-worl.patch b/patches/server/0356-Move-player-to-spawn-point-if-spawn-in-unloaded-worl.patch similarity index 100% rename from patches/server/0357-Move-player-to-spawn-point-if-spawn-in-unloaded-worl.patch rename to patches/server/0356-Move-player-to-spawn-point-if-spawn-in-unloaded-worl.patch diff --git a/patches/server/0358-Add-PlayerAttackEntityCooldownResetEvent.patch b/patches/server/0357-Add-PlayerAttackEntityCooldownResetEvent.patch similarity index 100% rename from patches/server/0358-Add-PlayerAttackEntityCooldownResetEvent.patch rename to patches/server/0357-Add-PlayerAttackEntityCooldownResetEvent.patch diff --git a/patches/server/0359-Don-t-fire-BlockFade-on-worldgen-threads.patch b/patches/server/0358-Don-t-fire-BlockFade-on-worldgen-threads.patch similarity index 100% rename from patches/server/0359-Don-t-fire-BlockFade-on-worldgen-threads.patch rename to patches/server/0358-Don-t-fire-BlockFade-on-worldgen-threads.patch diff --git a/patches/server/0360-Add-phantom-creative-and-insomniac-controls.patch b/patches/server/0359-Add-phantom-creative-and-insomniac-controls.patch similarity index 100% rename from patches/server/0360-Add-phantom-creative-and-insomniac-controls.patch rename to patches/server/0359-Add-phantom-creative-and-insomniac-controls.patch diff --git a/patches/server/0361-Fix-item-duplication-and-teleport-issues.patch b/patches/server/0360-Fix-item-duplication-and-teleport-issues.patch similarity index 100% rename from patches/server/0361-Fix-item-duplication-and-teleport-issues.patch rename to patches/server/0360-Fix-item-duplication-and-teleport-issues.patch diff --git a/patches/server/0362-Villager-Restocks-API.patch b/patches/server/0361-Villager-Restocks-API.patch similarity index 100% rename from patches/server/0362-Villager-Restocks-API.patch rename to patches/server/0361-Villager-Restocks-API.patch diff --git a/patches/server/0363-Validate-PickItem-Packet-and-kick-for-invalid.patch b/patches/server/0362-Validate-PickItem-Packet-and-kick-for-invalid.patch similarity index 100% rename from patches/server/0363-Validate-PickItem-Packet-and-kick-for-invalid.patch rename to patches/server/0362-Validate-PickItem-Packet-and-kick-for-invalid.patch diff --git a/patches/server/0364-Expose-game-version.patch b/patches/server/0363-Expose-game-version.patch similarity index 100% rename from patches/server/0364-Expose-game-version.patch rename to patches/server/0363-Expose-game-version.patch diff --git a/patches/server/0365-Set-cap-on-JDK-per-thread-native-byte-buffer-cache.patch b/patches/server/0364-Set-cap-on-JDK-per-thread-native-byte-buffer-cache.patch similarity index 100% rename from patches/server/0365-Set-cap-on-JDK-per-thread-native-byte-buffer-cache.patch rename to patches/server/0364-Set-cap-on-JDK-per-thread-native-byte-buffer-cache.patch diff --git a/patches/server/0366-misc-debugging-dumps.patch b/patches/server/0365-misc-debugging-dumps.patch similarity index 100% rename from patches/server/0366-misc-debugging-dumps.patch rename to patches/server/0365-misc-debugging-dumps.patch diff --git a/patches/server/0367-Prevent-teleporting-dead-entities.patch b/patches/server/0366-Prevent-teleporting-dead-entities.patch similarity index 100% rename from patches/server/0367-Prevent-teleporting-dead-entities.patch rename to patches/server/0366-Prevent-teleporting-dead-entities.patch diff --git a/patches/server/0368-Deobfuscate-stacktraces-in-log-messages-crash-report.patch b/patches/server/0367-Deobfuscate-stacktraces-in-log-messages-crash-report.patch similarity index 99% rename from patches/server/0368-Deobfuscate-stacktraces-in-log-messages-crash-report.patch rename to patches/server/0367-Deobfuscate-stacktraces-in-log-messages-crash-report.patch index 608ad14457..017722d4b0 100644 --- a/patches/server/0368-Deobfuscate-stacktraces-in-log-messages-crash-report.patch +++ b/patches/server/0367-Deobfuscate-stacktraces-in-log-messages-crash-report.patch @@ -609,10 +609,10 @@ index e697b8f7b165d2394d8155cbee7453e23ac2bee4..6706ac701963fed4798247e6e835b06f } } 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 749a056c17efb0788ac671d536658fc84b105ff2..90d6376f0441505a4c5f32d620827dfe233a5783 100644 +index 673da3c93291c70ed83b1a06a068e4854fc4d32b..57d7392871634348ff906c03dc0ca601cd3040bd 100644 --- a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java +++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java -@@ -582,7 +582,7 @@ public class LevelChunk extends ChunkAccess { +@@ -599,7 +599,7 @@ public class LevelChunk extends ChunkAccess { + " (" + getBlockState(blockposition) + ") where there was no entity tile!\n" + "Chunk coordinates: " + (this.chunkPos.x * 16) + "," + (this.chunkPos.z * 16) + "\nWorld: " + level.getLevel().dimension().location()); diff --git a/patches/server/0369-Implement-Mob-Goal-API.patch b/patches/server/0368-Implement-Mob-Goal-API.patch similarity index 96% rename from patches/server/0369-Implement-Mob-Goal-API.patch rename to patches/server/0368-Implement-Mob-Goal-API.patch index c16e1d23bd..07e3d8fb98 100644 --- a/patches/server/0369-Implement-Mob-Goal-API.patch +++ b/patches/server/0368-Implement-Mob-Goal-API.patch @@ -18,7 +18,7 @@ index 450f7c03bdcc109938ba9b66328bdbb2c96c03c9..c6241f858209ed662d8720217d143340 testImplementation("org.mockito:mockito-core:5.5.0") diff --git a/src/main/java/com/destroystokyo/paper/entity/ai/MobGoalHelper.java b/src/main/java/com/destroystokyo/paper/entity/ai/MobGoalHelper.java new file mode 100644 -index 0000000000000000000000000000000000000000..5fb56067221434aa80e626437ed10f65bf416e4f +index 0000000000000000000000000000000000000000..8117578ced94aa6bf01871f6526a388385c4adf2 --- /dev/null +++ b/src/main/java/com/destroystokyo/paper/entity/ai/MobGoalHelper.java @@ -0,0 +1,376 @@ @@ -311,10 +311,10 @@ index 0000000000000000000000000000000000000000..5fb56067221434aa80e626437ed10f65 + return deobfuscationMap.getOrDefault(name, name); + } + -+ public static EnumSet vanillaToPaper(OptimizedSmallEnumSet types) { ++ public static EnumSet vanillaToPaper(Goal goal) { + EnumSet goals = EnumSet.noneOf(GoalType.class); + for (GoalType type : GoalType.values()) { -+ if (types.hasElement(paperToVanilla(type))) { ++ if (goal.getFlags().contains(paperToVanilla(type))) { + goals.add(type); + } + } @@ -400,7 +400,7 @@ index 0000000000000000000000000000000000000000..5fb56067221434aa80e626437ed10f65 +} diff --git a/src/main/java/com/destroystokyo/paper/entity/ai/PaperCustomGoal.java b/src/main/java/com/destroystokyo/paper/entity/ai/PaperCustomGoal.java new file mode 100644 -index 0000000000000000000000000000000000000000..26c745dd9ccdfdd5c5039f2acc5201b9b91fb274 +index 0000000000000000000000000000000000000000..b5f75ad725f5933db8f0688b2c0b27d620919241 --- /dev/null +++ b/src/main/java/com/destroystokyo/paper/entity/ai/PaperCustomGoal.java @@ -0,0 +1,53 @@ @@ -420,7 +420,7 @@ index 0000000000000000000000000000000000000000..26c745dd9ccdfdd5c5039f2acc5201b9 + + this.setFlags(MobGoalHelper.paperToVanilla(handle.getTypes())); + if (this.getFlags().size() == 0) { -+ this.getFlags().addUnchecked(Flag.UNKNOWN_BEHAVIOR); ++ this.getFlags().add(Flag.UNKNOWN_BEHAVIOR); + } + } + @@ -459,7 +459,7 @@ index 0000000000000000000000000000000000000000..26c745dd9ccdfdd5c5039f2acc5201b9 +} diff --git a/src/main/java/com/destroystokyo/paper/entity/ai/PaperMobGoals.java b/src/main/java/com/destroystokyo/paper/entity/ai/PaperMobGoals.java new file mode 100644 -index 0000000000000000000000000000000000000000..5e7b4a8698a00f72d6e817cc7c6716e7605a3484 +index 0000000000000000000000000000000000000000..953b0f88cbf0e73c390f8086344f772ac03192bb --- /dev/null +++ b/src/main/java/com/destroystokyo/paper/entity/ai/PaperMobGoals.java @@ -0,0 +1,213 @@ @@ -574,7 +574,7 @@ index 0000000000000000000000000000000000000000..5e7b4a8698a00f72d6e817cc7c6716e7 + CraftMob craftMob = (CraftMob) mob; + Set> goals = new HashSet<>(); + for (WrappedGoal item : getHandle(craftMob, type).getAvailableGoals()) { -+ if (!item.getGoal().getFlags().hasElement(MobGoalHelper.paperToVanilla(type))) { ++ if (!item.getGoal().getFlags().contains(MobGoalHelper.paperToVanilla(type))) { + continue; + } + @@ -597,7 +597,7 @@ index 0000000000000000000000000000000000000000..5e7b4a8698a00f72d6e817cc7c6716e7 + continue; + } + for (WrappedGoal item : getHandle(craftMob, internalType).getAvailableGoals()) { -+ if (item.getGoal().getFlags().hasElement(MobGoalHelper.paperToVanilla(type))) { ++ if (item.getGoal().getFlags().contains(MobGoalHelper.paperToVanilla(type))) { + continue; + } + @@ -626,7 +626,7 @@ index 0000000000000000000000000000000000000000..5e7b4a8698a00f72d6e817cc7c6716e7 + CraftMob craftMob = (CraftMob) mob; + Set> goals = new HashSet<>(); + getHandle(craftMob, type).getRunningGoals() -+ .filter(item -> item.getGoal().getFlags().hasElement(MobGoalHelper.paperToVanilla(type))) ++ .filter(item -> item.getGoal().getFlags().contains(MobGoalHelper.paperToVanilla(type))) + .forEach(item -> { + if (item.getGoal() instanceof PaperCustomGoal) { + //noinspection unchecked @@ -647,7 +647,7 @@ index 0000000000000000000000000000000000000000..5e7b4a8698a00f72d6e817cc7c6716e7 + continue; + } + getHandle(craftMob, internalType).getRunningGoals() -+ .filter(item -> !item.getGoal().getFlags().hasElement(MobGoalHelper.paperToVanilla(type))) ++ .filter(item -> !item.getGoal().getFlags().contains(MobGoalHelper.paperToVanilla(type))) + .forEach(item -> { + if (item.getGoal() instanceof PaperCustomGoal) { + //noinspection unchecked @@ -678,7 +678,7 @@ index 0000000000000000000000000000000000000000..5e7b4a8698a00f72d6e817cc7c6716e7 +} diff --git a/src/main/java/com/destroystokyo/paper/entity/ai/PaperVanillaGoal.java b/src/main/java/com/destroystokyo/paper/entity/ai/PaperVanillaGoal.java new file mode 100644 -index 0000000000000000000000000000000000000000..0d30e0b21b9024df939a9d070bd4a99b217e7c12 +index 0000000000000000000000000000000000000000..b5c594a5499556ad452d9939c75e150af8252e90 --- /dev/null +++ b/src/main/java/com/destroystokyo/paper/entity/ai/PaperVanillaGoal.java @@ -0,0 +1,61 @@ @@ -701,7 +701,7 @@ index 0000000000000000000000000000000000000000..0d30e0b21b9024df939a9d070bd4a99b + public PaperVanillaGoal(Goal handle) { + this.handle = handle; + this.key = MobGoalHelper.getKey(handle.getClass()); -+ this.types = MobGoalHelper.vanillaToPaper(handle.getFlags()); ++ this.types = MobGoalHelper.vanillaToPaper(handle); + } + + public Goal getHandle() { diff --git a/patches/server/0370-Add-villager-reputation-API.patch b/patches/server/0369-Add-villager-reputation-API.patch similarity index 100% rename from patches/server/0370-Add-villager-reputation-API.patch rename to patches/server/0369-Add-villager-reputation-API.patch diff --git a/patches/server/0371-Option-for-maximum-exp-value-when-merging-orbs.patch b/patches/server/0370-Option-for-maximum-exp-value-when-merging-orbs.patch similarity index 100% rename from patches/server/0371-Option-for-maximum-exp-value-when-merging-orbs.patch rename to patches/server/0370-Option-for-maximum-exp-value-when-merging-orbs.patch diff --git a/patches/server/0372-ExperienceOrbMergeEvent.patch b/patches/server/0371-ExperienceOrbMergeEvent.patch similarity index 100% rename from patches/server/0372-ExperienceOrbMergeEvent.patch rename to patches/server/0371-ExperienceOrbMergeEvent.patch diff --git a/patches/server/0373-Fix-PotionEffect-ignores-icon-flag.patch b/patches/server/0372-Fix-PotionEffect-ignores-icon-flag.patch similarity index 100% rename from patches/server/0373-Fix-PotionEffect-ignores-icon-flag.patch rename to patches/server/0372-Fix-PotionEffect-ignores-icon-flag.patch diff --git a/patches/server/0374-Potential-bed-API.patch b/patches/server/0373-Potential-bed-API.patch similarity index 100% rename from patches/server/0374-Potential-bed-API.patch rename to patches/server/0373-Potential-bed-API.patch diff --git a/patches/server/0375-Wait-for-Async-Tasks-during-shutdown.patch b/patches/server/0374-Wait-for-Async-Tasks-during-shutdown.patch similarity index 100% rename from patches/server/0375-Wait-for-Async-Tasks-during-shutdown.patch rename to patches/server/0374-Wait-for-Async-Tasks-during-shutdown.patch diff --git a/patches/server/0376-Ensure-EntityRaider-respects-game-and-entity-rules-f.patch b/patches/server/0375-Ensure-EntityRaider-respects-game-and-entity-rules-f.patch similarity index 100% rename from patches/server/0376-Ensure-EntityRaider-respects-game-and-entity-rules-f.patch rename to patches/server/0375-Ensure-EntityRaider-respects-game-and-entity-rules-f.patch diff --git a/patches/server/0377-Ensure-safe-gateway-teleport.patch b/patches/server/0376-Ensure-safe-gateway-teleport.patch similarity index 100% rename from patches/server/0377-Ensure-safe-gateway-teleport.patch rename to patches/server/0376-Ensure-safe-gateway-teleport.patch diff --git a/patches/server/0378-Add-option-for-console-having-all-permissions.patch b/patches/server/0377-Add-option-for-console-having-all-permissions.patch similarity index 100% rename from patches/server/0378-Add-option-for-console-having-all-permissions.patch rename to patches/server/0377-Add-option-for-console-having-all-permissions.patch diff --git a/patches/server/0379-Fix-villager-trading-demand-MC-163962.patch b/patches/server/0378-Fix-villager-trading-demand-MC-163962.patch similarity index 100% rename from patches/server/0379-Fix-villager-trading-demand-MC-163962.patch rename to patches/server/0378-Fix-villager-trading-demand-MC-163962.patch diff --git a/patches/server/0380-Maps-shouldn-t-load-chunks.patch b/patches/server/0379-Maps-shouldn-t-load-chunks.patch similarity index 100% rename from patches/server/0380-Maps-shouldn-t-load-chunks.patch rename to patches/server/0379-Maps-shouldn-t-load-chunks.patch diff --git a/patches/server/0381-Use-seed-based-lookup-for-Treasure-Maps-Fixes-lag-fr.patch b/patches/server/0380-Use-seed-based-lookup-for-Treasure-Maps-Fixes-lag-fr.patch similarity index 100% rename from patches/server/0381-Use-seed-based-lookup-for-Treasure-Maps-Fixes-lag-fr.patch rename to patches/server/0380-Use-seed-based-lookup-for-Treasure-Maps-Fixes-lag-fr.patch diff --git a/patches/server/0382-Fix-CraftScheduler-runTaskTimerAsynchronously-Plugin.patch b/patches/server/0381-Fix-CraftScheduler-runTaskTimerAsynchronously-Plugin.patch similarity index 100% rename from patches/server/0382-Fix-CraftScheduler-runTaskTimerAsynchronously-Plugin.patch rename to patches/server/0381-Fix-CraftScheduler-runTaskTimerAsynchronously-Plugin.patch diff --git a/patches/server/0383-Fix-piston-physics-inconsistency-MC-188840.patch b/patches/server/0382-Fix-piston-physics-inconsistency-MC-188840.patch similarity index 100% rename from patches/server/0383-Fix-piston-physics-inconsistency-MC-188840.patch rename to patches/server/0382-Fix-piston-physics-inconsistency-MC-188840.patch diff --git a/patches/server/0384-Fix-sand-duping.patch b/patches/server/0383-Fix-sand-duping.patch similarity index 100% rename from patches/server/0384-Fix-sand-duping.patch rename to patches/server/0383-Fix-sand-duping.patch diff --git a/patches/server/0385-Fix-missing-chunks-due-to-integer-overflow.patch b/patches/server/0384-Fix-missing-chunks-due-to-integer-overflow.patch similarity index 100% rename from patches/server/0385-Fix-missing-chunks-due-to-integer-overflow.patch rename to patches/server/0384-Fix-missing-chunks-due-to-integer-overflow.patch diff --git a/patches/server/0386-Prevent-position-desync-causing-tp-exploit.patch b/patches/server/0385-Prevent-position-desync-causing-tp-exploit.patch similarity index 100% rename from patches/server/0386-Prevent-position-desync-causing-tp-exploit.patch rename to patches/server/0385-Prevent-position-desync-causing-tp-exploit.patch diff --git a/patches/server/0387-Inventory-getHolder-method-without-block-snapshot.patch b/patches/server/0386-Inventory-getHolder-method-without-block-snapshot.patch similarity index 100% rename from patches/server/0387-Inventory-getHolder-method-without-block-snapshot.patch rename to patches/server/0386-Inventory-getHolder-method-without-block-snapshot.patch diff --git a/patches/server/0388-Improve-Arrow-API.patch b/patches/server/0387-Improve-Arrow-API.patch similarity index 100% rename from patches/server/0388-Improve-Arrow-API.patch rename to patches/server/0387-Improve-Arrow-API.patch diff --git a/patches/server/0389-Add-PlayerRecipeBookClickEvent.patch b/patches/server/0388-Add-PlayerRecipeBookClickEvent.patch similarity index 100% rename from patches/server/0389-Add-PlayerRecipeBookClickEvent.patch rename to patches/server/0388-Add-PlayerRecipeBookClickEvent.patch diff --git a/patches/server/0390-Hide-sync-chunk-writes-behind-flag.patch b/patches/server/0389-Hide-sync-chunk-writes-behind-flag.patch similarity index 100% rename from patches/server/0390-Hide-sync-chunk-writes-behind-flag.patch rename to patches/server/0389-Hide-sync-chunk-writes-behind-flag.patch diff --git a/patches/server/0391-Add-permission-for-command-blocks.patch b/patches/server/0390-Add-permission-for-command-blocks.patch similarity index 100% rename from patches/server/0391-Add-permission-for-command-blocks.patch rename to patches/server/0390-Add-permission-for-command-blocks.patch diff --git a/patches/server/0392-Ensure-Entity-position-and-AABB-are-never-invalid.patch b/patches/server/0391-Ensure-Entity-position-and-AABB-are-never-invalid.patch similarity index 100% rename from patches/server/0392-Ensure-Entity-position-and-AABB-are-never-invalid.patch rename to patches/server/0391-Ensure-Entity-position-and-AABB-are-never-invalid.patch diff --git a/patches/server/0393-Fix-Per-World-Difficulty-Remembering-Difficulty.patch b/patches/server/0392-Fix-Per-World-Difficulty-Remembering-Difficulty.patch similarity index 100% rename from patches/server/0393-Fix-Per-World-Difficulty-Remembering-Difficulty.patch rename to patches/server/0392-Fix-Per-World-Difficulty-Remembering-Difficulty.patch diff --git a/patches/server/0394-Paper-dumpitem-command.patch b/patches/server/0393-Paper-dumpitem-command.patch similarity index 100% rename from patches/server/0394-Paper-dumpitem-command.patch rename to patches/server/0393-Paper-dumpitem-command.patch diff --git a/patches/server/0395-Improve-Legacy-Component-serialization-size.patch b/patches/server/0394-Improve-Legacy-Component-serialization-size.patch similarity index 100% rename from patches/server/0395-Improve-Legacy-Component-serialization-size.patch rename to patches/server/0394-Improve-Legacy-Component-serialization-size.patch diff --git a/patches/server/0396-Add-Plugin-Tickets-to-API-Chunk-Methods.patch b/patches/server/0395-Add-Plugin-Tickets-to-API-Chunk-Methods.patch similarity index 100% rename from patches/server/0396-Add-Plugin-Tickets-to-API-Chunk-Methods.patch rename to patches/server/0395-Add-Plugin-Tickets-to-API-Chunk-Methods.patch diff --git a/patches/server/0397-incremental-chunk-and-player-saving.patch b/patches/server/0396-incremental-chunk-and-player-saving.patch similarity index 100% rename from patches/server/0397-incremental-chunk-and-player-saving.patch rename to patches/server/0396-incremental-chunk-and-player-saving.patch diff --git a/patches/server/0398-Support-old-UUID-format-for-NBT.patch b/patches/server/0397-Support-old-UUID-format-for-NBT.patch similarity index 100% rename from patches/server/0398-Support-old-UUID-format-for-NBT.patch rename to patches/server/0397-Support-old-UUID-format-for-NBT.patch diff --git a/patches/server/0399-Convert-legacy-attributes-in-Item-Meta.patch b/patches/server/0398-Convert-legacy-attributes-in-Item-Meta.patch similarity index 100% rename from patches/server/0399-Convert-legacy-attributes-in-Item-Meta.patch rename to patches/server/0398-Convert-legacy-attributes-in-Item-Meta.patch diff --git a/patches/server/0400-Support-components-in-ItemMeta.patch b/patches/server/0399-Support-components-in-ItemMeta.patch similarity index 100% rename from patches/server/0400-Support-components-in-ItemMeta.patch rename to patches/server/0399-Support-components-in-ItemMeta.patch diff --git a/patches/server/0401-Improve-fix-EntityTargetLivingEntityEvent.patch b/patches/server/0400-Improve-fix-EntityTargetLivingEntityEvent.patch similarity index 100% rename from patches/server/0401-Improve-fix-EntityTargetLivingEntityEvent.patch rename to patches/server/0400-Improve-fix-EntityTargetLivingEntityEvent.patch diff --git a/patches/server/0402-Add-entity-liquid-API.patch b/patches/server/0401-Add-entity-liquid-API.patch similarity index 100% rename from patches/server/0402-Add-entity-liquid-API.patch rename to patches/server/0401-Add-entity-liquid-API.patch diff --git a/patches/server/0403-Update-itemstack-legacy-name-and-lore.patch b/patches/server/0402-Update-itemstack-legacy-name-and-lore.patch similarity index 100% rename from patches/server/0403-Update-itemstack-legacy-name-and-lore.patch rename to patches/server/0402-Update-itemstack-legacy-name-and-lore.patch diff --git a/patches/server/0404-Add-PrepareResultEvent.patch b/patches/server/0403-Add-PrepareResultEvent.patch similarity index 100% rename from patches/server/0404-Add-PrepareResultEvent.patch rename to patches/server/0403-Add-PrepareResultEvent.patch diff --git a/patches/server/0405-Don-t-check-chunk-for-portal-on-world-gen-entity-add.patch b/patches/server/0404-Don-t-check-chunk-for-portal-on-world-gen-entity-add.patch similarity index 100% rename from patches/server/0405-Don-t-check-chunk-for-portal-on-world-gen-entity-add.patch rename to patches/server/0404-Don-t-check-chunk-for-portal-on-world-gen-entity-add.patch diff --git a/patches/server/0406-Fix-arrows-never-despawning-MC-125757.patch b/patches/server/0405-Fix-arrows-never-despawning-MC-125757.patch similarity index 100% rename from patches/server/0406-Fix-arrows-never-despawning-MC-125757.patch rename to patches/server/0405-Fix-arrows-never-despawning-MC-125757.patch diff --git a/patches/server/0407-Thread-Safe-Vanilla-Command-permission-checking.patch b/patches/server/0406-Thread-Safe-Vanilla-Command-permission-checking.patch similarity index 100% rename from patches/server/0407-Thread-Safe-Vanilla-Command-permission-checking.patch rename to patches/server/0406-Thread-Safe-Vanilla-Command-permission-checking.patch diff --git a/patches/server/0408-Fix-SPIGOT-5989.patch b/patches/server/0407-Fix-SPIGOT-5989.patch similarity index 100% rename from patches/server/0408-Fix-SPIGOT-5989.patch rename to patches/server/0407-Fix-SPIGOT-5989.patch diff --git a/patches/server/0409-Fix-SPIGOT-5824-Bukkit-world-container-is-not-used.patch b/patches/server/0408-Fix-SPIGOT-5824-Bukkit-world-container-is-not-used.patch similarity index 100% rename from patches/server/0409-Fix-SPIGOT-5824-Bukkit-world-container-is-not-used.patch rename to patches/server/0408-Fix-SPIGOT-5824-Bukkit-world-container-is-not-used.patch diff --git a/patches/server/0410-Fix-SPIGOT-5885-Unable-to-disable-advancements.patch b/patches/server/0409-Fix-SPIGOT-5885-Unable-to-disable-advancements.patch similarity index 100% rename from patches/server/0410-Fix-SPIGOT-5885-Unable-to-disable-advancements.patch rename to patches/server/0409-Fix-SPIGOT-5885-Unable-to-disable-advancements.patch diff --git a/patches/server/0411-Fix-AdvancementDataPlayer-leak-due-from-quitting-ear.patch b/patches/server/0410-Fix-AdvancementDataPlayer-leak-due-from-quitting-ear.patch similarity index 100% rename from patches/server/0411-Fix-AdvancementDataPlayer-leak-due-from-quitting-ear.patch rename to patches/server/0410-Fix-AdvancementDataPlayer-leak-due-from-quitting-ear.patch diff --git a/patches/server/0412-Optimize-NetworkManager-Exception-Handling.patch b/patches/server/0411-Optimize-NetworkManager-Exception-Handling.patch similarity index 100% rename from patches/server/0412-Optimize-NetworkManager-Exception-Handling.patch rename to patches/server/0411-Optimize-NetworkManager-Exception-Handling.patch diff --git a/patches/server/0413-Fix-some-rails-connecting-improperly.patch b/patches/server/0412-Fix-some-rails-connecting-improperly.patch similarity index 100% rename from patches/server/0413-Fix-some-rails-connecting-improperly.patch rename to patches/server/0412-Fix-some-rails-connecting-improperly.patch diff --git a/patches/server/0414-Fix-regex-mistake-in-CB-NBT-int-deserialization.patch b/patches/server/0413-Fix-regex-mistake-in-CB-NBT-int-deserialization.patch similarity index 100% rename from patches/server/0414-Fix-regex-mistake-in-CB-NBT-int-deserialization.patch rename to patches/server/0413-Fix-regex-mistake-in-CB-NBT-int-deserialization.patch diff --git a/patches/server/0415-Brand-support.patch b/patches/server/0414-Brand-support.patch similarity index 100% rename from patches/server/0415-Brand-support.patch rename to patches/server/0414-Brand-support.patch diff --git a/patches/server/0416-Add-playPickupItemAnimation-to-LivingEntity.patch b/patches/server/0415-Add-playPickupItemAnimation-to-LivingEntity.patch similarity index 100% rename from patches/server/0416-Add-playPickupItemAnimation-to-LivingEntity.patch rename to patches/server/0415-Add-playPickupItemAnimation-to-LivingEntity.patch diff --git a/patches/server/0417-Don-t-require-FACING-data.patch b/patches/server/0416-Don-t-require-FACING-data.patch similarity index 100% rename from patches/server/0417-Don-t-require-FACING-data.patch rename to patches/server/0416-Don-t-require-FACING-data.patch diff --git a/patches/server/0418-Fix-SpawnChangeEvent-not-firing-for-all-use-cases.patch b/patches/server/0417-Fix-SpawnChangeEvent-not-firing-for-all-use-cases.patch similarity index 100% rename from patches/server/0418-Fix-SpawnChangeEvent-not-firing-for-all-use-cases.patch rename to patches/server/0417-Fix-SpawnChangeEvent-not-firing-for-all-use-cases.patch diff --git a/patches/server/0419-Add-moon-phase-API.patch b/patches/server/0418-Add-moon-phase-API.patch similarity index 100% rename from patches/server/0419-Add-moon-phase-API.patch rename to patches/server/0418-Add-moon-phase-API.patch diff --git a/patches/server/0420-Do-not-let-the-server-load-chunks-from-newer-version.patch b/patches/server/0419-Do-not-let-the-server-load-chunks-from-newer-version.patch similarity index 100% rename from patches/server/0420-Do-not-let-the-server-load-chunks-from-newer-version.patch rename to patches/server/0419-Do-not-let-the-server-load-chunks-from-newer-version.patch diff --git a/patches/server/0421-Prevent-headless-pistons-from-being-created.patch b/patches/server/0420-Prevent-headless-pistons-from-being-created.patch similarity index 100% rename from patches/server/0421-Prevent-headless-pistons-from-being-created.patch rename to patches/server/0420-Prevent-headless-pistons-from-being-created.patch diff --git a/patches/server/0422-Add-BellRingEvent.patch b/patches/server/0421-Add-BellRingEvent.patch similarity index 100% rename from patches/server/0422-Add-BellRingEvent.patch rename to patches/server/0421-Add-BellRingEvent.patch diff --git a/patches/server/0423-Add-zombie-targets-turtle-egg-config.patch b/patches/server/0422-Add-zombie-targets-turtle-egg-config.patch similarity index 100% rename from patches/server/0423-Add-zombie-targets-turtle-egg-config.patch rename to patches/server/0422-Add-zombie-targets-turtle-egg-config.patch diff --git a/patches/server/0424-Buffer-joins-to-world.patch b/patches/server/0423-Buffer-joins-to-world.patch similarity index 100% rename from patches/server/0424-Buffer-joins-to-world.patch rename to patches/server/0423-Buffer-joins-to-world.patch diff --git a/patches/server/0425-Fix-hex-colors-not-working-in-some-kick-messages.patch b/patches/server/0424-Fix-hex-colors-not-working-in-some-kick-messages.patch similarity index 100% rename from patches/server/0425-Fix-hex-colors-not-working-in-some-kick-messages.patch rename to patches/server/0424-Fix-hex-colors-not-working-in-some-kick-messages.patch diff --git a/patches/server/0426-PortalCreateEvent-needs-to-know-its-entity.patch b/patches/server/0425-PortalCreateEvent-needs-to-know-its-entity.patch similarity index 100% rename from patches/server/0426-PortalCreateEvent-needs-to-know-its-entity.patch rename to patches/server/0425-PortalCreateEvent-needs-to-know-its-entity.patch diff --git a/patches/server/0427-Add-more-Evoker-API.patch b/patches/server/0426-Add-more-Evoker-API.patch similarity index 100% rename from patches/server/0427-Add-more-Evoker-API.patch rename to patches/server/0426-Add-more-Evoker-API.patch diff --git a/patches/server/0428-Add-methods-to-get-translation-keys.patch b/patches/server/0427-Add-methods-to-get-translation-keys.patch similarity index 100% rename from patches/server/0428-Add-methods-to-get-translation-keys.patch rename to patches/server/0427-Add-methods-to-get-translation-keys.patch diff --git a/patches/server/0429-Create-HoverEvent-from-ItemStack-Entity.patch b/patches/server/0428-Create-HoverEvent-from-ItemStack-Entity.patch similarity index 100% rename from patches/server/0429-Create-HoverEvent-from-ItemStack-Entity.patch rename to patches/server/0428-Create-HoverEvent-from-ItemStack-Entity.patch diff --git a/patches/server/0430-Cache-block-data-strings.patch b/patches/server/0429-Cache-block-data-strings.patch similarity index 100% rename from patches/server/0430-Cache-block-data-strings.patch rename to patches/server/0429-Cache-block-data-strings.patch diff --git a/patches/server/0431-Fix-Entity-Teleportation-and-cancel-velocity-if-tele.patch b/patches/server/0430-Fix-Entity-Teleportation-and-cancel-velocity-if-tele.patch similarity index 100% rename from patches/server/0431-Fix-Entity-Teleportation-and-cancel-velocity-if-tele.patch rename to patches/server/0430-Fix-Entity-Teleportation-and-cancel-velocity-if-tele.patch diff --git a/patches/server/0432-Add-additional-open-container-api-to-HumanEntity.patch b/patches/server/0431-Add-additional-open-container-api-to-HumanEntity.patch similarity index 100% rename from patches/server/0432-Add-additional-open-container-api-to-HumanEntity.patch rename to patches/server/0431-Add-additional-open-container-api-to-HumanEntity.patch diff --git a/patches/server/0433-Cache-DataFixerUpper-Rewrite-Rules-on-demand.patch b/patches/server/0432-Cache-DataFixerUpper-Rewrite-Rules-on-demand.patch similarity index 100% rename from patches/server/0433-Cache-DataFixerUpper-Rewrite-Rules-on-demand.patch rename to patches/server/0432-Cache-DataFixerUpper-Rewrite-Rules-on-demand.patch diff --git a/patches/server/0434-Extend-block-drop-capture-to-capture-all-items-added.patch b/patches/server/0433-Extend-block-drop-capture-to-capture-all-items-added.patch similarity index 100% rename from patches/server/0434-Extend-block-drop-capture-to-capture-all-items-added.patch rename to patches/server/0433-Extend-block-drop-capture-to-capture-all-items-added.patch diff --git a/patches/server/0435-Expose-the-Entity-Counter-to-allow-plugins-to-use-va.patch b/patches/server/0434-Expose-the-Entity-Counter-to-allow-plugins-to-use-va.patch similarity index 100% rename from patches/server/0435-Expose-the-Entity-Counter-to-allow-plugins-to-use-va.patch rename to patches/server/0434-Expose-the-Entity-Counter-to-allow-plugins-to-use-va.patch diff --git a/patches/server/0436-Lazily-track-plugin-scoreboards-by-default.patch b/patches/server/0435-Lazily-track-plugin-scoreboards-by-default.patch similarity index 100% rename from patches/server/0436-Lazily-track-plugin-scoreboards-by-default.patch rename to patches/server/0435-Lazily-track-plugin-scoreboards-by-default.patch diff --git a/patches/server/0437-Entity-isTicking.patch b/patches/server/0436-Entity-isTicking.patch similarity index 100% rename from patches/server/0437-Entity-isTicking.patch rename to patches/server/0436-Entity-isTicking.patch diff --git a/patches/server/0438-Fix-deop-kicking-non-whitelisted-player-when-white-l.patch b/patches/server/0437-Fix-deop-kicking-non-whitelisted-player-when-white-l.patch similarity index 100% rename from patches/server/0438-Fix-deop-kicking-non-whitelisted-player-when-white-l.patch rename to patches/server/0437-Fix-deop-kicking-non-whitelisted-player-when-white-l.patch diff --git a/patches/server/0439-Fix-Concurrency-issue-in-ShufflingList.patch b/patches/server/0438-Fix-Concurrency-issue-in-ShufflingList.patch similarity index 100% rename from patches/server/0439-Fix-Concurrency-issue-in-ShufflingList.patch rename to patches/server/0438-Fix-Concurrency-issue-in-ShufflingList.patch diff --git a/patches/server/0440-Reset-Ender-Crystals-on-Dragon-Spawn.patch b/patches/server/0439-Reset-Ender-Crystals-on-Dragon-Spawn.patch similarity index 100% rename from patches/server/0440-Reset-Ender-Crystals-on-Dragon-Spawn.patch rename to patches/server/0439-Reset-Ender-Crystals-on-Dragon-Spawn.patch diff --git a/patches/server/0441-Fix-for-large-move-vectors-crashing-server.patch b/patches/server/0440-Fix-for-large-move-vectors-crashing-server.patch similarity index 100% rename from patches/server/0441-Fix-for-large-move-vectors-crashing-server.patch rename to patches/server/0440-Fix-for-large-move-vectors-crashing-server.patch diff --git a/patches/server/0442-Optimise-getType-calls.patch b/patches/server/0441-Optimise-getType-calls.patch similarity index 100% rename from patches/server/0442-Optimise-getType-calls.patch rename to patches/server/0441-Optimise-getType-calls.patch diff --git a/patches/server/0443-Villager-resetOffers.patch b/patches/server/0442-Villager-resetOffers.patch similarity index 100% rename from patches/server/0443-Villager-resetOffers.patch rename to patches/server/0442-Villager-resetOffers.patch diff --git a/patches/server/0444-Retain-block-place-order-when-capturing-blockstates.patch b/patches/server/0443-Retain-block-place-order-when-capturing-blockstates.patch similarity index 93% rename from patches/server/0444-Retain-block-place-order-when-capturing-blockstates.patch rename to patches/server/0443-Retain-block-place-order-when-capturing-blockstates.patch index 9be9efef85..a991a30770 100644 --- a/patches/server/0444-Retain-block-place-order-when-capturing-blockstates.patch +++ b/patches/server/0443-Retain-block-place-order-when-capturing-blockstates.patch @@ -10,7 +10,7 @@ In general, look at making this logic more robust (i.e properly handling cases where a captured entry is overriden) - but for now this will do. diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index e51f4df5b6fcd28e681a77a1aa3a9eeb0c463e1a..27de84c6f58476ebf5357c03922e7399c02718b9 100644 +index ee237d0e57cbb9b8fe2ae3c84fa7d7a964ad73b9..859f515813240030b3598a2152dd41d4fb8828ad 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -159,7 +159,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { diff --git a/patches/server/0445-Reduce-blockpos-allocation-from-pathfinding.patch b/patches/server/0444-Reduce-blockpos-allocation-from-pathfinding.patch similarity index 100% rename from patches/server/0445-Reduce-blockpos-allocation-from-pathfinding.patch rename to patches/server/0444-Reduce-blockpos-allocation-from-pathfinding.patch diff --git a/patches/server/0446-Fix-item-locations-dropped-from-campfires.patch b/patches/server/0445-Fix-item-locations-dropped-from-campfires.patch similarity index 100% rename from patches/server/0446-Fix-item-locations-dropped-from-campfires.patch rename to patches/server/0445-Fix-item-locations-dropped-from-campfires.patch diff --git a/patches/server/0447-Fix-bell-block-entity-memory-leak.patch b/patches/server/0446-Fix-bell-block-entity-memory-leak.patch similarity index 100% rename from patches/server/0447-Fix-bell-block-entity-memory-leak.patch rename to patches/server/0446-Fix-bell-block-entity-memory-leak.patch diff --git a/patches/server/0448-Avoid-error-bubbling-up-when-item-stack-is-empty-in-.patch b/patches/server/0447-Avoid-error-bubbling-up-when-item-stack-is-empty-in-.patch similarity index 100% rename from patches/server/0448-Avoid-error-bubbling-up-when-item-stack-is-empty-in-.patch rename to patches/server/0447-Avoid-error-bubbling-up-when-item-stack-is-empty-in-.patch diff --git a/patches/server/0449-Add-getOfflinePlayerIfCached-String.patch b/patches/server/0448-Add-getOfflinePlayerIfCached-String.patch similarity index 100% rename from patches/server/0449-Add-getOfflinePlayerIfCached-String.patch rename to patches/server/0448-Add-getOfflinePlayerIfCached-String.patch diff --git a/patches/server/0450-Add-ignore-discounts-API.patch b/patches/server/0449-Add-ignore-discounts-API.patch similarity index 100% rename from patches/server/0450-Add-ignore-discounts-API.patch rename to patches/server/0449-Add-ignore-discounts-API.patch diff --git a/patches/server/0451-Toggle-for-removing-existing-dragon.patch b/patches/server/0450-Toggle-for-removing-existing-dragon.patch similarity index 100% rename from patches/server/0451-Toggle-for-removing-existing-dragon.patch rename to patches/server/0450-Toggle-for-removing-existing-dragon.patch diff --git a/patches/server/0452-Fix-client-lag-on-advancement-loading.patch b/patches/server/0451-Fix-client-lag-on-advancement-loading.patch similarity index 100% rename from patches/server/0452-Fix-client-lag-on-advancement-loading.patch rename to patches/server/0451-Fix-client-lag-on-advancement-loading.patch diff --git a/patches/server/0453-Item-no-age-no-player-pickup.patch b/patches/server/0452-Item-no-age-no-player-pickup.patch similarity index 100% rename from patches/server/0453-Item-no-age-no-player-pickup.patch rename to patches/server/0452-Item-no-age-no-player-pickup.patch diff --git a/patches/server/0454-Beacon-API-custom-effect-ranges.patch b/patches/server/0453-Beacon-API-custom-effect-ranges.patch similarity index 100% rename from patches/server/0454-Beacon-API-custom-effect-ranges.patch rename to patches/server/0453-Beacon-API-custom-effect-ranges.patch diff --git a/patches/server/0455-Add-API-for-quit-reason.patch b/patches/server/0454-Add-API-for-quit-reason.patch similarity index 100% rename from patches/server/0455-Add-API-for-quit-reason.patch rename to patches/server/0454-Add-API-for-quit-reason.patch diff --git a/patches/server/0456-Add-Wandering-Trader-spawn-rate-config-options.patch b/patches/server/0455-Add-Wandering-Trader-spawn-rate-config-options.patch similarity index 100% rename from patches/server/0456-Add-Wandering-Trader-spawn-rate-config-options.patch rename to patches/server/0455-Add-Wandering-Trader-spawn-rate-config-options.patch diff --git a/patches/server/0457-Expose-world-spawn-angle.patch b/patches/server/0456-Expose-world-spawn-angle.patch similarity index 100% rename from patches/server/0457-Expose-world-spawn-angle.patch rename to patches/server/0456-Expose-world-spawn-angle.patch diff --git a/patches/server/0458-Add-Destroy-Speed-API.patch b/patches/server/0457-Add-Destroy-Speed-API.patch similarity index 100% rename from patches/server/0458-Add-Destroy-Speed-API.patch rename to patches/server/0457-Add-Destroy-Speed-API.patch diff --git a/patches/server/0459-Fix-Player-spawnParticle-x-y-z-precision-loss.patch b/patches/server/0458-Fix-Player-spawnParticle-x-y-z-precision-loss.patch similarity index 100% rename from patches/server/0459-Fix-Player-spawnParticle-x-y-z-precision-loss.patch rename to patches/server/0458-Fix-Player-spawnParticle-x-y-z-precision-loss.patch diff --git a/patches/server/0460-Add-LivingEntity-clearActiveItem.patch b/patches/server/0459-Add-LivingEntity-clearActiveItem.patch similarity index 100% rename from patches/server/0460-Add-LivingEntity-clearActiveItem.patch rename to patches/server/0459-Add-LivingEntity-clearActiveItem.patch diff --git a/patches/server/0461-Add-PlayerItemCooldownEvent.patch b/patches/server/0460-Add-PlayerItemCooldownEvent.patch similarity index 100% rename from patches/server/0461-Add-PlayerItemCooldownEvent.patch rename to patches/server/0460-Add-PlayerItemCooldownEvent.patch diff --git a/patches/server/0462-Significantly-improve-performance-of-the-end-generat.patch b/patches/server/0461-Significantly-improve-performance-of-the-end-generat.patch similarity index 100% rename from patches/server/0462-Significantly-improve-performance-of-the-end-generat.patch rename to patches/server/0461-Significantly-improve-performance-of-the-end-generat.patch diff --git a/patches/server/0463-More-lightning-API.patch b/patches/server/0462-More-lightning-API.patch similarity index 100% rename from patches/server/0463-More-lightning-API.patch rename to patches/server/0462-More-lightning-API.patch diff --git a/patches/server/0464-Climbing-should-not-bypass-cramming-gamerule.patch b/patches/server/0463-Climbing-should-not-bypass-cramming-gamerule.patch similarity index 100% rename from patches/server/0464-Climbing-should-not-bypass-cramming-gamerule.patch rename to patches/server/0463-Climbing-should-not-bypass-cramming-gamerule.patch diff --git a/patches/server/0465-Add-missing-default-perms-for-commands.patch b/patches/server/0464-Add-missing-default-perms-for-commands.patch similarity index 100% rename from patches/server/0465-Add-missing-default-perms-for-commands.patch rename to patches/server/0464-Add-missing-default-perms-for-commands.patch diff --git a/patches/server/0466-Add-PlayerShearBlockEvent.patch b/patches/server/0465-Add-PlayerShearBlockEvent.patch similarity index 100% rename from patches/server/0466-Add-PlayerShearBlockEvent.patch rename to patches/server/0465-Add-PlayerShearBlockEvent.patch diff --git a/patches/server/0467-Limit-recipe-packets.patch b/patches/server/0466-Limit-recipe-packets.patch similarity index 100% rename from patches/server/0467-Limit-recipe-packets.patch rename to patches/server/0466-Limit-recipe-packets.patch diff --git a/patches/server/0468-Fix-CraftSound-backwards-compatibility.patch b/patches/server/0467-Fix-CraftSound-backwards-compatibility.patch similarity index 100% rename from patches/server/0468-Fix-CraftSound-backwards-compatibility.patch rename to patches/server/0467-Fix-CraftSound-backwards-compatibility.patch diff --git a/patches/server/0469-Player-Chunk-Load-Unload-Events.patch b/patches/server/0468-Player-Chunk-Load-Unload-Events.patch similarity index 100% rename from patches/server/0469-Player-Chunk-Load-Unload-Events.patch rename to patches/server/0468-Player-Chunk-Load-Unload-Events.patch diff --git a/patches/server/0470-Optimize-Dynamic-get-Missing-Keys.patch b/patches/server/0469-Optimize-Dynamic-get-Missing-Keys.patch similarity index 100% rename from patches/server/0470-Optimize-Dynamic-get-Missing-Keys.patch rename to patches/server/0469-Optimize-Dynamic-get-Missing-Keys.patch diff --git a/patches/server/0471-Expose-LivingEntity-hurt-direction.patch b/patches/server/0470-Expose-LivingEntity-hurt-direction.patch similarity index 100% rename from patches/server/0471-Expose-LivingEntity-hurt-direction.patch rename to patches/server/0470-Expose-LivingEntity-hurt-direction.patch diff --git a/patches/server/0472-Add-OBSTRUCTED-reason-to-BedEnterResult.patch b/patches/server/0471-Add-OBSTRUCTED-reason-to-BedEnterResult.patch similarity index 100% rename from patches/server/0472-Add-OBSTRUCTED-reason-to-BedEnterResult.patch rename to patches/server/0471-Add-OBSTRUCTED-reason-to-BedEnterResult.patch diff --git a/patches/server/0473-Fix-crash-from-invalid-ingredient-lists-in-VillagerA.patch b/patches/server/0472-Fix-crash-from-invalid-ingredient-lists-in-VillagerA.patch similarity index 100% rename from patches/server/0473-Fix-crash-from-invalid-ingredient-lists-in-VillagerA.patch rename to patches/server/0472-Fix-crash-from-invalid-ingredient-lists-in-VillagerA.patch diff --git a/patches/server/0474-Add-TargetHitEvent.patch b/patches/server/0473-Add-TargetHitEvent.patch similarity index 100% rename from patches/server/0474-Add-TargetHitEvent.patch rename to patches/server/0473-Add-TargetHitEvent.patch diff --git a/patches/server/0475-MC-4-Fix-item-position-desync.patch b/patches/server/0474-MC-4-Fix-item-position-desync.patch similarity index 100% rename from patches/server/0475-MC-4-Fix-item-position-desync.patch rename to patches/server/0474-MC-4-Fix-item-position-desync.patch diff --git a/patches/server/0476-Additional-Block-Material-API.patch b/patches/server/0475-Additional-Block-Material-API.patch similarity index 100% rename from patches/server/0476-Additional-Block-Material-API.patch rename to patches/server/0475-Additional-Block-Material-API.patch diff --git a/patches/server/0477-Fix-harming-potion-dupe.patch b/patches/server/0476-Fix-harming-potion-dupe.patch similarity index 100% rename from patches/server/0477-Fix-harming-potion-dupe.patch rename to patches/server/0476-Fix-harming-potion-dupe.patch diff --git a/patches/server/0478-API-to-get-Material-from-Boats-and-Minecarts.patch b/patches/server/0477-API-to-get-Material-from-Boats-and-Minecarts.patch similarity index 100% rename from patches/server/0478-API-to-get-Material-from-Boats-and-Minecarts.patch rename to patches/server/0477-API-to-get-Material-from-Boats-and-Minecarts.patch diff --git a/patches/server/0479-Cache-burn-durations.patch b/patches/server/0478-Cache-burn-durations.patch similarity index 100% rename from patches/server/0479-Cache-burn-durations.patch rename to patches/server/0478-Cache-burn-durations.patch diff --git a/patches/server/0480-Allow-disabling-mob-spawner-spawn-egg-transformation.patch b/patches/server/0479-Allow-disabling-mob-spawner-spawn-egg-transformation.patch similarity index 100% rename from patches/server/0480-Allow-disabling-mob-spawner-spawn-egg-transformation.patch rename to patches/server/0479-Allow-disabling-mob-spawner-spawn-egg-transformation.patch diff --git a/patches/server/0481-Fix-Not-a-string-Map-Conversion-spam.patch b/patches/server/0480-Fix-Not-a-string-Map-Conversion-spam.patch similarity index 100% rename from patches/server/0481-Fix-Not-a-string-Map-Conversion-spam.patch rename to patches/server/0480-Fix-Not-a-string-Map-Conversion-spam.patch diff --git a/patches/server/0482-Add-PlayerFlowerPotManipulateEvent.patch b/patches/server/0481-Add-PlayerFlowerPotManipulateEvent.patch similarity index 100% rename from patches/server/0482-Add-PlayerFlowerPotManipulateEvent.patch rename to patches/server/0481-Add-PlayerFlowerPotManipulateEvent.patch diff --git a/patches/server/0483-Fix-interact-event-not-being-called-sometimes.patch b/patches/server/0482-Fix-interact-event-not-being-called-sometimes.patch similarity index 100% rename from patches/server/0483-Fix-interact-event-not-being-called-sometimes.patch rename to patches/server/0482-Fix-interact-event-not-being-called-sometimes.patch diff --git a/patches/server/0484-Zombie-API-breaking-doors.patch b/patches/server/0483-Zombie-API-breaking-doors.patch similarity index 100% rename from patches/server/0484-Zombie-API-breaking-doors.patch rename to patches/server/0483-Zombie-API-breaking-doors.patch diff --git a/patches/server/0485-Fix-nerfed-slime-when-splitting.patch b/patches/server/0484-Fix-nerfed-slime-when-splitting.patch similarity index 100% rename from patches/server/0485-Fix-nerfed-slime-when-splitting.patch rename to patches/server/0484-Fix-nerfed-slime-when-splitting.patch diff --git a/patches/server/0486-Add-EntityLoadCrossbowEvent.patch b/patches/server/0485-Add-EntityLoadCrossbowEvent.patch similarity index 100% rename from patches/server/0486-Add-EntityLoadCrossbowEvent.patch rename to patches/server/0485-Add-EntityLoadCrossbowEvent.patch diff --git a/patches/server/0487-Add-WorldGameRuleChangeEvent.patch b/patches/server/0486-Add-WorldGameRuleChangeEvent.patch similarity index 100% rename from patches/server/0487-Add-WorldGameRuleChangeEvent.patch rename to patches/server/0486-Add-WorldGameRuleChangeEvent.patch diff --git a/patches/server/0488-Add-ServerResourcesReloadedEvent.patch b/patches/server/0487-Add-ServerResourcesReloadedEvent.patch similarity index 100% rename from patches/server/0488-Add-ServerResourcesReloadedEvent.patch rename to patches/server/0487-Add-ServerResourcesReloadedEvent.patch diff --git a/patches/server/0489-Add-world-settings-for-mobs-picking-up-loot.patch b/patches/server/0488-Add-world-settings-for-mobs-picking-up-loot.patch similarity index 100% rename from patches/server/0489-Add-world-settings-for-mobs-picking-up-loot.patch rename to patches/server/0488-Add-world-settings-for-mobs-picking-up-loot.patch diff --git a/patches/server/0490-Add-BlockFailedDispenseEvent.patch b/patches/server/0489-Add-BlockFailedDispenseEvent.patch similarity index 100% rename from patches/server/0490-Add-BlockFailedDispenseEvent.patch rename to patches/server/0489-Add-BlockFailedDispenseEvent.patch diff --git a/patches/server/0491-Add-PlayerLecternPageChangeEvent.patch b/patches/server/0490-Add-PlayerLecternPageChangeEvent.patch similarity index 100% rename from patches/server/0491-Add-PlayerLecternPageChangeEvent.patch rename to patches/server/0490-Add-PlayerLecternPageChangeEvent.patch diff --git a/patches/server/0492-Add-PlayerLoomPatternSelectEvent.patch b/patches/server/0491-Add-PlayerLoomPatternSelectEvent.patch similarity index 100% rename from patches/server/0492-Add-PlayerLoomPatternSelectEvent.patch rename to patches/server/0491-Add-PlayerLoomPatternSelectEvent.patch diff --git a/patches/server/0493-Configurable-door-breaking-difficulty.patch b/patches/server/0492-Configurable-door-breaking-difficulty.patch similarity index 100% rename from patches/server/0493-Configurable-door-breaking-difficulty.patch rename to patches/server/0492-Configurable-door-breaking-difficulty.patch diff --git a/patches/server/0494-Empty-commands-shall-not-be-dispatched.patch b/patches/server/0493-Empty-commands-shall-not-be-dispatched.patch similarity index 100% rename from patches/server/0494-Empty-commands-shall-not-be-dispatched.patch rename to patches/server/0493-Empty-commands-shall-not-be-dispatched.patch diff --git a/patches/server/0495-Remove-stale-POIs.patch b/patches/server/0494-Remove-stale-POIs.patch similarity index 100% rename from patches/server/0495-Remove-stale-POIs.patch rename to patches/server/0494-Remove-stale-POIs.patch diff --git a/patches/server/0496-Fix-villager-boat-exploit.patch b/patches/server/0495-Fix-villager-boat-exploit.patch similarity index 100% rename from patches/server/0496-Fix-villager-boat-exploit.patch rename to patches/server/0495-Fix-villager-boat-exploit.patch diff --git a/patches/server/0497-Add-sendOpLevel-API.patch b/patches/server/0496-Add-sendOpLevel-API.patch similarity index 100% rename from patches/server/0497-Add-sendOpLevel-API.patch rename to patches/server/0496-Add-sendOpLevel-API.patch diff --git a/patches/server/0498-TODO-Registry-Modification-API.patch b/patches/server/0497-TODO-Registry-Modification-API.patch similarity index 100% rename from patches/server/0498-TODO-Registry-Modification-API.patch rename to patches/server/0497-TODO-Registry-Modification-API.patch diff --git a/patches/server/0499-Add-StructuresLocateEvent.patch b/patches/server/0498-Add-StructuresLocateEvent.patch similarity index 100% rename from patches/server/0499-Add-StructuresLocateEvent.patch rename to patches/server/0498-Add-StructuresLocateEvent.patch diff --git a/patches/server/0500-Collision-option-for-requiring-a-player-participant.patch b/patches/server/0499-Collision-option-for-requiring-a-player-participant.patch similarity index 100% rename from patches/server/0500-Collision-option-for-requiring-a-player-participant.patch rename to patches/server/0499-Collision-option-for-requiring-a-player-participant.patch diff --git a/patches/server/0501-Remove-ProjectileHitEvent-call-when-fireballs-dead.patch b/patches/server/0500-Remove-ProjectileHitEvent-call-when-fireballs-dead.patch similarity index 100% rename from patches/server/0501-Remove-ProjectileHitEvent-call-when-fireballs-dead.patch rename to patches/server/0500-Remove-ProjectileHitEvent-call-when-fireballs-dead.patch diff --git a/patches/server/0502-Return-chat-component-with-empty-text-instead-of-thr.patch b/patches/server/0501-Return-chat-component-with-empty-text-instead-of-thr.patch similarity index 100% rename from patches/server/0502-Return-chat-component-with-empty-text-instead-of-thr.patch rename to patches/server/0501-Return-chat-component-with-empty-text-instead-of-thr.patch diff --git a/patches/server/0503-Make-schedule-command-per-world.patch b/patches/server/0502-Make-schedule-command-per-world.patch similarity index 100% rename from patches/server/0503-Make-schedule-command-per-world.patch rename to patches/server/0502-Make-schedule-command-per-world.patch diff --git a/patches/server/0504-Configurable-max-leash-distance.patch b/patches/server/0503-Configurable-max-leash-distance.patch similarity index 100% rename from patches/server/0504-Configurable-max-leash-distance.patch rename to patches/server/0503-Configurable-max-leash-distance.patch diff --git a/patches/server/0505-Add-BlockPreDispenseEvent.patch b/patches/server/0504-Add-BlockPreDispenseEvent.patch similarity index 100% rename from patches/server/0505-Add-BlockPreDispenseEvent.patch rename to patches/server/0504-Add-BlockPreDispenseEvent.patch diff --git a/patches/server/0506-Add-PlayerChangeBeaconEffectEvent.patch b/patches/server/0505-Add-PlayerChangeBeaconEffectEvent.patch similarity index 100% rename from patches/server/0506-Add-PlayerChangeBeaconEffectEvent.patch rename to patches/server/0505-Add-PlayerChangeBeaconEffectEvent.patch diff --git a/patches/server/0507-Add-toggle-for-always-placing-the-dragon-egg.patch b/patches/server/0506-Add-toggle-for-always-placing-the-dragon-egg.patch similarity index 100% rename from patches/server/0507-Add-toggle-for-always-placing-the-dragon-egg.patch rename to patches/server/0506-Add-toggle-for-always-placing-the-dragon-egg.patch diff --git a/patches/server/0508-Add-PlayerStonecutterRecipeSelectEvent.patch b/patches/server/0507-Add-PlayerStonecutterRecipeSelectEvent.patch similarity index 100% rename from patches/server/0508-Add-PlayerStonecutterRecipeSelectEvent.patch rename to patches/server/0507-Add-PlayerStonecutterRecipeSelectEvent.patch diff --git a/patches/server/0509-Expand-EntityUnleashEvent.patch b/patches/server/0508-Expand-EntityUnleashEvent.patch similarity index 100% rename from patches/server/0509-Expand-EntityUnleashEvent.patch rename to patches/server/0508-Expand-EntityUnleashEvent.patch diff --git a/patches/server/0510-Reset-shield-blocking-on-dimension-change.patch b/patches/server/0509-Reset-shield-blocking-on-dimension-change.patch similarity index 100% rename from patches/server/0510-Reset-shield-blocking-on-dimension-change.patch rename to patches/server/0509-Reset-shield-blocking-on-dimension-change.patch diff --git a/patches/server/0511-Add-DragonEggFormEvent.patch b/patches/server/0510-Add-DragonEggFormEvent.patch similarity index 100% rename from patches/server/0511-Add-DragonEggFormEvent.patch rename to patches/server/0510-Add-DragonEggFormEvent.patch diff --git a/patches/server/0512-Add-EntityMoveEvent.patch b/patches/server/0511-Add-EntityMoveEvent.patch similarity index 100% rename from patches/server/0512-Add-EntityMoveEvent.patch rename to patches/server/0511-Add-EntityMoveEvent.patch diff --git a/patches/server/0513-added-option-to-disable-pathfinding-updates-on-block.patch b/patches/server/0512-added-option-to-disable-pathfinding-updates-on-block.patch similarity index 100% rename from patches/server/0513-added-option-to-disable-pathfinding-updates-on-block.patch rename to patches/server/0512-added-option-to-disable-pathfinding-updates-on-block.patch diff --git a/patches/server/0514-Inline-shift-direction-fields.patch b/patches/server/0513-Inline-shift-direction-fields.patch similarity index 100% rename from patches/server/0514-Inline-shift-direction-fields.patch rename to patches/server/0513-Inline-shift-direction-fields.patch diff --git a/patches/server/0515-Allow-adding-items-to-BlockDropItemEvent.patch b/patches/server/0514-Allow-adding-items-to-BlockDropItemEvent.patch similarity index 100% rename from patches/server/0515-Allow-adding-items-to-BlockDropItemEvent.patch rename to patches/server/0514-Allow-adding-items-to-BlockDropItemEvent.patch diff --git a/patches/server/0516-Add-getMainThreadExecutor-to-BukkitScheduler.patch b/patches/server/0515-Add-getMainThreadExecutor-to-BukkitScheduler.patch similarity index 100% rename from patches/server/0516-Add-getMainThreadExecutor-to-BukkitScheduler.patch rename to patches/server/0515-Add-getMainThreadExecutor-to-BukkitScheduler.patch diff --git a/patches/server/0517-living-entity-allow-attribute-registration.patch b/patches/server/0516-living-entity-allow-attribute-registration.patch similarity index 100% rename from patches/server/0517-living-entity-allow-attribute-registration.patch rename to patches/server/0516-living-entity-allow-attribute-registration.patch diff --git a/patches/server/0518-fix-dead-slime-setSize-invincibility.patch b/patches/server/0517-fix-dead-slime-setSize-invincibility.patch similarity index 100% rename from patches/server/0518-fix-dead-slime-setSize-invincibility.patch rename to patches/server/0517-fix-dead-slime-setSize-invincibility.patch diff --git a/patches/server/0519-Merchant-getRecipes-should-return-an-immutable-list.patch b/patches/server/0518-Merchant-getRecipes-should-return-an-immutable-list.patch similarity index 100% rename from patches/server/0519-Merchant-getRecipes-should-return-an-immutable-list.patch rename to patches/server/0518-Merchant-getRecipes-should-return-an-immutable-list.patch diff --git a/patches/server/0520-Expose-Tracked-Players.patch b/patches/server/0519-Expose-Tracked-Players.patch similarity index 100% rename from patches/server/0520-Expose-Tracked-Players.patch rename to patches/server/0519-Expose-Tracked-Players.patch diff --git a/patches/server/0521-Improve-ServerGUI.patch b/patches/server/0520-Improve-ServerGUI.patch similarity index 100% rename from patches/server/0521-Improve-ServerGUI.patch rename to patches/server/0520-Improve-ServerGUI.patch diff --git a/patches/server/0522-fix-converting-txt-to-json-file.patch b/patches/server/0521-fix-converting-txt-to-json-file.patch similarity index 100% rename from patches/server/0522-fix-converting-txt-to-json-file.patch rename to patches/server/0521-fix-converting-txt-to-json-file.patch diff --git a/patches/server/0523-Add-worldborder-events.patch b/patches/server/0522-Add-worldborder-events.patch similarity index 100% rename from patches/server/0523-Add-worldborder-events.patch rename to patches/server/0522-Add-worldborder-events.patch diff --git a/patches/server/0524-Add-PlayerNameEntityEvent.patch b/patches/server/0523-Add-PlayerNameEntityEvent.patch similarity index 100% rename from patches/server/0524-Add-PlayerNameEntityEvent.patch rename to patches/server/0523-Add-PlayerNameEntityEvent.patch diff --git a/patches/server/0525-Prevent-grindstones-from-overstacking-items.patch b/patches/server/0524-Prevent-grindstones-from-overstacking-items.patch similarity index 100% rename from patches/server/0525-Prevent-grindstones-from-overstacking-items.patch rename to patches/server/0524-Prevent-grindstones-from-overstacking-items.patch diff --git a/patches/server/0526-Add-recipe-to-cook-events.patch b/patches/server/0525-Add-recipe-to-cook-events.patch similarity index 100% rename from patches/server/0526-Add-recipe-to-cook-events.patch rename to patches/server/0525-Add-recipe-to-cook-events.patch diff --git a/patches/server/0527-Add-Block-isValidTool.patch b/patches/server/0526-Add-Block-isValidTool.patch similarity index 100% rename from patches/server/0527-Add-Block-isValidTool.patch rename to patches/server/0526-Add-Block-isValidTool.patch diff --git a/patches/server/0528-Allow-using-signs-inside-spawn-protection.patch b/patches/server/0527-Allow-using-signs-inside-spawn-protection.patch similarity index 100% rename from patches/server/0528-Allow-using-signs-inside-spawn-protection.patch rename to patches/server/0527-Allow-using-signs-inside-spawn-protection.patch diff --git a/patches/server/0529-Expand-world-key-API.patch b/patches/server/0528-Expand-world-key-API.patch similarity index 100% rename from patches/server/0529-Expand-world-key-API.patch rename to patches/server/0528-Expand-world-key-API.patch diff --git a/patches/server/0530-Add-fast-alternative-constructor-for-Rotations.patch b/patches/server/0529-Add-fast-alternative-constructor-for-Rotations.patch similarity index 100% rename from patches/server/0530-Add-fast-alternative-constructor-for-Rotations.patch rename to patches/server/0529-Add-fast-alternative-constructor-for-Rotations.patch diff --git a/patches/server/0531-Item-Rarity-API.patch b/patches/server/0530-Item-Rarity-API.patch similarity index 100% rename from patches/server/0531-Item-Rarity-API.patch rename to patches/server/0530-Item-Rarity-API.patch diff --git a/patches/server/0532-Drop-carried-item-when-player-has-disconnected.patch b/patches/server/0531-Drop-carried-item-when-player-has-disconnected.patch similarity index 100% rename from patches/server/0532-Drop-carried-item-when-player-has-disconnected.patch rename to patches/server/0531-Drop-carried-item-when-player-has-disconnected.patch diff --git a/patches/server/0533-forced-whitelist-use-configurable-kick-message.patch b/patches/server/0532-forced-whitelist-use-configurable-kick-message.patch similarity index 100% rename from patches/server/0533-forced-whitelist-use-configurable-kick-message.patch rename to patches/server/0532-forced-whitelist-use-configurable-kick-message.patch diff --git a/patches/server/0534-Don-t-ignore-result-of-PlayerEditBookEvent.patch b/patches/server/0533-Don-t-ignore-result-of-PlayerEditBookEvent.patch similarity index 100% rename from patches/server/0534-Don-t-ignore-result-of-PlayerEditBookEvent.patch rename to patches/server/0533-Don-t-ignore-result-of-PlayerEditBookEvent.patch diff --git a/patches/server/0535-Expose-protocol-version.patch b/patches/server/0534-Expose-protocol-version.patch similarity index 100% rename from patches/server/0535-Expose-protocol-version.patch rename to patches/server/0534-Expose-protocol-version.patch diff --git a/patches/server/0536-Enhance-console-tab-completions-for-brigadier-comman.patch b/patches/server/0535-Enhance-console-tab-completions-for-brigadier-comman.patch similarity index 100% rename from patches/server/0536-Enhance-console-tab-completions-for-brigadier-comman.patch rename to patches/server/0535-Enhance-console-tab-completions-for-brigadier-comman.patch diff --git a/patches/server/0537-Fix-PlayerItemConsumeEvent-cancelling-properly.patch b/patches/server/0536-Fix-PlayerItemConsumeEvent-cancelling-properly.patch similarity index 100% rename from patches/server/0537-Fix-PlayerItemConsumeEvent-cancelling-properly.patch rename to patches/server/0536-Fix-PlayerItemConsumeEvent-cancelling-properly.patch diff --git a/patches/server/0538-Add-bypass-host-check.patch b/patches/server/0537-Add-bypass-host-check.patch similarity index 100% rename from patches/server/0538-Add-bypass-host-check.patch rename to patches/server/0537-Add-bypass-host-check.patch diff --git a/patches/server/0539-Set-area-affect-cloud-rotation.patch b/patches/server/0538-Set-area-affect-cloud-rotation.patch similarity index 100% rename from patches/server/0539-Set-area-affect-cloud-rotation.patch rename to patches/server/0538-Set-area-affect-cloud-rotation.patch diff --git a/patches/server/0540-add-isDeeplySleeping-to-HumanEntity.patch b/patches/server/0539-add-isDeeplySleeping-to-HumanEntity.patch similarity index 100% rename from patches/server/0540-add-isDeeplySleeping-to-HumanEntity.patch rename to patches/server/0539-add-isDeeplySleeping-to-HumanEntity.patch diff --git a/patches/server/0541-add-consumeFuel-to-FurnaceBurnEvent.patch b/patches/server/0540-add-consumeFuel-to-FurnaceBurnEvent.patch similarity index 100% rename from patches/server/0541-add-consumeFuel-to-FurnaceBurnEvent.patch rename to patches/server/0540-add-consumeFuel-to-FurnaceBurnEvent.patch diff --git a/patches/server/0542-add-get-set-drop-chance-to-EntityEquipment.patch b/patches/server/0541-add-get-set-drop-chance-to-EntityEquipment.patch similarity index 100% rename from patches/server/0542-add-get-set-drop-chance-to-EntityEquipment.patch rename to patches/server/0541-add-get-set-drop-chance-to-EntityEquipment.patch diff --git a/patches/server/0543-fix-PigZombieAngerEvent-cancellation.patch b/patches/server/0542-fix-PigZombieAngerEvent-cancellation.patch similarity index 100% rename from patches/server/0543-fix-PigZombieAngerEvent-cancellation.patch rename to patches/server/0542-fix-PigZombieAngerEvent-cancellation.patch diff --git a/patches/server/0544-fix-PlayerItemHeldEvent-firing-twice.patch b/patches/server/0543-fix-PlayerItemHeldEvent-firing-twice.patch similarity index 100% rename from patches/server/0544-fix-PlayerItemHeldEvent-firing-twice.patch rename to patches/server/0543-fix-PlayerItemHeldEvent-firing-twice.patch diff --git a/patches/server/0545-Add-PlayerDeepSleepEvent.patch b/patches/server/0544-Add-PlayerDeepSleepEvent.patch similarity index 100% rename from patches/server/0545-Add-PlayerDeepSleepEvent.patch rename to patches/server/0544-Add-PlayerDeepSleepEvent.patch diff --git a/patches/server/0546-More-World-API.patch b/patches/server/0545-More-World-API.patch similarity index 100% rename from patches/server/0546-More-World-API.patch rename to patches/server/0545-More-World-API.patch diff --git a/patches/server/0547-Add-PlayerBedFailEnterEvent.patch b/patches/server/0546-Add-PlayerBedFailEnterEvent.patch similarity index 100% rename from patches/server/0547-Add-PlayerBedFailEnterEvent.patch rename to patches/server/0546-Add-PlayerBedFailEnterEvent.patch diff --git a/patches/server/0548-Implement-methods-to-convert-between-Component-and-B.patch b/patches/server/0547-Implement-methods-to-convert-between-Component-and-B.patch similarity index 100% rename from patches/server/0548-Implement-methods-to-convert-between-Component-and-B.patch rename to patches/server/0547-Implement-methods-to-convert-between-Component-and-B.patch diff --git a/patches/server/0549-Expand-PlayerRespawnEvent-fix-passed-parameter-issue.patch b/patches/server/0548-Expand-PlayerRespawnEvent-fix-passed-parameter-issue.patch similarity index 100% rename from patches/server/0549-Expand-PlayerRespawnEvent-fix-passed-parameter-issue.patch rename to patches/server/0548-Expand-PlayerRespawnEvent-fix-passed-parameter-issue.patch diff --git a/patches/server/0550-Introduce-beacon-activation-deactivation-events.patch b/patches/server/0549-Introduce-beacon-activation-deactivation-events.patch similarity index 100% rename from patches/server/0550-Introduce-beacon-activation-deactivation-events.patch rename to patches/server/0549-Introduce-beacon-activation-deactivation-events.patch diff --git a/patches/server/0551-Add-Channel-initialization-listeners.patch b/patches/server/0550-Add-Channel-initialization-listeners.patch similarity index 100% rename from patches/server/0551-Add-Channel-initialization-listeners.patch rename to patches/server/0550-Add-Channel-initialization-listeners.patch diff --git a/patches/server/0552-Send-empty-commands-if-tab-completion-is-disabled.patch b/patches/server/0551-Send-empty-commands-if-tab-completion-is-disabled.patch similarity index 100% rename from patches/server/0552-Send-empty-commands-if-tab-completion-is-disabled.patch rename to patches/server/0551-Send-empty-commands-if-tab-completion-is-disabled.patch diff --git a/patches/server/0553-Add-more-WanderingTrader-API.patch b/patches/server/0552-Add-more-WanderingTrader-API.patch similarity index 100% rename from patches/server/0553-Add-more-WanderingTrader-API.patch rename to patches/server/0552-Add-more-WanderingTrader-API.patch diff --git a/patches/server/0554-Add-EntityBlockStorage-clearEntities.patch b/patches/server/0553-Add-EntityBlockStorage-clearEntities.patch similarity index 100% rename from patches/server/0554-Add-EntityBlockStorage-clearEntities.patch rename to patches/server/0553-Add-EntityBlockStorage-clearEntities.patch diff --git a/patches/server/0555-Entity-load-save-limit-per-chunk.patch b/patches/server/0554-Entity-load-save-limit-per-chunk.patch similarity index 100% rename from patches/server/0555-Entity-load-save-limit-per-chunk.patch rename to patches/server/0554-Entity-load-save-limit-per-chunk.patch diff --git a/patches/server/0556-Add-Adventure-message-to-PlayerAdvancementDoneEvent.patch b/patches/server/0555-Add-Adventure-message-to-PlayerAdvancementDoneEvent.patch similarity index 100% rename from patches/server/0556-Add-Adventure-message-to-PlayerAdvancementDoneEvent.patch rename to patches/server/0555-Add-Adventure-message-to-PlayerAdvancementDoneEvent.patch diff --git a/patches/server/0557-Inventory-close.patch b/patches/server/0556-Inventory-close.patch similarity index 100% rename from patches/server/0557-Inventory-close.patch rename to patches/server/0556-Inventory-close.patch diff --git a/patches/server/0558-Add-a-should-burn-in-sunlight-API-for-Phantoms-and-S.patch b/patches/server/0557-Add-a-should-burn-in-sunlight-API-for-Phantoms-and-S.patch similarity index 100% rename from patches/server/0558-Add-a-should-burn-in-sunlight-API-for-Phantoms-and-S.patch rename to patches/server/0557-Add-a-should-burn-in-sunlight-API-for-Phantoms-and-S.patch diff --git a/patches/server/0559-Add-basic-Datapack-API.patch b/patches/server/0558-Add-basic-Datapack-API.patch similarity index 100% rename from patches/server/0559-Add-basic-Datapack-API.patch rename to patches/server/0558-Add-basic-Datapack-API.patch diff --git a/patches/server/0560-Add-environment-variable-to-disable-server-gui.patch b/patches/server/0559-Add-environment-variable-to-disable-server-gui.patch similarity index 100% rename from patches/server/0560-Add-environment-variable-to-disable-server-gui.patch rename to patches/server/0559-Add-environment-variable-to-disable-server-gui.patch diff --git a/patches/server/0561-Expand-PlayerGameModeChangeEvent.patch b/patches/server/0560-Expand-PlayerGameModeChangeEvent.patch similarity index 100% rename from patches/server/0561-Expand-PlayerGameModeChangeEvent.patch rename to patches/server/0560-Expand-PlayerGameModeChangeEvent.patch diff --git a/patches/server/0562-ItemStack-repair-check-API.patch b/patches/server/0561-ItemStack-repair-check-API.patch similarity index 100% rename from patches/server/0562-ItemStack-repair-check-API.patch rename to patches/server/0561-ItemStack-repair-check-API.patch diff --git a/patches/server/0563-More-Enchantment-API.patch b/patches/server/0562-More-Enchantment-API.patch similarity index 100% rename from patches/server/0563-More-Enchantment-API.patch rename to patches/server/0562-More-Enchantment-API.patch diff --git a/patches/server/0564-Move-range-check-for-block-placing-up.patch b/patches/server/0563-Move-range-check-for-block-placing-up.patch similarity index 100% rename from patches/server/0564-Move-range-check-for-block-placing-up.patch rename to patches/server/0563-Move-range-check-for-block-placing-up.patch diff --git a/patches/server/0565-Fix-and-optimise-world-force-upgrading.patch b/patches/server/0564-Fix-and-optimise-world-force-upgrading.patch similarity index 99% rename from patches/server/0565-Fix-and-optimise-world-force-upgrading.patch rename to patches/server/0564-Fix-and-optimise-world-force-upgrading.patch index bd90d086b7..7537b08451 100644 --- a/patches/server/0565-Fix-and-optimise-world-force-upgrading.patch +++ b/patches/server/0564-Fix-and-optimise-world-force-upgrading.patch @@ -298,7 +298,7 @@ index 22ffae1e5b0ea77b9c9330f521e31af77fe0d276..ad6a0f1a1a9ed11760098b700e8f305f if (dimensionKey == LevelStem.OVERWORLD) { diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 27de84c6f58476ebf5357c03922e7399c02718b9..6dad081aa935cf3be19a0e0b913b2aaf97206230 100644 +index 859f515813240030b3598a2152dd41d4fb8828ad..c4086b17db7624489a8873ee321e7707078e5e0b 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -179,6 +179,15 @@ public abstract class Level implements LevelAccessor, AutoCloseable { diff --git a/patches/server/0566-Add-Mob-lookAt-API.patch b/patches/server/0565-Add-Mob-lookAt-API.patch similarity index 100% rename from patches/server/0566-Add-Mob-lookAt-API.patch rename to patches/server/0565-Add-Mob-lookAt-API.patch diff --git a/patches/server/0567-Add-Unix-domain-socket-support.patch b/patches/server/0566-Add-Unix-domain-socket-support.patch similarity index 100% rename from patches/server/0567-Add-Unix-domain-socket-support.patch rename to patches/server/0566-Add-Unix-domain-socket-support.patch diff --git a/patches/server/0568-Add-EntityInsideBlockEvent.patch b/patches/server/0567-Add-EntityInsideBlockEvent.patch similarity index 100% rename from patches/server/0568-Add-EntityInsideBlockEvent.patch rename to patches/server/0567-Add-EntityInsideBlockEvent.patch diff --git a/patches/server/0569-Attributes-API-for-item-defaults.patch b/patches/server/0568-Attributes-API-for-item-defaults.patch similarity index 100% rename from patches/server/0569-Attributes-API-for-item-defaults.patch rename to patches/server/0568-Attributes-API-for-item-defaults.patch diff --git a/patches/server/0570-Add-cause-to-Weather-ThunderChangeEvents.patch b/patches/server/0569-Add-cause-to-Weather-ThunderChangeEvents.patch similarity index 100% rename from patches/server/0570-Add-cause-to-Weather-ThunderChangeEvents.patch rename to patches/server/0569-Add-cause-to-Weather-ThunderChangeEvents.patch diff --git a/patches/server/0571-More-Lidded-Block-API.patch b/patches/server/0570-More-Lidded-Block-API.patch similarity index 100% rename from patches/server/0571-More-Lidded-Block-API.patch rename to patches/server/0570-More-Lidded-Block-API.patch diff --git a/patches/server/0572-Limit-item-frame-cursors-on-maps.patch b/patches/server/0571-Limit-item-frame-cursors-on-maps.patch similarity index 100% rename from patches/server/0572-Limit-item-frame-cursors-on-maps.patch rename to patches/server/0571-Limit-item-frame-cursors-on-maps.patch diff --git a/patches/server/0573-Add-PlayerKickEvent-causes.patch b/patches/server/0572-Add-PlayerKickEvent-causes.patch similarity index 100% rename from patches/server/0573-Add-PlayerKickEvent-causes.patch rename to patches/server/0572-Add-PlayerKickEvent-causes.patch diff --git a/patches/server/0574-Add-PufferFishStateChangeEvent.patch b/patches/server/0573-Add-PufferFishStateChangeEvent.patch similarity index 100% rename from patches/server/0574-Add-PufferFishStateChangeEvent.patch rename to patches/server/0573-Add-PufferFishStateChangeEvent.patch diff --git a/patches/server/0575-Fix-PlayerBucketEmptyEvent-result-itemstack.patch b/patches/server/0574-Fix-PlayerBucketEmptyEvent-result-itemstack.patch similarity index 100% rename from patches/server/0575-Fix-PlayerBucketEmptyEvent-result-itemstack.patch rename to patches/server/0574-Fix-PlayerBucketEmptyEvent-result-itemstack.patch diff --git a/patches/server/0576-Synchronize-PalettedContainer-instead-of-ThreadingDe.patch b/patches/server/0575-Synchronize-PalettedContainer-instead-of-ThreadingDe.patch similarity index 100% rename from patches/server/0576-Synchronize-PalettedContainer-instead-of-ThreadingDe.patch rename to patches/server/0575-Synchronize-PalettedContainer-instead-of-ThreadingDe.patch diff --git a/patches/server/0577-Add-option-to-fix-items-merging-through-walls.patch b/patches/server/0576-Add-option-to-fix-items-merging-through-walls.patch similarity index 100% rename from patches/server/0577-Add-option-to-fix-items-merging-through-walls.patch rename to patches/server/0576-Add-option-to-fix-items-merging-through-walls.patch diff --git a/patches/server/0578-Add-BellRevealRaiderEvent.patch b/patches/server/0577-Add-BellRevealRaiderEvent.patch similarity index 100% rename from patches/server/0578-Add-BellRevealRaiderEvent.patch rename to patches/server/0577-Add-BellRevealRaiderEvent.patch diff --git a/patches/server/0579-Fix-invulnerable-end-crystals.patch b/patches/server/0578-Fix-invulnerable-end-crystals.patch similarity index 100% rename from patches/server/0579-Fix-invulnerable-end-crystals.patch rename to patches/server/0578-Fix-invulnerable-end-crystals.patch diff --git a/patches/server/0580-Add-ElderGuardianAppearanceEvent.patch b/patches/server/0579-Add-ElderGuardianAppearanceEvent.patch similarity index 100% rename from patches/server/0580-Add-ElderGuardianAppearanceEvent.patch rename to patches/server/0579-Add-ElderGuardianAppearanceEvent.patch diff --git a/patches/server/0581-Fix-dangerous-end-portal-logic.patch b/patches/server/0580-Fix-dangerous-end-portal-logic.patch similarity index 100% rename from patches/server/0581-Fix-dangerous-end-portal-logic.patch rename to patches/server/0580-Fix-dangerous-end-portal-logic.patch diff --git a/patches/server/0582-Optimize-Biome-Mob-Lookups-for-Mob-Spawning.patch b/patches/server/0581-Optimize-Biome-Mob-Lookups-for-Mob-Spawning.patch similarity index 100% rename from patches/server/0582-Optimize-Biome-Mob-Lookups-for-Mob-Spawning.patch rename to patches/server/0581-Optimize-Biome-Mob-Lookups-for-Mob-Spawning.patch diff --git a/patches/server/0583-Make-item-validations-configurable.patch b/patches/server/0582-Make-item-validations-configurable.patch similarity index 100% rename from patches/server/0583-Make-item-validations-configurable.patch rename to patches/server/0582-Make-item-validations-configurable.patch diff --git a/patches/server/0584-Line-Of-Sight-Changes.patch b/patches/server/0583-Line-Of-Sight-Changes.patch similarity index 100% rename from patches/server/0584-Line-Of-Sight-Changes.patch rename to patches/server/0583-Line-Of-Sight-Changes.patch diff --git a/patches/server/0585-add-per-world-spawn-limits.patch b/patches/server/0584-add-per-world-spawn-limits.patch similarity index 100% rename from patches/server/0585-add-per-world-spawn-limits.patch rename to patches/server/0584-add-per-world-spawn-limits.patch diff --git a/patches/server/0586-Fix-potions-splash-events.patch b/patches/server/0585-Fix-potions-splash-events.patch similarity index 100% rename from patches/server/0586-Fix-potions-splash-events.patch rename to patches/server/0585-Fix-potions-splash-events.patch diff --git a/patches/server/0587-Add-more-LimitedRegion-API.patch b/patches/server/0586-Add-more-LimitedRegion-API.patch similarity index 100% rename from patches/server/0587-Add-more-LimitedRegion-API.patch rename to patches/server/0586-Add-more-LimitedRegion-API.patch diff --git a/patches/server/0588-Fix-PlayerDropItemEvent-using-wrong-item.patch b/patches/server/0587-Fix-PlayerDropItemEvent-using-wrong-item.patch similarity index 100% rename from patches/server/0588-Fix-PlayerDropItemEvent-using-wrong-item.patch rename to patches/server/0587-Fix-PlayerDropItemEvent-using-wrong-item.patch diff --git a/patches/server/0589-Missing-Entity-API.patch b/patches/server/0588-Missing-Entity-API.patch similarity index 99% rename from patches/server/0589-Missing-Entity-API.patch rename to patches/server/0588-Missing-Entity-API.patch index 3d09f01907..b2f9618027 100644 --- a/patches/server/0589-Missing-Entity-API.patch +++ b/patches/server/0588-Missing-Entity-API.patch @@ -38,7 +38,7 @@ Co-authored-by: booky10 Co-authored-by: Amin diff --git a/src/main/java/com/destroystokyo/paper/entity/ai/MobGoalHelper.java b/src/main/java/com/destroystokyo/paper/entity/ai/MobGoalHelper.java -index 5fb56067221434aa80e626437ed10f65bf416e4f..cfe6a6f6bcfd7a3b29ab25f5a6745d31c18f338d 100644 +index 8117578ced94aa6bf01871f6526a388385c4adf2..59699c59fdfc611177fdb3136f84ab539b17d9c9 100644 --- a/src/main/java/com/destroystokyo/paper/entity/ai/MobGoalHelper.java +++ b/src/main/java/com/destroystokyo/paper/entity/ai/MobGoalHelper.java @@ -165,7 +165,7 @@ public class MobGoalHelper { diff --git a/patches/server/0590-Ensure-disconnect-for-book-edit-is-called-on-main.patch b/patches/server/0589-Ensure-disconnect-for-book-edit-is-called-on-main.patch similarity index 100% rename from patches/server/0590-Ensure-disconnect-for-book-edit-is-called-on-main.patch rename to patches/server/0589-Ensure-disconnect-for-book-edit-is-called-on-main.patch diff --git a/patches/server/0591-Fix-return-value-of-Block-applyBoneMeal-always-being.patch b/patches/server/0590-Fix-return-value-of-Block-applyBoneMeal-always-being.patch similarity index 100% rename from patches/server/0591-Fix-return-value-of-Block-applyBoneMeal-always-being.patch rename to patches/server/0590-Fix-return-value-of-Block-applyBoneMeal-always-being.patch diff --git a/patches/server/0592-Use-getChunkIfLoadedImmediately-in-places.patch b/patches/server/0591-Use-getChunkIfLoadedImmediately-in-places.patch similarity index 97% rename from patches/server/0592-Use-getChunkIfLoadedImmediately-in-places.patch rename to patches/server/0591-Use-getChunkIfLoadedImmediately-in-places.patch index f15ccf89a0..19442f967b 100644 --- a/patches/server/0592-Use-getChunkIfLoadedImmediately-in-places.patch +++ b/patches/server/0591-Use-getChunkIfLoadedImmediately-in-places.patch @@ -21,7 +21,7 @@ index 497dd11d7965c9f9a2cf991712cd30d875537240..49c23f4fbafbae516f3546c200448c40 @Override diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 6dad081aa935cf3be19a0e0b913b2aaf97206230..fb2e1f1d9fcc3d2d1bd37f136f6a06ae5ccf79a1 100644 +index c4086b17db7624489a8873ee321e7707078e5e0b..9c8a2cae9832f2503aed6c2d6e32cdc2f12029c9 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -196,6 +196,13 @@ public abstract class Level implements LevelAccessor, AutoCloseable { diff --git a/patches/server/0593-Fix-commands-from-signs-not-firing-command-events.patch b/patches/server/0592-Fix-commands-from-signs-not-firing-command-events.patch similarity index 100% rename from patches/server/0593-Fix-commands-from-signs-not-firing-command-events.patch rename to patches/server/0592-Fix-commands-from-signs-not-firing-command-events.patch diff --git a/patches/server/0594-Add-PlayerArmSwingEvent.patch b/patches/server/0593-Add-PlayerArmSwingEvent.patch similarity index 100% rename from patches/server/0594-Add-PlayerArmSwingEvent.patch rename to patches/server/0593-Add-PlayerArmSwingEvent.patch diff --git a/patches/server/0595-Fix-kick-event-leave-message-not-being-sent.patch b/patches/server/0594-Fix-kick-event-leave-message-not-being-sent.patch similarity index 100% rename from patches/server/0595-Fix-kick-event-leave-message-not-being-sent.patch rename to patches/server/0594-Fix-kick-event-leave-message-not-being-sent.patch diff --git a/patches/server/0596-Add-config-for-mobs-immune-to-default-effects.patch b/patches/server/0595-Add-config-for-mobs-immune-to-default-effects.patch similarity index 100% rename from patches/server/0596-Add-config-for-mobs-immune-to-default-effects.patch rename to patches/server/0595-Add-config-for-mobs-immune-to-default-effects.patch diff --git a/patches/server/0597-Don-t-apply-cramming-damage-to-players.patch b/patches/server/0596-Don-t-apply-cramming-damage-to-players.patch similarity index 100% rename from patches/server/0597-Don-t-apply-cramming-damage-to-players.patch rename to patches/server/0596-Don-t-apply-cramming-damage-to-players.patch diff --git a/patches/server/0598-Rate-options-and-timings-for-sensors-and-behaviors.patch b/patches/server/0597-Rate-options-and-timings-for-sensors-and-behaviors.patch similarity index 100% rename from patches/server/0598-Rate-options-and-timings-for-sensors-and-behaviors.patch rename to patches/server/0597-Rate-options-and-timings-for-sensors-and-behaviors.patch diff --git a/patches/server/0599-Add-missing-forceDrop-toggles.patch b/patches/server/0598-Add-missing-forceDrop-toggles.patch similarity index 100% rename from patches/server/0599-Add-missing-forceDrop-toggles.patch rename to patches/server/0598-Add-missing-forceDrop-toggles.patch diff --git a/patches/server/0600-Stinger-API.patch b/patches/server/0599-Stinger-API.patch similarity index 100% rename from patches/server/0600-Stinger-API.patch rename to patches/server/0599-Stinger-API.patch diff --git a/patches/server/0601-Fix-incosistency-issue-with-empty-map-items-in-CB.patch b/patches/server/0600-Fix-incosistency-issue-with-empty-map-items-in-CB.patch similarity index 100% rename from patches/server/0601-Fix-incosistency-issue-with-empty-map-items-in-CB.patch rename to patches/server/0600-Fix-incosistency-issue-with-empty-map-items-in-CB.patch diff --git a/patches/server/0602-Add-System.out-err-catcher.patch b/patches/server/0601-Add-System.out-err-catcher.patch similarity index 100% rename from patches/server/0602-Add-System.out-err-catcher.patch rename to patches/server/0601-Add-System.out-err-catcher.patch diff --git a/patches/server/0603-Rewrite-LogEvents-to-contain-the-source-jars-in-stac.patch b/patches/server/0602-Rewrite-LogEvents-to-contain-the-source-jars-in-stac.patch similarity index 100% rename from patches/server/0603-Rewrite-LogEvents-to-contain-the-source-jars-in-stac.patch rename to patches/server/0602-Rewrite-LogEvents-to-contain-the-source-jars-in-stac.patch diff --git a/patches/server/0604-Prevent-AFK-kick-while-watching-end-credits.patch b/patches/server/0603-Prevent-AFK-kick-while-watching-end-credits.patch similarity index 100% rename from patches/server/0604-Prevent-AFK-kick-while-watching-end-credits.patch rename to patches/server/0603-Prevent-AFK-kick-while-watching-end-credits.patch diff --git a/patches/server/0605-Allow-skipping-writing-of-comments-to-server.propert.patch b/patches/server/0604-Allow-skipping-writing-of-comments-to-server.propert.patch similarity index 100% rename from patches/server/0605-Allow-skipping-writing-of-comments-to-server.propert.patch rename to patches/server/0604-Allow-skipping-writing-of-comments-to-server.propert.patch diff --git a/patches/server/0606-Add-PlayerSetSpawnEvent.patch b/patches/server/0605-Add-PlayerSetSpawnEvent.patch similarity index 100% rename from patches/server/0606-Add-PlayerSetSpawnEvent.patch rename to patches/server/0605-Add-PlayerSetSpawnEvent.patch diff --git a/patches/server/0607-Make-hoppers-respect-inventory-max-stack-size.patch b/patches/server/0606-Make-hoppers-respect-inventory-max-stack-size.patch similarity index 100% rename from patches/server/0607-Make-hoppers-respect-inventory-max-stack-size.patch rename to patches/server/0606-Make-hoppers-respect-inventory-max-stack-size.patch diff --git a/patches/server/0608-Optimize-entity-tracker-passenger-checks.patch b/patches/server/0607-Optimize-entity-tracker-passenger-checks.patch similarity index 100% rename from patches/server/0608-Optimize-entity-tracker-passenger-checks.patch rename to patches/server/0607-Optimize-entity-tracker-passenger-checks.patch diff --git a/patches/server/0609-Config-option-for-Piglins-guarding-chests.patch b/patches/server/0608-Config-option-for-Piglins-guarding-chests.patch similarity index 100% rename from patches/server/0609-Config-option-for-Piglins-guarding-chests.patch rename to patches/server/0608-Config-option-for-Piglins-guarding-chests.patch diff --git a/patches/server/0610-Add-EntityDamageItemEvent.patch b/patches/server/0609-Add-EntityDamageItemEvent.patch similarity index 100% rename from patches/server/0610-Add-EntityDamageItemEvent.patch rename to patches/server/0609-Add-EntityDamageItemEvent.patch diff --git a/patches/server/0611-Optimize-indirect-passenger-iteration.patch b/patches/server/0610-Optimize-indirect-passenger-iteration.patch similarity index 100% rename from patches/server/0611-Optimize-indirect-passenger-iteration.patch rename to patches/server/0610-Optimize-indirect-passenger-iteration.patch diff --git a/patches/server/0612-Configurable-item-frame-map-cursor-update-interval.patch b/patches/server/0611-Configurable-item-frame-map-cursor-update-interval.patch similarity index 100% rename from patches/server/0612-Configurable-item-frame-map-cursor-update-interval.patch rename to patches/server/0611-Configurable-item-frame-map-cursor-update-interval.patch diff --git a/patches/server/0613-Clear-bucket-NBT-after-dispense.patch b/patches/server/0612-Clear-bucket-NBT-after-dispense.patch similarity index 100% rename from patches/server/0613-Clear-bucket-NBT-after-dispense.patch rename to patches/server/0612-Clear-bucket-NBT-after-dispense.patch diff --git a/patches/server/0614-Change-EnderEye-target-without-changing-other-things.patch b/patches/server/0613-Change-EnderEye-target-without-changing-other-things.patch similarity index 100% rename from patches/server/0614-Change-EnderEye-target-without-changing-other-things.patch rename to patches/server/0613-Change-EnderEye-target-without-changing-other-things.patch diff --git a/patches/server/0615-Add-BlockBreakBlockEvent.patch b/patches/server/0614-Add-BlockBreakBlockEvent.patch similarity index 100% rename from patches/server/0615-Add-BlockBreakBlockEvent.patch rename to patches/server/0614-Add-BlockBreakBlockEvent.patch diff --git a/patches/server/0616-Option-to-prevent-NBT-copy-in-smithing-recipes.patch b/patches/server/0615-Option-to-prevent-NBT-copy-in-smithing-recipes.patch similarity index 100% rename from patches/server/0616-Option-to-prevent-NBT-copy-in-smithing-recipes.patch rename to patches/server/0615-Option-to-prevent-NBT-copy-in-smithing-recipes.patch diff --git a/patches/server/0617-More-CommandBlock-API.patch b/patches/server/0616-More-CommandBlock-API.patch similarity index 100% rename from patches/server/0617-More-CommandBlock-API.patch rename to patches/server/0616-More-CommandBlock-API.patch diff --git a/patches/server/0618-Add-missing-team-sidebar-display-slots.patch b/patches/server/0617-Add-missing-team-sidebar-display-slots.patch similarity index 100% rename from patches/server/0618-Add-missing-team-sidebar-display-slots.patch rename to patches/server/0617-Add-missing-team-sidebar-display-slots.patch diff --git a/patches/server/0619-Add-back-EntityPortalExitEvent.patch b/patches/server/0618-Add-back-EntityPortalExitEvent.patch similarity index 100% rename from patches/server/0619-Add-back-EntityPortalExitEvent.patch rename to patches/server/0618-Add-back-EntityPortalExitEvent.patch diff --git a/patches/server/0620-Add-methods-to-find-targets-for-lightning-strikes.patch b/patches/server/0619-Add-methods-to-find-targets-for-lightning-strikes.patch similarity index 100% rename from patches/server/0620-Add-methods-to-find-targets-for-lightning-strikes.patch rename to patches/server/0619-Add-methods-to-find-targets-for-lightning-strikes.patch diff --git a/patches/server/0621-Get-entity-default-attributes.patch b/patches/server/0620-Get-entity-default-attributes.patch similarity index 100% rename from patches/server/0621-Get-entity-default-attributes.patch rename to patches/server/0620-Get-entity-default-attributes.patch diff --git a/patches/server/0622-Left-handed-API.patch b/patches/server/0621-Left-handed-API.patch similarity index 100% rename from patches/server/0622-Left-handed-API.patch rename to patches/server/0621-Left-handed-API.patch diff --git a/patches/server/0623-Add-more-advancement-API.patch b/patches/server/0622-Add-more-advancement-API.patch similarity index 100% rename from patches/server/0623-Add-more-advancement-API.patch rename to patches/server/0622-Add-more-advancement-API.patch diff --git a/patches/server/0624-Add-ItemFactory-getSpawnEgg-API.patch b/patches/server/0623-Add-ItemFactory-getSpawnEgg-API.patch similarity index 100% rename from patches/server/0624-Add-ItemFactory-getSpawnEgg-API.patch rename to patches/server/0623-Add-ItemFactory-getSpawnEgg-API.patch diff --git a/patches/server/0625-Add-critical-damage-API.patch b/patches/server/0624-Add-critical-damage-API.patch similarity index 100% rename from patches/server/0625-Add-critical-damage-API.patch rename to patches/server/0624-Add-critical-damage-API.patch diff --git a/patches/server/0626-Fix-issues-with-mob-conversion.patch b/patches/server/0625-Fix-issues-with-mob-conversion.patch similarity index 100% rename from patches/server/0626-Fix-issues-with-mob-conversion.patch rename to patches/server/0625-Fix-issues-with-mob-conversion.patch diff --git a/patches/server/0627-Add-isCollidable-methods-to-various-places.patch b/patches/server/0626-Add-isCollidable-methods-to-various-places.patch similarity index 100% rename from patches/server/0627-Add-isCollidable-methods-to-various-places.patch rename to patches/server/0626-Add-isCollidable-methods-to-various-places.patch diff --git a/patches/server/0628-Goat-ram-API.patch b/patches/server/0627-Goat-ram-API.patch similarity index 100% rename from patches/server/0628-Goat-ram-API.patch rename to patches/server/0627-Goat-ram-API.patch diff --git a/patches/server/0629-Add-API-for-resetting-a-single-score.patch b/patches/server/0628-Add-API-for-resetting-a-single-score.patch similarity index 100% rename from patches/server/0629-Add-API-for-resetting-a-single-score.patch rename to patches/server/0628-Add-API-for-resetting-a-single-score.patch diff --git a/patches/server/0630-Add-Raw-Byte-Entity-Serialization.patch b/patches/server/0629-Add-Raw-Byte-Entity-Serialization.patch similarity index 100% rename from patches/server/0630-Add-Raw-Byte-Entity-Serialization.patch rename to patches/server/0629-Add-Raw-Byte-Entity-Serialization.patch diff --git a/patches/server/0631-Vanilla-command-permission-fixes.patch b/patches/server/0630-Vanilla-command-permission-fixes.patch similarity index 100% rename from patches/server/0631-Vanilla-command-permission-fixes.patch rename to patches/server/0630-Vanilla-command-permission-fixes.patch diff --git a/patches/server/0632-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch b/patches/server/0631-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch similarity index 100% rename from patches/server/0632-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch rename to patches/server/0631-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch diff --git a/patches/server/0633-Fix-GameProfileCache-concurrency.patch b/patches/server/0632-Fix-GameProfileCache-concurrency.patch similarity index 100% rename from patches/server/0633-Fix-GameProfileCache-concurrency.patch rename to patches/server/0632-Fix-GameProfileCache-concurrency.patch diff --git a/patches/server/0634-Improve-and-expand-AsyncCatcher.patch b/patches/server/0633-Improve-and-expand-AsyncCatcher.patch similarity index 100% rename from patches/server/0634-Improve-and-expand-AsyncCatcher.patch rename to patches/server/0633-Improve-and-expand-AsyncCatcher.patch diff --git a/patches/server/0635-Add-paper-mobcaps-and-paper-playermobcaps.patch b/patches/server/0634-Add-paper-mobcaps-and-paper-playermobcaps.patch similarity index 100% rename from patches/server/0635-Add-paper-mobcaps-and-paper-playermobcaps.patch rename to patches/server/0634-Add-paper-mobcaps-and-paper-playermobcaps.patch diff --git a/patches/server/0636-Sanitize-ResourceLocation-error-logging.patch b/patches/server/0635-Sanitize-ResourceLocation-error-logging.patch similarity index 100% rename from patches/server/0636-Sanitize-ResourceLocation-error-logging.patch rename to patches/server/0635-Sanitize-ResourceLocation-error-logging.patch diff --git a/patches/server/0637-Manually-inline-methods-in-BlockPosition.patch b/patches/server/0636-Manually-inline-methods-in-BlockPosition.patch similarity index 100% rename from patches/server/0637-Manually-inline-methods-in-BlockPosition.patch rename to patches/server/0636-Manually-inline-methods-in-BlockPosition.patch diff --git a/patches/server/0638-Name-craft-scheduler-threads-according-to-the-plugin.patch b/patches/server/0637-Name-craft-scheduler-threads-according-to-the-plugin.patch similarity index 100% rename from patches/server/0638-Name-craft-scheduler-threads-according-to-the-plugin.patch rename to patches/server/0637-Name-craft-scheduler-threads-according-to-the-plugin.patch diff --git a/patches/server/0639-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch b/patches/server/0638-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch similarity index 90% rename from patches/server/0639-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch rename to patches/server/0638-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch index 945af5ac43..be89fb6192 100644 --- a/patches/server/0639-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch +++ b/patches/server/0638-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch @@ -10,10 +10,10 @@ chunks did get inlined, but the standard CPS.getChunkAt method was not inlined. diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index fb2e1f1d9fcc3d2d1bd37f136f6a06ae5ccf79a1..74cb6cf55ed9b4e31ac3c06d9612823f7ede9ff3 100644 +index 9c8a2cae9832f2503aed6c2d6e32cdc2f12029c9..709d3e5c506c9dd14f51c455eee7093fb9703168 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java -@@ -365,6 +365,15 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -372,6 +372,15 @@ public abstract class Level implements LevelAccessor, AutoCloseable { @Override public final LevelChunk getChunk(int chunkX, int chunkZ) { // Paper - final to help inline diff --git a/patches/server/0640-Don-t-read-neighbour-chunk-data-off-disk-when-conver.patch b/patches/server/0639-Don-t-read-neighbour-chunk-data-off-disk-when-conver.patch similarity index 100% rename from patches/server/0640-Don-t-read-neighbour-chunk-data-off-disk-when-conver.patch rename to patches/server/0639-Don-t-read-neighbour-chunk-data-off-disk-when-conver.patch diff --git a/patches/server/0641-Don-t-lookup-fluid-state-when-raytracing-skip-air-bl.patch b/patches/server/0640-Don-t-lookup-fluid-state-when-raytracing-skip-air-bl.patch similarity index 100% rename from patches/server/0641-Don-t-lookup-fluid-state-when-raytracing-skip-air-bl.patch rename to patches/server/0640-Don-t-lookup-fluid-state-when-raytracing-skip-air-bl.patch diff --git a/patches/server/0642-Time-scoreboard-search.patch b/patches/server/0641-Time-scoreboard-search.patch similarity index 100% rename from patches/server/0642-Time-scoreboard-search.patch rename to patches/server/0641-Time-scoreboard-search.patch diff --git a/patches/server/0643-Send-full-pos-packets-for-hard-colliding-entities.patch b/patches/server/0642-Send-full-pos-packets-for-hard-colliding-entities.patch similarity index 100% rename from patches/server/0643-Send-full-pos-packets-for-hard-colliding-entities.patch rename to patches/server/0642-Send-full-pos-packets-for-hard-colliding-entities.patch diff --git a/patches/server/0644-Oprimise-map-impl-for-tracked-players.patch b/patches/server/0643-Oprimise-map-impl-for-tracked-players.patch similarity index 87% rename from patches/server/0644-Oprimise-map-impl-for-tracked-players.patch rename to patches/server/0643-Oprimise-map-impl-for-tracked-players.patch index b5dd0be2c3..2b7347016c 100644 --- a/patches/server/0644-Oprimise-map-impl-for-tracked-players.patch +++ b/patches/server/0643-Oprimise-map-impl-for-tracked-players.patch @@ -7,10 +7,10 @@ Reference2BooleanOpenHashMap is going to have better lookups than HashMap. diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index 1ad4e5a0a4d236012c1dfb0dbffdacd0f134b72c..c0bc7495109a8d727c913e7cdc98d75a30bc7a55 100644 +index 69d140fbcccc9054f15716e35a7b854b387fe21d..f7ebb560a3f8aebb5e35397814eaa7af098897c3 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java -@@ -1115,7 +1115,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1119,7 +1119,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider final Entity entity; private final int range; SectionPos lastSectionPos; diff --git a/patches/server/0645-Optimise-BlockSoil-nearby-water-lookup.patch b/patches/server/0644-Optimise-BlockSoil-nearby-water-lookup.patch similarity index 100% rename from patches/server/0645-Optimise-BlockSoil-nearby-water-lookup.patch rename to patches/server/0644-Optimise-BlockSoil-nearby-water-lookup.patch diff --git a/patches/server/0646-Distance-manager-tick-timings.patch b/patches/server/0645-Distance-manager-tick-timings.patch similarity index 100% rename from patches/server/0646-Distance-manager-tick-timings.patch rename to patches/server/0645-Distance-manager-tick-timings.patch diff --git a/patches/server/0647-Fix-merchant-inventory-not-closing-on-entity-removal.patch b/patches/server/0646-Fix-merchant-inventory-not-closing-on-entity-removal.patch similarity index 100% rename from patches/server/0647-Fix-merchant-inventory-not-closing-on-entity-removal.patch rename to patches/server/0646-Fix-merchant-inventory-not-closing-on-entity-removal.patch diff --git a/patches/server/0648-Check-requirement-before-suggesting-root-nodes.patch b/patches/server/0647-Check-requirement-before-suggesting-root-nodes.patch similarity index 100% rename from patches/server/0648-Check-requirement-before-suggesting-root-nodes.patch rename to patches/server/0647-Check-requirement-before-suggesting-root-nodes.patch diff --git a/patches/server/0649-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch b/patches/server/0648-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch similarity index 100% rename from patches/server/0649-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch rename to patches/server/0648-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch diff --git a/patches/server/0650-Add-packet-limiter-config.patch b/patches/server/0649-Add-packet-limiter-config.patch similarity index 100% rename from patches/server/0650-Add-packet-limiter-config.patch rename to patches/server/0649-Add-packet-limiter-config.patch diff --git a/patches/server/0651-Fix-setPatternColor-on-tropical-fish-bucket-meta.patch b/patches/server/0650-Fix-setPatternColor-on-tropical-fish-bucket-meta.patch similarity index 100% rename from patches/server/0651-Fix-setPatternColor-on-tropical-fish-bucket-meta.patch rename to patches/server/0650-Fix-setPatternColor-on-tropical-fish-bucket-meta.patch diff --git a/patches/server/0652-Ensure-valid-vehicle-status.patch b/patches/server/0651-Ensure-valid-vehicle-status.patch similarity index 100% rename from patches/server/0652-Ensure-valid-vehicle-status.patch rename to patches/server/0651-Ensure-valid-vehicle-status.patch diff --git a/patches/server/0653-Prevent-softlocked-end-exit-portal-generation.patch b/patches/server/0652-Prevent-softlocked-end-exit-portal-generation.patch similarity index 100% rename from patches/server/0653-Prevent-softlocked-end-exit-portal-generation.patch rename to patches/server/0652-Prevent-softlocked-end-exit-portal-generation.patch diff --git a/patches/server/0654-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch b/patches/server/0653-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch similarity index 100% rename from patches/server/0654-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch rename to patches/server/0653-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch diff --git a/patches/server/0655-Don-t-log-debug-logging-being-disabled.patch b/patches/server/0654-Don-t-log-debug-logging-being-disabled.patch similarity index 100% rename from patches/server/0655-Don-t-log-debug-logging-being-disabled.patch rename to patches/server/0654-Don-t-log-debug-logging-being-disabled.patch diff --git a/patches/server/0656-fix-various-menus-with-empty-level-accesses.patch b/patches/server/0655-fix-various-menus-with-empty-level-accesses.patch similarity index 100% rename from patches/server/0656-fix-various-menus-with-empty-level-accesses.patch rename to patches/server/0655-fix-various-menus-with-empty-level-accesses.patch diff --git a/patches/server/0657-Preserve-overstacked-loot.patch b/patches/server/0656-Preserve-overstacked-loot.patch similarity index 100% rename from patches/server/0657-Preserve-overstacked-loot.patch rename to patches/server/0656-Preserve-overstacked-loot.patch diff --git a/patches/server/0658-Update-head-rotation-in-missing-places.patch b/patches/server/0657-Update-head-rotation-in-missing-places.patch similarity index 100% rename from patches/server/0658-Update-head-rotation-in-missing-places.patch rename to patches/server/0657-Update-head-rotation-in-missing-places.patch diff --git a/patches/server/0659-prevent-unintended-light-block-manipulation.patch b/patches/server/0658-prevent-unintended-light-block-manipulation.patch similarity index 100% rename from patches/server/0659-prevent-unintended-light-block-manipulation.patch rename to patches/server/0658-prevent-unintended-light-block-manipulation.patch diff --git a/patches/server/0660-Fix-CraftCriteria-defaults-map.patch b/patches/server/0659-Fix-CraftCriteria-defaults-map.patch similarity index 100% rename from patches/server/0660-Fix-CraftCriteria-defaults-map.patch rename to patches/server/0659-Fix-CraftCriteria-defaults-map.patch diff --git a/patches/server/0661-Fix-upstreams-block-state-factories.patch b/patches/server/0660-Fix-upstreams-block-state-factories.patch similarity index 100% rename from patches/server/0661-Fix-upstreams-block-state-factories.patch rename to patches/server/0660-Fix-upstreams-block-state-factories.patch diff --git a/patches/server/0662-Configurable-feature-seeds.patch b/patches/server/0661-Configurable-feature-seeds.patch similarity index 100% rename from patches/server/0662-Configurable-feature-seeds.patch rename to patches/server/0661-Configurable-feature-seeds.patch diff --git a/patches/server/0663-Add-root-admin-user-detection.patch b/patches/server/0662-Add-root-admin-user-detection.patch similarity index 100% rename from patches/server/0663-Add-root-admin-user-detection.patch rename to patches/server/0662-Add-root-admin-user-detection.patch diff --git a/patches/server/0664-Always-allow-item-changing-in-Fireball.patch b/patches/server/0663-Always-allow-item-changing-in-Fireball.patch similarity index 100% rename from patches/server/0664-Always-allow-item-changing-in-Fireball.patch rename to patches/server/0663-Always-allow-item-changing-in-Fireball.patch diff --git a/patches/server/0665-don-t-attempt-to-teleport-dead-entities.patch b/patches/server/0664-don-t-attempt-to-teleport-dead-entities.patch similarity index 100% rename from patches/server/0665-don-t-attempt-to-teleport-dead-entities.patch rename to patches/server/0664-don-t-attempt-to-teleport-dead-entities.patch diff --git a/patches/server/0666-Prevent-excessive-velocity-through-repeated-crits.patch b/patches/server/0665-Prevent-excessive-velocity-through-repeated-crits.patch similarity index 100% rename from patches/server/0666-Prevent-excessive-velocity-through-repeated-crits.patch rename to patches/server/0665-Prevent-excessive-velocity-through-repeated-crits.patch diff --git a/patches/server/0667-Remove-client-side-code-using-deprecated-for-removal.patch b/patches/server/0666-Remove-client-side-code-using-deprecated-for-removal.patch similarity index 100% rename from patches/server/0667-Remove-client-side-code-using-deprecated-for-removal.patch rename to patches/server/0666-Remove-client-side-code-using-deprecated-for-removal.patch diff --git a/patches/server/0668-Fix-removing-recipes-from-RecipeIterator.patch b/patches/server/0667-Fix-removing-recipes-from-RecipeIterator.patch similarity index 100% rename from patches/server/0668-Fix-removing-recipes-from-RecipeIterator.patch rename to patches/server/0667-Fix-removing-recipes-from-RecipeIterator.patch diff --git a/patches/server/0669-Prevent-sending-oversized-item-data-in-equipment-and.patch b/patches/server/0668-Prevent-sending-oversized-item-data-in-equipment-and.patch similarity index 100% rename from patches/server/0669-Prevent-sending-oversized-item-data-in-equipment-and.patch rename to patches/server/0668-Prevent-sending-oversized-item-data-in-equipment-and.patch diff --git a/patches/server/0670-Hide-unnecessary-itemmeta-from-clients.patch b/patches/server/0669-Hide-unnecessary-itemmeta-from-clients.patch similarity index 100% rename from patches/server/0670-Hide-unnecessary-itemmeta-from-clients.patch rename to patches/server/0669-Hide-unnecessary-itemmeta-from-clients.patch diff --git a/patches/server/0671-Fix-Spigot-growth-modifiers.patch b/patches/server/0670-Fix-Spigot-growth-modifiers.patch similarity index 100% rename from patches/server/0671-Fix-Spigot-growth-modifiers.patch rename to patches/server/0670-Fix-Spigot-growth-modifiers.patch diff --git a/patches/server/0672-Prevent-ContainerOpenersCounter-openCount-from-going.patch b/patches/server/0671-Prevent-ContainerOpenersCounter-openCount-from-going.patch similarity index 100% rename from patches/server/0672-Prevent-ContainerOpenersCounter-openCount-from-going.patch rename to patches/server/0671-Prevent-ContainerOpenersCounter-openCount-from-going.patch diff --git a/patches/server/0673-Add-PlayerItemFrameChangeEvent.patch b/patches/server/0672-Add-PlayerItemFrameChangeEvent.patch similarity index 100% rename from patches/server/0673-Add-PlayerItemFrameChangeEvent.patch rename to patches/server/0672-Add-PlayerItemFrameChangeEvent.patch diff --git a/patches/server/0674-Optimize-HashMapPalette.patch b/patches/server/0673-Optimize-HashMapPalette.patch similarity index 100% rename from patches/server/0674-Optimize-HashMapPalette.patch rename to patches/server/0673-Optimize-HashMapPalette.patch diff --git a/patches/server/0675-Allow-delegation-to-vanilla-chunk-gen.patch b/patches/server/0674-Allow-delegation-to-vanilla-chunk-gen.patch similarity index 100% rename from patches/server/0675-Allow-delegation-to-vanilla-chunk-gen.patch rename to patches/server/0674-Allow-delegation-to-vanilla-chunk-gen.patch diff --git a/patches/server/0676-Fix-ChunkSnapshot-isSectionEmpty-int-and-optimize-Pa.patch b/patches/server/0675-Fix-ChunkSnapshot-isSectionEmpty-int-and-optimize-Pa.patch similarity index 100% rename from patches/server/0676-Fix-ChunkSnapshot-isSectionEmpty-int-and-optimize-Pa.patch rename to patches/server/0675-Fix-ChunkSnapshot-isSectionEmpty-int-and-optimize-Pa.patch diff --git a/patches/server/0677-Add-more-Campfire-API.patch b/patches/server/0676-Add-more-Campfire-API.patch similarity index 100% rename from patches/server/0677-Add-more-Campfire-API.patch rename to patches/server/0676-Add-more-Campfire-API.patch diff --git a/patches/server/0678-Only-write-chunk-data-to-disk-if-it-serializes-witho.patch b/patches/server/0677-Only-write-chunk-data-to-disk-if-it-serializes-witho.patch similarity index 100% rename from patches/server/0678-Only-write-chunk-data-to-disk-if-it-serializes-witho.patch rename to patches/server/0677-Only-write-chunk-data-to-disk-if-it-serializes-witho.patch diff --git a/patches/server/0679-Forward-CraftEntity-in-teleport-command.patch b/patches/server/0678-Forward-CraftEntity-in-teleport-command.patch similarity index 100% rename from patches/server/0679-Forward-CraftEntity-in-teleport-command.patch rename to patches/server/0678-Forward-CraftEntity-in-teleport-command.patch diff --git a/patches/server/0680-Improve-scoreboard-entries.patch b/patches/server/0679-Improve-scoreboard-entries.patch similarity index 100% rename from patches/server/0680-Improve-scoreboard-entries.patch rename to patches/server/0679-Improve-scoreboard-entries.patch diff --git a/patches/server/0681-Entity-powdered-snow-API.patch b/patches/server/0680-Entity-powdered-snow-API.patch similarity index 100% rename from patches/server/0681-Entity-powdered-snow-API.patch rename to patches/server/0680-Entity-powdered-snow-API.patch diff --git a/patches/server/0682-Add-API-for-item-entity-health.patch b/patches/server/0681-Add-API-for-item-entity-health.patch similarity index 100% rename from patches/server/0682-Add-API-for-item-entity-health.patch rename to patches/server/0681-Add-API-for-item-entity-health.patch diff --git a/patches/server/0683-Configurable-max-block-light-for-monster-spawning.patch b/patches/server/0682-Configurable-max-block-light-for-monster-spawning.patch similarity index 100% rename from patches/server/0683-Configurable-max-block-light-for-monster-spawning.patch rename to patches/server/0682-Configurable-max-block-light-for-monster-spawning.patch diff --git a/patches/server/0684-Fix-sticky-pistons-and-BlockPistonRetractEvent.patch b/patches/server/0683-Fix-sticky-pistons-and-BlockPistonRetractEvent.patch similarity index 100% rename from patches/server/0684-Fix-sticky-pistons-and-BlockPistonRetractEvent.patch rename to patches/server/0683-Fix-sticky-pistons-and-BlockPistonRetractEvent.patch diff --git a/patches/server/0685-Load-effect-amplifiers-greater-than-127-correctly.patch b/patches/server/0684-Load-effect-amplifiers-greater-than-127-correctly.patch similarity index 100% rename from patches/server/0685-Load-effect-amplifiers-greater-than-127-correctly.patch rename to patches/server/0684-Load-effect-amplifiers-greater-than-127-correctly.patch diff --git a/patches/server/0686-Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch b/patches/server/0685-Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch similarity index 100% rename from patches/server/0686-Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch rename to patches/server/0685-Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch diff --git a/patches/server/0687-Fix-bees-aging-inside-hives.patch b/patches/server/0686-Fix-bees-aging-inside-hives.patch similarity index 100% rename from patches/server/0687-Fix-bees-aging-inside-hives.patch rename to patches/server/0686-Fix-bees-aging-inside-hives.patch diff --git a/patches/server/0688-Bucketable-API.patch b/patches/server/0687-Bucketable-API.patch similarity index 100% rename from patches/server/0688-Bucketable-API.patch rename to patches/server/0687-Bucketable-API.patch diff --git a/patches/server/0689-Validate-usernames.patch b/patches/server/0688-Validate-usernames.patch similarity index 100% rename from patches/server/0689-Validate-usernames.patch rename to patches/server/0688-Validate-usernames.patch diff --git a/patches/server/0690-Make-water-animal-spawn-height-configurable.patch b/patches/server/0689-Make-water-animal-spawn-height-configurable.patch similarity index 100% rename from patches/server/0690-Make-water-animal-spawn-height-configurable.patch rename to patches/server/0689-Make-water-animal-spawn-height-configurable.patch diff --git a/patches/server/0691-Expose-vanilla-BiomeProvider-from-WorldInfo.patch b/patches/server/0690-Expose-vanilla-BiomeProvider-from-WorldInfo.patch similarity index 100% rename from patches/server/0691-Expose-vanilla-BiomeProvider-from-WorldInfo.patch rename to patches/server/0690-Expose-vanilla-BiomeProvider-from-WorldInfo.patch diff --git a/patches/server/0692-Add-config-option-for-worlds-affected-by-time-cmd.patch b/patches/server/0691-Add-config-option-for-worlds-affected-by-time-cmd.patch similarity index 100% rename from patches/server/0692-Add-config-option-for-worlds-affected-by-time-cmd.patch rename to patches/server/0691-Add-config-option-for-worlds-affected-by-time-cmd.patch diff --git a/patches/server/0693-Add-missing-IAE-check-for-PersistentDataContainer-ha.patch b/patches/server/0692-Add-missing-IAE-check-for-PersistentDataContainer-ha.patch similarity index 100% rename from patches/server/0693-Add-missing-IAE-check-for-PersistentDataContainer-ha.patch rename to patches/server/0692-Add-missing-IAE-check-for-PersistentDataContainer-ha.patch diff --git a/patches/server/0694-Multiple-Entries-with-Scoreboards.patch b/patches/server/0693-Multiple-Entries-with-Scoreboards.patch similarity index 100% rename from patches/server/0694-Multiple-Entries-with-Scoreboards.patch rename to patches/server/0693-Multiple-Entries-with-Scoreboards.patch diff --git a/patches/server/0695-Reset-placed-block-on-exception.patch b/patches/server/0694-Reset-placed-block-on-exception.patch similarity index 100% rename from patches/server/0695-Reset-placed-block-on-exception.patch rename to patches/server/0694-Reset-placed-block-on-exception.patch diff --git a/patches/server/0696-Add-configurable-height-for-slime-spawn.patch b/patches/server/0695-Add-configurable-height-for-slime-spawn.patch similarity index 100% rename from patches/server/0696-Add-configurable-height-for-slime-spawn.patch rename to patches/server/0695-Add-configurable-height-for-slime-spawn.patch diff --git a/patches/server/0697-Fix-xp-reward-for-baby-zombies.patch b/patches/server/0696-Fix-xp-reward-for-baby-zombies.patch similarity index 100% rename from patches/server/0697-Fix-xp-reward-for-baby-zombies.patch rename to patches/server/0696-Fix-xp-reward-for-baby-zombies.patch diff --git a/patches/server/0698-Multi-Block-Change-API-Implementation.patch b/patches/server/0697-Multi-Block-Change-API-Implementation.patch similarity index 100% rename from patches/server/0698-Multi-Block-Change-API-Implementation.patch rename to patches/server/0697-Multi-Block-Change-API-Implementation.patch diff --git a/patches/server/0699-Fix-NotePlayEvent.patch b/patches/server/0698-Fix-NotePlayEvent.patch similarity index 100% rename from patches/server/0699-Fix-NotePlayEvent.patch rename to patches/server/0698-Fix-NotePlayEvent.patch diff --git a/patches/server/0700-Freeze-Tick-Lock-API.patch b/patches/server/0699-Freeze-Tick-Lock-API.patch similarity index 100% rename from patches/server/0700-Freeze-Tick-Lock-API.patch rename to patches/server/0699-Freeze-Tick-Lock-API.patch diff --git a/patches/server/0701-More-PotionEffectType-API.patch b/patches/server/0700-More-PotionEffectType-API.patch similarity index 100% rename from patches/server/0701-More-PotionEffectType-API.patch rename to patches/server/0700-More-PotionEffectType-API.patch diff --git a/patches/server/0702-Use-a-CHM-for-StructureTemplate.Pallete-cache.patch b/patches/server/0701-Use-a-CHM-for-StructureTemplate.Pallete-cache.patch similarity index 100% rename from patches/server/0702-Use-a-CHM-for-StructureTemplate.Pallete-cache.patch rename to patches/server/0701-Use-a-CHM-for-StructureTemplate.Pallete-cache.patch diff --git a/patches/server/0703-API-for-creating-command-sender-which-forwards-feedb.patch b/patches/server/0702-API-for-creating-command-sender-which-forwards-feedb.patch similarity index 100% rename from patches/server/0703-API-for-creating-command-sender-which-forwards-feedb.patch rename to patches/server/0702-API-for-creating-command-sender-which-forwards-feedb.patch diff --git a/patches/server/0704-Add-missing-structure-set-seed-configs.patch b/patches/server/0703-Add-missing-structure-set-seed-configs.patch similarity index 100% rename from patches/server/0704-Add-missing-structure-set-seed-configs.patch rename to patches/server/0703-Add-missing-structure-set-seed-configs.patch diff --git a/patches/server/0705-Implement-regenerateChunk.patch b/patches/server/0704-Implement-regenerateChunk.patch similarity index 100% rename from patches/server/0705-Implement-regenerateChunk.patch rename to patches/server/0704-Implement-regenerateChunk.patch diff --git a/patches/server/0706-Fix-cancelled-powdered-snow-bucket-placement.patch b/patches/server/0705-Fix-cancelled-powdered-snow-bucket-placement.patch similarity index 100% rename from patches/server/0706-Fix-cancelled-powdered-snow-bucket-placement.patch rename to patches/server/0705-Fix-cancelled-powdered-snow-bucket-placement.patch diff --git a/patches/server/0707-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch b/patches/server/0706-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch similarity index 100% rename from patches/server/0707-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch rename to patches/server/0706-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch diff --git a/patches/server/0708-Add-GameEvent-tags.patch b/patches/server/0707-Add-GameEvent-tags.patch similarity index 100% rename from patches/server/0708-Add-GameEvent-tags.patch rename to patches/server/0707-Add-GameEvent-tags.patch diff --git a/patches/server/0709-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch b/patches/server/0708-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch similarity index 100% rename from patches/server/0709-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch rename to patches/server/0708-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch diff --git a/patches/server/0710-Furnace-RecipesUsed-API.patch b/patches/server/0709-Furnace-RecipesUsed-API.patch similarity index 100% rename from patches/server/0710-Furnace-RecipesUsed-API.patch rename to patches/server/0709-Furnace-RecipesUsed-API.patch diff --git a/patches/server/0711-Configurable-sculk-sensor-listener-range.patch b/patches/server/0710-Configurable-sculk-sensor-listener-range.patch similarity index 100% rename from patches/server/0711-Configurable-sculk-sensor-listener-range.patch rename to patches/server/0710-Configurable-sculk-sensor-listener-range.patch diff --git a/patches/server/0712-Add-missing-block-data-mins-and-maxes.patch b/patches/server/0711-Add-missing-block-data-mins-and-maxes.patch similarity index 100% rename from patches/server/0712-Add-missing-block-data-mins-and-maxes.patch rename to patches/server/0711-Add-missing-block-data-mins-and-maxes.patch diff --git a/patches/server/0713-Option-to-have-default-CustomSpawners-in-custom-worl.patch b/patches/server/0712-Option-to-have-default-CustomSpawners-in-custom-worl.patch similarity index 100% rename from patches/server/0713-Option-to-have-default-CustomSpawners-in-custom-worl.patch rename to patches/server/0712-Option-to-have-default-CustomSpawners-in-custom-worl.patch diff --git a/patches/server/0714-Put-world-into-worldlist-before-initing-the-world.patch b/patches/server/0713-Put-world-into-worldlist-before-initing-the-world.patch similarity index 100% rename from patches/server/0714-Put-world-into-worldlist-before-initing-the-world.patch rename to patches/server/0713-Put-world-into-worldlist-before-initing-the-world.patch diff --git a/patches/server/0715-Fix-Entity-Position-Desync.patch b/patches/server/0714-Fix-Entity-Position-Desync.patch similarity index 100% rename from patches/server/0715-Fix-Entity-Position-Desync.patch rename to patches/server/0714-Fix-Entity-Position-Desync.patch diff --git a/patches/server/0716-Custom-Potion-Mixes.patch b/patches/server/0715-Custom-Potion-Mixes.patch similarity index 100% rename from patches/server/0716-Custom-Potion-Mixes.patch rename to patches/server/0715-Custom-Potion-Mixes.patch diff --git a/patches/server/0717-Force-close-world-loading-screen.patch b/patches/server/0716-Force-close-world-loading-screen.patch similarity index 93% rename from patches/server/0717-Force-close-world-loading-screen.patch rename to patches/server/0716-Force-close-world-loading-screen.patch index 47feea3319..bb2c070e55 100644 --- a/patches/server/0717-Force-close-world-loading-screen.patch +++ b/patches/server/0716-Force-close-world-loading-screen.patch @@ -10,7 +10,7 @@ so we do not need that. The client only needs the chunk it is currently in to be loaded to close the loading screen, so we just send an empty one. diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index e67bcde933d8d64ca1d9d18b938f118994bf222b..bc16ce7734fa328192a67491fac83f89e3e819f6 100644 +index e67bcde933d8d64ca1d9d18b938f118994bf222b..d0037eaf1a1a256d3d7e2e309c476593a93f8273 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -398,6 +398,16 @@ public abstract class PlayerList { @@ -23,7 +23,7 @@ index e67bcde933d8d64ca1d9d18b938f118994bf222b..bc16ce7734fa328192a67491fac83f89 + .getHolderOrThrow(net.minecraft.world.level.biome.Biomes.PLAINS); + player.connection.send(new net.minecraft.network.protocol.game.ClientboundLevelChunkWithLightPacket( + new net.minecraft.world.level.chunk.EmptyLevelChunk(worldserver1, player.chunkPosition(), plains), -+ worldserver1.getLightEngine(), (java.util.BitSet)null, (java.util.BitSet) null, false) ++ worldserver1.getLightEngine(), (java.util.BitSet)null, (java.util.BitSet) null) + ); + } + // Paper end - Send empty chunk diff --git a/patches/server/0718-Fix-falling-block-spawn-methods.patch b/patches/server/0717-Fix-falling-block-spawn-methods.patch similarity index 100% rename from patches/server/0718-Fix-falling-block-spawn-methods.patch rename to patches/server/0717-Fix-falling-block-spawn-methods.patch diff --git a/patches/server/0719-Expose-furnace-minecart-push-values.patch b/patches/server/0718-Expose-furnace-minecart-push-values.patch similarity index 100% rename from patches/server/0719-Expose-furnace-minecart-push-values.patch rename to patches/server/0718-Expose-furnace-minecart-push-values.patch diff --git a/patches/server/0720-Fix-cancelling-ProjectileHitEvent-for-piercing-arrow.patch b/patches/server/0719-Fix-cancelling-ProjectileHitEvent-for-piercing-arrow.patch similarity index 100% rename from patches/server/0720-Fix-cancelling-ProjectileHitEvent-for-piercing-arrow.patch rename to patches/server/0719-Fix-cancelling-ProjectileHitEvent-for-piercing-arrow.patch diff --git a/patches/server/0721-More-Projectile-API.patch b/patches/server/0720-More-Projectile-API.patch similarity index 100% rename from patches/server/0721-More-Projectile-API.patch rename to patches/server/0720-More-Projectile-API.patch diff --git a/patches/server/0722-Fix-swamp-hut-cat-generation-deadlock.patch b/patches/server/0721-Fix-swamp-hut-cat-generation-deadlock.patch similarity index 100% rename from patches/server/0722-Fix-swamp-hut-cat-generation-deadlock.patch rename to patches/server/0721-Fix-swamp-hut-cat-generation-deadlock.patch diff --git a/patches/server/0723-Don-t-allow-vehicle-movement-from-players-while-tele.patch b/patches/server/0722-Don-t-allow-vehicle-movement-from-players-while-tele.patch similarity index 100% rename from patches/server/0723-Don-t-allow-vehicle-movement-from-players-while-tele.patch rename to patches/server/0722-Don-t-allow-vehicle-movement-from-players-while-tele.patch diff --git a/patches/server/0724-Implement-getComputedBiome-API.patch b/patches/server/0723-Implement-getComputedBiome-API.patch similarity index 100% rename from patches/server/0724-Implement-getComputedBiome-API.patch rename to patches/server/0723-Implement-getComputedBiome-API.patch diff --git a/patches/server/0725-Make-some-itemstacks-nonnull.patch b/patches/server/0724-Make-some-itemstacks-nonnull.patch similarity index 100% rename from patches/server/0725-Make-some-itemstacks-nonnull.patch rename to patches/server/0724-Make-some-itemstacks-nonnull.patch diff --git a/patches/server/0726-Implement-enchantWithLevels-API.patch b/patches/server/0725-Implement-enchantWithLevels-API.patch similarity index 100% rename from patches/server/0726-Implement-enchantWithLevels-API.patch rename to patches/server/0725-Implement-enchantWithLevels-API.patch diff --git a/patches/server/0727-Fix-saving-in-unloadWorld.patch b/patches/server/0726-Fix-saving-in-unloadWorld.patch similarity index 100% rename from patches/server/0727-Fix-saving-in-unloadWorld.patch rename to patches/server/0726-Fix-saving-in-unloadWorld.patch diff --git a/patches/server/0728-Buffer-OOB-setBlock-calls.patch b/patches/server/0727-Buffer-OOB-setBlock-calls.patch similarity index 100% rename from patches/server/0728-Buffer-OOB-setBlock-calls.patch rename to patches/server/0727-Buffer-OOB-setBlock-calls.patch diff --git a/patches/server/0729-Add-TameableDeathMessageEvent.patch b/patches/server/0728-Add-TameableDeathMessageEvent.patch similarity index 100% rename from patches/server/0729-Add-TameableDeathMessageEvent.patch rename to patches/server/0728-Add-TameableDeathMessageEvent.patch diff --git a/patches/server/0730-Fix-new-block-data-for-EntityChangeBlockEvent.patch b/patches/server/0729-Fix-new-block-data-for-EntityChangeBlockEvent.patch similarity index 100% rename from patches/server/0730-Fix-new-block-data-for-EntityChangeBlockEvent.patch rename to patches/server/0729-Fix-new-block-data-for-EntityChangeBlockEvent.patch diff --git a/patches/server/0731-fix-player-loottables-running-when-mob-loot-gamerule.patch b/patches/server/0730-fix-player-loottables-running-when-mob-loot-gamerule.patch similarity index 100% rename from patches/server/0731-fix-player-loottables-running-when-mob-loot-gamerule.patch rename to patches/server/0730-fix-player-loottables-running-when-mob-loot-gamerule.patch diff --git a/patches/server/0732-Ensure-entity-passenger-world-matches-ridden-entity.patch b/patches/server/0731-Ensure-entity-passenger-world-matches-ridden-entity.patch similarity index 100% rename from patches/server/0732-Ensure-entity-passenger-world-matches-ridden-entity.patch rename to patches/server/0731-Ensure-entity-passenger-world-matches-ridden-entity.patch diff --git a/patches/server/0733-cache-resource-keys.patch b/patches/server/0732-cache-resource-keys.patch similarity index 100% rename from patches/server/0733-cache-resource-keys.patch rename to patches/server/0732-cache-resource-keys.patch diff --git a/patches/server/0734-Allow-changing-the-EnderDragon-podium.patch b/patches/server/0733-Allow-changing-the-EnderDragon-podium.patch similarity index 100% rename from patches/server/0734-Allow-changing-the-EnderDragon-podium.patch rename to patches/server/0733-Allow-changing-the-EnderDragon-podium.patch diff --git a/patches/server/0735-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch b/patches/server/0734-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch similarity index 100% rename from patches/server/0735-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch rename to patches/server/0734-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch diff --git a/patches/server/0736-Fix-StructureGrowEvent-species-for-RED_MUSHROOM.patch b/patches/server/0735-Fix-StructureGrowEvent-species-for-RED_MUSHROOM.patch similarity index 100% rename from patches/server/0736-Fix-StructureGrowEvent-species-for-RED_MUSHROOM.patch rename to patches/server/0735-Fix-StructureGrowEvent-species-for-RED_MUSHROOM.patch diff --git a/patches/server/0737-Prevent-tile-entity-copies-loading-chunks.patch b/patches/server/0736-Prevent-tile-entity-copies-loading-chunks.patch similarity index 100% rename from patches/server/0737-Prevent-tile-entity-copies-loading-chunks.patch rename to patches/server/0736-Prevent-tile-entity-copies-loading-chunks.patch diff --git a/patches/server/0738-Use-username-instead-of-display-name-in-PlayerList-g.patch b/patches/server/0737-Use-username-instead-of-display-name-in-PlayerList-g.patch similarity index 92% rename from patches/server/0738-Use-username-instead-of-display-name-in-PlayerList-g.patch rename to patches/server/0737-Use-username-instead-of-display-name-in-PlayerList-g.patch index 3b5d6c2fa5..552c2079bc 100644 --- a/patches/server/0738-Use-username-instead-of-display-name-in-PlayerList-g.patch +++ b/patches/server/0737-Use-username-instead-of-display-name-in-PlayerList-g.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Use username instead of display name in diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index bc16ce7734fa328192a67491fac83f89e3e819f6..9643482f933dc81e34fbaf6874ecfd50e1677c4b 100644 +index d0037eaf1a1a256d3d7e2e309c476593a93f8273..4602f8a4f22eed417bf3c56f0147ed697e349f37 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -1447,7 +1447,7 @@ public abstract class PlayerList { diff --git a/patches/server/0739-Pass-ServerLevel-for-gamerule-callbacks.patch b/patches/server/0738-Pass-ServerLevel-for-gamerule-callbacks.patch similarity index 100% rename from patches/server/0739-Pass-ServerLevel-for-gamerule-callbacks.patch rename to patches/server/0738-Pass-ServerLevel-for-gamerule-callbacks.patch diff --git a/patches/server/0740-Expand-PlayerItemDamageEvent.patch b/patches/server/0739-Expand-PlayerItemDamageEvent.patch similarity index 100% rename from patches/server/0740-Expand-PlayerItemDamageEvent.patch rename to patches/server/0739-Expand-PlayerItemDamageEvent.patch diff --git a/patches/server/0741-WorldCreator-keepSpawnLoaded.patch b/patches/server/0740-WorldCreator-keepSpawnLoaded.patch similarity index 100% rename from patches/server/0741-WorldCreator-keepSpawnLoaded.patch rename to patches/server/0740-WorldCreator-keepSpawnLoaded.patch diff --git a/patches/server/0742-Fix-CME-in-CraftPersistentDataTypeRegistry.patch b/patches/server/0741-Fix-CME-in-CraftPersistentDataTypeRegistry.patch similarity index 100% rename from patches/server/0742-Fix-CME-in-CraftPersistentDataTypeRegistry.patch rename to patches/server/0741-Fix-CME-in-CraftPersistentDataTypeRegistry.patch diff --git a/patches/server/0743-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch b/patches/server/0742-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch similarity index 100% rename from patches/server/0743-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch rename to patches/server/0742-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch diff --git a/patches/server/0744-Add-EntityDyeEvent-and-CollarColorable-interface.patch b/patches/server/0743-Add-EntityDyeEvent-and-CollarColorable-interface.patch similarity index 100% rename from patches/server/0744-Add-EntityDyeEvent-and-CollarColorable-interface.patch rename to patches/server/0743-Add-EntityDyeEvent-and-CollarColorable-interface.patch diff --git a/patches/server/0745-Fire-CauldronLevelChange-on-initial-fill.patch b/patches/server/0744-Fire-CauldronLevelChange-on-initial-fill.patch similarity index 100% rename from patches/server/0745-Fire-CauldronLevelChange-on-initial-fill.patch rename to patches/server/0744-Fire-CauldronLevelChange-on-initial-fill.patch diff --git a/patches/server/0746-fix-powder-snow-cauldrons-not-turning-to-water.patch b/patches/server/0745-fix-powder-snow-cauldrons-not-turning-to-water.patch similarity index 100% rename from patches/server/0746-fix-powder-snow-cauldrons-not-turning-to-water.patch rename to patches/server/0745-fix-powder-snow-cauldrons-not-turning-to-water.patch diff --git a/patches/server/0747-Add-PlayerStopUsingItemEvent.patch b/patches/server/0746-Add-PlayerStopUsingItemEvent.patch similarity index 100% rename from patches/server/0747-Add-PlayerStopUsingItemEvent.patch rename to patches/server/0746-Add-PlayerStopUsingItemEvent.patch diff --git a/patches/server/0748-Don-t-tick-markers.patch b/patches/server/0747-Don-t-tick-markers.patch similarity index 95% rename from patches/server/0748-Don-t-tick-markers.patch rename to patches/server/0747-Don-t-tick-markers.patch index 3b66b6d373..8b52058308 100644 --- a/patches/server/0748-Don-t-tick-markers.patch +++ b/patches/server/0747-Don-t-tick-markers.patch @@ -35,10 +35,10 @@ index 6ece18d5429217ee53ca5ae5c0eb7450aa5f63ec..9fffd60371500b05c009e0c8ac7d8312 } diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java -index d5374072a97f791964033d107f023b3cc657b343..aaa997613a991a9fc5ed276a7e7e61448f34ef64 100644 +index f60eb4bf10c32d2d92fa24992ed20525f0f0f781..dfbcddadea4a89c4cfc879105cfacae6dde742a9 100644 --- a/src/main/java/org/spigotmc/ActivationRange.java +++ b/src/main/java/org/spigotmc/ActivationRange.java -@@ -135,8 +135,14 @@ public class ActivationRange +@@ -138,8 +138,14 @@ public class ActivationRange // Paper start java.util.List entities = world.getEntities((Entity)null, ActivationRange.maxBB, null); diff --git a/patches/server/0749-Expand-FallingBlock-API.patch b/patches/server/0748-Expand-FallingBlock-API.patch similarity index 100% rename from patches/server/0749-Expand-FallingBlock-API.patch rename to patches/server/0748-Expand-FallingBlock-API.patch diff --git a/patches/server/0750-Do-not-accept-invalid-client-settings.patch b/patches/server/0749-Do-not-accept-invalid-client-settings.patch similarity index 100% rename from patches/server/0750-Do-not-accept-invalid-client-settings.patch rename to patches/server/0749-Do-not-accept-invalid-client-settings.patch diff --git a/patches/server/0751-Add-support-for-Proxy-Protocol.patch b/patches/server/0750-Add-support-for-Proxy-Protocol.patch similarity index 100% rename from patches/server/0751-Add-support-for-Proxy-Protocol.patch rename to patches/server/0750-Add-support-for-Proxy-Protocol.patch diff --git a/patches/server/0752-Fix-OfflinePlayer-getBedSpawnLocation.patch b/patches/server/0751-Fix-OfflinePlayer-getBedSpawnLocation.patch similarity index 100% rename from patches/server/0752-Fix-OfflinePlayer-getBedSpawnLocation.patch rename to patches/server/0751-Fix-OfflinePlayer-getBedSpawnLocation.patch diff --git a/patches/server/0753-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch b/patches/server/0752-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch similarity index 100% rename from patches/server/0753-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch rename to patches/server/0752-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch diff --git a/patches/server/0754-Sanitize-sent-BlockEntity-NBT.patch b/patches/server/0753-Sanitize-sent-BlockEntity-NBT.patch similarity index 94% rename from patches/server/0754-Sanitize-sent-BlockEntity-NBT.patch rename to patches/server/0753-Sanitize-sent-BlockEntity-NBT.patch index 9f25d88865..960684891e 100644 --- a/patches/server/0754-Sanitize-sent-BlockEntity-NBT.patch +++ b/patches/server/0753-Sanitize-sent-BlockEntity-NBT.patch @@ -18,10 +18,10 @@ index d79284a790569141c2ac8178d6ecc20b17cdd0d3..3944852921335c78a04a9dc301882ab5 public static ClientboundBlockEntityDataPacket create(BlockEntity blockEntity) { diff --git a/src/main/java/net/minecraft/network/protocol/game/ClientboundLevelChunkPacketData.java b/src/main/java/net/minecraft/network/protocol/game/ClientboundLevelChunkPacketData.java -index dda7151d333144399ba5602e1b651b1f5b8f8f0d..582a3e5e45dd10068eeb25a3e37bdece3ddbc296 100644 +index f47eeb70661661610ef1a96dd9da67785825c126..89e3163b0301f8414c9400a6e00cdd85841fe2e8 100644 --- a/src/main/java/net/minecraft/network/protocol/game/ClientboundLevelChunkPacketData.java +++ b/src/main/java/net/minecraft/network/protocol/game/ClientboundLevelChunkPacketData.java -@@ -170,6 +170,7 @@ public class ClientboundLevelChunkPacketData { +@@ -152,6 +152,7 @@ public class ClientboundLevelChunkPacketData { CompoundTag compoundTag = blockEntity.getUpdateTag(); BlockPos blockPos = blockEntity.getBlockPos(); int i = SectionPos.sectionRelative(blockPos.getX()) << 4 | SectionPos.sectionRelative(blockPos.getZ()); diff --git a/patches/server/0755-Disable-component-selector-resolving-in-books-by-def.patch b/patches/server/0754-Disable-component-selector-resolving-in-books-by-def.patch similarity index 100% rename from patches/server/0755-Disable-component-selector-resolving-in-books-by-def.patch rename to patches/server/0754-Disable-component-selector-resolving-in-books-by-def.patch diff --git a/patches/server/0756-Prevent-entity-loading-causing-async-lookups.patch b/patches/server/0755-Prevent-entity-loading-causing-async-lookups.patch similarity index 100% rename from patches/server/0756-Prevent-entity-loading-causing-async-lookups.patch rename to patches/server/0755-Prevent-entity-loading-causing-async-lookups.patch diff --git a/patches/server/0757-Throw-exception-on-world-create-while-being-ticked.patch b/patches/server/0756-Throw-exception-on-world-create-while-being-ticked.patch similarity index 100% rename from patches/server/0757-Throw-exception-on-world-create-while-being-ticked.patch rename to patches/server/0756-Throw-exception-on-world-create-while-being-ticked.patch diff --git a/patches/server/0758-Dont-resent-entity-on-art-update.patch b/patches/server/0757-Dont-resent-entity-on-art-update.patch similarity index 100% rename from patches/server/0758-Dont-resent-entity-on-art-update.patch rename to patches/server/0757-Dont-resent-entity-on-art-update.patch diff --git a/patches/server/0759-Add-WardenAngerChangeEvent.patch b/patches/server/0758-Add-WardenAngerChangeEvent.patch similarity index 100% rename from patches/server/0759-Add-WardenAngerChangeEvent.patch rename to patches/server/0758-Add-WardenAngerChangeEvent.patch diff --git a/patches/server/0760-Add-option-for-strict-advancement-dimension-checks.patch b/patches/server/0759-Add-option-for-strict-advancement-dimension-checks.patch similarity index 100% rename from patches/server/0760-Add-option-for-strict-advancement-dimension-checks.patch rename to patches/server/0759-Add-option-for-strict-advancement-dimension-checks.patch diff --git a/patches/server/0761-Add-missing-important-BlockStateListPopulator-method.patch b/patches/server/0760-Add-missing-important-BlockStateListPopulator-method.patch similarity index 100% rename from patches/server/0761-Add-missing-important-BlockStateListPopulator-method.patch rename to patches/server/0760-Add-missing-important-BlockStateListPopulator-method.patch diff --git a/patches/server/0762-Nameable-Banner-API.patch b/patches/server/0761-Nameable-Banner-API.patch similarity index 100% rename from patches/server/0762-Nameable-Banner-API.patch rename to patches/server/0761-Nameable-Banner-API.patch diff --git a/patches/server/0763-Don-t-broadcast-messages-to-command-blocks.patch b/patches/server/0762-Don-t-broadcast-messages-to-command-blocks.patch similarity index 100% rename from patches/server/0763-Don-t-broadcast-messages-to-command-blocks.patch rename to patches/server/0762-Don-t-broadcast-messages-to-command-blocks.patch diff --git a/patches/server/0764-Prevent-empty-items-from-being-added-to-world.patch b/patches/server/0763-Prevent-empty-items-from-being-added-to-world.patch similarity index 100% rename from patches/server/0764-Prevent-empty-items-from-being-added-to-world.patch rename to patches/server/0763-Prevent-empty-items-from-being-added-to-world.patch diff --git a/patches/server/0765-Fix-CCE-for-SplashPotion-and-LingeringPotion-spawnin.patch b/patches/server/0764-Fix-CCE-for-SplashPotion-and-LingeringPotion-spawnin.patch similarity index 100% rename from patches/server/0765-Fix-CCE-for-SplashPotion-and-LingeringPotion-spawnin.patch rename to patches/server/0764-Fix-CCE-for-SplashPotion-and-LingeringPotion-spawnin.patch diff --git a/patches/server/0766-Add-Player-getFishHook.patch b/patches/server/0765-Add-Player-getFishHook.patch similarity index 100% rename from patches/server/0766-Add-Player-getFishHook.patch rename to patches/server/0765-Add-Player-getFishHook.patch diff --git a/patches/server/0767-Do-not-sync-load-chunk-for-dynamic-game-event-listen.patch b/patches/server/0766-Do-not-sync-load-chunk-for-dynamic-game-event-listen.patch similarity index 100% rename from patches/server/0767-Do-not-sync-load-chunk-for-dynamic-game-event-listen.patch rename to patches/server/0766-Do-not-sync-load-chunk-for-dynamic-game-event-listen.patch diff --git a/patches/server/0768-Add-various-missing-EntityDropItemEvent-calls.patch b/patches/server/0767-Add-various-missing-EntityDropItemEvent-calls.patch similarity index 100% rename from patches/server/0768-Add-various-missing-EntityDropItemEvent-calls.patch rename to patches/server/0767-Add-various-missing-EntityDropItemEvent-calls.patch diff --git a/patches/server/0769-Fix-Bee-flower-NPE.patch b/patches/server/0768-Fix-Bee-flower-NPE.patch similarity index 100% rename from patches/server/0769-Fix-Bee-flower-NPE.patch rename to patches/server/0768-Fix-Bee-flower-NPE.patch diff --git a/patches/server/0770-Fix-Spigot-Config-not-using-commands.spam-exclusions.patch b/patches/server/0769-Fix-Spigot-Config-not-using-commands.spam-exclusions.patch similarity index 100% rename from patches/server/0770-Fix-Spigot-Config-not-using-commands.spam-exclusions.patch rename to patches/server/0769-Fix-Spigot-Config-not-using-commands.spam-exclusions.patch diff --git a/patches/server/0771-More-Teleport-API.patch b/patches/server/0770-More-Teleport-API.patch similarity index 100% rename from patches/server/0771-More-Teleport-API.patch rename to patches/server/0770-More-Teleport-API.patch diff --git a/patches/server/0772-Add-EntityPortalReadyEvent.patch b/patches/server/0771-Add-EntityPortalReadyEvent.patch similarity index 100% rename from patches/server/0772-Add-EntityPortalReadyEvent.patch rename to patches/server/0771-Add-EntityPortalReadyEvent.patch diff --git a/patches/server/0773-Don-t-use-level-random-in-entity-constructors.patch b/patches/server/0772-Don-t-use-level-random-in-entity-constructors.patch similarity index 100% rename from patches/server/0773-Don-t-use-level-random-in-entity-constructors.patch rename to patches/server/0772-Don-t-use-level-random-in-entity-constructors.patch diff --git a/patches/server/0774-Send-block-entities-after-destroy-prediction.patch b/patches/server/0773-Send-block-entities-after-destroy-prediction.patch similarity index 100% rename from patches/server/0774-Send-block-entities-after-destroy-prediction.patch rename to patches/server/0773-Send-block-entities-after-destroy-prediction.patch diff --git a/patches/server/0775-Warn-on-plugins-accessing-faraway-chunks.patch b/patches/server/0774-Warn-on-plugins-accessing-faraway-chunks.patch similarity index 97% rename from patches/server/0775-Warn-on-plugins-accessing-faraway-chunks.patch rename to patches/server/0774-Warn-on-plugins-accessing-faraway-chunks.patch index dce15cbf48..1806a9771a 100644 --- a/patches/server/0775-Warn-on-plugins-accessing-faraway-chunks.patch +++ b/patches/server/0774-Warn-on-plugins-accessing-faraway-chunks.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Warn on plugins accessing faraway chunks diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 74cb6cf55ed9b4e31ac3c06d9612823f7ede9ff3..95800047e4c6d84a6f4bc7b643ca6ff302fda5ed 100644 +index 709d3e5c506c9dd14f51c455eee7093fb9703168..9c8623553e12683d99c689e5461aa36257dc5bbd 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java -@@ -352,7 +352,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -359,7 +359,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { } private static boolean isInWorldBoundsHorizontal(BlockPos pos) { diff --git a/patches/server/0776-Custom-Chat-Completion-Suggestions-API.patch b/patches/server/0775-Custom-Chat-Completion-Suggestions-API.patch similarity index 100% rename from patches/server/0776-Custom-Chat-Completion-Suggestions-API.patch rename to patches/server/0775-Custom-Chat-Completion-Suggestions-API.patch diff --git a/patches/server/0777-Add-and-fix-missing-BlockFadeEvents.patch b/patches/server/0776-Add-and-fix-missing-BlockFadeEvents.patch similarity index 100% rename from patches/server/0777-Add-and-fix-missing-BlockFadeEvents.patch rename to patches/server/0776-Add-and-fix-missing-BlockFadeEvents.patch diff --git a/patches/server/0778-Collision-API.patch b/patches/server/0777-Collision-API.patch similarity index 89% rename from patches/server/0778-Collision-API.patch rename to patches/server/0777-Collision-API.patch index 5bc997b268..2ec1b80fcd 100644 --- a/patches/server/0778-Collision-API.patch +++ b/patches/server/0777-Collision-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Collision API diff --git a/src/main/java/org/bukkit/craftbukkit/CraftRegionAccessor.java b/src/main/java/org/bukkit/craftbukkit/CraftRegionAccessor.java -index 42def68f0c682afe7628ff0b9a537e74d77e558c..884343c4ecdecdecb4117ce61d14e05787195656 100644 +index 42def68f0c682afe7628ff0b9a537e74d77e558c..13afea4ecfefc7e3de26dc42b5316fe2c7554b5c 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftRegionAccessor.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftRegionAccessor.java @@ -533,5 +533,12 @@ public abstract class CraftRegionAccessor implements RegionAccessor { @@ -15,14 +15,14 @@ index 42def68f0c682afe7628ff0b9a537e74d77e558c..884343c4ecdecdecb4117ce61d14e057 + + @Override + public boolean hasCollisionsIn(@org.jetbrains.annotations.NotNull org.bukkit.util.BoundingBox boundingBox) { -+ net.minecraft.world.phys.AABB aabb = new net.minecraft.world.phys.AABB(boundingBox.getMinX(), boundingBox.getMinY(), boundingBox.getMinZ(), boundingBox.getMaxX(), boundingBox.getMaxY(), boundingBox.getMaxZ(), false); ++ net.minecraft.world.phys.AABB aabb = new net.minecraft.world.phys.AABB(boundingBox.getMinX(), boundingBox.getMinY(), boundingBox.getMinZ(), boundingBox.getMaxX(), boundingBox.getMaxY(), boundingBox.getMaxZ()); + + return !this.getHandle().noCollision(aabb); + } // Paper end } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index ee1dc74b2f48bf8d684562de895ab631cf792a30..dab7108644aefe69448b5e361099d97354c8db1a 100644 +index ee1dc74b2f48bf8d684562de895ab631cf792a30..81ec5ffdd453714284a7860603a592495f917ec9 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java @@ -1124,4 +1124,19 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { @@ -39,7 +39,7 @@ index ee1dc74b2f48bf8d684562de895ab631cf792a30..dab7108644aefe69448b5e361099d973 + + @Override + public boolean wouldCollideUsing(@org.jetbrains.annotations.NotNull BoundingBox boundingBox) { -+ net.minecraft.world.phys.AABB aabb = new AABB(boundingBox.getMinX(), boundingBox.getMinY(), boundingBox.getMinZ(), boundingBox.getMaxX(), boundingBox.getMaxY(), boundingBox.getMaxZ(), false); ++ net.minecraft.world.phys.AABB aabb = new AABB(boundingBox.getMinX(), boundingBox.getMinY(), boundingBox.getMinZ(), boundingBox.getMaxX(), boundingBox.getMaxY(), boundingBox.getMaxZ()); + + return !this.getHandle().level().noCollision(this.getHandle(), aabb); + } diff --git a/patches/server/0779-Fix-suggest-command-message-for-brigadier-syntax-exc.patch b/patches/server/0778-Fix-suggest-command-message-for-brigadier-syntax-exc.patch similarity index 100% rename from patches/server/0779-Fix-suggest-command-message-for-brigadier-syntax-exc.patch rename to patches/server/0778-Fix-suggest-command-message-for-brigadier-syntax-exc.patch diff --git a/patches/server/0780-Block-Ticking-API.patch b/patches/server/0779-Block-Ticking-API.patch similarity index 100% rename from patches/server/0780-Block-Ticking-API.patch rename to patches/server/0779-Block-Ticking-API.patch diff --git a/patches/server/0781-Add-Velocity-IP-Forwarding-Support.patch b/patches/server/0780-Add-Velocity-IP-Forwarding-Support.patch similarity index 100% rename from patches/server/0781-Add-Velocity-IP-Forwarding-Support.patch rename to patches/server/0780-Add-Velocity-IP-Forwarding-Support.patch diff --git a/patches/server/0782-Add-NamespacedKey-biome-methods.patch b/patches/server/0781-Add-NamespacedKey-biome-methods.patch similarity index 100% rename from patches/server/0782-Add-NamespacedKey-biome-methods.patch rename to patches/server/0781-Add-NamespacedKey-biome-methods.patch diff --git a/patches/server/0783-Fix-plugin-loggers-on-server-shutdown.patch b/patches/server/0782-Fix-plugin-loggers-on-server-shutdown.patch similarity index 100% rename from patches/server/0783-Fix-plugin-loggers-on-server-shutdown.patch rename to patches/server/0782-Fix-plugin-loggers-on-server-shutdown.patch diff --git a/patches/server/0784-Stop-large-look-changes-from-crashing-the-server.patch b/patches/server/0783-Stop-large-look-changes-from-crashing-the-server.patch similarity index 100% rename from patches/server/0784-Stop-large-look-changes-from-crashing-the-server.patch rename to patches/server/0783-Stop-large-look-changes-from-crashing-the-server.patch diff --git a/patches/server/0785-Fire-EntityChangeBlockEvent-in-more-places.patch b/patches/server/0784-Fire-EntityChangeBlockEvent-in-more-places.patch similarity index 100% rename from patches/server/0785-Fire-EntityChangeBlockEvent-in-more-places.patch rename to patches/server/0784-Fire-EntityChangeBlockEvent-in-more-places.patch diff --git a/patches/server/0786-Missing-eating-regain-reason.patch b/patches/server/0785-Missing-eating-regain-reason.patch similarity index 100% rename from patches/server/0786-Missing-eating-regain-reason.patch rename to patches/server/0785-Missing-eating-regain-reason.patch diff --git a/patches/server/0787-Missing-effect-cause.patch b/patches/server/0786-Missing-effect-cause.patch similarity index 100% rename from patches/server/0787-Missing-effect-cause.patch rename to patches/server/0786-Missing-effect-cause.patch diff --git a/patches/server/0788-Added-byte-array-serialization-deserialization-for-P.patch b/patches/server/0787-Added-byte-array-serialization-deserialization-for-P.patch similarity index 100% rename from patches/server/0788-Added-byte-array-serialization-deserialization-for-P.patch rename to patches/server/0787-Added-byte-array-serialization-deserialization-for-P.patch diff --git a/patches/server/0789-Add-a-consumer-parameter-to-ProjectileSource-launchP.patch b/patches/server/0788-Add-a-consumer-parameter-to-ProjectileSource-launchP.patch similarity index 100% rename from patches/server/0789-Add-a-consumer-parameter-to-ProjectileSource-launchP.patch rename to patches/server/0788-Add-a-consumer-parameter-to-ProjectileSource-launchP.patch diff --git a/patches/server/0790-Call-BlockPhysicsEvent-more-often.patch b/patches/server/0789-Call-BlockPhysicsEvent-more-often.patch similarity index 100% rename from patches/server/0790-Call-BlockPhysicsEvent-more-often.patch rename to patches/server/0789-Call-BlockPhysicsEvent-more-often.patch diff --git a/patches/server/0791-Configurable-chat-thread-limit.patch b/patches/server/0790-Configurable-chat-thread-limit.patch similarity index 100% rename from patches/server/0791-Configurable-chat-thread-limit.patch rename to patches/server/0790-Configurable-chat-thread-limit.patch diff --git a/patches/server/0792-Mitigate-effects-of-WorldCreator-keepSpawnLoaded-ret.patch b/patches/server/0791-Mitigate-effects-of-WorldCreator-keepSpawnLoaded-ret.patch similarity index 100% rename from patches/server/0792-Mitigate-effects-of-WorldCreator-keepSpawnLoaded-ret.patch rename to patches/server/0791-Mitigate-effects-of-WorldCreator-keepSpawnLoaded-ret.patch diff --git a/patches/server/0793-fix-Jigsaw-block-kicking-user.patch b/patches/server/0792-fix-Jigsaw-block-kicking-user.patch similarity index 100% rename from patches/server/0793-fix-Jigsaw-block-kicking-user.patch rename to patches/server/0792-fix-Jigsaw-block-kicking-user.patch diff --git a/patches/server/0794-use-BlockFormEvent-for-mud-converting-into-clay.patch b/patches/server/0793-use-BlockFormEvent-for-mud-converting-into-clay.patch similarity index 100% rename from patches/server/0794-use-BlockFormEvent-for-mud-converting-into-clay.patch rename to patches/server/0793-use-BlockFormEvent-for-mud-converting-into-clay.patch diff --git a/patches/server/0795-Add-getDrops-to-BlockState.patch b/patches/server/0794-Add-getDrops-to-BlockState.patch similarity index 100% rename from patches/server/0795-Add-getDrops-to-BlockState.patch rename to patches/server/0794-Add-getDrops-to-BlockState.patch diff --git a/patches/server/0796-Fix-a-bunch-of-vanilla-bugs.patch b/patches/server/0795-Fix-a-bunch-of-vanilla-bugs.patch similarity index 99% rename from patches/server/0796-Fix-a-bunch-of-vanilla-bugs.patch rename to patches/server/0795-Fix-a-bunch-of-vanilla-bugs.patch index 2c4b7976ec..5881f90436 100644 --- a/patches/server/0796-Fix-a-bunch-of-vanilla-bugs.patch +++ b/patches/server/0795-Fix-a-bunch-of-vanilla-bugs.patch @@ -113,10 +113,10 @@ index 6cd6d69a20e95e344fc18ab67dc300824537a59b..2e2a7c2cf3081187da817479a9da3eb1 } } diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index c0bc7495109a8d727c913e7cdc98d75a30bc7a55..61d6c2be8595d54a68b0c53c1898068f568c2a97 100644 +index f7ebb560a3f8aebb5e35397814eaa7af098897c3..ed6efb22465c4d610a5b12f6ef3ca1aa7a5907ea 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java -@@ -730,7 +730,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -734,7 +734,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider // CraftBukkit end } @@ -173,7 +173,7 @@ index 75967b3526f3f946ffc6784b87b787396ab15368..da8a60fbbba3866780615e65d6e24277 this.player.server.getPlayerList().broadcastAll(new ClientboundPlayerInfoUpdatePacket(ClientboundPlayerInfoUpdatePacket.Action.UPDATE_GAME_MODE, this.player), this.player); // CraftBukkit this.level.updateSleepingPlayerList(); diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 9643482f933dc81e34fbaf6874ecfd50e1677c4b..551ceff75bc36a75bb992f1081d7343d1a956fd8 100644 +index 4602f8a4f22eed417bf3c56f0147ed697e349f37..6f047b2116d2ee88c75f1f39f9fd6c813775b7b5 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -710,8 +710,10 @@ public abstract class PlayerList { diff --git a/patches/server/0797-Remove-unnecessary-onTrackingStart-during-navigation.patch b/patches/server/0796-Remove-unnecessary-onTrackingStart-during-navigation.patch similarity index 100% rename from patches/server/0797-Remove-unnecessary-onTrackingStart-during-navigation.patch rename to patches/server/0796-Remove-unnecessary-onTrackingStart-during-navigation.patch diff --git a/patches/server/0798-Fix-custom-piglin-loved-items.patch b/patches/server/0797-Fix-custom-piglin-loved-items.patch similarity index 100% rename from patches/server/0798-Fix-custom-piglin-loved-items.patch rename to patches/server/0797-Fix-custom-piglin-loved-items.patch diff --git a/patches/server/0799-EntityPickupItemEvent-fixes.patch b/patches/server/0798-EntityPickupItemEvent-fixes.patch similarity index 100% rename from patches/server/0799-EntityPickupItemEvent-fixes.patch rename to patches/server/0798-EntityPickupItemEvent-fixes.patch diff --git a/patches/server/0800-Correctly-handle-interactions-with-items-on-cooldown.patch b/patches/server/0799-Correctly-handle-interactions-with-items-on-cooldown.patch similarity index 100% rename from patches/server/0800-Correctly-handle-interactions-with-items-on-cooldown.patch rename to patches/server/0799-Correctly-handle-interactions-with-items-on-cooldown.patch diff --git a/patches/server/0801-Add-PlayerInventorySlotChangeEvent.patch b/patches/server/0800-Add-PlayerInventorySlotChangeEvent.patch similarity index 100% rename from patches/server/0801-Add-PlayerInventorySlotChangeEvent.patch rename to patches/server/0800-Add-PlayerInventorySlotChangeEvent.patch diff --git a/patches/server/0802-Elder-Guardian-appearance-API.patch b/patches/server/0801-Elder-Guardian-appearance-API.patch similarity index 100% rename from patches/server/0802-Elder-Guardian-appearance-API.patch rename to patches/server/0801-Elder-Guardian-appearance-API.patch diff --git a/patches/server/0803-Allow-changing-bed-s-occupied-property.patch b/patches/server/0802-Allow-changing-bed-s-occupied-property.patch similarity index 100% rename from patches/server/0803-Allow-changing-bed-s-occupied-property.patch rename to patches/server/0802-Allow-changing-bed-s-occupied-property.patch diff --git a/patches/server/0804-Add-entity-knockback-API.patch b/patches/server/0803-Add-entity-knockback-API.patch similarity index 100% rename from patches/server/0804-Add-entity-knockback-API.patch rename to patches/server/0803-Add-entity-knockback-API.patch diff --git a/patches/server/0805-Detect-headless-JREs.patch b/patches/server/0804-Detect-headless-JREs.patch similarity index 100% rename from patches/server/0805-Detect-headless-JREs.patch rename to patches/server/0804-Detect-headless-JREs.patch diff --git a/patches/server/0806-fix-entity-vehicle-collision-event-not-called.patch b/patches/server/0805-fix-entity-vehicle-collision-event-not-called.patch similarity index 100% rename from patches/server/0806-fix-entity-vehicle-collision-event-not-called.patch rename to patches/server/0805-fix-entity-vehicle-collision-event-not-called.patch diff --git a/patches/server/0807-Add-EntityToggleSitEvent.patch b/patches/server/0806-Add-EntityToggleSitEvent.patch similarity index 100% rename from patches/server/0807-Add-EntityToggleSitEvent.patch rename to patches/server/0806-Add-EntityToggleSitEvent.patch diff --git a/patches/server/0808-Add-fire-tick-delay-option.patch b/patches/server/0807-Add-fire-tick-delay-option.patch similarity index 100% rename from patches/server/0808-Add-fire-tick-delay-option.patch rename to patches/server/0807-Add-fire-tick-delay-option.patch diff --git a/patches/server/0809-Add-Moving-Piston-API.patch b/patches/server/0808-Add-Moving-Piston-API.patch similarity index 100% rename from patches/server/0809-Add-Moving-Piston-API.patch rename to patches/server/0808-Add-Moving-Piston-API.patch diff --git a/patches/server/0810-Ignore-impossible-spawn-tick.patch b/patches/server/0809-Ignore-impossible-spawn-tick.patch similarity index 100% rename from patches/server/0810-Ignore-impossible-spawn-tick.patch rename to patches/server/0809-Ignore-impossible-spawn-tick.patch diff --git a/patches/server/0811-Track-projectile-source-for-fireworks-from-dispenser.patch b/patches/server/0810-Track-projectile-source-for-fireworks-from-dispenser.patch similarity index 100% rename from patches/server/0811-Track-projectile-source-for-fireworks-from-dispenser.patch rename to patches/server/0810-Track-projectile-source-for-fireworks-from-dispenser.patch diff --git a/patches/server/0812-Fix-EntityArgument-suggestion-permissions-to-align-w.patch b/patches/server/0811-Fix-EntityArgument-suggestion-permissions-to-align-w.patch similarity index 100% rename from patches/server/0812-Fix-EntityArgument-suggestion-permissions-to-align-w.patch rename to patches/server/0811-Fix-EntityArgument-suggestion-permissions-to-align-w.patch diff --git a/patches/server/0813-Fix-EntityCombustEvent-cancellation-cant-fully-preve.patch b/patches/server/0812-Fix-EntityCombustEvent-cancellation-cant-fully-preve.patch similarity index 100% rename from patches/server/0813-Fix-EntityCombustEvent-cancellation-cant-fully-preve.patch rename to patches/server/0812-Fix-EntityCombustEvent-cancellation-cant-fully-preve.patch diff --git a/patches/server/0814-Add-PrePlayerAttackEntityEvent.patch b/patches/server/0813-Add-PrePlayerAttackEntityEvent.patch similarity index 100% rename from patches/server/0814-Add-PrePlayerAttackEntityEvent.patch rename to patches/server/0813-Add-PrePlayerAttackEntityEvent.patch diff --git a/patches/server/0815-ensure-reset-EnderDragon-boss-event-name.patch b/patches/server/0814-ensure-reset-EnderDragon-boss-event-name.patch similarity index 100% rename from patches/server/0815-ensure-reset-EnderDragon-boss-event-name.patch rename to patches/server/0814-ensure-reset-EnderDragon-boss-event-name.patch diff --git a/patches/server/0816-fix-MC-252817-green-map-markers-do-not-disappear.patch b/patches/server/0815-fix-MC-252817-green-map-markers-do-not-disappear.patch similarity index 100% rename from patches/server/0816-fix-MC-252817-green-map-markers-do-not-disappear.patch rename to patches/server/0815-fix-MC-252817-green-map-markers-do-not-disappear.patch diff --git a/patches/server/0817-Add-Player-Warden-Warning-API.patch b/patches/server/0816-Add-Player-Warden-Warning-API.patch similarity index 100% rename from patches/server/0817-Add-Player-Warden-Warning-API.patch rename to patches/server/0816-Add-Player-Warden-Warning-API.patch diff --git a/patches/server/0818-More-vanilla-friendly-methods-to-update-trades.patch b/patches/server/0817-More-vanilla-friendly-methods-to-update-trades.patch similarity index 100% rename from patches/server/0818-More-vanilla-friendly-methods-to-update-trades.patch rename to patches/server/0817-More-vanilla-friendly-methods-to-update-trades.patch diff --git a/patches/server/0819-Add-paper-dumplisteners-command.patch b/patches/server/0818-Add-paper-dumplisteners-command.patch similarity index 100% rename from patches/server/0819-Add-paper-dumplisteners-command.patch rename to patches/server/0818-Add-paper-dumplisteners-command.patch diff --git a/patches/server/0820-check-global-player-list-where-appropriate.patch b/patches/server/0819-check-global-player-list-where-appropriate.patch similarity index 100% rename from patches/server/0820-check-global-player-list-where-appropriate.patch rename to patches/server/0819-check-global-player-list-where-appropriate.patch diff --git a/patches/server/0821-Fix-async-entity-add-due-to-fungus-trees.patch b/patches/server/0820-Fix-async-entity-add-due-to-fungus-trees.patch similarity index 96% rename from patches/server/0821-Fix-async-entity-add-due-to-fungus-trees.patch rename to patches/server/0820-Fix-async-entity-add-due-to-fungus-trees.patch index a3e5226fad..6c8db92383 100644 --- a/patches/server/0821-Fix-async-entity-add-due-to-fungus-trees.patch +++ b/patches/server/0820-Fix-async-entity-add-due-to-fungus-trees.patch @@ -17,7 +17,7 @@ index 1c2ec978f923521322aaec59b4e88d26d656b6cd..5ece375eaf6bcc61864997a389bb5e24 BlockEntity tileentity = iblockdata.hasBlockEntity() ? this.getBlockEntity(pos) : null; diff --git a/src/main/java/org/bukkit/craftbukkit/CraftRegionAccessor.java b/src/main/java/org/bukkit/craftbukkit/CraftRegionAccessor.java -index 884343c4ecdecdecb4117ce61d14e05787195656..99b890e8650356fc059a89a4164ca3f9a80f9d1f 100644 +index 13afea4ecfefc7e3de26dc42b5316fe2c7554b5c..9dd6012556979514f9879f867138bc836c58ef3f 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftRegionAccessor.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftRegionAccessor.java @@ -257,10 +257,10 @@ public abstract class CraftRegionAccessor implements RegionAccessor { diff --git a/patches/server/0822-ItemStack-damage-API.patch b/patches/server/0821-ItemStack-damage-API.patch similarity index 100% rename from patches/server/0822-ItemStack-damage-API.patch rename to patches/server/0821-ItemStack-damage-API.patch diff --git a/patches/server/0823-Friction-API.patch b/patches/server/0822-Friction-API.patch similarity index 100% rename from patches/server/0823-Friction-API.patch rename to patches/server/0822-Friction-API.patch diff --git a/patches/server/0824-Ability-to-control-player-s-insomnia-and-phantoms.patch b/patches/server/0823-Ability-to-control-player-s-insomnia-and-phantoms.patch similarity index 100% rename from patches/server/0824-Ability-to-control-player-s-insomnia-and-phantoms.patch rename to patches/server/0823-Ability-to-control-player-s-insomnia-and-phantoms.patch diff --git a/patches/server/0825-Fix-player-kick-on-shutdown.patch b/patches/server/0824-Fix-player-kick-on-shutdown.patch similarity index 100% rename from patches/server/0825-Fix-player-kick-on-shutdown.patch rename to patches/server/0824-Fix-player-kick-on-shutdown.patch diff --git a/patches/server/0826-Sync-offhand-slot-in-menus.patch b/patches/server/0825-Sync-offhand-slot-in-menus.patch similarity index 100% rename from patches/server/0826-Sync-offhand-slot-in-menus.patch rename to patches/server/0825-Sync-offhand-slot-in-menus.patch diff --git a/patches/server/0827-Player-Entity-Tracking-Events.patch b/patches/server/0826-Player-Entity-Tracking-Events.patch similarity index 93% rename from patches/server/0827-Player-Entity-Tracking-Events.patch rename to patches/server/0826-Player-Entity-Tracking-Events.patch index 18b7aa1dc2..495a0778f2 100644 --- a/patches/server/0827-Player-Entity-Tracking-Events.patch +++ b/patches/server/0826-Player-Entity-Tracking-Events.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Player Entity Tracking Events diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index 61d6c2be8595d54a68b0c53c1898068f568c2a97..94a0e0d1cdbb96a12acd1a23833242d9676d21a0 100644 +index ed6efb22465c4d610a5b12f6ef3ca1aa7a5907ea..e8dfae9d5d899963d1750d0e60a5069bab12ea07 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java -@@ -1187,7 +1187,11 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1191,7 +1191,11 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider // CraftBukkit end if (flag) { if (this.seenBy.add(player.connection)) { diff --git a/patches/server/0828-Limit-pet-look-distance.patch b/patches/server/0827-Limit-pet-look-distance.patch similarity index 100% rename from patches/server/0828-Limit-pet-look-distance.patch rename to patches/server/0827-Limit-pet-look-distance.patch diff --git a/patches/server/0829-Fixes-and-additions-to-the-SpawnReason-API.patch b/patches/server/0828-Fixes-and-additions-to-the-SpawnReason-API.patch similarity index 100% rename from patches/server/0829-Fixes-and-additions-to-the-SpawnReason-API.patch rename to patches/server/0828-Fixes-and-additions-to-the-SpawnReason-API.patch diff --git a/patches/server/0830-fix-Instruments.patch b/patches/server/0829-fix-Instruments.patch similarity index 100% rename from patches/server/0830-fix-Instruments.patch rename to patches/server/0829-fix-Instruments.patch diff --git a/patches/server/0831-Improve-inlining-for-some-hot-BlockBehavior-and-Flui.patch b/patches/server/0830-Improve-inlining-for-some-hot-BlockBehavior-and-Flui.patch similarity index 100% rename from patches/server/0831-Improve-inlining-for-some-hot-BlockBehavior-and-Flui.patch rename to patches/server/0830-Improve-inlining-for-some-hot-BlockBehavior-and-Flui.patch diff --git a/patches/server/0832-Fix-inconsistencies-in-dispense-events-regarding-sta.patch b/patches/server/0831-Fix-inconsistencies-in-dispense-events-regarding-sta.patch similarity index 100% rename from patches/server/0832-Fix-inconsistencies-in-dispense-events-regarding-sta.patch rename to patches/server/0831-Fix-inconsistencies-in-dispense-events-regarding-sta.patch diff --git a/patches/server/0833-Add-BlockLockCheckEvent.patch b/patches/server/0832-Add-BlockLockCheckEvent.patch similarity index 100% rename from patches/server/0833-Add-BlockLockCheckEvent.patch rename to patches/server/0832-Add-BlockLockCheckEvent.patch diff --git a/patches/server/0834-Add-Sneaking-API-for-Entities.patch b/patches/server/0833-Add-Sneaking-API-for-Entities.patch similarity index 91% rename from patches/server/0834-Add-Sneaking-API-for-Entities.patch rename to patches/server/0833-Add-Sneaking-API-for-Entities.patch index 0a0f88cbef..ec3c098b6e 100644 --- a/patches/server/0834-Add-Sneaking-API-for-Entities.patch +++ b/patches/server/0833-Add-Sneaking-API-for-Entities.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add Sneaking API for Entities diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index dab7108644aefe69448b5e361099d97354c8db1a..243726b6f503acc7d8ced18fbc4e697982a3fc4f 100644 +index 81ec5ffdd453714284a7860603a592495f917ec9..55a9c4eb0fe1b912e5ff6c9bb81b46674f71868a 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java @@ -871,6 +871,18 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { diff --git a/patches/server/0835-Improve-logging-and-errors.patch b/patches/server/0834-Improve-logging-and-errors.patch similarity index 100% rename from patches/server/0835-Improve-logging-and-errors.patch rename to patches/server/0834-Improve-logging-and-errors.patch diff --git a/patches/server/0836-Improve-PortalEvents.patch b/patches/server/0835-Improve-PortalEvents.patch similarity index 100% rename from patches/server/0836-Improve-PortalEvents.patch rename to patches/server/0835-Improve-PortalEvents.patch diff --git a/patches/server/0837-Add-config-option-for-spider-worldborder-climbing.patch b/patches/server/0836-Add-config-option-for-spider-worldborder-climbing.patch similarity index 69% rename from patches/server/0837-Add-config-option-for-spider-worldborder-climbing.patch rename to patches/server/0836-Add-config-option-for-spider-worldborder-climbing.patch index 8d59d9f5d1..c4325b822a 100644 --- a/patches/server/0837-Add-config-option-for-spider-worldborder-climbing.patch +++ b/patches/server/0836-Add-config-option-for-spider-worldborder-climbing.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add config option for spider worldborder climbing diff --git a/src/main/java/net/minecraft/world/entity/monster/Spider.java b/src/main/java/net/minecraft/world/entity/monster/Spider.java -index 4d5cfaa58bdf4e6cb975134004d14c591f6e85fa..ff004d5c0dee027acea51aa4886065636335e2a9 100644 +index 4d5cfaa58bdf4e6cb975134004d14c591f6e85fa..d90da2f9e4d6214577bc81bd6c70ba8593788898 100644 --- a/src/main/java/net/minecraft/world/entity/monster/Spider.java +++ b/src/main/java/net/minecraft/world/entity/monster/Spider.java @@ -86,7 +86,7 @@ public class Spider extends Monster { @@ -13,7 +13,7 @@ index 4d5cfaa58bdf4e6cb975134004d14c591f6e85fa..ff004d5c0dee027acea51aa488606563 super.tick(); if (!this.level().isClientSide) { - this.setClimbing(this.horizontalCollision); -+ this.setClimbing(this.horizontalCollision && (this.level().paperConfig().entities.behavior.allowSpiderWorldBorderClimbing || !io.papermc.paper.util.CollisionUtil.isCollidingWithBorder(this.level().getWorldBorder(), this.getBoundingBox().inflate(io.papermc.paper.util.CollisionUtil.COLLISION_EPSILON)))); // Paper - inflate by +EPSILON as collision will place us outside the border, but just barely ++ this.setClimbing(this.horizontalCollision && (this.level().paperConfig().entities.behavior.allowSpiderWorldBorderClimbing)); // Paper - Add config option for spider worldborder climbing } } diff --git a/patches/server/0838-Add-missing-SpigotConfig-logCommands-check.patch b/patches/server/0837-Add-missing-SpigotConfig-logCommands-check.patch similarity index 100% rename from patches/server/0838-Add-missing-SpigotConfig-logCommands-check.patch rename to patches/server/0837-Add-missing-SpigotConfig-logCommands-check.patch diff --git a/patches/server/0839-Fix-NPE-on-Allay-stopDancing-while-not-dancing.patch b/patches/server/0838-Fix-NPE-on-Allay-stopDancing-while-not-dancing.patch similarity index 100% rename from patches/server/0839-Fix-NPE-on-Allay-stopDancing-while-not-dancing.patch rename to patches/server/0838-Fix-NPE-on-Allay-stopDancing-while-not-dancing.patch diff --git a/patches/server/0840-Flying-Fall-Damage.patch b/patches/server/0839-Flying-Fall-Damage.patch similarity index 100% rename from patches/server/0840-Flying-Fall-Damage.patch rename to patches/server/0839-Flying-Fall-Damage.patch diff --git a/patches/server/0841-Add-exploded-block-state-to-BlockExplodeEvent-and-En.patch b/patches/server/0840-Add-exploded-block-state-to-BlockExplodeEvent-and-En.patch similarity index 100% rename from patches/server/0841-Add-exploded-block-state-to-BlockExplodeEvent-and-En.patch rename to patches/server/0840-Add-exploded-block-state-to-BlockExplodeEvent-and-En.patch diff --git a/patches/server/0842-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch b/patches/server/0841-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch similarity index 58% rename from patches/server/0842-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch rename to patches/server/0841-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch index c42d340335..21aca8cd32 100644 --- a/patches/server/0842-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch +++ b/patches/server/0841-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch @@ -6,15 +6,23 @@ Subject: [PATCH] Expose pre-collision moving velocity to diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index ce52cd5d11e4422cb236761b5dff06daa9cad56b..bbeab184bfd4b8541c97281d3328e9622c8227b6 100644 +index ce52cd5d11e4422cb236761b5dff06daa9cad56b..6c8c7b3c701ba258610cef86997ff3bc13e37bcb 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -1081,7 +1081,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -997,6 +997,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S + } + + public void move(MoverType movementType, Vec3 movement) { ++ final Vec3 originalMovement = movement; // Paper - Expose pre-collision velocity + if (this.noPhysics) { + this.setPos(this.getX() + movement.x, this.getY() + movement.y, this.getZ() + movement.z); + } else { +@@ -1081,7 +1082,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S } if (!bl.getType().isAir()) { - VehicleBlockCollisionEvent event = new VehicleBlockCollisionEvent(vehicle, bl); -+ VehicleBlockCollisionEvent event = new VehicleBlockCollisionEvent(vehicle, bl, org.bukkit.craftbukkit.util.CraftVector.toBukkit(moveVector)); // Paper - Expose pre-collision velocity ++ VehicleBlockCollisionEvent event = new VehicleBlockCollisionEvent(vehicle, bl, org.bukkit.craftbukkit.util.CraftVector.toBukkit(originalMovement)); // Paper - Expose pre-collision velocity this.level.getCraftServer().getPluginManager().callEvent(event); } } diff --git a/patches/server/0843-config-for-disabling-entity-tag-tags.patch b/patches/server/0842-config-for-disabling-entity-tag-tags.patch similarity index 100% rename from patches/server/0843-config-for-disabling-entity-tag-tags.patch rename to patches/server/0842-config-for-disabling-entity-tag-tags.patch diff --git a/patches/server/0844-Use-single-player-info-update-packet-on-join.patch b/patches/server/0843-Use-single-player-info-update-packet-on-join.patch similarity index 97% rename from patches/server/0844-Use-single-player-info-update-packet-on-join.patch rename to patches/server/0843-Use-single-player-info-update-packet-on-join.patch index 57b905f4a9..404ef91bbe 100644 --- a/patches/server/0844-Use-single-player-info-update-packet-on-join.patch +++ b/patches/server/0843-Use-single-player-info-update-packet-on-join.patch @@ -18,7 +18,7 @@ index 07850cf4117f05bfbd96a4f02fd57db1566f90af..50f2c11d98dc4e8aa2e6f577fc802279 } diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 551ceff75bc36a75bb992f1081d7343d1a956fd8..f9cb05de12c938ea6d44a806f73bc0ae48b4394f 100644 +index 6f047b2116d2ee88c75f1f39f9fd6c813775b7b5..2192ed7df719c9b8d4c990d9fb38824284fe3f0c 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -358,6 +358,7 @@ public abstract class PlayerList { diff --git a/patches/server/0845-Correctly-shrink-items-during-EntityResurrectEvent.patch b/patches/server/0844-Correctly-shrink-items-during-EntityResurrectEvent.patch similarity index 100% rename from patches/server/0845-Correctly-shrink-items-during-EntityResurrectEvent.patch rename to patches/server/0844-Correctly-shrink-items-during-EntityResurrectEvent.patch diff --git a/patches/server/0846-Win-Screen-API.patch b/patches/server/0845-Win-Screen-API.patch similarity index 100% rename from patches/server/0846-Win-Screen-API.patch rename to patches/server/0845-Win-Screen-API.patch diff --git a/patches/server/0847-Remove-CraftItemStack-setAmount-null-assignment.patch b/patches/server/0846-Remove-CraftItemStack-setAmount-null-assignment.patch similarity index 100% rename from patches/server/0847-Remove-CraftItemStack-setAmount-null-assignment.patch rename to patches/server/0846-Remove-CraftItemStack-setAmount-null-assignment.patch diff --git a/patches/server/0848-Fix-force-opening-enchantment-tables.patch b/patches/server/0847-Fix-force-opening-enchantment-tables.patch similarity index 100% rename from patches/server/0848-Fix-force-opening-enchantment-tables.patch rename to patches/server/0847-Fix-force-opening-enchantment-tables.patch diff --git a/patches/server/0849-Add-Entity-Body-Yaw-API.patch b/patches/server/0848-Add-Entity-Body-Yaw-API.patch similarity index 96% rename from patches/server/0849-Add-Entity-Body-Yaw-API.patch rename to patches/server/0848-Add-Entity-Body-Yaw-API.patch index f7b3bebaf7..4a34d0e26a 100644 --- a/patches/server/0849-Add-Entity-Body-Yaw-API.patch +++ b/patches/server/0848-Add-Entity-Body-Yaw-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add Entity Body Yaw API diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index 243726b6f503acc7d8ced18fbc4e697982a3fc4f..8692e54ee6defecf391884488121fef84731eac6 100644 +index 55a9c4eb0fe1b912e5ff6c9bb81b46674f71868a..e043a43ebda1df7b78c1368ce33a3648345bcb08 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java @@ -1135,6 +1135,31 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { diff --git a/patches/server/0850-Fix-MC-157464-Prevent-sleeping-villagers-moving-towa.patch b/patches/server/0849-Fix-MC-157464-Prevent-sleeping-villagers-moving-towa.patch similarity index 100% rename from patches/server/0850-Fix-MC-157464-Prevent-sleeping-villagers-moving-towa.patch rename to patches/server/0849-Fix-MC-157464-Prevent-sleeping-villagers-moving-towa.patch diff --git a/patches/server/0851-Update-the-flag-when-a-captured-block-state-is-outda.patch b/patches/server/0850-Update-the-flag-when-a-captured-block-state-is-outda.patch similarity index 83% rename from patches/server/0851-Update-the-flag-when-a-captured-block-state-is-outda.patch rename to patches/server/0850-Update-the-flag-when-a-captured-block-state-is-outda.patch index f785ac01e7..cbd0fdc890 100644 --- a/patches/server/0851-Update-the-flag-when-a-captured-block-state-is-outda.patch +++ b/patches/server/0850-Update-the-flag-when-a-captured-block-state-is-outda.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Update the flag when a captured block state is outdated diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 95800047e4c6d84a6f4bc7b643ca6ff302fda5ed..ee1ba73796816e15437a2a2331d86494b3674ce7 100644 +index 9c8623553e12683d99c689e5461aa36257dc5bbd..f368da2e63f5c42166749789d759056b70973614 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java -@@ -458,6 +458,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -465,6 +465,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { blockstate = CapturedBlockState.getTreeBlockState(this, pos, flags); this.capturedBlockStates.put(pos.immutable(), blockstate); } diff --git a/patches/server/0852-Add-EntityFertilizeEggEvent.patch b/patches/server/0851-Add-EntityFertilizeEggEvent.patch similarity index 100% rename from patches/server/0852-Add-EntityFertilizeEggEvent.patch rename to patches/server/0851-Add-EntityFertilizeEggEvent.patch diff --git a/patches/server/0853-Fix-HumanEntity-drop-not-updating-the-client-inv.patch b/patches/server/0852-Fix-HumanEntity-drop-not-updating-the-client-inv.patch similarity index 100% rename from patches/server/0853-Fix-HumanEntity-drop-not-updating-the-client-inv.patch rename to patches/server/0852-Fix-HumanEntity-drop-not-updating-the-client-inv.patch diff --git a/patches/server/0854-Add-CompostItemEvent-and-EntityCompostItemEvent.patch b/patches/server/0853-Add-CompostItemEvent-and-EntityCompostItemEvent.patch similarity index 100% rename from patches/server/0854-Add-CompostItemEvent-and-EntityCompostItemEvent.patch rename to patches/server/0853-Add-CompostItemEvent-and-EntityCompostItemEvent.patch diff --git a/patches/server/0855-Correctly-handle-ArmorStand-invisibility.patch b/patches/server/0854-Correctly-handle-ArmorStand-invisibility.patch similarity index 100% rename from patches/server/0855-Correctly-handle-ArmorStand-invisibility.patch rename to patches/server/0854-Correctly-handle-ArmorStand-invisibility.patch diff --git a/patches/server/0856-Fix-advancement-triggers-for-entity-damage.patch b/patches/server/0855-Fix-advancement-triggers-for-entity-damage.patch similarity index 100% rename from patches/server/0856-Fix-advancement-triggers-for-entity-damage.patch rename to patches/server/0855-Fix-advancement-triggers-for-entity-damage.patch diff --git a/patches/server/0857-Fix-text-display-error-on-spawn.patch b/patches/server/0856-Fix-text-display-error-on-spawn.patch similarity index 100% rename from patches/server/0857-Fix-text-display-error-on-spawn.patch rename to patches/server/0856-Fix-text-display-error-on-spawn.patch diff --git a/patches/server/0858-Fix-inventories-returning-null-Locations.patch b/patches/server/0857-Fix-inventories-returning-null-Locations.patch similarity index 100% rename from patches/server/0858-Fix-inventories-returning-null-Locations.patch rename to patches/server/0857-Fix-inventories-returning-null-Locations.patch diff --git a/patches/server/0859-Add-Shearable-API.patch b/patches/server/0858-Add-Shearable-API.patch similarity index 100% rename from patches/server/0859-Add-Shearable-API.patch rename to patches/server/0858-Add-Shearable-API.patch diff --git a/patches/server/0860-Fix-SpawnEggMeta-get-setSpawnedType.patch b/patches/server/0859-Fix-SpawnEggMeta-get-setSpawnedType.patch similarity index 100% rename from patches/server/0860-Fix-SpawnEggMeta-get-setSpawnedType.patch rename to patches/server/0859-Fix-SpawnEggMeta-get-setSpawnedType.patch diff --git a/patches/server/0861-Fix-beehives-generating-from-using-bonemeal.patch b/patches/server/0860-Fix-beehives-generating-from-using-bonemeal.patch similarity index 100% rename from patches/server/0861-Fix-beehives-generating-from-using-bonemeal.patch rename to patches/server/0860-Fix-beehives-generating-from-using-bonemeal.patch diff --git a/patches/server/0862-Fix-crash-relating-to-bad-recipes-in-furnace-like-ti.patch b/patches/server/0861-Fix-crash-relating-to-bad-recipes-in-furnace-like-ti.patch similarity index 100% rename from patches/server/0862-Fix-crash-relating-to-bad-recipes-in-furnace-like-ti.patch rename to patches/server/0861-Fix-crash-relating-to-bad-recipes-in-furnace-like-ti.patch diff --git a/patches/server/0863-Treat-sequence-violations-like-they-should-be.patch b/patches/server/0862-Treat-sequence-violations-like-they-should-be.patch similarity index 100% rename from patches/server/0863-Treat-sequence-violations-like-they-should-be.patch rename to patches/server/0862-Treat-sequence-violations-like-they-should-be.patch diff --git a/patches/server/0864-remove-duplicate-animate-packet-for-records.patch b/patches/server/0863-remove-duplicate-animate-packet-for-records.patch similarity index 100% rename from patches/server/0864-remove-duplicate-animate-packet-for-records.patch rename to patches/server/0863-remove-duplicate-animate-packet-for-records.patch diff --git a/patches/server/0865-Prevent-causing-expired-keys-from-impacting-new-join.patch b/patches/server/0864-Prevent-causing-expired-keys-from-impacting-new-join.patch similarity index 100% rename from patches/server/0865-Prevent-causing-expired-keys-from-impacting-new-join.patch rename to patches/server/0864-Prevent-causing-expired-keys-from-impacting-new-join.patch diff --git a/patches/server/0866-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch b/patches/server/0865-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch similarity index 100% rename from patches/server/0866-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch rename to patches/server/0865-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch diff --git a/patches/server/0867-Use-array-for-gamerule-storage.patch b/patches/server/0866-Use-array-for-gamerule-storage.patch similarity index 100% rename from patches/server/0867-Use-array-for-gamerule-storage.patch rename to patches/server/0866-Use-array-for-gamerule-storage.patch diff --git a/patches/server/0868-Fix-a-couple-of-upstream-bed-issues.patch b/patches/server/0867-Fix-a-couple-of-upstream-bed-issues.patch similarity index 100% rename from patches/server/0868-Fix-a-couple-of-upstream-bed-issues.patch rename to patches/server/0867-Fix-a-couple-of-upstream-bed-issues.patch diff --git a/patches/server/0869-Fix-demo-flag-not-enabling-demo-mode.patch b/patches/server/0868-Fix-demo-flag-not-enabling-demo-mode.patch similarity index 100% rename from patches/server/0869-Fix-demo-flag-not-enabling-demo-mode.patch rename to patches/server/0868-Fix-demo-flag-not-enabling-demo-mode.patch diff --git a/patches/server/0870-Add-Mob-Experience-reward-API.patch b/patches/server/0869-Add-Mob-Experience-reward-API.patch similarity index 100% rename from patches/server/0870-Add-Mob-Experience-reward-API.patch rename to patches/server/0869-Add-Mob-Experience-reward-API.patch diff --git a/patches/server/0871-Break-redstone-on-top-of-trap-doors-early.patch b/patches/server/0870-Break-redstone-on-top-of-trap-doors-early.patch similarity index 100% rename from patches/server/0871-Break-redstone-on-top-of-trap-doors-early.patch rename to patches/server/0870-Break-redstone-on-top-of-trap-doors-early.patch diff --git a/patches/server/0872-Fix-DamageCause-for-Falling-Blocks.patch b/patches/server/0871-Fix-DamageCause-for-Falling-Blocks.patch similarity index 100% rename from patches/server/0872-Fix-DamageCause-for-Falling-Blocks.patch rename to patches/server/0871-Fix-DamageCause-for-Falling-Blocks.patch diff --git a/patches/server/0873-Avoid-Lazy-Initialization-for-Enum-Fields.patch b/patches/server/0872-Avoid-Lazy-Initialization-for-Enum-Fields.patch similarity index 100% rename from patches/server/0873-Avoid-Lazy-Initialization-for-Enum-Fields.patch rename to patches/server/0872-Avoid-Lazy-Initialization-for-Enum-Fields.patch diff --git a/patches/server/0874-More-accurate-isInOpenWater-impl.patch b/patches/server/0873-More-accurate-isInOpenWater-impl.patch similarity index 100% rename from patches/server/0874-More-accurate-isInOpenWater-impl.patch rename to patches/server/0873-More-accurate-isInOpenWater-impl.patch diff --git a/patches/server/0875-Fix-concurrenct-access-to-lookups-field-in-RegistryO.patch b/patches/server/0874-Fix-concurrenct-access-to-lookups-field-in-RegistryO.patch similarity index 100% rename from patches/server/0875-Fix-concurrenct-access-to-lookups-field-in-RegistryO.patch rename to patches/server/0874-Fix-concurrenct-access-to-lookups-field-in-RegistryO.patch diff --git a/patches/server/0876-Expand-PlayerItemMendEvent.patch b/patches/server/0875-Expand-PlayerItemMendEvent.patch similarity index 100% rename from patches/server/0876-Expand-PlayerItemMendEvent.patch rename to patches/server/0875-Expand-PlayerItemMendEvent.patch diff --git a/patches/server/0877-Refresh-ProjectileSource-for-projectiles.patch b/patches/server/0876-Refresh-ProjectileSource-for-projectiles.patch similarity index 97% rename from patches/server/0877-Refresh-ProjectileSource-for-projectiles.patch rename to patches/server/0876-Refresh-ProjectileSource-for-projectiles.patch index 5143e11e3f..8f394bd9c5 100644 --- a/patches/server/0877-Refresh-ProjectileSource-for-projectiles.patch +++ b/patches/server/0876-Refresh-ProjectileSource-for-projectiles.patch @@ -14,7 +14,7 @@ clearing the owner. Co-authored-by: Warrior <50800980+Warriorrrr@users.noreply.github.com> diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index bbeab184bfd4b8541c97281d3328e9622c8227b6..16a4eaa49878a42f12d07ef172762a58cfa16579 100644 +index 6c8c7b3c701ba258610cef86997ff3bc13e37bcb..650001a295128f97ce2242b60a6dc93885c84268 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -383,6 +383,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S diff --git a/patches/server/0878-Add-transient-modifier-API.patch b/patches/server/0877-Add-transient-modifier-API.patch similarity index 100% rename from patches/server/0878-Add-transient-modifier-API.patch rename to patches/server/0877-Add-transient-modifier-API.patch diff --git a/patches/server/0879-Fix-block-place-logic.patch b/patches/server/0878-Fix-block-place-logic.patch similarity index 96% rename from patches/server/0879-Fix-block-place-logic.patch rename to patches/server/0878-Fix-block-place-logic.patch index df7bca6217..7e51b26fd8 100644 --- a/patches/server/0879-Fix-block-place-logic.patch +++ b/patches/server/0878-Fix-block-place-logic.patch @@ -41,10 +41,10 @@ index 0e9d515381a673e683b63a12c1a9e79a5eedd80b..096eb30dcfdd62b1d946891f7480e9d9 } diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index ee1ba73796816e15437a2a2331d86494b3674ce7..24aafda4ec034b5baa544704f8faf5ff6fcd2827 100644 +index f368da2e63f5c42166749789d759056b70973614..f4db64595f4434c9225923390c4fe7d7e0af6d26 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java -@@ -572,17 +572,18 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -579,17 +579,18 @@ public abstract class Level implements LevelAccessor, AutoCloseable { // CraftBukkit start iblockdata1.updateIndirectNeighbourShapes(this, blockposition, k, j - 1); // Don't call an event for the old block to limit event spam CraftWorld world = ((ServerLevel) this).getWorld(); diff --git a/patches/server/0880-Fix-spigot-sound-playing-for-BlockItem-ItemStacks.patch b/patches/server/0879-Fix-spigot-sound-playing-for-BlockItem-ItemStacks.patch similarity index 100% rename from patches/server/0880-Fix-spigot-sound-playing-for-BlockItem-ItemStacks.patch rename to patches/server/0879-Fix-spigot-sound-playing-for-BlockItem-ItemStacks.patch diff --git a/patches/server/0881-Call-BlockGrowEvent-for-missing-blocks.patch b/patches/server/0880-Call-BlockGrowEvent-for-missing-blocks.patch similarity index 100% rename from patches/server/0881-Call-BlockGrowEvent-for-missing-blocks.patch rename to patches/server/0880-Call-BlockGrowEvent-for-missing-blocks.patch diff --git a/patches/server/0882-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch b/patches/server/0881-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch similarity index 100% rename from patches/server/0882-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch rename to patches/server/0881-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch diff --git a/patches/server/0883-fix-MapLike-spam-for-missing-key-selector.patch b/patches/server/0882-fix-MapLike-spam-for-missing-key-selector.patch similarity index 100% rename from patches/server/0883-fix-MapLike-spam-for-missing-key-selector.patch rename to patches/server/0882-fix-MapLike-spam-for-missing-key-selector.patch diff --git a/patches/server/0884-Fix-sniffer-removeExploredLocation.patch b/patches/server/0883-Fix-sniffer-removeExploredLocation.patch similarity index 100% rename from patches/server/0884-Fix-sniffer-removeExploredLocation.patch rename to patches/server/0883-Fix-sniffer-removeExploredLocation.patch diff --git a/patches/server/0885-Add-method-to-remove-all-active-potion-effects.patch b/patches/server/0884-Add-method-to-remove-all-active-potion-effects.patch similarity index 100% rename from patches/server/0885-Add-method-to-remove-all-active-potion-effects.patch rename to patches/server/0884-Add-method-to-remove-all-active-potion-effects.patch diff --git a/patches/server/0886-Fix-incorrect-crafting-result-amount-for-fireworks.patch b/patches/server/0885-Fix-incorrect-crafting-result-amount-for-fireworks.patch similarity index 100% rename from patches/server/0886-Fix-incorrect-crafting-result-amount-for-fireworks.patch rename to patches/server/0885-Fix-incorrect-crafting-result-amount-for-fireworks.patch diff --git a/patches/server/0888-Add-event-for-player-editing-sign.patch b/patches/server/0886-Add-event-for-player-editing-sign.patch similarity index 100% rename from patches/server/0888-Add-event-for-player-editing-sign.patch rename to patches/server/0886-Add-event-for-player-editing-sign.patch diff --git a/patches/server/0889-Only-tick-item-frames-if-players-can-see-it.patch b/patches/server/0887-Only-tick-item-frames-if-players-can-see-it.patch similarity index 100% rename from patches/server/0889-Only-tick-item-frames-if-players-can-see-it.patch rename to patches/server/0887-Only-tick-item-frames-if-players-can-see-it.patch diff --git a/patches/server/0887-Properly-cancel-usable-items.patch b/patches/server/0887-Properly-cancel-usable-items.patch deleted file mode 100644 index 0509a09395..0000000000 --- a/patches/server/0887-Properly-cancel-usable-items.patch +++ /dev/null @@ -1,63 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Owen1212055 <23108066+Owen1212055@users.noreply.github.com> -Date: Tue, 23 May 2023 22:33:36 -0400 -Subject: [PATCH] Properly cancel usable items - -This fixes the bug causing cancelling PlayerInteractEvent to cause items to continue to be used despite being cancelled on the server. - -For example, items being consumed but never finishing, shields being put up, etc. -The underlying issue of this is that the client modifies their synced data values, and so we have to (forcibly) resend -them in order for the client to reset their using item state. - -diff --git a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java -index 88b71210d0845e8a4a2cd424ba238c4b5e27933b..3b93db1e23266c6ee3d2e22825c7668ef5b81f95 100644 ---- a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java -+++ b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java -@@ -555,6 +555,7 @@ public class ServerPlayerGameMode { - } - // Paper end - extend Player Interact cancellation - player.getBukkitEntity().updateInventory(); // SPIGOT-2867 -+ this.player.resyncUsingItem(this.player); // Paper - Properly cancel usable items - enuminteractionresult = (event.useItemInHand() != Event.Result.ALLOW) ? InteractionResult.SUCCESS : InteractionResult.PASS; - } else if (this.gameModeForPlayer == GameType.SPECTATOR) { - MenuProvider itileinventory = iblockdata.getMenuProvider(world, blockposition); -@@ -598,6 +599,11 @@ public class ServerPlayerGameMode { - - return enuminteractionresult1; - } -+ // Paper start - Properly cancel usable items; Cancel only if cancelled + if the interact result is different from default response -+ else if (this.interactResult && this.interactResult != cancelledItem) { -+ this.player.resyncUsingItem(this.player); -+ } -+ // Paper end - Properly cancel usable items - } - return enuminteractionresult; - // CraftBukkit end -diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index d2916743981c6632957ab8bed5ae7a2334c5646b..33bdfb66f36cce5e89be1a0de8b5a3346dbfa1e3 100644 ---- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -1876,6 +1876,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl - } - - if (cancelled) { -+ this.player.resyncUsingItem(this.player); // Paper - Properly cancel usable items - this.player.getBukkitEntity().updateInventory(); // SPIGOT-2524 - return; - } -diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index f6592d997a4cfd9d3ca86cd955e3de0a49743bfa..0a2e87a53df8611a5cd0d70dae2eb35ff5406745 100644 ---- a/src/main/java/net/minecraft/world/entity/LivingEntity.java -+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -3813,6 +3813,11 @@ public abstract class LivingEntity extends Entity implements Attackable { - return ((Byte) this.entityData.get(LivingEntity.DATA_LIVING_ENTITY_FLAGS) & 2) > 0 ? InteractionHand.OFF_HAND : InteractionHand.MAIN_HAND; - } - -+ // Paper start - Properly cancel usable items -+ public void resyncUsingItem(ServerPlayer serverPlayer) { -+ this.getEntityData().resendPossiblyDesyncedDataValues(java.util.List.of(DATA_LIVING_ENTITY_FLAGS), serverPlayer); -+ } -+ // Paper end - Properly cancel usable items - private void updatingUsingItem() { - if (this.isUsingItem()) { - if (ItemStack.isSameItem(this.getItemInHand(this.getUsedItemHand()), this.useItem)) { diff --git a/patches/server/0890-Fix-cmd-permission-levels-for-command-blocks.patch b/patches/server/0888-Fix-cmd-permission-levels-for-command-blocks.patch similarity index 100% rename from patches/server/0890-Fix-cmd-permission-levels-for-command-blocks.patch rename to patches/server/0888-Fix-cmd-permission-levels-for-command-blocks.patch diff --git a/patches/server/0891-Add-option-to-disable-block-updates.patch b/patches/server/0889-Add-option-to-disable-block-updates.patch similarity index 100% rename from patches/server/0891-Add-option-to-disable-block-updates.patch rename to patches/server/0889-Add-option-to-disable-block-updates.patch diff --git a/patches/server/0892-Call-missing-BlockDispenseEvent.patch b/patches/server/0890-Call-missing-BlockDispenseEvent.patch similarity index 100% rename from patches/server/0892-Call-missing-BlockDispenseEvent.patch rename to patches/server/0890-Call-missing-BlockDispenseEvent.patch diff --git a/patches/server/0893-Don-t-load-chunks-for-supporting-block-checks.patch b/patches/server/0891-Don-t-load-chunks-for-supporting-block-checks.patch similarity index 84% rename from patches/server/0893-Don-t-load-chunks-for-supporting-block-checks.patch rename to patches/server/0891-Don-t-load-chunks-for-supporting-block-checks.patch index ce43b9a2d6..6e0304e143 100644 --- a/patches/server/0893-Don-t-load-chunks-for-supporting-block-checks.patch +++ b/patches/server/0891-Don-t-load-chunks-for-supporting-block-checks.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Don't load chunks for supporting block checks diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 16a4eaa49878a42f12d07ef172762a58cfa16579..3c2b7adcdeeb513ce6697accd2bd81d1c4810448 100644 +index 650001a295128f97ce2242b60a6dc93885c84268..9785571cf5b0059d404ae325047dd57633d83421 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -1239,7 +1239,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -1240,7 +1240,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S } protected BlockPos getOnPos(float offset) { diff --git a/patches/server/0894-Optimize-player-lookups-for-beacons.patch b/patches/server/0892-Optimize-player-lookups-for-beacons.patch similarity index 100% rename from patches/server/0894-Optimize-player-lookups-for-beacons.patch rename to patches/server/0892-Optimize-player-lookups-for-beacons.patch diff --git a/patches/server/0895-Add-Sign-getInteractableSideFor.patch b/patches/server/0893-Add-Sign-getInteractableSideFor.patch similarity index 100% rename from patches/server/0895-Add-Sign-getInteractableSideFor.patch rename to patches/server/0893-Add-Sign-getInteractableSideFor.patch diff --git a/patches/server/0896-Array-backed-synched-entity-data.patch b/patches/server/0894-Array-backed-synched-entity-data.patch similarity index 100% rename from patches/server/0896-Array-backed-synched-entity-data.patch rename to patches/server/0894-Array-backed-synched-entity-data.patch diff --git a/patches/server/0897-fix-item-meta-for-tadpole-buckets.patch b/patches/server/0895-fix-item-meta-for-tadpole-buckets.patch similarity index 100% rename from patches/server/0897-fix-item-meta-for-tadpole-buckets.patch rename to patches/server/0895-fix-item-meta-for-tadpole-buckets.patch diff --git a/patches/server/0898-Fix-BanList-API.patch b/patches/server/0896-Fix-BanList-API.patch similarity index 100% rename from patches/server/0898-Fix-BanList-API.patch rename to patches/server/0896-Fix-BanList-API.patch diff --git a/patches/server/0899-Determine-lava-and-water-fluid-explosion-resistance-.patch b/patches/server/0897-Determine-lava-and-water-fluid-explosion-resistance-.patch similarity index 100% rename from patches/server/0899-Determine-lava-and-water-fluid-explosion-resistance-.patch rename to patches/server/0897-Determine-lava-and-water-fluid-explosion-resistance-.patch diff --git a/patches/server/0900-Fix-possible-NPE-on-painting-creation.patch b/patches/server/0898-Fix-possible-NPE-on-painting-creation.patch similarity index 100% rename from patches/server/0900-Fix-possible-NPE-on-painting-creation.patch rename to patches/server/0898-Fix-possible-NPE-on-painting-creation.patch diff --git a/patches/server/0901-Only-set-despawnTimer-for-Wandering-Traders-spawned-.patch b/patches/server/0899-Only-set-despawnTimer-for-Wandering-Traders-spawned-.patch similarity index 100% rename from patches/server/0901-Only-set-despawnTimer-for-Wandering-Traders-spawned-.patch rename to patches/server/0899-Only-set-despawnTimer-for-Wandering-Traders-spawned-.patch diff --git a/patches/server/0902-ExperienceOrb-should-call-EntitySpawnEvent.patch b/patches/server/0900-ExperienceOrb-should-call-EntitySpawnEvent.patch similarity index 100% rename from patches/server/0902-ExperienceOrb-should-call-EntitySpawnEvent.patch rename to patches/server/0900-ExperienceOrb-should-call-EntitySpawnEvent.patch diff --git a/patches/server/0903-Make-Amethyst-throw-both-Spread-and-Grow-Events.patch b/patches/server/0901-Make-Amethyst-throw-both-Spread-and-Grow-Events.patch similarity index 100% rename from patches/server/0903-Make-Amethyst-throw-both-Spread-and-Grow-Events.patch rename to patches/server/0901-Make-Amethyst-throw-both-Spread-and-Grow-Events.patch diff --git a/patches/server/0904-Add-whitelist-events.patch b/patches/server/0902-Add-whitelist-events.patch similarity index 100% rename from patches/server/0904-Add-whitelist-events.patch rename to patches/server/0902-Add-whitelist-events.patch diff --git a/patches/server/0905-Implement-PlayerFailMoveEvent.patch b/patches/server/0903-Implement-PlayerFailMoveEvent.patch similarity index 98% rename from patches/server/0905-Implement-PlayerFailMoveEvent.patch rename to patches/server/0903-Implement-PlayerFailMoveEvent.patch index 18dddf876c..1214d127e3 100644 --- a/patches/server/0905-Implement-PlayerFailMoveEvent.patch +++ b/patches/server/0903-Implement-PlayerFailMoveEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Implement PlayerFailMoveEvent diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 33bdfb66f36cce5e89be1a0de8b5a3346dbfa1e3..22855d2790ac8b7c382d0355a372e9bebf7b530f 100644 +index d2916743981c6632957ab8bed5ae7a2334c5646b..51be87480186f1b879f6c847030857aa735155e4 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -1279,8 +1279,8 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl @@ -89,7 +89,7 @@ index 33bdfb66f36cce5e89be1a0de8b5a3346dbfa1e3..22855d2790ac8b7c382d0355a372e9be this.internalTeleport(d3, d4, d5, f, f1, Collections.emptySet()); // CraftBukkit - SPIGOT-1807: Don't call teleport event, when the client thinks the player is falling, because the chunks are not loaded on the client yet. this.player.doCheckFallDamage(this.player.getX() - d3, this.player.getY() - d4, this.player.getZ() - d5, packet.isOnGround()); } else { -@@ -3371,4 +3399,17 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -3370,4 +3398,17 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl InteractionResult run(ServerPlayer player, Entity entity, InteractionHand hand); } diff --git a/patches/server/0906-Folia-scheduler-and-owned-region-API.patch b/patches/server/0904-Folia-scheduler-and-owned-region-API.patch similarity index 99% rename from patches/server/0906-Folia-scheduler-and-owned-region-API.patch rename to patches/server/0904-Folia-scheduler-and-owned-region-API.patch index f237e82cec..9631961352 100644 --- a/patches/server/0906-Folia-scheduler-and-owned-region-API.patch +++ b/patches/server/0904-Folia-scheduler-and-owned-region-API.patch @@ -1173,7 +1173,7 @@ index 14393bd35c3c77ee8d7bad0c71e880f6dd9c1be5..b703a21df8f27a987f74f99ceff476ec this.profiler.push("commandFunctions"); MinecraftTimings.commandFunctionsTimer.startTiming(); // Spigot // Paper diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index f9cb05de12c938ea6d44a806f73bc0ae48b4394f..70c89dee884838983070d3cca7bc3e2ef13674d7 100644 +index 2192ed7df719c9b8d4c990d9fb38824284fe3f0c..bb5a51dec100fe7924fd00da9804a3040752a23f 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -648,6 +648,7 @@ public abstract class PlayerList { @@ -1185,7 +1185,7 @@ index f9cb05de12c938ea6d44a806f73bc0ae48b4394f..70c89dee884838983070d3cca7bc3e2e this.players.remove(entityplayer); this.playersByName.remove(entityplayer.getScoreboardName().toLowerCase(java.util.Locale.ROOT)); // Spigot diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 3c2b7adcdeeb513ce6697accd2bd81d1c4810448..30585256911a6c57205e217b3f3b4663cd0101d8 100644 +index 9785571cf5b0059d404ae325047dd57633d83421..90a5cd8735ffa01b5cdbe807ef5fea0467d45813 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -246,11 +246,23 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -1213,7 +1213,7 @@ index 3c2b7adcdeeb513ce6697accd2bd81d1c4810448..30585256911a6c57205e217b3f3b4663 @Override public CommandSender getBukkitSender(CommandSourceStack wrapper) { return this.getBukkitEntity(); -@@ -4498,6 +4510,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -4499,6 +4511,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S return; } // Paper end - rewrite chunk system @@ -1221,7 +1221,7 @@ index 3c2b7adcdeeb513ce6697accd2bd81d1c4810448..30585256911a6c57205e217b3f3b4663 if (this.removalReason == null) { this.removalReason = reason; } -@@ -4508,12 +4521,28 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -4509,12 +4522,28 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S if (reason != RemovalReason.UNLOADED_TO_CHUNK) this.getPassengers().forEach(Entity::stopRiding); // Paper - chunk system - don't adjust passenger state when unloading, it's just not safe (and messes with our logic in entity chunk unload) this.levelCallback.onRemove(reason); @@ -1332,7 +1332,7 @@ index 534d250da9fa7715ff25e3e1b1e7362940e82056..4d8575a82849c378eda17cdfb12a45af ConfigurationSerialization.registerClass(CraftOfflinePlayer.class); ConfigurationSerialization.registerClass(CraftPlayerProfile.class); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index 8692e54ee6defecf391884488121fef84731eac6..ed760cce3ee719b89bb6636063a384eb9fd84deb 100644 +index e043a43ebda1df7b78c1368ce33a3648345bcb08..b86746be78e909b75a91751fbc4759db088d42a4 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java @@ -67,6 +67,15 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { diff --git a/patches/server/0907-Only-erase-allay-memory-on-non-item-targets.patch b/patches/server/0905-Only-erase-allay-memory-on-non-item-targets.patch similarity index 100% rename from patches/server/0907-Only-erase-allay-memory-on-non-item-targets.patch rename to patches/server/0905-Only-erase-allay-memory-on-non-item-targets.patch diff --git a/patches/server/0908-API-for-updating-recipes-on-clients.patch b/patches/server/0906-API-for-updating-recipes-on-clients.patch similarity index 97% rename from patches/server/0908-API-for-updating-recipes-on-clients.patch rename to patches/server/0906-API-for-updating-recipes-on-clients.patch index 822afe4fce..a6fd3be8e5 100644 --- a/patches/server/0908-API-for-updating-recipes-on-clients.patch +++ b/patches/server/0906-API-for-updating-recipes-on-clients.patch @@ -5,7 +5,7 @@ Subject: [PATCH] API for updating recipes on clients diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 70c89dee884838983070d3cca7bc3e2ef13674d7..1e0cc8051f0a36a21b277eab15daf612e04e4c9d 100644 +index bb5a51dec100fe7924fd00da9804a3040752a23f..9c392ac769ec8660cb70012744a64a522a5d23d4 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -1543,6 +1543,13 @@ public abstract class PlayerList { diff --git a/patches/server/0909-Fix-rotation-when-spawning-display-entities.patch b/patches/server/0907-Fix-rotation-when-spawning-display-entities.patch similarity index 100% rename from patches/server/0909-Fix-rotation-when-spawning-display-entities.patch rename to patches/server/0907-Fix-rotation-when-spawning-display-entities.patch diff --git a/patches/server/0910-Only-capture-actual-tree-growth.patch b/patches/server/0908-Only-capture-actual-tree-growth.patch similarity index 97% rename from patches/server/0910-Only-capture-actual-tree-growth.patch rename to patches/server/0908-Only-capture-actual-tree-growth.patch index 91c73a049e..56ff55e087 100644 --- a/patches/server/0910-Only-capture-actual-tree-growth.patch +++ b/patches/server/0908-Only-capture-actual-tree-growth.patch @@ -29,10 +29,10 @@ index e14d928e8bf484c61f2687621623942a27f30db1..0fd5decb0790423aba80a7c1e55ce39a } entityhuman.awardStat(Stats.ITEM_USED.get(item)); // SPIGOT-7236 - award stat diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 24aafda4ec034b5baa544704f8faf5ff6fcd2827..6dfff3e991436df62babc8b3398d39d58d03baee 100644 +index f4db64595f4434c9225923390c4fe7d7e0af6d26..a63beddef78967d13add0e62a97f03ec82f3fcc0 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java -@@ -1396,4 +1396,14 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -1403,4 +1403,14 @@ public abstract class Level implements LevelAccessor, AutoCloseable { return range <= 0 ? 64.0 * 64.0 : range * range; // 64 is taken from default in ServerLevel#levelEvent } // Paper end - respect global sound events gamerule diff --git a/patches/server/0911-Use-correct-source-for-mushroom-block-spread-event.patch b/patches/server/0909-Use-correct-source-for-mushroom-block-spread-event.patch similarity index 100% rename from patches/server/0911-Use-correct-source-for-mushroom-block-spread-event.patch rename to patches/server/0909-Use-correct-source-for-mushroom-block-spread-event.patch diff --git a/patches/server/0912-Respect-randomizeData-on-more-entities-when-spawning.patch b/patches/server/0910-Respect-randomizeData-on-more-entities-when-spawning.patch similarity index 100% rename from patches/server/0912-Respect-randomizeData-on-more-entities-when-spawning.patch rename to patches/server/0910-Respect-randomizeData-on-more-entities-when-spawning.patch diff --git a/patches/server/0913-Use-correct-seed-on-api-world-load.patch b/patches/server/0911-Use-correct-seed-on-api-world-load.patch similarity index 100% rename from patches/server/0913-Use-correct-seed-on-api-world-load.patch rename to patches/server/0911-Use-correct-seed-on-api-world-load.patch diff --git a/patches/server/0914-Remove-UpgradeData-neighbour-ticks-outside-of-range.patch b/patches/server/0912-Remove-UpgradeData-neighbour-ticks-outside-of-range.patch similarity index 100% rename from patches/server/0914-Remove-UpgradeData-neighbour-ticks-outside-of-range.patch rename to patches/server/0912-Remove-UpgradeData-neighbour-ticks-outside-of-range.patch diff --git a/patches/server/0915-Cache-map-ids-on-item-frames.patch b/patches/server/0913-Cache-map-ids-on-item-frames.patch similarity index 100% rename from patches/server/0915-Cache-map-ids-on-item-frames.patch rename to patches/server/0913-Cache-map-ids-on-item-frames.patch diff --git a/patches/server/0916-Fix-custom-statistic-criteria-creation.patch b/patches/server/0914-Fix-custom-statistic-criteria-creation.patch similarity index 100% rename from patches/server/0916-Fix-custom-statistic-criteria-creation.patch rename to patches/server/0914-Fix-custom-statistic-criteria-creation.patch diff --git a/patches/server/0917-Bandaid-fix-for-Effect.patch b/patches/server/0915-Bandaid-fix-for-Effect.patch similarity index 100% rename from patches/server/0917-Bandaid-fix-for-Effect.patch rename to patches/server/0915-Bandaid-fix-for-Effect.patch diff --git a/patches/server/0918-SculkCatalyst-bloom-API.patch b/patches/server/0916-SculkCatalyst-bloom-API.patch similarity index 100% rename from patches/server/0918-SculkCatalyst-bloom-API.patch rename to patches/server/0916-SculkCatalyst-bloom-API.patch diff --git a/patches/server/0919-API-for-an-entity-s-scoreboard-name.patch b/patches/server/0917-API-for-an-entity-s-scoreboard-name.patch similarity index 91% rename from patches/server/0919-API-for-an-entity-s-scoreboard-name.patch rename to patches/server/0917-API-for-an-entity-s-scoreboard-name.patch index 3183c6cdf6..cda86cf476 100644 --- a/patches/server/0919-API-for-an-entity-s-scoreboard-name.patch +++ b/patches/server/0917-API-for-an-entity-s-scoreboard-name.patch @@ -7,7 +7,7 @@ Was obtainable through different methods, but you had to use different methods depending on the implementation of Entity you were working with. diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index ed760cce3ee719b89bb6636063a384eb9fd84deb..cc14e635a5f2f8afe593afc676c718c431361dfb 100644 +index b86746be78e909b75a91751fbc4759db088d42a4..5abf149210f2338a125994d653209eea68359b11 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java @@ -1191,4 +1191,11 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { diff --git a/patches/server/0920-Deprecate-and-replace-methods-with-old-StructureType.patch b/patches/server/0918-Deprecate-and-replace-methods-with-old-StructureType.patch similarity index 100% rename from patches/server/0920-Deprecate-and-replace-methods-with-old-StructureType.patch rename to patches/server/0918-Deprecate-and-replace-methods-with-old-StructureType.patch diff --git a/patches/server/0921-Don-t-tab-complete-namespaced-commands-if-send-names.patch b/patches/server/0919-Don-t-tab-complete-namespaced-commands-if-send-names.patch similarity index 95% rename from patches/server/0921-Don-t-tab-complete-namespaced-commands-if-send-names.patch rename to patches/server/0919-Don-t-tab-complete-namespaced-commands-if-send-names.patch index 4974e1609b..251f339980 100644 --- a/patches/server/0921-Don-t-tab-complete-namespaced-commands-if-send-names.patch +++ b/patches/server/0919-Don-t-tab-complete-namespaced-commands-if-send-names.patch @@ -11,7 +11,7 @@ This patch prevents server from sending namespaced commands when player requests tab-complete only commands. diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 22855d2790ac8b7c382d0355a372e9bebf7b530f..a48915fb14e0bfba762853924913b7760a8aec2f 100644 +index 51be87480186f1b879f6c847030857aa735155e4..b5c1b8884e762bdabd0f8a64662b4a8debd29b10 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -770,6 +770,11 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl diff --git a/patches/server/0922-Properly-handle-BlockBreakEvent-isDropItems.patch b/patches/server/0920-Properly-handle-BlockBreakEvent-isDropItems.patch similarity index 99% rename from patches/server/0922-Properly-handle-BlockBreakEvent-isDropItems.patch rename to patches/server/0920-Properly-handle-BlockBreakEvent-isDropItems.patch index 12a1d598b2..f5555dbeb3 100644 --- a/patches/server/0922-Properly-handle-BlockBreakEvent-isDropItems.patch +++ b/patches/server/0920-Properly-handle-BlockBreakEvent-isDropItems.patch @@ -9,7 +9,7 @@ food consumption, turtle egg count decreases, ice to water conversions and beehive releases diff --git a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java -index 3b93db1e23266c6ee3d2e22825c7668ef5b81f95..7fa8041b12b8398a1d4838142c61cdc0f5bd51ad 100644 +index 88b71210d0845e8a4a2cd424ba238c4b5e27933b..e9b41b818c867d26fe9d3fa6e4d55fb432083d62 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java @@ -431,8 +431,8 @@ public class ServerPlayerGameMode { diff --git a/patches/server/0923-Fire-entity-death-event-for-ender-dragon.patch b/patches/server/0921-Fire-entity-death-event-for-ender-dragon.patch similarity index 100% rename from patches/server/0923-Fire-entity-death-event-for-ender-dragon.patch rename to patches/server/0921-Fire-entity-death-event-for-ender-dragon.patch diff --git a/patches/server/0924-Configurable-entity-tracking-range-by-Y-coordinate.patch b/patches/server/0922-Configurable-entity-tracking-range-by-Y-coordinate.patch similarity index 91% rename from patches/server/0924-Configurable-entity-tracking-range-by-Y-coordinate.patch rename to patches/server/0922-Configurable-entity-tracking-range-by-Y-coordinate.patch index f4c6558dce..3e05295275 100644 --- a/patches/server/0924-Configurable-entity-tracking-range-by-Y-coordinate.patch +++ b/patches/server/0922-Configurable-entity-tracking-range-by-Y-coordinate.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Configurable entity tracking range by Y coordinate Options to configure entity tracking by Y coordinate, also for each entity category. diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index 94a0e0d1cdbb96a12acd1a23833242d9676d21a0..fcbb74c56e4315ed197e9adfdbd2c6b76ba9f5e0 100644 +index e8dfae9d5d899963d1750d0e60a5069bab12ea07..1236c92c52454207e031aeeb050db910ccda40c3 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java -@@ -1179,6 +1179,15 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1183,6 +1183,15 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider double d1 = vec3d.x * vec3d.x + vec3d.z * vec3d.z; double d2 = d0 * d0; boolean flag = d1 <= d2 && this.entity.broadcastToPlayer(player) && ChunkMap.this.isChunkTracked(player, this.entity.chunkPosition().x, this.entity.chunkPosition().z); diff --git a/patches/server/0925-Add-Listing-API-for-Player.patch b/patches/server/0923-Add-Listing-API-for-Player.patch similarity index 99% rename from patches/server/0925-Add-Listing-API-for-Player.patch rename to patches/server/0923-Add-Listing-API-for-Player.patch index 0f97eb50b8..d1b5edaed1 100644 --- a/patches/server/0925-Add-Listing-API-for-Player.patch +++ b/patches/server/0923-Add-Listing-API-for-Player.patch @@ -74,7 +74,7 @@ index d43106eb89b14667e85cd6e8fa047d64f2e8ec87..56eddd28429cf42c02d88b8bf79f8b61 static class EntryBuilder { diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 1e0cc8051f0a36a21b277eab15daf612e04e4c9d..d1ca2b75d82653064b905b94a638abbb2d0e710d 100644 +index 9c392ac769ec8660cb70012744a64a522a5d23d4..34bd7e81f9480c97afd69c11eca216b03e6a5a1f 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -356,14 +356,22 @@ public abstract class PlayerList { diff --git a/patches/server/0926-Configurable-Region-Compression-Format.patch b/patches/server/0924-Configurable-Region-Compression-Format.patch similarity index 100% rename from patches/server/0926-Configurable-Region-Compression-Format.patch rename to patches/server/0924-Configurable-Region-Compression-Format.patch diff --git a/patches/server/0927-Add-BlockFace-to-BlockDamageEvent.patch b/patches/server/0925-Add-BlockFace-to-BlockDamageEvent.patch similarity index 96% rename from patches/server/0927-Add-BlockFace-to-BlockDamageEvent.patch rename to patches/server/0925-Add-BlockFace-to-BlockDamageEvent.patch index aff36106fb..05c4a495b0 100644 --- a/patches/server/0927-Add-BlockFace-to-BlockDamageEvent.patch +++ b/patches/server/0925-Add-BlockFace-to-BlockDamageEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add BlockFace to BlockDamageEvent diff --git a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java -index 7fa8041b12b8398a1d4838142c61cdc0f5bd51ad..334f3bc7f4a08fbbca7e03e75acf1bc46eb6479c 100644 +index e9b41b818c867d26fe9d3fa6e4d55fb432083d62..c9594f82c31cd750cdfb26619b1094a865058faf 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java @@ -253,7 +253,7 @@ public class ServerPlayerGameMode { diff --git a/patches/server/0928-Fix-NPE-on-Boat-getStatus.patch b/patches/server/0926-Fix-NPE-on-Boat-getStatus.patch similarity index 100% rename from patches/server/0928-Fix-NPE-on-Boat-getStatus.patch rename to patches/server/0926-Fix-NPE-on-Boat-getStatus.patch diff --git a/patches/server/0929-Expand-Pose-API.patch b/patches/server/0927-Expand-Pose-API.patch similarity index 91% rename from patches/server/0929-Expand-Pose-API.patch rename to patches/server/0927-Expand-Pose-API.patch index 6616afa067..dba3432d69 100644 --- a/patches/server/0929-Expand-Pose-API.patch +++ b/patches/server/0927-Expand-Pose-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Expand Pose API diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 30585256911a6c57205e217b3f3b4663cd0101d8..ba9a1f9bd38f8ac58449787a9697c28fe300193a 100644 +index 90a5cd8735ffa01b5cdbe807ef5fea0467d45813..e6695cf44190734278fc9a01fa928cd53421b260 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -418,6 +418,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -25,7 +25,7 @@ index 30585256911a6c57205e217b3f3b4663cd0101d8..ba9a1f9bd38f8ac58449787a9697c28f if (pose == this.getPose()) { return; diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index cc14e635a5f2f8afe593afc676c718c431361dfb..395476ab15a04f95710c671c9a896a9a37daa9b4 100644 +index 5abf149210f2338a125994d653209eea68359b11..1c035d1a9acc5f0a21169c66541d890a23bba033 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java @@ -896,6 +896,20 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { diff --git a/patches/server/0930-More-DragonBattle-API.patch b/patches/server/0928-More-DragonBattle-API.patch similarity index 100% rename from patches/server/0930-More-DragonBattle-API.patch rename to patches/server/0928-More-DragonBattle-API.patch diff --git a/patches/server/0931-Deep-clone-unhandled-nbt-tags.patch b/patches/server/0929-Deep-clone-unhandled-nbt-tags.patch similarity index 100% rename from patches/server/0931-Deep-clone-unhandled-nbt-tags.patch rename to patches/server/0929-Deep-clone-unhandled-nbt-tags.patch diff --git a/patches/server/0932-Add-PlayerPickItemEvent.patch b/patches/server/0930-Add-PlayerPickItemEvent.patch similarity index 96% rename from patches/server/0932-Add-PlayerPickItemEvent.patch rename to patches/server/0930-Add-PlayerPickItemEvent.patch index dce304a5c2..64af19c7e4 100644 --- a/patches/server/0932-Add-PlayerPickItemEvent.patch +++ b/patches/server/0930-Add-PlayerPickItemEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add PlayerPickItemEvent diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index a48915fb14e0bfba762853924913b7760a8aec2f..70941e46dd15db9d221b505577511cd0295ba603 100644 +index b5c1b8884e762bdabd0f8a64662b4a8debd29b10..ebdfd3d52e48781c07e92b468220642a1c10b9eb 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -907,8 +907,17 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl diff --git a/patches/server/0933-Allow-trident-custom-damage.patch b/patches/server/0931-Allow-trident-custom-damage.patch similarity index 100% rename from patches/server/0933-Allow-trident-custom-damage.patch rename to patches/server/0931-Allow-trident-custom-damage.patch diff --git a/patches/server/0934-Expose-hand-in-BlockCanBuildEvent.patch b/patches/server/0932-Expose-hand-in-BlockCanBuildEvent.patch similarity index 100% rename from patches/server/0934-Expose-hand-in-BlockCanBuildEvent.patch rename to patches/server/0932-Expose-hand-in-BlockCanBuildEvent.patch diff --git a/patches/server/0935-Optimize-nearest-structure-border-iteration.patch b/patches/server/0933-Optimize-nearest-structure-border-iteration.patch similarity index 100% rename from patches/server/0935-Optimize-nearest-structure-border-iteration.patch rename to patches/server/0933-Optimize-nearest-structure-border-iteration.patch diff --git a/patches/server/0936-Implement-OfflinePlayer-isConnected.patch b/patches/server/0934-Implement-OfflinePlayer-isConnected.patch similarity index 100% rename from patches/server/0936-Implement-OfflinePlayer-isConnected.patch rename to patches/server/0934-Implement-OfflinePlayer-isConnected.patch diff --git a/patches/server/0937-Fix-inventory-desync.patch b/patches/server/0935-Fix-inventory-desync.patch similarity index 100% rename from patches/server/0937-Fix-inventory-desync.patch rename to patches/server/0935-Fix-inventory-desync.patch diff --git a/patches/server/0938-Add-titleOverride-to-InventoryOpenEvent.patch b/patches/server/0936-Add-titleOverride-to-InventoryOpenEvent.patch similarity index 100% rename from patches/server/0938-Add-titleOverride-to-InventoryOpenEvent.patch rename to patches/server/0936-Add-titleOverride-to-InventoryOpenEvent.patch diff --git a/patches/server/0939-Configure-sniffer-egg-hatch-time.patch b/patches/server/0937-Configure-sniffer-egg-hatch-time.patch similarity index 100% rename from patches/server/0939-Configure-sniffer-egg-hatch-time.patch rename to patches/server/0937-Configure-sniffer-egg-hatch-time.patch diff --git a/patches/server/0940-Do-crystal-portal-proximity-check-before-entity-look.patch b/patches/server/0938-Do-crystal-portal-proximity-check-before-entity-look.patch similarity index 100% rename from patches/server/0940-Do-crystal-portal-proximity-check-before-entity-look.patch rename to patches/server/0938-Do-crystal-portal-proximity-check-before-entity-look.patch diff --git a/patches/server/0941-Skip-POI-finding-if-stuck-in-vehicle.patch b/patches/server/0939-Skip-POI-finding-if-stuck-in-vehicle.patch similarity index 100% rename from patches/server/0941-Skip-POI-finding-if-stuck-in-vehicle.patch rename to patches/server/0939-Skip-POI-finding-if-stuck-in-vehicle.patch diff --git a/patches/server/0942-Add-slot-sanity-checks-in-container-clicks.patch b/patches/server/0940-Add-slot-sanity-checks-in-container-clicks.patch similarity index 94% rename from patches/server/0942-Add-slot-sanity-checks-in-container-clicks.patch rename to patches/server/0940-Add-slot-sanity-checks-in-container-clicks.patch index ccb4411a26..474ffdad04 100644 --- a/patches/server/0942-Add-slot-sanity-checks-in-container-clicks.patch +++ b/patches/server/0940-Add-slot-sanity-checks-in-container-clicks.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add slot sanity checks in container clicks diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 70941e46dd15db9d221b505577511cd0295ba603..9342efcb855dce5cced227b15356df090e9c451a 100644 +index ebdfd3d52e48781c07e92b468220642a1c10b9eb..1d22b4ba82b440f163137ea6f8a182a00898c15b 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -2900,6 +2900,12 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2899,6 +2899,12 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl break; case SWAP: if ((packet.getButtonNum() >= 0 && packet.getButtonNum() < 9) || packet.getButtonNum() == 40) { diff --git a/patches/server/0943-Call-BlockRedstoneEvents-for-lecterns.patch b/patches/server/0941-Call-BlockRedstoneEvents-for-lecterns.patch similarity index 100% rename from patches/server/0943-Call-BlockRedstoneEvents-for-lecterns.patch rename to patches/server/0941-Call-BlockRedstoneEvents-for-lecterns.patch diff --git a/patches/server/0944-Allow-proper-checking-of-empty-item-stacks.patch b/patches/server/0942-Allow-proper-checking-of-empty-item-stacks.patch similarity index 100% rename from patches/server/0944-Allow-proper-checking-of-empty-item-stacks.patch rename to patches/server/0942-Allow-proper-checking-of-empty-item-stacks.patch diff --git a/patches/server/0945-Fix-silent-equipment-change-for-mobs.patch b/patches/server/0943-Fix-silent-equipment-change-for-mobs.patch similarity index 100% rename from patches/server/0945-Fix-silent-equipment-change-for-mobs.patch rename to patches/server/0943-Fix-silent-equipment-change-for-mobs.patch diff --git a/patches/server/0946-Fix-spigot-s-Forced-Stats.patch b/patches/server/0944-Fix-spigot-s-Forced-Stats.patch similarity index 100% rename from patches/server/0946-Fix-spigot-s-Forced-Stats.patch rename to patches/server/0944-Fix-spigot-s-Forced-Stats.patch diff --git a/patches/server/0947-Add-missing-InventoryHolders-to-inventories.patch b/patches/server/0945-Add-missing-InventoryHolders-to-inventories.patch similarity index 100% rename from patches/server/0947-Add-missing-InventoryHolders-to-inventories.patch rename to patches/server/0945-Add-missing-InventoryHolders-to-inventories.patch diff --git a/patches/server/0948-Do-not-read-tile-entities-in-chunks-that-are-positio.patch b/patches/server/0946-Do-not-read-tile-entities-in-chunks-that-are-positio.patch similarity index 100% rename from patches/server/0948-Do-not-read-tile-entities-in-chunks-that-are-positio.patch rename to patches/server/0946-Do-not-read-tile-entities-in-chunks-that-are-positio.patch diff --git a/patches/server/0949-Add-missing-logs-for-log-ips-config-option.patch b/patches/server/0947-Add-missing-logs-for-log-ips-config-option.patch similarity index 100% rename from patches/server/0949-Add-missing-logs-for-log-ips-config-option.patch rename to patches/server/0947-Add-missing-logs-for-log-ips-config-option.patch diff --git a/patches/server/0950-Remove-Spigot-Bug-Fix-for-MC-109346.patch b/patches/server/0948-Remove-Spigot-Bug-Fix-for-MC-109346.patch similarity index 100% rename from patches/server/0950-Remove-Spigot-Bug-Fix-for-MC-109346.patch rename to patches/server/0948-Remove-Spigot-Bug-Fix-for-MC-109346.patch diff --git a/patches/server/0951-Fix-SuspiciousStewMeta.patch b/patches/server/0949-Fix-SuspiciousStewMeta.patch similarity index 100% rename from patches/server/0951-Fix-SuspiciousStewMeta.patch rename to patches/server/0949-Fix-SuspiciousStewMeta.patch diff --git a/patches/server/0952-Fix-race-condition-on-UpgradeData.BlockFixers-class-.patch b/patches/server/0950-Fix-race-condition-on-UpgradeData.BlockFixers-class-.patch similarity index 100% rename from patches/server/0952-Fix-race-condition-on-UpgradeData.BlockFixers-class-.patch rename to patches/server/0950-Fix-race-condition-on-UpgradeData.BlockFixers-class-.patch diff --git a/patches/server/0953-Fix-NPE-in-AdvancementProgress-getDateAwarded.patch b/patches/server/0951-Fix-NPE-in-AdvancementProgress-getDateAwarded.patch similarity index 100% rename from patches/server/0953-Fix-NPE-in-AdvancementProgress-getDateAwarded.patch rename to patches/server/0951-Fix-NPE-in-AdvancementProgress-getDateAwarded.patch diff --git a/patches/server/0954-Fix-team-sidebar-objectives-not-being-cleared.patch b/patches/server/0952-Fix-team-sidebar-objectives-not-being-cleared.patch similarity index 100% rename from patches/server/0954-Fix-team-sidebar-objectives-not-being-cleared.patch rename to patches/server/0952-Fix-team-sidebar-objectives-not-being-cleared.patch diff --git a/patches/server/0955-Fix-missing-map-initialize-event-call.patch b/patches/server/0953-Fix-missing-map-initialize-event-call.patch similarity index 100% rename from patches/server/0955-Fix-missing-map-initialize-event-call.patch rename to patches/server/0953-Fix-missing-map-initialize-event-call.patch diff --git a/patches/server/0956-Update-entity-data-when-attaching-firework-to-entity.patch b/patches/server/0954-Update-entity-data-when-attaching-firework-to-entity.patch similarity index 100% rename from patches/server/0956-Update-entity-data-when-attaching-firework-to-entity.patch rename to patches/server/0954-Update-entity-data-when-attaching-firework-to-entity.patch diff --git a/patches/server/0957-Use-correct-variable-for-initializing-CraftLootTable.patch b/patches/server/0955-Use-correct-variable-for-initializing-CraftLootTable.patch similarity index 100% rename from patches/server/0957-Use-correct-variable-for-initializing-CraftLootTable.patch rename to patches/server/0955-Use-correct-variable-for-initializing-CraftLootTable.patch diff --git a/patches/server/0958-Make-setVelocity-method-of-Fireballs-change-the-trav.patch b/patches/server/0956-Make-setVelocity-method-of-Fireballs-change-the-trav.patch similarity index 100% rename from patches/server/0958-Make-setVelocity-method-of-Fireballs-change-the-trav.patch rename to patches/server/0956-Make-setVelocity-method-of-Fireballs-change-the-trav.patch diff --git a/patches/server/0959-Fix-UnsafeValues-loadAdvancement.patch b/patches/server/0957-Fix-UnsafeValues-loadAdvancement.patch similarity index 100% rename from patches/server/0959-Fix-UnsafeValues-loadAdvancement.patch rename to patches/server/0957-Fix-UnsafeValues-loadAdvancement.patch diff --git a/patches/server/0960-Add-player-idle-duration-API.patch b/patches/server/0958-Add-player-idle-duration-API.patch similarity index 100% rename from patches/server/0960-Add-player-idle-duration-API.patch rename to patches/server/0958-Add-player-idle-duration-API.patch diff --git a/patches/server/0961-Don-t-check-if-we-can-see-non-visible-entities.patch b/patches/server/0959-Don-t-check-if-we-can-see-non-visible-entities.patch similarity index 85% rename from patches/server/0961-Don-t-check-if-we-can-see-non-visible-entities.patch rename to patches/server/0959-Don-t-check-if-we-can-see-non-visible-entities.patch index fe23e35cee..3433a5e527 100644 --- a/patches/server/0961-Don-t-check-if-we-can-see-non-visible-entities.patch +++ b/patches/server/0959-Don-t-check-if-we-can-see-non-visible-entities.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Don't check if we can see non-visible entities diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index fcbb74c56e4315ed197e9adfdbd2c6b76ba9f5e0..e4f055e935bb0b31e6ee60e57b48ce7ea7ac360d 100644 +index 1236c92c52454207e031aeeb050db910ccda40c3..9e7e192493532a2ecab23b98eebc95a1bb75791c 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java -@@ -1190,7 +1190,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1194,7 +1194,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider // Paper end - Configurable entity tracking range by Y // CraftBukkit start - respect vanish API diff --git a/patches/server/0962-Fix-NPE-in-SculkBloomEvent-world-access.patch b/patches/server/0960-Fix-NPE-in-SculkBloomEvent-world-access.patch similarity index 100% rename from patches/server/0962-Fix-NPE-in-SculkBloomEvent-world-access.patch rename to patches/server/0960-Fix-NPE-in-SculkBloomEvent-world-access.patch diff --git a/patches/server/0963-Allow-null-itemstack-for-Player-sendEquipmentChange.patch b/patches/server/0961-Allow-null-itemstack-for-Player-sendEquipmentChange.patch similarity index 100% rename from patches/server/0963-Allow-null-itemstack-for-Player-sendEquipmentChange.patch rename to patches/server/0961-Allow-null-itemstack-for-Player-sendEquipmentChange.patch diff --git a/patches/server/0964-Optimize-VarInts.patch b/patches/server/0962-Optimize-VarInts.patch similarity index 100% rename from patches/server/0964-Optimize-VarInts.patch rename to patches/server/0962-Optimize-VarInts.patch diff --git a/patches/server/0965-Add-API-to-get-the-collision-shape-of-a-block-before.patch b/patches/server/0963-Add-API-to-get-the-collision-shape-of-a-block-before.patch similarity index 100% rename from patches/server/0965-Add-API-to-get-the-collision-shape-of-a-block-before.patch rename to patches/server/0963-Add-API-to-get-the-collision-shape-of-a-block-before.patch diff --git a/patches/server/0966-Add-predicate-for-blocks-when-raytracing.patch b/patches/server/0964-Add-predicate-for-blocks-when-raytracing.patch similarity index 100% rename from patches/server/0966-Add-predicate-for-blocks-when-raytracing.patch rename to patches/server/0964-Add-predicate-for-blocks-when-raytracing.patch diff --git a/patches/server/0967-Broadcast-take-item-packets-with-collector-as-source.patch b/patches/server/0965-Broadcast-take-item-packets-with-collector-as-source.patch similarity index 92% rename from patches/server/0967-Broadcast-take-item-packets-with-collector-as-source.patch rename to patches/server/0965-Broadcast-take-item-packets-with-collector-as-source.patch index 2c79a6087b..b80d8e811d 100644 --- a/patches/server/0967-Broadcast-take-item-packets-with-collector-as-source.patch +++ b/patches/server/0965-Broadcast-take-item-packets-with-collector-as-source.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Broadcast take item packets with collector as source This fixes players (which can't view the collector) seeing item pickups with themselves as the target. diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 0a2e87a53df8611a5cd0d70dae2eb35ff5406745..60841e31c65ba8e95fbb3b5a16a7a0d1c2eb831d 100644 +index f6592d997a4cfd9d3ca86cd955e3de0a49743bfa..f6eda18a0bcc398538c76bf4ca7c2a611523aa5d 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3703,7 +3703,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0968-Expand-LingeringPotion-API.patch b/patches/server/0966-Expand-LingeringPotion-API.patch similarity index 100% rename from patches/server/0968-Expand-LingeringPotion-API.patch rename to patches/server/0966-Expand-LingeringPotion-API.patch diff --git a/patches/server/0969-Add-MaterialTagsTest.patch b/patches/server/0967-Add-MaterialTagsTest.patch similarity index 100% rename from patches/server/0969-Add-MaterialTagsTest.patch rename to patches/server/0967-Add-MaterialTagsTest.patch diff --git a/patches/server/0970-Fix-strikeLightningEffect-powers-lightning-rods-and-.patch b/patches/server/0968-Fix-strikeLightningEffect-powers-lightning-rods-and-.patch similarity index 100% rename from patches/server/0970-Fix-strikeLightningEffect-powers-lightning-rods-and-.patch rename to patches/server/0968-Fix-strikeLightningEffect-powers-lightning-rods-and-.patch diff --git a/patches/server/0971-Add-hand-to-fish-event-for-all-player-interactions.patch b/patches/server/0969-Add-hand-to-fish-event-for-all-player-interactions.patch similarity index 100% rename from patches/server/0971-Add-hand-to-fish-event-for-all-player-interactions.patch rename to patches/server/0969-Add-hand-to-fish-event-for-all-player-interactions.patch diff --git a/patches/server/0972-Fix-several-issues-with-EntityBreedEvent.patch b/patches/server/0970-Fix-several-issues-with-EntityBreedEvent.patch similarity index 100% rename from patches/server/0972-Fix-several-issues-with-EntityBreedEvent.patch rename to patches/server/0970-Fix-several-issues-with-EntityBreedEvent.patch diff --git a/patches/server/0973-Add-UUID-attribute-modifier-API.patch b/patches/server/0971-Add-UUID-attribute-modifier-API.patch similarity index 100% rename from patches/server/0973-Add-UUID-attribute-modifier-API.patch rename to patches/server/0971-Add-UUID-attribute-modifier-API.patch diff --git a/patches/server/0974-Fix-missing-event-call-for-entity-teleport-API.patch b/patches/server/0972-Fix-missing-event-call-for-entity-teleport-API.patch similarity index 93% rename from patches/server/0974-Fix-missing-event-call-for-entity-teleport-API.patch rename to patches/server/0972-Fix-missing-event-call-for-entity-teleport-API.patch index 538b1a6306..0fec63f418 100644 --- a/patches/server/0974-Fix-missing-event-call-for-entity-teleport-API.patch +++ b/patches/server/0972-Fix-missing-event-call-for-entity-teleport-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fix missing event call for entity teleport API diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index 395476ab15a04f95710c671c9a896a9a37daa9b4..9b8ba3199fa091c7b20a89044ff986d9861f088f 100644 +index 1c035d1a9acc5f0a21169c66541d890a23bba033..44dd60c1f31b578e7630673433f3850f392b7a0d 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java @@ -255,6 +255,17 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { diff --git a/patches/server/0975-Lazily-create-LootContext-for-criterions.patch b/patches/server/0973-Lazily-create-LootContext-for-criterions.patch similarity index 100% rename from patches/server/0975-Lazily-create-LootContext-for-criterions.patch rename to patches/server/0973-Lazily-create-LootContext-for-criterions.patch diff --git a/patches/server/0976-Don-t-fire-sync-events-during-worldgen.patch b/patches/server/0974-Don-t-fire-sync-events-during-worldgen.patch similarity index 97% rename from patches/server/0976-Don-t-fire-sync-events-during-worldgen.patch rename to patches/server/0974-Don-t-fire-sync-events-during-worldgen.patch index 0f30d31b68..aad124c975 100644 --- a/patches/server/0976-Don-t-fire-sync-events-during-worldgen.patch +++ b/patches/server/0974-Don-t-fire-sync-events-during-worldgen.patch @@ -31,7 +31,7 @@ index 2ab478e0940eae27e6e886a36ed3c1278b3f8ae1..b54e89d68ba32f2a79e16d49f86a258b if (entity.valid) { MinecraftServer.LOGGER.error("Attempted Double World add on {}", entity, new Throwable()); diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index ba9a1f9bd38f8ac58449787a9697c28fe300193a..3c3f9a51256acb6ee4f005a08757d7ae0d27860e 100644 +index e6695cf44190734278fc9a01fa928cd53421b260..6813998a6bf9e74d663194a6be6bc222b8b129b6 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -676,7 +676,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -68,7 +68,7 @@ index a6e20b5ee4fe1841dfc2350264b5935b968fe3f3..9da8d56ff3768fb37d1ab89300da4eca }, () -> { EntityType.LOGGER.warn("Skipping Entity with id {}", nbt.getString("id")); diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 60841e31c65ba8e95fbb3b5a16a7a0d1c2eb831d..5e1d02d67c56644c0aa7060d567515fd88b72c9d 100644 +index f6eda18a0bcc398538c76bf4ca7c2a611523aa5d..be0fa9a9e91c87234b0cd7b63c4e7dba8629ebe5 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -1134,6 +1134,11 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -107,7 +107,7 @@ index 60841e31c65ba8e95fbb3b5a16a7a0d1c2eb831d..5e1d02d67c56644c0aa7060d567515fd this.onEffectUpdated(mobeffect1, true, entity); // CraftBukkit end diff --git a/src/main/java/net/minecraft/world/entity/monster/Spider.java b/src/main/java/net/minecraft/world/entity/monster/Spider.java -index ff004d5c0dee027acea51aa4886065636335e2a9..0c68ed759421d6bce4435399f1b4980510081cac 100644 +index d90da2f9e4d6214577bc81bd6c70ba8593788898..ffa4f34d964fbcc53e2dfe11677832db21a6eb93 100644 --- a/src/main/java/net/minecraft/world/entity/monster/Spider.java +++ b/src/main/java/net/minecraft/world/entity/monster/Spider.java @@ -182,7 +182,7 @@ public class Spider extends Monster { diff --git a/patches/server/0977-Fix-CraftMetaItem-getAttributeModifier-duplication-c.patch b/patches/server/0975-Fix-CraftMetaItem-getAttributeModifier-duplication-c.patch similarity index 100% rename from patches/server/0977-Fix-CraftMetaItem-getAttributeModifier-duplication-c.patch rename to patches/server/0975-Fix-CraftMetaItem-getAttributeModifier-duplication-c.patch diff --git a/patches/server/0978-Restore-vanilla-entity-drops-behavior.patch b/patches/server/0976-Restore-vanilla-entity-drops-behavior.patch similarity index 98% rename from patches/server/0978-Restore-vanilla-entity-drops-behavior.patch rename to patches/server/0976-Restore-vanilla-entity-drops-behavior.patch index 2fdc5056e9..06526387f1 100644 --- a/patches/server/0978-Restore-vanilla-entity-drops-behavior.patch +++ b/patches/server/0976-Restore-vanilla-entity-drops-behavior.patch @@ -50,10 +50,10 @@ index 649e175b6d656fa89c1a59c36230b793c8d07e15..dcd69b2b054222d1749aab599caca834 if (entityitem == null) { return null; diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 3c3f9a51256acb6ee4f005a08757d7ae0d27860e..6946137dc476d79ccaa27608a482e6ad8b7bae1a 100644 +index 6813998a6bf9e74d663194a6be6bc222b8b129b6..aed6ab8c381ab0be56c2477869e57bfb063a51bc 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2530,6 +2530,25 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -2531,6 +2531,25 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @Nullable public ItemEntity spawnAtLocation(ItemStack stack, float yOffset) { @@ -79,7 +79,7 @@ index 3c3f9a51256acb6ee4f005a08757d7ae0d27860e..6946137dc476d79ccaa27608a482e6ad if (stack.isEmpty()) { return null; } else if (this.level().isClientSide) { -@@ -2537,14 +2556,21 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -2538,14 +2557,21 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S } else { // CraftBukkit start - Capture drops for death event if (this instanceof net.minecraft.world.entity.LivingEntity && !((net.minecraft.world.entity.LivingEntity) this).forceDrops) { @@ -104,7 +104,7 @@ index 3c3f9a51256acb6ee4f005a08757d7ae0d27860e..6946137dc476d79ccaa27608a482e6ad return this.spawnAtLocation(entityitem); } diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 5e1d02d67c56644c0aa7060d567515fd88b72c9d..8d45b2c47aba08c330ec869eba633347e0572477 100644 +index be0fa9a9e91c87234b0cd7b63c4e7dba8629ebe5..d3d958b58934bcb513ffef474a9de58c61e654a2 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -254,7 +254,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0979-Add-Structure-check-API.patch b/patches/server/0977-Add-Structure-check-API.patch similarity index 100% rename from patches/server/0979-Add-Structure-check-API.patch rename to patches/server/0977-Add-Structure-check-API.patch diff --git a/patches/server/0980-Dont-resend-blocks-on-interactions.patch b/patches/server/0978-Dont-resend-blocks-on-interactions.patch similarity index 99% rename from patches/server/0980-Dont-resend-blocks-on-interactions.patch rename to patches/server/0978-Dont-resend-blocks-on-interactions.patch index 21d50f2d49..e6f6735474 100644 --- a/patches/server/0980-Dont-resend-blocks-on-interactions.patch +++ b/patches/server/0978-Dont-resend-blocks-on-interactions.patch @@ -8,7 +8,7 @@ In general, the client now has an acknowledgment system which will prevent block It should be noted that this system does not yet support block entities, so those still need to resynced when needed. diff --git a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java -index 334f3bc7f4a08fbbca7e03e75acf1bc46eb6479c..70c83a5631faed95183e15080fb3e5d8c3b817c0 100644 +index c9594f82c31cd750cdfb26619b1094a865058faf..bc0df2e1401b13737e23faae01ba16edc2a10d21 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java @@ -199,7 +199,7 @@ public class ServerPlayerGameMode { diff --git a/patches/server/0981-Keep-previous-behavior-for-setResourcePack.patch b/patches/server/0979-Keep-previous-behavior-for-setResourcePack.patch similarity index 100% rename from patches/server/0981-Keep-previous-behavior-for-setResourcePack.patch rename to patches/server/0979-Keep-previous-behavior-for-setResourcePack.patch diff --git a/patches/server/0982-properly-read-and-store-sus-effect-duration.patch b/patches/server/0980-properly-read-and-store-sus-effect-duration.patch similarity index 100% rename from patches/server/0982-properly-read-and-store-sus-effect-duration.patch rename to patches/server/0980-properly-read-and-store-sus-effect-duration.patch diff --git a/patches/server/0983-Use-correct-max-stack-size-in-crafter.patch b/patches/server/0981-Use-correct-max-stack-size-in-crafter.patch similarity index 100% rename from patches/server/0983-Use-correct-max-stack-size-in-crafter.patch rename to patches/server/0981-Use-correct-max-stack-size-in-crafter.patch diff --git a/patches/server/0984-add-more-scoreboard-API.patch b/patches/server/0982-add-more-scoreboard-API.patch similarity index 100% rename from patches/server/0984-add-more-scoreboard-API.patch rename to patches/server/0982-add-more-scoreboard-API.patch diff --git a/patches/server/0985-Improve-Registry.patch b/patches/server/0983-Improve-Registry.patch similarity index 100% rename from patches/server/0985-Improve-Registry.patch rename to patches/server/0983-Improve-Registry.patch diff --git a/patches/server/0986-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch b/patches/server/0984-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch similarity index 96% rename from patches/server/0986-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch rename to patches/server/0984-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch index b20b38f2d9..aa658a4835 100644 --- a/patches/server/0986-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch +++ b/patches/server/0984-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch @@ -26,10 +26,10 @@ index 3fec07b250a8f145e30c8c41888e47d2a3c902e1..2ddd033e1c3a2e5c8950b93c83849192 x = to.getX(); y = to.getY(); diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 8d45b2c47aba08c330ec869eba633347e0572477..72ff9e6ec6d9640556292f010bed3a71a39bdc20 100644 +index d3d958b58934bcb513ffef474a9de58c61e654a2..976b9981d6022eab6b124dd279eac82364644585 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -4185,7 +4185,7 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -4180,7 +4180,7 @@ public abstract class LivingEntity extends Entity implements Attackable { if (!(this instanceof ServerPlayer)) { EntityTeleportEvent teleport = new EntityTeleportEvent(this.getBukkitEntity(), new Location(this.level().getWorld(), d3, d4, d5), new Location(this.level().getWorld(), d0, d6, d2)); this.level().getCraftServer().getPluginManager().callEvent(teleport); diff --git a/patches/server/0987-Add-experience-points-API.patch b/patches/server/0985-Add-experience-points-API.patch similarity index 100% rename from patches/server/0987-Add-experience-points-API.patch rename to patches/server/0985-Add-experience-points-API.patch diff --git a/patches/server/0988-Add-missing-InventoryType.patch b/patches/server/0986-Add-missing-InventoryType.patch similarity index 100% rename from patches/server/0988-Add-missing-InventoryType.patch rename to patches/server/0986-Add-missing-InventoryType.patch diff --git a/patches/server/0989-Add-drops-to-shear-events.patch b/patches/server/0987-Add-drops-to-shear-events.patch similarity index 100% rename from patches/server/0989-Add-drops-to-shear-events.patch rename to patches/server/0987-Add-drops-to-shear-events.patch diff --git a/patches/server/0990-Add-PlayerShieldDisableEvent.patch b/patches/server/0988-Add-PlayerShieldDisableEvent.patch similarity index 100% rename from patches/server/0990-Add-PlayerShieldDisableEvent.patch rename to patches/server/0988-Add-PlayerShieldDisableEvent.patch diff --git a/patches/server/0991-Add-HiddenPotionEffect-API.patch b/patches/server/0989-Add-HiddenPotionEffect-API.patch similarity index 100% rename from patches/server/0991-Add-HiddenPotionEffect-API.patch rename to patches/server/0989-Add-HiddenPotionEffect-API.patch diff --git a/patches/server/0992-Correctly-check-if-bucket-dispenses-will-succeed-for.patch b/patches/server/0990-Correctly-check-if-bucket-dispenses-will-succeed-for.patch similarity index 100% rename from patches/server/0992-Correctly-check-if-bucket-dispenses-will-succeed-for.patch rename to patches/server/0990-Correctly-check-if-bucket-dispenses-will-succeed-for.patch diff --git a/patches/server/0993-fix-ItemMeta-removing-CustomModelData.patch b/patches/server/0991-fix-ItemMeta-removing-CustomModelData.patch similarity index 100% rename from patches/server/0993-fix-ItemMeta-removing-CustomModelData.patch rename to patches/server/0991-fix-ItemMeta-removing-CustomModelData.patch diff --git a/patches/server/0994-Validate-ResourceLocation-in-NBT-reading.patch b/patches/server/0992-Validate-ResourceLocation-in-NBT-reading.patch similarity index 100% rename from patches/server/0994-Validate-ResourceLocation-in-NBT-reading.patch rename to patches/server/0992-Validate-ResourceLocation-in-NBT-reading.patch diff --git a/patches/server/0995-Properly-handle-experience-dropping-on-block-break.patch b/patches/server/0993-Properly-handle-experience-dropping-on-block-break.patch similarity index 97% rename from patches/server/0995-Properly-handle-experience-dropping-on-block-break.patch rename to patches/server/0993-Properly-handle-experience-dropping-on-block-break.patch index 6b0e0d8913..a7c15fab35 100644 --- a/patches/server/0995-Properly-handle-experience-dropping-on-block-break.patch +++ b/patches/server/0993-Properly-handle-experience-dropping-on-block-break.patch @@ -7,10 +7,10 @@ This causes spawnAfterBreak to spawn xp by default, removing the need to manuall For classes that use custom xp amounts, they can drop the resources with disabling diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 6dfff3e991436df62babc8b3398d39d58d03baee..5ba31afdf371e88dd320e9a19a92d222e9de2e71 100644 +index a63beddef78967d13add0e62a97f03ec82f3fcc0..afcb69a88e00fb32b3d20791b0d1b06bb886c671 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java -@@ -637,7 +637,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -644,7 +644,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable { if (drop) { BlockEntity tileentity = iblockdata.hasBlockEntity() ? this.getBlockEntity(pos) : null; diff --git a/patches/server/0996-Fixup-NamespacedKey-handling.patch b/patches/server/0994-Fixup-NamespacedKey-handling.patch similarity index 100% rename from patches/server/0996-Fixup-NamespacedKey-handling.patch rename to patches/server/0994-Fixup-NamespacedKey-handling.patch diff --git a/patches/server/0997-Reduce-allocation-of-Vec3D-by-entity-tracker.patch b/patches/server/0995-Reduce-allocation-of-Vec3D-by-entity-tracker.patch similarity index 95% rename from patches/server/0997-Reduce-allocation-of-Vec3D-by-entity-tracker.patch rename to patches/server/0995-Reduce-allocation-of-Vec3D-by-entity-tracker.patch index fa980a7d88..432ca3b272 100644 --- a/patches/server/0997-Reduce-allocation-of-Vec3D-by-entity-tracker.patch +++ b/patches/server/0995-Reduce-allocation-of-Vec3D-by-entity-tracker.patch @@ -18,10 +18,10 @@ index 3c4ac79c094dc2fff7de94150a34b7bf814ac0de..38b56923a642afc1cb411480ba03cc78 @VisibleForTesting static long encode(double value) { diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index e4f055e935bb0b31e6ee60e57b48ce7ea7ac360d..364d958dda220c2699b9448cd88f58f9e0e93e02 100644 +index 9e7e192493532a2ecab23b98eebc95a1bb75791c..74c3bc1127b4d81cb8838d3ff4ba5211bdb24393 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java -@@ -1173,10 +1173,14 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1177,10 +1177,14 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider public void updatePlayer(ServerPlayer player) { org.spigotmc.AsyncCatcher.catchOp("player tracker update"); // Spigot if (player != this.entity) { diff --git a/patches/server/0998-Strip-raytracing-for-EntityLiving-hasLineOfSight.patch b/patches/server/0996-Strip-raytracing-for-EntityLiving-hasLineOfSight.patch similarity index 92% rename from patches/server/0998-Strip-raytracing-for-EntityLiving-hasLineOfSight.patch rename to patches/server/0996-Strip-raytracing-for-EntityLiving-hasLineOfSight.patch index 6d394ebc64..82d2d962df 100644 --- a/patches/server/0998-Strip-raytracing-for-EntityLiving-hasLineOfSight.patch +++ b/patches/server/0996-Strip-raytracing-for-EntityLiving-hasLineOfSight.patch @@ -26,7 +26,7 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 72ff9e6ec6d9640556292f010bed3a71a39bdc20..f4b90cf5f6044793e69e50392ec6e89dbab018b7 100644 +index 976b9981d6022eab6b124dd279eac82364644585..22771be445acd07d40b0a51c0a6d062e3df3ac95 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3724,7 +3724,7 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -62,15 +62,18 @@ index bb8e962e63c7a2d931f9bd7f7c002aa35cfa5fd3..0fa131a6c98adb498fc8d534e0e39647 default BlockHitResult clip(ClipContext raytrace1, BlockPos blockposition) { // Paper start - Add predicate for blocks when raytracing diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 5ba31afdf371e88dd320e9a19a92d222e9de2e71..4ea6945e949c63949b7832ce95501c4a801e840d 100644 +index afcb69a88e00fb32b3d20791b0d1b06bb886c671..50395ebec5b53cf899436c037cafcc9a32448f91 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java -@@ -343,6 +343,90 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -343,10 +343,87 @@ public abstract class Level implements LevelAccessor, AutoCloseable { return null; } +- // Paper start + // Paper start - Broken down method of raytracing for EntityLiving#hasLineOfSight, replaces BlockGetter#clip(CollisionContext) -+ public net.minecraft.world.phys.BlockHitResult.Type clipDirect(Vec3 start, Vec3 end, net.minecraft.world.phys.shapes.CollisionContext collisionContext) { + public net.minecraft.world.phys.BlockHitResult.Type clipDirect(Vec3 start, Vec3 end, net.minecraft.world.phys.shapes.CollisionContext context) { +- // To be patched over +- return this.clip(new ClipContext(start, end, ClipContext.Block.COLLIDER, ClipContext.Fluid.NONE, context)).getType(); + // most of this code comes from BlockGetter#clip(CollisionContext, BiFunction, Function), but removes the needless functions + if (start.equals(end)) { + return net.minecraft.world.phys.BlockHitResult.Type.MISS; @@ -95,7 +98,7 @@ index 5ba31afdf371e88dd320e9a19a92d222e9de2e71..4ea6945e949c63949b7832ce95501c4a + return net.minecraft.world.phys.BlockHitResult.Type.MISS; + } + -+ final net.minecraft.world.phys.BlockHitResult.Type initialCheck = this.clipDirect(start, end, currentBlock, chunk.getBlockState(currentBlock), collisionContext); ++ final net.minecraft.world.phys.BlockHitResult.Type initialCheck = this.clipDirect(start, end, currentBlock, chunk.getBlockState(currentBlock), context); + if (initialCheck != null) { + return initialCheck; + } @@ -146,13 +149,10 @@ index 5ba31afdf371e88dd320e9a19a92d222e9de2e71..4ea6945e949c63949b7832ce95501c4a + return net.minecraft.world.phys.BlockHitResult.Type.MISS; + } + } -+ result = this.clipDirect(start, end, currentBlock, chunk.getBlockState(currentBlock), collisionContext); ++ result = this.clipDirect(start, end, currentBlock, chunk.getBlockState(currentBlock), context); + } while (result == null); + + return result; -+ } -+ // Paper end -+ - public boolean isInWorldBounds(BlockPos pos) { - return !this.isOutsideBuildHeight(pos) && Level.isInWorldBoundsHorizontal(pos); } + // Paper end + diff --git a/patches/server/0999-Optimize-isInWorldBounds-and-getBlockState-for-inlin.patch b/patches/server/0997-Optimize-isInWorldBounds-and-getBlockState-for-inlin.patch similarity index 59% rename from patches/server/0999-Optimize-isInWorldBounds-and-getBlockState-for-inlin.patch rename to patches/server/0997-Optimize-isInWorldBounds-and-getBlockState-for-inlin.patch index 0c9874a5a5..b410abdb84 100644 --- a/patches/server/0999-Optimize-isInWorldBounds-and-getBlockState-for-inlin.patch +++ b/patches/server/0997-Optimize-isInWorldBounds-and-getBlockState-for-inlin.patch @@ -29,7 +29,7 @@ index 369b54b96c682717ef93d05312714b4d30efaceb..beadef19ee136c27601f0d116a869673 this.x = x; this.y = y; diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 4ea6945e949c63949b7832ce95501c4a801e840d..43dece0870da5c857592647c3e0e51c83b2b99b1 100644 +index 50395ebec5b53cf899436c037cafcc9a32448f91..d60f4ee361ced0f0844f2ddda34885c9302ba678 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -428,7 +428,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { @@ -53,23 +53,6 @@ index 3e5addb60ae8f466dad09edb3ae1fc88fe2681e9..5e8d2e4245757a0889645ea79ee68afb @Nullable public abstract BlockState setBlockState(BlockPos pos, BlockState state, boolean moved); -diff --git a/src/main/java/net/minecraft/world/level/chunk/EmptyLevelChunk.java b/src/main/java/net/minecraft/world/level/chunk/EmptyLevelChunk.java -index f49cc61840c6588fca301b4c5c3aaeede03a323e..785fa679860413b736122f8e88a92e683cbdd99f 100644 ---- a/src/main/java/net/minecraft/world/level/chunk/EmptyLevelChunk.java -+++ b/src/main/java/net/minecraft/world/level/chunk/EmptyLevelChunk.java -@@ -55,6 +55,12 @@ public class EmptyLevelChunk extends LevelChunk { - public void setBlockEmptinessMap(final boolean[] emptinessMap) {} - // Paper end - starlight - -+ // Paper start -+ @Override -+ public BlockState getBlockState(int x, int y, int z) { -+ return Blocks.VOID_AIR.defaultBlockState(); -+ } -+ // Paper end - @Override - public BlockState getBlockState(BlockPos pos) { - return Blocks.VOID_AIR.defaultBlockState(); diff --git a/src/main/java/net/minecraft/world/level/chunk/ImposterProtoChunk.java b/src/main/java/net/minecraft/world/level/chunk/ImposterProtoChunk.java index 60e760b42dd6471a229dfd45490dcf8c51979d35..4a3ac7dedf5cb1e76f16ec4f18e82afc717d0ced 100644 --- a/src/main/java/net/minecraft/world/level/chunk/ImposterProtoChunk.java @@ -87,56 +70,6 @@ index 60e760b42dd6471a229dfd45490dcf8c51979d35..4a3ac7dedf5cb1e76f16ec4f18e82afc @Override public FluidState getFluidState(BlockPos pos) { -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 90d6376f0441505a4c5f32d620827dfe233a5783..808ccbd141a3fb1073abb4817ec1fb82fe46e69b 100644 ---- a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java -+++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java -@@ -299,12 +299,29 @@ public class LevelChunk extends ChunkAccess { - } - } - -+ // Paper start - Optimize getBlockData to reduce instructions - @Override - public BlockState getBlockState(BlockPos pos) { -- int i = pos.getX(); -- int j = pos.getY(); -- int k = pos.getZ(); -+ return this.getBlockStateFinal(pos.getX(), pos.getY(), pos.getZ()); -+ } -+ -+ @Override -+ public BlockState getBlockState(final int x, final int y, final int z) { -+ return this.getBlockStateFinal(x, y, z); -+ } -+ public final BlockState getBlockStateFinal(final int x, final int y, final int z) { -+ // Method body / logic copied from below -+ final int i = this.getSectionIndex(y); -+ if (i < 0 || i >= this.sections.length || this.sections[i].nonEmptyBlockCount == 0 || this.sections[i].hasOnlyAir()) { -+ return Blocks.AIR.defaultBlockState(); -+ } -+ // Inlined ChunkSection.getType() and DataPaletteBlock.a(int,int,int) -+ return this.sections[i].states.get((y & 15) << 8 | (z & 15) << 4 | x & 15); - -+ } -+ -+ public BlockState getBlockState_unused(int i, int j, int k) { -+ // Paper end - if (this.level.isDebug()) { - BlockState iblockdata = null; - -diff --git a/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java b/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java -index ea2fb64ff15af1cbb7b3f59386fb7a40f54e9b4f..edb0a5c9f7ee6ca9502b3bb7886f2d32d718169d 100644 ---- a/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java -+++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java -@@ -19,7 +19,7 @@ public class LevelChunkSection { - public static final int SECTION_HEIGHT = 16; - public static final int SECTION_SIZE = 4096; - public static final int BIOME_CONTAINER_BITS = 2; -- private short nonEmptyBlockCount; -+ short nonEmptyBlockCount; // Paper - package-private - private short tickingBlockCount; - private short tickingFluidCount; - public final PalettedContainer states; diff --git a/src/main/java/net/minecraft/world/level/chunk/ProtoChunk.java b/src/main/java/net/minecraft/world/level/chunk/ProtoChunk.java index 7da1ed9640211b0e064162dcdb0000538e7b30f3..7aa585875dad5296526bb5d67fc5ea0f8875e452 100644 --- a/src/main/java/net/minecraft/world/level/chunk/ProtoChunk.java diff --git a/patches/server/1000-Improve-Maps-in-item-frames-performance-and-bug-fixe.patch b/patches/server/0998-Improve-Maps-in-item-frames-performance-and-bug-fixe.patch similarity index 100% rename from patches/server/1000-Improve-Maps-in-item-frames-performance-and-bug-fixe.patch rename to patches/server/0998-Improve-Maps-in-item-frames-performance-and-bug-fixe.patch diff --git a/patches/server/1001-Optimize-Network-Manager-and-add-advanced-packet-sup.patch b/patches/server/0999-Optimize-Network-Manager-and-add-advanced-packet-sup.patch similarity index 100% rename from patches/server/1001-Optimize-Network-Manager-and-add-advanced-packet-sup.patch rename to patches/server/0999-Optimize-Network-Manager-and-add-advanced-packet-sup.patch diff --git a/patches/server/1002-Allow-Saving-of-Oversized-Chunks.patch b/patches/server/1000-Allow-Saving-of-Oversized-Chunks.patch similarity index 100% rename from patches/server/1002-Allow-Saving-of-Oversized-Chunks.patch rename to patches/server/1000-Allow-Saving-of-Oversized-Chunks.patch diff --git a/patches/server/1003-Fix-World-isChunkGenerated-calls.patch b/patches/server/1001-Fix-World-isChunkGenerated-calls.patch similarity index 98% rename from patches/server/1003-Fix-World-isChunkGenerated-calls.patch rename to patches/server/1001-Fix-World-isChunkGenerated-calls.patch index 0952370922..4221e0a841 100644 --- a/patches/server/1003-Fix-World-isChunkGenerated-calls.patch +++ b/patches/server/1001-Fix-World-isChunkGenerated-calls.patch @@ -8,10 +8,10 @@ This patch also adds a chunk status cache on region files (note that its only purpose is to cache the status on DISK) diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index 364d958dda220c2699b9448cd88f58f9e0e93e02..ca58aedecf80eba442aca6e6cd0a1428db899268 100644 +index 74c3bc1127b4d81cb8838d3ff4ba5211bdb24393..3c24a700cb417f98bf94631d4c87e66cbdbbba57 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java -@@ -719,9 +719,13 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -723,9 +723,13 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider // Paper end private CompletableFuture> readChunk(ChunkPos chunkPos) { @@ -28,7 +28,7 @@ index 364d958dda220c2699b9448cd88f58f9e0e93e02..ca58aedecf80eba442aca6e6cd0a1428 } // CraftBukkit start -@@ -730,6 +734,60 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -734,6 +738,60 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider // CraftBukkit end } diff --git a/patches/server/1004-Flat-bedrock-generator-settings.patch b/patches/server/1002-Flat-bedrock-generator-settings.patch similarity index 100% rename from patches/server/1004-Flat-bedrock-generator-settings.patch rename to patches/server/1002-Flat-bedrock-generator-settings.patch diff --git a/patches/server/1005-Entity-Activation-Range-2.0.patch b/patches/server/1003-Entity-Activation-Range-2.0.patch similarity index 97% rename from patches/server/1005-Entity-Activation-Range-2.0.patch rename to patches/server/1003-Entity-Activation-Range-2.0.patch index 7e04f83f63..eea5e80076 100644 --- a/patches/server/1005-Entity-Activation-Range-2.0.patch +++ b/patches/server/1003-Entity-Activation-Range-2.0.patch @@ -15,7 +15,6 @@ Adds villagers as separate config == AT == public net.minecraft.world.entity.Entity isInsidePortal -public net.minecraft.world.entity.LivingEntity jumping diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java index a2a9535a6667d290198ef8d6332d317c8ffffe2e..0c8282683a02087ec0631d1fb5edb13759853486 100644 @@ -112,7 +111,7 @@ index a2a9535a6667d290198ef8d6332d317c8ffffe2e..0c8282683a02087ec0631d1fb5edb137 } else { passenger.stopRiding(); diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 6946137dc476d79ccaa27608a482e6ad8b7bae1a..f080a688eeeaa8ed30690026a483930b7b9e0344 100644 +index aed6ab8c381ab0be56c2477869e57bfb063a51bc..87b98fc1a11d7313d70f4607deb3814f31b10977 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -412,6 +412,8 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -124,7 +123,7 @@ index 6946137dc476d79ccaa27608a482e6ad8b7bae1a..f080a688eeeaa8ed30690026a483930b public boolean spawnedViaMobSpawner; // Paper - Yes this name is similar to above, upstream took the better one @javax.annotation.Nullable private org.bukkit.util.Vector origin; -@@ -1021,6 +1023,8 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -1022,6 +1024,8 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S } else { this.wasOnFire = this.isOnFire(); if (movementType == MoverType.PISTON) { @@ -133,7 +132,7 @@ index 6946137dc476d79ccaa27608a482e6ad8b7bae1a..f080a688eeeaa8ed30690026a483930b movement = this.limitPistonMovement(movement); if (movement.equals(Vec3.ZERO)) { return; -@@ -1033,6 +1037,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -1034,6 +1038,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S this.stuckSpeedMultiplier = Vec3.ZERO; this.setDeltaMovement(Vec3.ZERO); } @@ -340,7 +339,7 @@ index b149e8bcac034bb3fc118a9adcb0de45e18ed5e9..fc35cfc9d045f3e5b6a50af1d0ba83b6 + } diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 43dece0870da5c857592647c3e0e51c83b2b99b1..3b9833c7d7513a5b0afe36da82ba52cfe336bc58 100644 +index d60f4ee361ced0f0844f2ddda34885c9302ba678..6a17405d7097b34049fcac465aa1d94ca20611f8 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -162,6 +162,12 @@ public abstract class Level implements LevelAccessor, AutoCloseable { @@ -372,10 +371,10 @@ index b1061db1d9b3bfde61d5016e10556c4320095827..c71690dbc3dc52803945f1608f0ee3ba } } diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java -index aaa997613a991a9fc5ed276a7e7e61448f34ef64..fafc8b84d6b6368c70b8eedfdb4c3a9deace9c26 100644 +index dfbcddadea4a89c4cfc879105cfacae6dde742a9..fafc8b84d6b6368c70b8eedfdb4c3a9deace9c26 100644 --- a/src/main/java/org/spigotmc/ActivationRange.java +++ b/src/main/java/org/spigotmc/ActivationRange.java -@@ -1,39 +1,52 @@ +@@ -1,33 +1,43 @@ package org.spigotmc; +import net.minecraft.core.BlockPos; @@ -422,16 +421,7 @@ index aaa997613a991a9fc5ed276a7e7e61448f34ef64..fafc8b84d6b6368c70b8eedfdb4c3a9d public class ActivationRange { - - public enum ActivationType - { -+ WATER, // Paper -+ FLYING_MONSTER, // Paper -+ VILLAGER, // Paper - MONSTER, - ANIMAL, - RAIDER, -@@ -41,6 +54,43 @@ public class ActivationRange +@@ -44,6 +54,43 @@ public class ActivationRange AABB boundingBox = new AABB( 0, 0, 0, 0, 0, 0 ); } @@ -475,7 +465,7 @@ index aaa997613a991a9fc5ed276a7e7e61448f34ef64..fafc8b84d6b6368c70b8eedfdb4c3a9d static AABB maxBB = new AABB( 0, 0, 0, 0, 0, 0 ); -@@ -53,10 +103,13 @@ public class ActivationRange +@@ -56,10 +103,13 @@ public class ActivationRange */ public static ActivationType initializeEntityActivationType(Entity entity) { @@ -490,7 +480,7 @@ index aaa997613a991a9fc5ed276a7e7e61448f34ef64..fafc8b84d6b6368c70b8eedfdb4c3a9d { return ActivationType.MONSTER; } else if ( entity instanceof PathfinderMob || entity instanceof AmbientCreature ) -@@ -77,10 +130,14 @@ public class ActivationRange +@@ -80,10 +130,14 @@ public class ActivationRange */ public static boolean initializeEntityActivationState(Entity entity, SpigotWorldConfig config) { @@ -509,7 +499,7 @@ index aaa997613a991a9fc5ed276a7e7e61448f34ef64..fafc8b84d6b6368c70b8eedfdb4c3a9d || entity instanceof Player || entity instanceof ThrowableProjectile || entity instanceof EnderDragon -@@ -113,10 +170,25 @@ public class ActivationRange +@@ -116,10 +170,25 @@ public class ActivationRange final int raiderActivationRange = world.spigotConfig.raiderActivationRange; final int animalActivationRange = world.spigotConfig.animalActivationRange; final int monsterActivationRange = world.spigotConfig.monsterActivationRange; @@ -535,7 +525,7 @@ index aaa997613a991a9fc5ed276a7e7e61448f34ef64..fafc8b84d6b6368c70b8eedfdb4c3a9d maxRange = Math.min( ( world.spigotConfig.simulationDistance << 4 ) - 8, maxRange ); for ( Player player : world.players() ) -@@ -127,11 +199,17 @@ public class ActivationRange +@@ -130,11 +199,17 @@ public class ActivationRange continue; } @@ -558,7 +548,7 @@ index aaa997613a991a9fc5ed276a7e7e61448f34ef64..fafc8b84d6b6368c70b8eedfdb4c3a9d // Paper start java.util.List entities = world.getEntities((Entity)null, ActivationRange.maxBB, null); -@@ -178,60 +256,118 @@ public class ActivationRange +@@ -181,60 +256,118 @@ public class ActivationRange * @param entity * @return */ @@ -694,7 +684,7 @@ index aaa997613a991a9fc5ed276a7e7e61448f34ef64..fafc8b84d6b6368c70b8eedfdb4c3a9d } /** -@@ -246,8 +382,19 @@ public class ActivationRange +@@ -249,8 +382,19 @@ public class ActivationRange if ( entity instanceof FireworkRocketEntity ) { return true; } @@ -715,7 +705,7 @@ index aaa997613a991a9fc5ed276a7e7e61448f34ef64..fafc8b84d6b6368c70b8eedfdb4c3a9d // Should this entity tick? if ( !isActive ) -@@ -255,15 +402,19 @@ public class ActivationRange +@@ -258,15 +402,19 @@ public class ActivationRange if ( ( MinecraftServer.currentTick - entity.activatedTick - 1 ) % 20 == 0 ) { // Check immunities every 20 ticks. diff --git a/patches/server/1006-Optional-per-player-mob-spawns.patch b/patches/server/1004-Optional-per-player-mob-spawns.patch similarity index 97% rename from patches/server/1006-Optional-per-player-mob-spawns.patch rename to patches/server/1004-Optional-per-player-mob-spawns.patch index 0c3e064dbb..f184f6a5ec 100644 --- a/patches/server/1006-Optional-per-player-mob-spawns.patch +++ b/patches/server/1004-Optional-per-player-mob-spawns.patch @@ -5,15 +5,15 @@ Subject: [PATCH] Optional per player mob spawns diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index ca58aedecf80eba442aca6e6cd0a1428db899268..e575350d5af1c605ccadb67e4f0fdc28662caba0 100644 +index 3c24a700cb417f98bf94631d4c87e66cbdbbba57..b4611b21beb31b109cb5ecfa5aa03ac15e16335a 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java -@@ -288,6 +288,29 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -288,9 +288,28 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider }); } + // Paper start - Optional per player mob spawns -+ public void updatePlayerMobTypeMap(Entity entity) { ++ public void updatePlayerMobTypeMap(final Entity entity) { + if (!this.level.paperConfig().entities.spawning.perPlayerMobSpawns) { + return; + } @@ -30,14 +30,14 @@ index ca58aedecf80eba442aca6e6cd0a1428db899268..e575350d5af1c605ccadb67e4f0fdc28 + } + } + -+ public int getMobCountNear(ServerPlayer entityPlayer, net.minecraft.world.entity.MobCategory mobCategory) { -+ return entityPlayer.mobCounts[mobCategory.ordinal()]; -+ } + public int getMobCountNear(final ServerPlayer player, final net.minecraft.world.entity.MobCategory mobCategory) { +- return -1; ++ return player.mobCounts[mobCategory.ordinal()]; + } + // Paper end - Optional per player mob spawns -+ + private static double euclideanDistanceSquared(ChunkPos pos, Entity entity) { double d0 = (double) SectionPos.sectionToBlockCoord(pos.x, 8); - double d1 = (double) SectionPos.sectionToBlockCoord(pos.z, 8); diff --git a/src/main/java/net/minecraft/server/level/ServerChunkCache.java b/src/main/java/net/minecraft/server/level/ServerChunkCache.java index 35f463e5237d12e42f7a8b8c177af3236d2e7986..25009accd401fc3860c57cac1ef628b233e746e7 100644 --- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java diff --git a/patches/server/1007-Anti-Xray.patch b/patches/server/1005-Anti-Xray.patch similarity index 97% rename from patches/server/1007-Anti-Xray.patch rename to patches/server/1005-Anti-Xray.patch index a53ceaa47d..f037e4c040 100644 --- a/patches/server/1007-Anti-Xray.patch +++ b/patches/server/1005-Anti-Xray.patch @@ -1017,12 +1017,12 @@ index 6cff1a98dc7cf33947ec760dbc3d3d0ec5db5f6c..51f647de153255c919b1440338cf1b3e } diff --git a/src/main/java/net/minecraft/network/protocol/game/ClientboundLevelChunkPacketData.java b/src/main/java/net/minecraft/network/protocol/game/ClientboundLevelChunkPacketData.java -index 582a3e5e45dd10068eeb25a3e37bdece3ddbc296..998deae645b4497c3285bfba3260c636439f9ecf 100644 +index 89e3163b0301f8414c9400a6e00cdd85841fe2e8..74b5cec09d953a247bc5aba3c4232a4c28ea1046 100644 --- a/src/main/java/net/minecraft/network/protocol/game/ClientboundLevelChunkPacketData.java +++ b/src/main/java/net/minecraft/network/protocol/game/ClientboundLevelChunkPacketData.java -@@ -33,7 +33,10 @@ public class ClientboundLevelChunkPacketData { - } - // Paper end - Handle oversized block entities in chunks +@@ -25,7 +25,10 @@ public class ClientboundLevelChunkPacketData { + private final byte[] buffer; + private final List blockEntitiesData; - public ClientboundLevelChunkPacketData(LevelChunk chunk) { + // Paper start - Anti-Xray - Add chunk packet info @@ -1032,7 +1032,7 @@ index 582a3e5e45dd10068eeb25a3e37bdece3ddbc296..998deae645b4497c3285bfba3260c636 this.heightmaps = new CompoundTag(); for(Map.Entry entry : chunk.getHeightmaps()) { -@@ -43,7 +46,14 @@ public class ClientboundLevelChunkPacketData { +@@ -35,7 +38,14 @@ public class ClientboundLevelChunkPacketData { } this.buffer = new byte[calculateChunkSize(chunk)]; @@ -1046,9 +1046,9 @@ index 582a3e5e45dd10068eeb25a3e37bdece3ddbc296..998deae645b4497c3285bfba3260c636 + extractChunkData(new FriendlyByteBuf(this.getWriteBuffer()), chunk, chunkPacketInfo); + // Paper end this.blockEntitiesData = Lists.newArrayList(); - int totalTileEntities = 0; // Paper - Handle oversized block entities in chunks -@@ -103,9 +113,15 @@ public class ClientboundLevelChunkPacketData { + for(Map.Entry entry2 : chunk.getBlockEntities().entrySet()) { +@@ -85,9 +95,15 @@ public class ClientboundLevelChunkPacketData { return byteBuf; } @@ -1067,7 +1067,7 @@ index 582a3e5e45dd10068eeb25a3e37bdece3ddbc296..998deae645b4497c3285bfba3260c636 } diff --git a/src/main/java/net/minecraft/network/protocol/game/ClientboundLevelChunkWithLightPacket.java b/src/main/java/net/minecraft/network/protocol/game/ClientboundLevelChunkWithLightPacket.java -index 90ec22d35edb2874417bbea590e0d3c37ad93d64..fc230d835f9aa526a4b179d36d921f0fec348aa8 100644 +index 26e46d751c8f8162c2bafe2fc109fc91dc4b7c0f..6412dff5ed0505f62dd5b71ab9606257858a7317 100644 --- a/src/main/java/net/minecraft/network/protocol/game/ClientboundLevelChunkWithLightPacket.java +++ b/src/main/java/net/minecraft/network/protocol/game/ClientboundLevelChunkWithLightPacket.java @@ -13,13 +13,30 @@ public class ClientboundLevelChunkWithLightPacket implements Packet 0) { new io.papermc.paper.event.packet.PlayerChunkLoadEvent(new org.bukkit.craftbukkit.CraftChunk(chunk), handler.getPlayer().getBukkitEntity()).callEvent(); +diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java +index 34bd7e81f9480c97afd69c11eca216b03e6a5a1f..eae6121a2f3fb33146b0a625cc82c8bce8efc91b 100644 +--- a/src/main/java/net/minecraft/server/players/PlayerList.java ++++ b/src/main/java/net/minecraft/server/players/PlayerList.java +@@ -418,7 +418,7 @@ public abstract class PlayerList { + .getHolderOrThrow(net.minecraft.world.level.biome.Biomes.PLAINS); + player.connection.send(new net.minecraft.network.protocol.game.ClientboundLevelChunkWithLightPacket( + new net.minecraft.world.level.chunk.EmptyLevelChunk(worldserver1, player.chunkPosition(), plains), +- worldserver1.getLightEngine(), (java.util.BitSet)null, (java.util.BitSet) null) ++ worldserver1.getLightEngine(), (java.util.BitSet)null, (java.util.BitSet) null, true) + ); + } + // Paper end - Send empty chunk diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 3b9833c7d7513a5b0afe36da82ba52cfe336bc58..7116e2b98a8c6cc026fd9ea8c5f2c00764906a8c 100644 +index 6a17405d7097b34049fcac465aa1d94ca20611f8..726f3a1ee1f335ca917f7f461b62578ddbef3afe 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -177,6 +177,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { @@ -1217,7 +1230,7 @@ index 5e8d2e4245757a0889645ea79ee68afb53f7dde4..f7e5e016a7028a9196e689e950805b0d } 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 808ccbd141a3fb1073abb4817ec1fb82fe46e69b..6e1006675339551ca499a57a8f8553020f16a4fa 100644 +index 57d7392871634348ff906c03dc0ca601cd3040bd..205a8059128422d962c1cb5d2d7c40461a3eefb3 100644 --- a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java +++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java @@ -91,7 +91,7 @@ public class LevelChunk extends ChunkAccess { @@ -1230,7 +1243,7 @@ index 808ccbd141a3fb1073abb4817ec1fb82fe46e69b..6e1006675339551ca499a57a8f855302 this.level = (ServerLevel) world; // CraftBukkit - type this.gameEventListenerRegistrySections = new Int2ObjectOpenHashMap(); diff --git a/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java b/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java -index edb0a5c9f7ee6ca9502b3bb7886f2d32d718169d..3efd0a462306fbd02a506a3f952d609645b1f874 100644 +index b606e33f8b64eaba28c008cc353d88aa45549e31..8852263cb6faec1b68326145aa30e5cd36d066e7 100644 --- a/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java +++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java @@ -33,9 +33,12 @@ public class LevelChunkSection { diff --git a/patches/server/1008-Improve-cancelling-PreCreatureSpawnEvent-with-per-pl.patch b/patches/server/1006-Improve-cancelling-PreCreatureSpawnEvent-with-per-pl.patch similarity index 91% rename from patches/server/1008-Improve-cancelling-PreCreatureSpawnEvent-with-per-pl.patch rename to patches/server/1006-Improve-cancelling-PreCreatureSpawnEvent-with-per-pl.patch index 236a256621..6a15157d17 100644 --- a/patches/server/1008-Improve-cancelling-PreCreatureSpawnEvent-with-per-pl.patch +++ b/patches/server/1006-Improve-cancelling-PreCreatureSpawnEvent-with-per-pl.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Improve cancelling PreCreatureSpawnEvent with per player mob diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index e575350d5af1c605ccadb67e4f0fdc28662caba0..0b80e73593a24c008b2ae8d09be59787e39ef0e6 100644 +index b4611b21beb31b109cb5ecfa5aa03ac15e16335a..e69e68ae3be2760c079338793f33c27f59ebf7cf 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java -@@ -306,8 +306,26 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -306,8 +306,25 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider } } @@ -30,10 +30,9 @@ index e575350d5af1c605ccadb67e4f0fdc28662caba0..0b80e73593a24c008b2ae8d09be59787 + } + } + // Paper end - per player mob count backoff -+ - public int getMobCountNear(ServerPlayer entityPlayer, net.minecraft.world.entity.MobCategory mobCategory) { -- return entityPlayer.mobCounts[mobCategory.ordinal()]; -+ return entityPlayer.mobCounts[mobCategory.ordinal()] + entityPlayer.mobBackoffCounts[mobCategory.ordinal()]; // Paper - per player mob count backoff + public int getMobCountNear(final ServerPlayer player, final net.minecraft.world.entity.MobCategory mobCategory) { +- return player.mobCounts[mobCategory.ordinal()]; ++ return player.mobCounts[mobCategory.ordinal()] + player.mobBackoffCounts[mobCategory.ordinal()]; // Paper - per player mob count backoff } // Paper end - Optional per player mob spawns diff --git a/patches/server/1009-Write-SavedData-IO-async.patch b/patches/server/1007-Write-SavedData-IO-async.patch similarity index 100% rename from patches/server/1009-Write-SavedData-IO-async.patch rename to patches/server/1007-Write-SavedData-IO-async.patch diff --git a/patches/server/1010-Optimize-Collision-to-not-load-chunks.patch b/patches/server/1008-Optimize-Collision-to-not-load-chunks.patch similarity index 97% rename from patches/server/1010-Optimize-Collision-to-not-load-chunks.patch rename to patches/server/1008-Optimize-Collision-to-not-load-chunks.patch index f6c26488c5..e630dfec6a 100644 --- a/patches/server/1010-Optimize-Collision-to-not-load-chunks.patch +++ b/patches/server/1008-Optimize-Collision-to-not-load-chunks.patch @@ -14,7 +14,7 @@ movement will load only the chunk the player enters anyways and avoids loading massive amounts of surrounding chunks due to large AABB lookups. diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index d1ca2b75d82653064b905b94a638abbb2d0e710d..1c56b7cd0cfc8cdc0ccfc7ce79cd3e23bef1b334 100644 +index 34bd7e81f9480c97afd69c11eca216b03e6a5a1f..44effa0c7b76c5128c6179f437c0f041f896d3ac 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -934,6 +934,7 @@ public abstract class PlayerList { @@ -26,7 +26,7 @@ index d1ca2b75d82653064b905b94a638abbb2d0e710d..1c56b7cd0cfc8cdc0ccfc7ce79cd3e23 // CraftBukkit end entityplayer1.setPos(entityplayer1.getX(), entityplayer1.getY() + 1.0D, entityplayer1.getZ()); diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 51b0ec061da092aa1a303ff88b8d029133b82e73..5aa9498f41a3f70af6aec04cfaa587841e2fbebb 100644 +index 87b98fc1a11d7313d70f4607deb3814f31b10977..8646584b78fa452799c6964c1485f35531541053 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -241,6 +241,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S diff --git a/patches/server/1011-Optimize-GoalSelector-Goal.Flag-Set-operations.patch b/patches/server/1009-Optimize-GoalSelector-Goal.Flag-Set-operations.patch similarity index 94% rename from patches/server/1011-Optimize-GoalSelector-Goal.Flag-Set-operations.patch rename to patches/server/1009-Optimize-GoalSelector-Goal.Flag-Set-operations.patch index e43e1e88f6..8e879a28af 100644 --- a/patches/server/1011-Optimize-GoalSelector-Goal.Flag-Set-operations.patch +++ b/patches/server/1009-Optimize-GoalSelector-Goal.Flag-Set-operations.patch @@ -7,7 +7,7 @@ Optimise the stream.anyMatch statement to move to a bitset where we can replace the call with a single bitwise operation. diff --git a/src/main/java/net/minecraft/world/entity/ai/goal/Goal.java b/src/main/java/net/minecraft/world/entity/ai/goal/Goal.java -index 16f9a98b8a939e5ca7e2dc04f87134a7ed66736b..54a2ce8c7069e91a939fe03de4349385705b0c67 100644 +index 16f9a98b8a939e5ca7e2dc04f87134a7ed66736b..dd423302b1baa64ef86ded87a29659342e28c142 100644 --- a/src/main/java/net/minecraft/world/entity/ai/goal/Goal.java +++ b/src/main/java/net/minecraft/world/entity/ai/goal/Goal.java @@ -4,7 +4,16 @@ import java.util.EnumSet; @@ -21,7 +21,7 @@ index 16f9a98b8a939e5ca7e2dc04f87134a7ed66736b..54a2ce8c7069e91a939fe03de4349385 + // Paper start - remove streams from pathfindergoalselector; make sure types are not empty + public Goal() { + if (this.goalTypes.size() == 0) { -+ this.goalTypes.addUnchecked(Flag.UNKNOWN_BEHAVIOR); ++ this.goalTypes.add(Flag.UNKNOWN_BEHAVIOR); + } + } + // Paper end - remove streams from pathfindergoalselector @@ -36,9 +36,9 @@ index 16f9a98b8a939e5ca7e2dc04f87134a7ed66736b..54a2ce8c7069e91a939fe03de4349385 - this.flags.addAll(controls); + // Paper start - remove streams from pathfindergoalselector + this.goalTypes.clear(); -+ this.goalTypes.addAllUnchecked(controls); ++ this.goalTypes.addAll(controls); + if (this.goalTypes.size() == 0) { -+ this.goalTypes.addUnchecked(Flag.UNKNOWN_BEHAVIOR); ++ this.goalTypes.add(Flag.UNKNOWN_BEHAVIOR); + } + // Paper end - remove streams from pathfindergoalselector } @@ -58,7 +58,7 @@ index 16f9a98b8a939e5ca7e2dc04f87134a7ed66736b..54a2ce8c7069e91a939fe03de4349385 protected int adjustedTickDelay(int ticks) { diff --git a/src/main/java/net/minecraft/world/entity/ai/goal/GoalSelector.java b/src/main/java/net/minecraft/world/entity/ai/goal/GoalSelector.java -index e5995d0db5dcfba59a873ff439601894fdacd556..b738ee2d3801fadfd09313f05ae24593e56b0ec6 100644 +index e5995d0db5dcfba59a873ff439601894fdacd556..676f5485a4ca9252e911213dcda8d51776b637b6 100644 --- a/src/main/java/net/minecraft/world/entity/ai/goal/GoalSelector.java +++ b/src/main/java/net/minecraft/world/entity/ai/goal/GoalSelector.java @@ -30,10 +30,12 @@ public class GoalSelector { @@ -153,12 +153,12 @@ index e5995d0db5dcfba59a873ff439601894fdacd556..b738ee2d3801fadfd09313f05ae24593 public void disableControlFlag(Goal.Flag control) { - this.disabledFlags.add(control); -+ this.goalTypes.addUnchecked(control); // Paper - remove streams from pathfindergoalselector ++ this.goalTypes.add(control); // Paper - remove streams from pathfindergoalselector } public void enableControlFlag(Goal.Flag control) { - this.disabledFlags.remove(control); -+ this.goalTypes.removeUnchecked(control); // Paper - remove streams from pathfindergoalselector ++ this.goalTypes.remove(control); // Paper - remove streams from pathfindergoalselector } public void setControlFlag(Goal.Flag control, boolean enabled) { diff --git a/patches/server/1012-Improved-Watchdog-Support.patch b/patches/server/1010-Improved-Watchdog-Support.patch similarity index 99% rename from patches/server/1012-Improved-Watchdog-Support.patch rename to patches/server/1010-Improved-Watchdog-Support.patch index da85e17753..d2cc093b7d 100644 --- a/patches/server/1012-Improved-Watchdog-Support.patch +++ b/patches/server/1010-Improved-Watchdog-Support.patch @@ -266,7 +266,7 @@ index 9e0c5bb92fb45cab7d78c5ad631c64170d48729f..6de6dad36203479677a29ad61e21bc36 } diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 1c56b7cd0cfc8cdc0ccfc7ce79cd3e23bef1b334..c423bf30173d2bf6cd3b202de6d490d45c41bf72 100644 +index 44effa0c7b76c5128c6179f437c0f041f896d3ac..58fd91570123abcb288ae9e6f64c1a4bdeb08d85 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -612,7 +612,7 @@ public abstract class PlayerList { @@ -291,7 +291,7 @@ index f5829ae484d93b547a5437b85a9621346384a11b..83701fbfaa56a232593ee8f11a3afb89 } diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 7116e2b98a8c6cc026fd9ea8c5f2c00764906a8c..8a3a526f7dbce1090d39232dd310d91cc54efc44 100644 +index 726f3a1ee1f335ca917f7f461b62578ddbef3afe..141735eada9082ac3d3fda13765fa713d5d131a1 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -940,6 +940,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { @@ -303,7 +303,7 @@ index 7116e2b98a8c6cc026fd9ea8c5f2c00764906a8c..8a3a526f7dbce1090d39232dd310d91c final String msg = String.format("Entity threw exception at %s:%s,%s,%s", entity.level().getWorld().getName(), entity.getX(), entity.getY(), entity.getZ()); MinecraftServer.LOGGER.error(msg, throwable); 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 6e1006675339551ca499a57a8f8553020f16a4fa..6daa7fc7bf08e5f915da4a728a96d2e7a3abd14d 100644 +index 205a8059128422d962c1cb5d2d7c40461a3eefb3..f6bfe4dc7c2c2c7d7d7852c76f15f84928bc3e9f 100644 --- a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java +++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java @@ -1176,6 +1176,7 @@ public class LevelChunk extends ChunkAccess { diff --git a/patches/server/1013-Optimize-Voxel-Shape-Merging.patch b/patches/server/1011-Optimize-Voxel-Shape-Merging.patch similarity index 100% rename from patches/server/1013-Optimize-Voxel-Shape-Merging.patch rename to patches/server/1011-Optimize-Voxel-Shape-Merging.patch diff --git a/patches/server/1014-Protect-Bedrock-and-End-Portal-Frames-from-being-des.patch b/patches/server/1012-Protect-Bedrock-and-End-Portal-Frames-from-being-des.patch similarity index 98% rename from patches/server/1014-Protect-Bedrock-and-End-Portal-Frames-from-being-des.patch rename to patches/server/1012-Protect-Bedrock-and-End-Portal-Frames-from-being-des.patch index 86d6309f5b..c90fefc6b3 100644 --- a/patches/server/1014-Protect-Bedrock-and-End-Portal-Frames-from-being-des.patch +++ b/patches/server/1012-Protect-Bedrock-and-End-Portal-Frames-from-being-des.patch @@ -25,7 +25,7 @@ index 4aadf445daee88cc849929783eeddfa4aa005581..4d51baab29b1a913c3efef2cb4ab0cac if (!this.level.isInWorldBounds(blockposition)) { diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 1e78a00ab36362ff7650410ed2af1a822613de4f..e5944ff3c1118e57c9e7a14cbb5181b2d7f7a79a 100644 +index 141735eada9082ac3d3fda13765fa713d5d131a1..f4f2f423b5c9a6bf5cc9aee008b740385beb4045 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -545,6 +545,10 @@ public abstract class Level implements LevelAccessor, AutoCloseable { @@ -150,7 +150,7 @@ index 4c6ab71c3222ce03edd70abef35c71398d885c13..7ba5d00516dc310355d08dda955c934f public boolean isSolidRender(BlockGetter world, BlockPos pos) { diff --git a/src/main/java/net/minecraft/world/level/portal/PortalForcer.java b/src/main/java/net/minecraft/world/level/portal/PortalForcer.java -index ed5210c63d964be7c28f59df315766794ec3ea1f..f610ece91a04bd321fdd75814a7b40e622c2bd1e 100644 +index 431f1cf004471dbfb149f697300c3c7fe6bfda4d..48984809d2df318b42309b7e9a1cac513c89ca42 100644 --- a/src/main/java/net/minecraft/world/level/portal/PortalForcer.java +++ b/src/main/java/net/minecraft/world/level/portal/PortalForcer.java @@ -221,6 +221,13 @@ public class PortalForcer { diff --git a/patches/server/1015-Use-distance-map-to-optimise-entity-tracker.patch b/patches/server/1013-Use-distance-map-to-optimise-entity-tracker.patch similarity index 97% rename from patches/server/1015-Use-distance-map-to-optimise-entity-tracker.patch rename to patches/server/1013-Use-distance-map-to-optimise-entity-tracker.patch index 1e13473a87..8974ee065b 100644 --- a/patches/server/1015-Use-distance-map-to-optimise-entity-tracker.patch +++ b/patches/server/1013-Use-distance-map-to-optimise-entity-tracker.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Use distance map to optimise entity tracker Use the distance map to find candidate players for tracking. diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index 0b80e73593a24c008b2ae8d09be59787e39ef0e6..b5bdec141b52dcb1ec37db228d831cab58473c7b 100644 +index e69e68ae3be2760c079338793f33c27f59ebf7cf..c68a14b5b738acabc949cab48b9551cc54e98047 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java @@ -146,6 +146,23 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider @@ -124,7 +124,7 @@ index 0b80e73593a24c008b2ae8d09be59787e39ef0e6..b5bdec141b52dcb1ec37db228d831cab } // Paper start -@@ -940,17 +1020,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -939,17 +1019,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider } public void move(ServerPlayer player) { @@ -143,7 +143,7 @@ index 0b80e73593a24c008b2ae8d09be59787e39ef0e6..b5bdec141b52dcb1ec37db228d831cab SectionPos sectionposition = player.getLastSectionPos(); SectionPos sectionposition1 = SectionPos.of((EntityAccess) player); -@@ -1027,7 +1097,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1026,7 +1096,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider entity.tracker = playerchunkmap_entitytracker; // Paper - Fast access to tracker this.entityMap.put(entity.getId(), playerchunkmap_entitytracker); @@ -152,7 +152,7 @@ index 0b80e73593a24c008b2ae8d09be59787e39ef0e6..b5bdec141b52dcb1ec37db228d831cab if (entity instanceof ServerPlayer) { ServerPlayer entityplayer = (ServerPlayer) entity; -@@ -1071,9 +1141,37 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1070,9 +1140,37 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider entity.tracker = null; // Paper - We're no longer tracked } @@ -192,7 +192,7 @@ index 0b80e73593a24c008b2ae8d09be59787e39ef0e6..b5bdec141b52dcb1ec37db228d831cab List list = Lists.newArrayList(); List list1 = this.level.players(); ObjectIterator objectiterator = this.entityMap.values().iterator(); -@@ -1223,6 +1321,42 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1222,6 +1320,42 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider this.lastSectionPos = SectionPos.of((EntityAccess) entity); } @@ -236,7 +236,7 @@ index 0b80e73593a24c008b2ae8d09be59787e39ef0e6..b5bdec141b52dcb1ec37db228d831cab return object instanceof ChunkMap.TrackedEntity ? ((ChunkMap.TrackedEntity) object).entity.getId() == this.entity.getId() : false; } diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 3eaa3c34eca6e4ed26a77e3fd5da772a39eddff8..df02a2b0dc58650644db07ad8f91aabb64be3938 100644 +index 8646584b78fa452799c6964c1485f35531541053..9af161903792ebaa0209acd7212bb525ed6e5263 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -56,6 +56,7 @@ import net.minecraft.network.syncher.EntityDataSerializers; diff --git a/patches/server/1016-Optimize-Bit-Operations-by-inlining.patch b/patches/server/1014-Optimize-Bit-Operations-by-inlining.patch similarity index 100% rename from patches/server/1016-Optimize-Bit-Operations-by-inlining.patch rename to patches/server/1014-Optimize-Bit-Operations-by-inlining.patch diff --git a/patches/server/1017-Remove-streams-from-hot-code.patch b/patches/server/1015-Remove-streams-from-hot-code.patch similarity index 100% rename from patches/server/1017-Remove-streams-from-hot-code.patch rename to patches/server/1015-Remove-streams-from-hot-code.patch diff --git a/patches/server/1018-Eigencraft-redstone-implementation.patch b/patches/server/1016-Eigencraft-redstone-implementation.patch similarity index 100% rename from patches/server/1018-Eigencraft-redstone-implementation.patch rename to patches/server/1016-Eigencraft-redstone-implementation.patch diff --git a/patches/server/1019-Optimize-Pathfinder-Remove-Streams-Optimized-collect.patch b/patches/server/1017-Optimize-Pathfinder-Remove-Streams-Optimized-collect.patch similarity index 100% rename from patches/server/1019-Optimize-Pathfinder-Remove-Streams-Optimized-collect.patch rename to patches/server/1017-Optimize-Pathfinder-Remove-Streams-Optimized-collect.patch diff --git a/patches/server/1020-Add-PlayerTradeEvent-and-PlayerPurchaseEvent.patch b/patches/server/1018-Add-PlayerTradeEvent-and-PlayerPurchaseEvent.patch similarity index 100% rename from patches/server/1020-Add-PlayerTradeEvent-and-PlayerPurchaseEvent.patch rename to patches/server/1018-Add-PlayerTradeEvent-and-PlayerPurchaseEvent.patch diff --git a/patches/server/1021-Improve-boat-collision-performance.patch b/patches/server/1019-Improve-boat-collision-performance.patch similarity index 97% rename from patches/server/1021-Improve-boat-collision-performance.patch rename to patches/server/1019-Improve-boat-collision-performance.patch index 083f40bc9c..7e6566d525 100644 --- a/patches/server/1021-Improve-boat-collision-performance.patch +++ b/patches/server/1019-Improve-boat-collision-performance.patch @@ -17,7 +17,7 @@ index edf937591abf62416bd692e40b7b7a6badbe877d..b40864e41e1506884fdefefbf3cf4833 }; diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index ec495c0080e15b1baeeb57cd7c80d2e6b06e7d2e..b920f72e659956cc2d2d44743caddb0136d467e4 100644 +index 22771be445acd07d40b0a51c0a6d062e3df3ac95..fd35911a6057eed19e6b1a9cbefdfe9cd0cd998c 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -1437,7 +1437,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/1022-Optimise-general-POI-access.patch b/patches/server/1020-Optimise-general-POI-access.patch similarity index 99% rename from patches/server/1022-Optimise-general-POI-access.patch rename to patches/server/1020-Optimise-general-POI-access.patch index 4994825386..a968aa7076 100644 --- a/patches/server/1022-Optimise-general-POI-access.patch +++ b/patches/server/1020-Optimise-general-POI-access.patch @@ -996,7 +996,7 @@ index 54db563d80bbabd87a2be6f5ead92b482ac07b10..4aac1979cf57300825a999c876fcf24d return Optional.empty(); } else { diff --git a/src/main/java/net/minecraft/world/level/portal/PortalForcer.java b/src/main/java/net/minecraft/world/level/portal/PortalForcer.java -index f610ece91a04bd321fdd75814a7b40e622c2bd1e..21822f334a54b7270ea43fa6d3d0829ac0f9f6b9 100644 +index 48984809d2df318b42309b7e9a1cac513c89ca42..cffb04fc0aa90b9b99fd754b11e65d00ef01995a 100644 --- a/src/main/java/net/minecraft/world/level/portal/PortalForcer.java +++ b/src/main/java/net/minecraft/world/level/portal/PortalForcer.java @@ -51,18 +51,39 @@ public class PortalForcer { diff --git a/patches/server/1023-Custom-table-implementation-for-blockstate-state-loo.patch b/patches/server/1021-Custom-table-implementation-for-blockstate-state-loo.patch similarity index 100% rename from patches/server/1023-Custom-table-implementation-for-blockstate-state-loo.patch rename to patches/server/1021-Custom-table-implementation-for-blockstate-state-loo.patch diff --git a/patches/server/1024-Execute-chunk-tasks-mid-tick.patch b/patches/server/1022-Execute-chunk-tasks-mid-tick.patch similarity index 98% rename from patches/server/1024-Execute-chunk-tasks-mid-tick.patch rename to patches/server/1022-Execute-chunk-tasks-mid-tick.patch index 4b36b02929..0f02de9736 100644 --- a/patches/server/1024-Execute-chunk-tasks-mid-tick.patch +++ b/patches/server/1022-Execute-chunk-tasks-mid-tick.patch @@ -151,7 +151,7 @@ index 715f6fb68d832545f36184a77f2229c2a1a79f75..ac5c505a9d280fb128bbc59526bb8bbe } diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index ec6b607f6564acceddd694d65ab6014f129250d6..b47e9d029c72f1ce397fcfaa3d6da8bddb2cb4a8 100644 +index f4f2f423b5c9a6bf5cc9aee008b740385beb4045..6b47b8fe38080a2b99bbdc8596f2b607ff0ff4c9 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -929,6 +929,11 @@ public abstract class Level implements LevelAccessor, AutoCloseable { diff --git a/patches/server/1025-Optimise-random-block-ticking.patch b/patches/server/1023-Optimise-random-block-ticking.patch similarity index 98% rename from patches/server/1025-Optimise-random-block-ticking.patch rename to patches/server/1023-Optimise-random-block-ticking.patch index 259f80c8da..cd11f5f8ae 100644 --- a/patches/server/1025-Optimise-random-block-ticking.patch +++ b/patches/server/1023-Optimise-random-block-ticking.patch @@ -324,7 +324,7 @@ index 1a2a4dcb3cfa2690f2aa936a6c176319d807bd74..f97bdfbd07db000845d3b791de64056c public BlockPos getHomePos() { diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index b47e9d029c72f1ce397fcfaa3d6da8bddb2cb4a8..1dfc48d4beabff13d5affd662acc99f49902843a 100644 +index 6b47b8fe38080a2b99bbdc8596f2b607ff0ff4c9..8286d2b5e696828a0c06b93537bc19aafe82e235 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -1400,10 +1400,18 @@ public abstract class Level implements LevelAccessor, AutoCloseable { @@ -348,7 +348,7 @@ index b47e9d029c72f1ce397fcfaa3d6da8bddb2cb4a8..1dfc48d4beabff13d5affd662acc99f4 public boolean noSave() { diff --git a/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java b/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java -index 3efd0a462306fbd02a506a3f952d609645b1f874..52377adb01df3db297eaf2ece54efde63f9c2cfe 100644 +index 8852263cb6faec1b68326145aa30e5cd36d066e7..eb05c01e85825cbd5b7cf43bc6d261db0b871b92 100644 --- a/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java +++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java @@ -25,6 +25,7 @@ public class LevelChunkSection { @@ -436,7 +436,7 @@ index 3efd0a462306fbd02a506a3f952d609645b1f874..52377adb01df3db297eaf2ece54efde6 public PalettedContainer getStates() { diff --git a/src/main/java/net/minecraft/world/level/chunk/PalettedContainer.java b/src/main/java/net/minecraft/world/level/chunk/PalettedContainer.java -index 27122a06e172c8d54104c115dfda668a52ff1cde..16fbc633de3a1d9e5e8c65ae107397a6f0e50811 100644 +index 0f930f8355ea99d1cb1a8d27edc1c224588f852f..983799520ce052d98c9231f4f7925492d4f7d5c9 100644 --- a/src/main/java/net/minecraft/world/level/chunk/PalettedContainer.java +++ b/src/main/java/net/minecraft/world/level/chunk/PalettedContainer.java @@ -386,6 +386,14 @@ public class PalettedContainer implements PaletteResize, PalettedContainer diff --git a/patches/server/1026-Attempt-to-recalculate-regionfile-header-if-it-is-co.patch b/patches/server/1024-Attempt-to-recalculate-regionfile-header-if-it-is-co.patch similarity index 99% rename from patches/server/1026-Attempt-to-recalculate-regionfile-header-if-it-is-co.patch rename to patches/server/1024-Attempt-to-recalculate-regionfile-header-if-it-is-co.patch index 3bf3949204..db86c8271a 100644 --- a/patches/server/1026-Attempt-to-recalculate-regionfile-header-if-it-is-co.patch +++ b/patches/server/1024-Attempt-to-recalculate-regionfile-header-if-it-is-co.patch @@ -87,7 +87,7 @@ index c8298a597818227de33a4afce4698ec0666cf758..6762b0f71ea9e369bb77103b7f193898 this.used.set(start, start + size); } diff --git a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFile.java b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFile.java -index c5dbab099a328b37f5a59824384ee6e4be2f3482..4373ae3b454ad3fb8550e83b868e98cc04893c1b 100644 +index 92ba75254f6ffca40abd5485dbb4789de59edebd..6cf83502a954cce9c562ec036bfeddb477d38b73 100644 --- a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFile.java +++ b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFile.java @@ -50,6 +50,355 @@ public class RegionFile implements AutoCloseable { @@ -685,7 +685,7 @@ index c5dbab099a328b37f5a59824384ee6e4be2f3482..4373ae3b454ad3fb8550e83b868e98cc return bytebuffer; } diff --git a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java -index 99f2e104b2214dbbc0b6e43d9011744ff4b0b843..a25e7183da64f726773aa279707ae67941246b46 100644 +index eeb596a357ca9a18199596af665bc308ff706b70..30d4efc896fe8b2ec0e8b091045c7d07f952b00b 100644 --- a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java +++ b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java @@ -24,6 +24,7 @@ public class RegionFileStorage implements AutoCloseable { diff --git a/patches/server/1027-Use-Velocity-compression-and-cipher-natives.patch b/patches/server/1025-Use-Velocity-compression-and-cipher-natives.patch similarity index 100% rename from patches/server/1027-Use-Velocity-compression-and-cipher-natives.patch rename to patches/server/1025-Use-Velocity-compression-and-cipher-natives.patch diff --git a/patches/server/1028-Detail-more-information-in-watchdog-dumps.patch b/patches/server/1026-Detail-more-information-in-watchdog-dumps.patch similarity index 97% rename from patches/server/1028-Detail-more-information-in-watchdog-dumps.patch rename to patches/server/1026-Detail-more-information-in-watchdog-dumps.patch index 2bde9f4d5d..5ef4c4d855 100644 --- a/patches/server/1028-Detail-more-information-in-watchdog-dumps.patch +++ b/patches/server/1026-Detail-more-information-in-watchdog-dumps.patch @@ -122,10 +122,10 @@ index 6ced436bda5beaa107ad333d35f39efe366f0595..38c57ad6f028db325bb78fd849e9150a private void tickPassenger(Entity vehicle, Entity passenger) { diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 01cebabe1410f220743205a44b74c63e4cfd171e..4bf49ef00ad54869966a84c34ebe5f1829f19417 100644 +index 9af161903792ebaa0209acd7212bb525ed6e5263..10b0e37ddab7c664cd50c39ca3586f5aebfc5706 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -1051,7 +1051,42 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -1051,8 +1051,43 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S return this.onGround; } @@ -155,6 +155,7 @@ index 01cebabe1410f220743205a44b74c63e4cfd171e..4bf49ef00ad54869966a84c34ebe5f18 + // Paper end - detailed watchdog information + public void move(MoverType movementType, Vec3 movement) { + final Vec3 originalMovement = movement; // Paper - Expose pre-collision velocity + // Paper start - detailed watchdog information + io.papermc.paper.util.TickThread.ensureTickThread("Cannot move an entity off-main"); + synchronized (this.posLock) { @@ -168,7 +169,7 @@ index 01cebabe1410f220743205a44b74c63e4cfd171e..4bf49ef00ad54869966a84c34ebe5f18 if (this.noPhysics) { this.setPos(this.getX() + movement.x, this.getY() + movement.y, this.getZ() + movement.z); } else { -@@ -1221,6 +1256,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -1222,6 +1257,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S this.level().getProfiler().pop(); } } @@ -182,7 +183,7 @@ index 01cebabe1410f220743205a44b74c63e4cfd171e..4bf49ef00ad54869966a84c34ebe5f18 } private boolean isStateClimbable(BlockState state) { -@@ -4365,7 +4407,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -4366,7 +4408,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S } public void setDeltaMovement(Vec3 velocity) { @@ -192,7 +193,7 @@ index 01cebabe1410f220743205a44b74c63e4cfd171e..4bf49ef00ad54869966a84c34ebe5f18 } public void addDeltaMovement(Vec3 velocity) { -@@ -4468,7 +4512,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -4469,7 +4513,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S } // Paper end - Fix MC-4 if (this.position.x != x || this.position.y != y || this.position.z != z) { diff --git a/patches/server/1029-Collision-optimisations.patch b/patches/server/1027-Collision-optimisations.patch similarity index 99% rename from patches/server/1029-Collision-optimisations.patch rename to patches/server/1027-Collision-optimisations.patch index 6bbdad2781..ce4af686fb 100644 --- a/patches/server/1029-Collision-optimisations.patch +++ b/patches/server/1027-Collision-optimisations.patch @@ -2201,7 +2201,7 @@ index bd1a53e2ce2644681c23f8cf678afa2a99166d9b..4ef7cc68bdcad9eaa157325a195aa74e } } diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index c423bf30173d2bf6cd3b202de6d490d45c41bf72..c3d0a1c562a26b6025718f848d01ce7ec05793e4 100644 +index 0ce7ce1899ac4115051353fc3eb0c622846d6748..0dd44f3625ca9383f22e4862ad3e92452e26befd 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -935,7 +935,7 @@ public abstract class PlayerList { @@ -2214,10 +2214,10 @@ index c423bf30173d2bf6cd3b202de6d490d45c41bf72..c3d0a1c562a26b6025718f848d01ce7e entityplayer1.setPos(entityplayer1.getX(), entityplayer1.getY() + 1.0D, entityplayer1.getZ()); } diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 4bf49ef00ad54869966a84c34ebe5f1829f19417..1b72c095f35ba4d94aae0b626aaf2ff500352ad9 100644 +index 10b0e37ddab7c664cd50c39ca3586f5aebfc5706..7ceb4ec480d8799d0bdbd645e5760d2c952b679b 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -1237,9 +1237,44 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -1238,9 +1238,44 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S float f = this.getBlockSpeedFactor(); this.setDeltaMovement(this.getDeltaMovement().multiply((double) f, 1.0D, (double) f)); @@ -2265,7 +2265,7 @@ index 4bf49ef00ad54869966a84c34ebe5f1829f19417..1b72c095f35ba4d94aae0b626aaf2ff5 if (this.remainingFireTicks <= 0) { this.setRemainingFireTicks(-this.getFireImmuneTicks()); } -@@ -1419,32 +1454,82 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -1420,32 +1455,82 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S } private Vec3 collide(Vec3 movement) { @@ -2364,7 +2364,7 @@ index 4bf49ef00ad54869966a84c34ebe5f1829f19417..1b72c095f35ba4d94aae0b626aaf2ff5 } public static Vec3 collideBoundingBox(@Nullable Entity entity, Vec3 movement, AABB entityBoundingBox, Level world, List collisions) { -@@ -2689,11 +2774,70 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -2690,11 +2775,70 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S float f = this.dimensions.width * 0.8F; AABB axisalignedbb = AABB.ofSize(this.getEyePosition(), (double) f, 1.0E-6D, (double) f); @@ -2452,6 +2452,19 @@ index 6dfcc296ff7e59ecbebc5446973fabc9eff3cb43..94a30a0c1266bf919d1dc4ca2b19489e Iterator iterator = list.iterator(); while (iterator.hasNext()) { +diff --git a/src/main/java/net/minecraft/world/entity/monster/Spider.java b/src/main/java/net/minecraft/world/entity/monster/Spider.java +index ffa4f34d964fbcc53e2dfe11677832db21a6eb93..7618364e5373fe17cfe45a5a4ee9ab25e591581c 100644 +--- a/src/main/java/net/minecraft/world/entity/monster/Spider.java ++++ b/src/main/java/net/minecraft/world/entity/monster/Spider.java +@@ -86,7 +86,7 @@ public class Spider extends Monster { + public void tick() { + super.tick(); + if (!this.level().isClientSide) { +- this.setClimbing(this.horizontalCollision && (this.level().paperConfig().entities.behavior.allowSpiderWorldBorderClimbing)); // Paper - Add config option for spider worldborder climbing ++ this.setClimbing(this.horizontalCollision && (this.level().paperConfig().entities.behavior.allowSpiderWorldBorderClimbing || !io.papermc.paper.util.CollisionUtil.isCollidingWithBorder(this.level().getWorldBorder(), this.getBoundingBox().inflate(io.papermc.paper.util.CollisionUtil.COLLISION_EPSILON)))); // Paper - Add config option for spider worldborder climbing & Inflate by +EPSILON as collision will just barely place us outside border + } + + } diff --git a/src/main/java/net/minecraft/world/level/BlockCollisions.java b/src/main/java/net/minecraft/world/level/BlockCollisions.java index a3eaf80b020c3bbc0306c5d17659ee661dfd275b..1b6f72932fbdd567a1534bcf15e8a610b00f974d 100644 --- a/src/main/java/net/minecraft/world/level/BlockCollisions.java @@ -2600,7 +2613,7 @@ index 8c436d16914e160be8e3074badc1293af2ae6b31..a3d15f30eaab29d85cb6b3d693df9980 // Paper start diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 1dfc48d4beabff13d5affd662acc99f49902843a..c405265a536b17b93e47384fbb699670f0ac431f 100644 +index 8286d2b5e696828a0c06b93537bc19aafe82e235..3c70eabf3ef1a0b7916ba795eeb9396f7cea3ff7 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -299,6 +299,10 @@ public abstract class Level implements LevelAccessor, AutoCloseable { @@ -3126,7 +3139,7 @@ index 7ba5d00516dc310355d08dda955c934fe26786ee..97a9fbbe6d8435e88e5fe716770e4034 public Block getBlock() { diff --git a/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java b/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java -index 52377adb01df3db297eaf2ece54efde63f9c2cfe..b10c652f53edfbf29f28b047d3b3c8edca21bc56 100644 +index eb05c01e85825cbd5b7cf43bc6d261db0b871b92..796bbef3544e06b8e7aac7e8ac5f740a2613f4bd 100644 --- a/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java +++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java @@ -26,6 +26,22 @@ public class LevelChunkSection { diff --git a/patches/server/1030-Optimise-collision-checking-in-player-move-packet-ha.patch b/patches/server/1028-Optimise-collision-checking-in-player-move-packet-ha.patch similarity index 99% rename from patches/server/1030-Optimise-collision-checking-in-player-move-packet-ha.patch rename to patches/server/1028-Optimise-collision-checking-in-player-move-packet-ha.patch index 28eb8d3c0c..ae3cc0dbf5 100644 --- a/patches/server/1030-Optimise-collision-checking-in-player-move-packet-ha.patch +++ b/patches/server/1028-Optimise-collision-checking-in-player-move-packet-ha.patch @@ -8,7 +8,7 @@ Move collision logic to just the hasNewCollision call instead of getCubes + hasN CHECK ME diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 9342efcb855dce5cced227b15356df090e9c451a..721b6c47c7141871fba0d306da42147bff082b0a 100644 +index 1d22b4ba82b440f163137ea6f8a182a00898c15b..b760e51f6d1682fe8185c62389f33e0bb4ce884f 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -553,7 +553,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl diff --git a/patches/server/1031-Fix-tripwire-state-inconsistency.patch b/patches/server/1029-Fix-tripwire-state-inconsistency.patch similarity index 100% rename from patches/server/1031-Fix-tripwire-state-inconsistency.patch rename to patches/server/1029-Fix-tripwire-state-inconsistency.patch diff --git a/patches/server/1032-Fix-entity-type-tags-suggestions-in-selectors.patch b/patches/server/1030-Fix-entity-type-tags-suggestions-in-selectors.patch similarity index 100% rename from patches/server/1032-Fix-entity-type-tags-suggestions-in-selectors.patch rename to patches/server/1030-Fix-entity-type-tags-suggestions-in-selectors.patch diff --git a/patches/server/1033-Add-Alternate-Current-redstone-implementation.patch b/patches/server/1031-Add-Alternate-Current-redstone-implementation.patch similarity index 99% rename from patches/server/1033-Add-Alternate-Current-redstone-implementation.patch rename to patches/server/1031-Add-Alternate-Current-redstone-implementation.patch index 15738d0ba4..0cfa2ed745 100644 --- a/patches/server/1033-Add-Alternate-Current-redstone-implementation.patch +++ b/patches/server/1031-Add-Alternate-Current-redstone-implementation.patch @@ -2034,7 +2034,7 @@ index 38c57ad6f028db325bb78fd849e9150af2d6d2ca..c8ed96a458ab05f20c5904d4e449f08f EntityCallbacks() {} diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index c405265a536b17b93e47384fbb699670f0ac431f..0f4e0a20cc6478d37f6e6a39a551532855021380 100644 +index 3c70eabf3ef1a0b7916ba795eeb9396f7cea3ff7..9fd2fcf8437c866e4fe7a44108cde338e1a9f9a2 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -1897,4 +1897,14 @@ public abstract class Level implements LevelAccessor, AutoCloseable { diff --git a/patches/server/1034-optimize-dirt-and-snow-spreading.patch b/patches/server/1032-optimize-dirt-and-snow-spreading.patch similarity index 100% rename from patches/server/1034-optimize-dirt-and-snow-spreading.patch rename to patches/server/1032-optimize-dirt-and-snow-spreading.patch diff --git a/patches/server/1035-Properly-resend-entities.patch b/patches/server/1033-Properly-resend-entities.patch similarity index 71% rename from patches/server/1035-Properly-resend-entities.patch rename to patches/server/1033-Properly-resend-entities.patch index 2144df7aa2..519272b513 100644 --- a/patches/server/1035-Properly-resend-entities.patch +++ b/patches/server/1033-Properly-resend-entities.patch @@ -10,6 +10,13 @@ sure that values will be correctly updated to other players. This also adds utilities to aid in further preventing entity desyncs. +This also also fixes the bug causing cancelling PlayerInteractEvent to cause items to continue +to be used despite being cancelled on the server. + +For example, items being consumed but never finishing, shields being put up, etc. +The underlying issue of this is that the client modifies their synced data values, +and so we have to (forcibly) resend them in order for the client to reset their using item state. + See: https://github.com/PaperMC/Paper/pull/1896 == AT == @@ -84,11 +91,43 @@ index 07a362f9e485d0d507f16f1dda1ac84ade07ab27..58b602e550258c1062ee940bc46538da public static class DataItem { +diff --git a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java +index 97490f58aace9bfb6d034e9a97393142f73043d1..83e017efd15d0ecaffc327f02d6d5330c8ed6937 100644 +--- a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java ++++ b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java +@@ -563,6 +563,7 @@ public class ServerPlayerGameMode { + } + // Paper end - extend Player Interact cancellation + player.getBukkitEntity().updateInventory(); // SPIGOT-2867 ++ this.player.resyncUsingItem(this.player); // Paper - Properly cancel usable items + enuminteractionresult = (event.useItemInHand() != Event.Result.ALLOW) ? InteractionResult.SUCCESS : InteractionResult.PASS; + } else if (this.gameModeForPlayer == GameType.SPECTATOR) { + MenuProvider itileinventory = iblockdata.getMenuProvider(world, blockposition); +@@ -606,6 +607,11 @@ public class ServerPlayerGameMode { + + return enuminteractionresult1; + } ++ // Paper start - Properly cancel usable items; Cancel only if cancelled + if the interact result is different from default response ++ else if (this.interactResult && this.interactResult != cancelledItem) { ++ this.player.resyncUsingItem(this.player); ++ } ++ // Paper end - Properly cancel usable items + } + return enuminteractionresult; + // CraftBukkit end diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 721b6c47c7141871fba0d306da42147bff082b0a..42b433d9461d0912b39542263684323369469ac0 100644 +index b760e51f6d1682fe8185c62389f33e0bb4ce884f..42b433d9461d0912b39542263684323369469ac0 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -2705,7 +2705,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1990,6 +1990,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl + } + + if (cancelled) { ++ this.player.resyncUsingItem(this.player); // Paper - Properly cancel usable items + this.player.getBukkitEntity().updateInventory(); // SPIGOT-2524 + return; + } +@@ -2704,7 +2705,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl // Entity in bucket - SPIGOT-4048 and SPIGOT-6859a if ((entity instanceof Bucketable && entity instanceof LivingEntity && origItem != null && origItem.asItem() == Items.WATER_BUCKET) && (event.isCancelled() || ServerGamePacketListenerImpl.this.player.getInventory().getSelected() == null || ServerGamePacketListenerImpl.this.player.getInventory().getSelected().getItem() != origItem)) { @@ -98,7 +137,7 @@ index 721b6c47c7141871fba0d306da42147bff082b0a..42b433d9461d0912b395422636843233 } diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 5a932f329f67fd01a263b9536cbfb1c9a011f746..2544495835f8f67eab07907ee8eb572b99ea0fcd 100644 +index ea36111733a3ffa271768f6b2c7729f2cd6bb06d..b7bf28b62e3aac022f6dfd7ccead47533fd0e4d7 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -390,7 +390,7 @@ public abstract class PlayerList { @@ -110,6 +149,22 @@ index 5a932f329f67fd01a263b9536cbfb1c9a011f746..2544495835f8f67eab07907ee8eb572b this.sendLevelInfo(player, worldserver1); +diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java +index fd35911a6057eed19e6b1a9cbefdfe9cd0cd998c..a4217f984148b12960c74ad2ef7cee761f305030 100644 +--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java ++++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java +@@ -3822,6 +3822,11 @@ public abstract class LivingEntity extends Entity implements Attackable { + return ((Byte) this.entityData.get(LivingEntity.DATA_LIVING_ENTITY_FLAGS) & 2) > 0 ? InteractionHand.OFF_HAND : InteractionHand.MAIN_HAND; + } + ++ // Paper start - Properly cancel usable items ++ public void resyncUsingItem(ServerPlayer serverPlayer) { ++ this.getEntityData().resendPossiblyDesyncedDataValues(java.util.List.of(DATA_LIVING_ENTITY_FLAGS), serverPlayer); ++ } ++ // Paper end - Properly cancel usable items + private void updatingUsingItem() { + if (this.isUsingItem()) { + if (ItemStack.isSameItem(this.getItemInHand(this.getUsedItemHand()), this.useItem)) { diff --git a/src/main/java/net/minecraft/world/entity/animal/Bucketable.java b/src/main/java/net/minecraft/world/entity/animal/Bucketable.java index 37596c7b65f280be00e8e59ae18bd1aceae21080..eca18540aeb0b0d4098477d73b14c78a7bf9f455 100644 --- a/src/main/java/net/minecraft/world/entity/animal/Bucketable.java @@ -125,7 +180,7 @@ index 37596c7b65f280be00e8e59ae18bd1aceae21080..eca18540aeb0b0d4098477d73b14c78a } entity.playSound(((Bucketable) entity).getPickupSound(), 1.0F, 1.0F); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index 9b8ba3199fa091c7b20a89044ff986d9861f088f..f16ac1d640fc97f348c244d4ea86e3278b30ae19 100644 +index 44dd60c1f31b578e7630673433f3850f392b7a0d..8698104e3eb98e2cc5da5de87a8f538860c1d91d 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java @@ -999,7 +999,11 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { diff --git a/patches/server/1036-Optimize-Hoppers.patch b/patches/server/1034-Optimize-Hoppers.patch similarity index 100% rename from patches/server/1036-Optimize-Hoppers.patch rename to patches/server/1034-Optimize-Hoppers.patch diff --git a/patches/server/1037-Improve-performance-of-mass-crafts.patch b/patches/server/1035-Improve-performance-of-mass-crafts.patch similarity index 100% rename from patches/server/1037-Improve-performance-of-mass-crafts.patch rename to patches/server/1035-Improve-performance-of-mass-crafts.patch diff --git a/patches/server/1038-Actually-optimise-explosions.patch b/patches/server/1036-Actually-optimise-explosions.patch similarity index 100% rename from patches/server/1038-Actually-optimise-explosions.patch rename to patches/server/1036-Actually-optimise-explosions.patch diff --git a/patches/server/1039-Optimise-chunk-tick-iteration.patch b/patches/server/1037-Optimise-chunk-tick-iteration.patch similarity index 99% rename from patches/server/1039-Optimise-chunk-tick-iteration.patch rename to patches/server/1037-Optimise-chunk-tick-iteration.patch index 9597d6ba34..8315778f52 100644 --- a/patches/server/1039-Optimise-chunk-tick-iteration.patch +++ b/patches/server/1037-Optimise-chunk-tick-iteration.patch @@ -108,7 +108,7 @@ index 2b998bdbe49bf8211b755e0eb7c1bf13ac280eab..627a88ec8c3b215b19b55a6d461c8754 List list; diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index 90393101fddd54f60b0b173beffd8650ad23349e..424de333bf4fc5632410c689d9b17b2eab3371c4 100644 +index c68a14b5b738acabc949cab48b9551cc54e98047..5637dcf1f6c76df33988c3279171aafbc1868a82 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java @@ -191,6 +191,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider @@ -130,7 +130,7 @@ index 90393101fddd54f60b0b173beffd8650ad23349e..424de333bf4fc5632410c689d9b17b2e public ChunkMap(ServerLevel world, LevelStorageSource.LevelStorageAccess session, DataFixer dataFixer, StructureTemplateManager structureTemplateManager, Executor executor, BlockableEventLoop mainThreadExecutor, LightChunkGetter chunkProvider, ChunkGenerator chunkGenerator, ChunkProgressListener worldGenerationProgressListener, ChunkStatusUpdateListener chunkStatusChangeListener, Supplier persistentStateManagerFactory, int viewDistance, boolean dsync) { super(session.getDimensionPath(world.dimension()).resolve("region"), dataFixer, dsync); -@@ -409,7 +414,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -408,7 +413,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider } // Paper end - Optional per player mob spawns diff --git a/patches/server/1040-Lag-compensation-ticks.patch b/patches/server/1038-Lag-compensation-ticks.patch similarity index 98% rename from patches/server/1040-Lag-compensation-ticks.patch rename to patches/server/1038-Lag-compensation-ticks.patch index 37cf98cafa..0b26f7c25a 100644 --- a/patches/server/1040-Lag-compensation-ticks.patch +++ b/patches/server/1038-Lag-compensation-ticks.patch @@ -63,7 +63,7 @@ index 83e017efd15d0ecaffc327f02d6d5330c8ed6937..cfd4ac06a9af6bf3fac293110482e1df if (this.hasDelayedDestroy) { diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index a0b556d91151ba5941f5a433c303c27e4000db5e..fb6cf6e8c72c11b58788c50c2ed34c4e25fc94f9 100644 +index a4217f984148b12960c74ad2ef7cee761f305030..6071451339080bbdd98fb634791a56988984c8bc 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3827,6 +3827,10 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/1041-Optimise-nearby-player-retrieval.patch b/patches/server/1039-Optimise-nearby-player-retrieval.patch similarity index 100% rename from patches/server/1041-Optimise-nearby-player-retrieval.patch rename to patches/server/1039-Optimise-nearby-player-retrieval.patch diff --git a/patches/server/0288-Handle-Oversized-Tile-Entities-in-chunks.patch b/patches/server/1040-Handle-Oversized-Tile-Entities-in-chunks.patch similarity index 84% rename from patches/server/0288-Handle-Oversized-Tile-Entities-in-chunks.patch rename to patches/server/1040-Handle-Oversized-Tile-Entities-in-chunks.patch index 0d10f48bee..73a6a26e4c 100644 --- a/patches/server/0288-Handle-Oversized-Tile-Entities-in-chunks.patch +++ b/patches/server/1040-Handle-Oversized-Tile-Entities-in-chunks.patch @@ -9,7 +9,7 @@ creating too large of a packet to sed. Co-authored-by: Spottedleaf diff --git a/src/main/java/net/minecraft/network/protocol/game/ClientboundLevelChunkPacketData.java b/src/main/java/net/minecraft/network/protocol/game/ClientboundLevelChunkPacketData.java -index f47eeb70661661610ef1a96dd9da67785825c126..dda7151d333144399ba5602e1b651b1f5b8f8f0d 100644 +index 74b5cec09d953a247bc5aba3c4232a4c28ea1046..998deae645b4497c3285bfba3260c636439f9ecf 100644 --- a/src/main/java/net/minecraft/network/protocol/game/ClientboundLevelChunkPacketData.java +++ b/src/main/java/net/minecraft/network/protocol/game/ClientboundLevelChunkPacketData.java @@ -24,6 +24,14 @@ public class ClientboundLevelChunkPacketData { @@ -25,11 +25,11 @@ index f47eeb70661661610ef1a96dd9da67785825c126..dda7151d333144399ba5602e1b651b1f + } + // Paper end - Handle oversized block entities in chunks - public ClientboundLevelChunkPacketData(LevelChunk chunk) { - this.heightmaps = new CompoundTag(); -@@ -37,8 +45,18 @@ public class ClientboundLevelChunkPacketData { - this.buffer = new byte[calculateChunkSize(chunk)]; - extractChunkData(new FriendlyByteBuf(this.getWriteBuffer()), chunk); + // Paper start - Anti-Xray - Add chunk packet info + @Deprecated @io.papermc.paper.annotation.DoNotUse public ClientboundLevelChunkPacketData(LevelChunk chunk) { this(chunk, null); } +@@ -47,8 +55,18 @@ public class ClientboundLevelChunkPacketData { + extractChunkData(new FriendlyByteBuf(this.getWriteBuffer()), chunk, chunkPacketInfo); + // Paper end this.blockEntitiesData = Lists.newArrayList(); + int totalTileEntities = 0; // Paper - Handle oversized block entities in chunks @@ -47,10 +47,10 @@ index f47eeb70661661610ef1a96dd9da67785825c126..dda7151d333144399ba5602e1b651b1f } diff --git a/src/main/java/net/minecraft/network/protocol/game/ClientboundLevelChunkWithLightPacket.java b/src/main/java/net/minecraft/network/protocol/game/ClientboundLevelChunkWithLightPacket.java -index 26e46d751c8f8162c2bafe2fc109fc91dc4b7c0f..90ec22d35edb2874417bbea590e0d3c37ad93d64 100644 +index 6412dff5ed0505f62dd5b71ab9606257858a7317..fc230d835f9aa526a4b179d36d921f0fec348aa8 100644 --- a/src/main/java/net/minecraft/network/protocol/game/ClientboundLevelChunkWithLightPacket.java +++ b/src/main/java/net/minecraft/network/protocol/game/ClientboundLevelChunkWithLightPacket.java -@@ -57,4 +57,11 @@ public class ClientboundLevelChunkWithLightPacket implements Packet