diff --git a/patches/server/0272-Improve-Server-Thread-Pool-and-Thread-Priorities.patch b/patches/server/0272-Improve-Server-Thread-Pool-and-Thread-Priorities.patch index 8e1b598d3d..326e17b65e 100644 --- a/patches/server/0272-Improve-Server-Thread-Pool-and-Thread-Priorities.patch +++ b/patches/server/0272-Improve-Server-Thread-Pool-and-Thread-Priorities.patch @@ -9,11 +9,14 @@ type and we are not using its capabilities. Set thread priorities so main thread has above normal priority over server threads -Allow usage of a single thread executor by not using ForkJoin so single core CPU's. +Allow usage of a single thread executor by not using ForkJoin so single core CPU's +and reduce worldgen thread worker count for low core count CPUs. == AT == public net.minecraft.Util onThreadException(Ljava/lang/Thread;Ljava/lang/Throwable;)V +Co-authored-by: Spottedleaf + diff --git a/src/main/java/io/papermc/paper/util/ServerWorkerThread.java b/src/main/java/io/papermc/paper/util/ServerWorkerThread.java new file mode 100644 index 0000000000000000000000000000000000000000..b60f59cf5cc8eb84a6055b7861857dece7f2501b @@ -35,7 +38,7 @@ index 0000000000000000000000000000000000000000..b60f59cf5cc8eb84a6055b7861857dec + } +} diff --git a/src/main/java/net/minecraft/Util.java b/src/main/java/net/minecraft/Util.java -index aa52b271bd556a29f774fde375b713d0d187521b..8188febd6f1039a31619b42af23df18afd2e985c 100644 +index aa52b271bd556a29f774fde375b713d0d187521b..90f5e7d36719dc9b464dd6ba0335da035bab29d3 100644 --- a/src/main/java/net/minecraft/Util.java +++ b/src/main/java/net/minecraft/Util.java @@ -86,7 +86,7 @@ public class Util { @@ -47,18 +50,27 @@ index aa52b271bd556a29f774fde375b713d0d187521b..8188febd6f1039a31619b42af23df18a private static final ExecutorService IO_POOL = makeIoExecutor("IO-Worker-", false); private static final ExecutorService DOWNLOAD_POOL = makeIoExecutor("Download-", true); // Paper start - don't submit BLOCKING PROFILE LOOKUPS to the world gen thread -@@ -152,15 +152,18 @@ public class Util { +@@ -152,15 +152,27 @@ public class Util { return FILENAME_DATE_TIME_FORMATTER.format(ZonedDateTime.now()); } - private static ExecutorService makeExecutor(String name) { - int i = Mth.clamp(Runtime.getRuntime().availableProcessors() - 1, 1, getMaxThreads()); + private static ExecutorService makeExecutor(String s, int priorityModifier) { // Paper - add priority -+ // Paper start - use simpler thread pool that allows 1 thread -+ int i = Math.min(8, Math.max(Runtime.getRuntime().availableProcessors() - 2, 1)); ++ // Paper start - use simpler thread pool that allows 1 thread and reduce worldgen thread worker count for low core count CPUs ++ int cpus = Runtime.getRuntime().availableProcessors() / 2; ++ int i; ++ if (cpus <= 4) { ++ i = cpus <= 2 ? 1 : 2; ++ } else if (cpus <= 8) { ++ // [5, 8] ++ i = Math.max(3, cpus - 2); ++ } else { ++ i = cpus * 2 / 3; ++ } ++ i = Math.min(8, i); + i = Integer.getInteger("Paper.WorkerThreadCount", i); ExecutorService executorService; -+ if (i <= 0) { executorService = MoreExecutors.newDirectExecutorService(); } else { @@ -71,7 +83,7 @@ index aa52b271bd556a29f774fde375b713d0d187521b..8188febd6f1039a31619b42af23df18a @Override protected void onTermination(Throwable throwable) { if (throwable != null) { -@@ -176,6 +179,7 @@ public class Util { +@@ -176,6 +188,7 @@ public class Util { return forkJoinWorkerThread; }, Util::onThreadException, true); } @@ -80,7 +92,7 @@ index aa52b271bd556a29f774fde375b713d0d187521b..8188febd6f1039a31619b42af23df18a return executorService; } diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 06d9cafeeedb3020c5e2313d32c6fe9285f99925..eac560bf8af3c7c28ed5eed61ef352f52d823cef 100644 +index 79a7f64edcfc750bf2753b5b20e4c2ae322e01ab..7a12c0f5a6cb205e8ae7667b9334efe1999e2a6a 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -312,6 +312,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop Date: Sun, 10 May 2020 22:12:46 -0400 -Subject: [PATCH] Ensure Entity AABB's are never invalid +Subject: [PATCH] Ensure Entity position and AABB are never invalid +Co-authored-by: Spottedleaf diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index a1d990aa2e79af9e1ff078892cdb38a382f21da7..a1172531baf637915a65fbdee8ca08f08034811d 100644 +index a1d990aa2e79af9e1ff078892cdb38a382f21da7..e1ce61dcadf325633ed809eef92fc07bac4cbf05 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -728,8 +728,8 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -14,33 +15,51 @@ index a1d990aa2e79af9e1ff078892cdb38a382f21da7..a1172531baf637915a65fbdee8ca08f0 public void setPos(double x, double y, double z) { - this.setPosRaw(x, y, z); - this.setBoundingBox(this.makeBoundingBox()); -+ this.setPosRaw(x, y, z, true); // Paper - force bounding box update -+ // this.setBoundingBox(this.makeBoundingBox()); // Paper - move into setPositionRaw ++ this.setPosRaw(x, y, z, true); // Paper - Block invalid positions and bounding box; force update ++ // this.setBoundingBox(this.makeBoundingBox()); // Paper - Block invalid positions and bounding box; move into setPosRaw } protected AABB makeBoundingBox() { -@@ -4244,6 +4244,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -4243,7 +4243,29 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S + return this.getZ((2.0D * this.random.nextDouble() - 1.0D) * widthScale); } ++ // Paper start - Block invalid positions and bounding box ++ public static boolean checkPosition(Entity entity, double newX, double newY, double newZ) { ++ if (Double.isFinite(newX) && Double.isFinite(newY) && Double.isFinite(newZ)) { ++ return true; ++ } ++ ++ String entityInfo; ++ try { ++ entityInfo = entity.toString(); ++ } catch (Exception ex) { ++ entityInfo = "[Entity info unavailable] "; ++ } ++ LOGGER.error("New entity position is invalid! Tried to set invalid position ({},{},{}) for entity {} located at {}, entity info: {}", newX, newY, newZ, entity.getClass().getName(), entity.position, entityInfo, new Throwable()); ++ return false; ++ } public final void setPosRaw(double x, double y, double z) { -+ // Paper start + this.setPosRaw(x, y, z, false); + } + public final void setPosRaw(double x, double y, double z, boolean forceBoundingBoxUpdate) { -+ // Paper end ++ if (!checkPosition(this, x, y, z)) { ++ return; ++ } ++ // Paper end - Block invalid positions and bounding box // Paper start - rewrite chunk system if (this.updatingSectionStatus) { LOGGER.error("Refusing to update position for entity " + this + " to position " + new Vec3(x, y, z) + " since it is processing a section status update", new Throwable()); -@@ -4267,6 +4272,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -4267,6 +4289,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S this.levelCallback.onMove(); } -+ // Paper start - never allow AABB to become desynced from position ++ // Paper start - Block invalid positions and bounding box; don't allow desync of pos and AABB + // hanging has its own special logic + if (!(this instanceof net.minecraft.world.entity.decoration.HangingEntity) && (forceBoundingBoxUpdate || this.position.x != x || this.position.y != y || this.position.z != z)) { + this.setBoundingBox(this.makeBoundingBox()); + } -+ // Paper end ++ // Paper end - Block invalid positions and bounding box } public void checkDespawn() {} diff --git a/patches/server/0455-Expose-the-Entity-Counter-to-allow-plugins-to-use-va.patch b/patches/server/0455-Expose-the-Entity-Counter-to-allow-plugins-to-use-va.patch index d1e3210ee8..2b209689ca 100644 --- a/patches/server/0455-Expose-the-Entity-Counter-to-allow-plugins-to-use-va.patch +++ b/patches/server/0455-Expose-the-Entity-Counter-to-allow-plugins-to-use-va.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Expose the Entity Counter to allow plugins to use valid and diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index ec224193e9ca7734fe533d5cfc0e316d5eed2adb..03eee2a591a533ec9930a262ffd4af2023a07c91 100644 +index 1f245a40358309f2e71f473af6df8e71739e8082..2b8706dfccd263c2843dd8661a260536134ad3f8 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -4493,4 +4493,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -4510,4 +4510,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S void accept(Entity entity, double x, double y, double z); } diff --git a/patches/server/0457-Entity-isTicking.patch b/patches/server/0457-Entity-isTicking.patch index 5e72f3630c..9321b75880 100644 --- a/patches/server/0457-Entity-isTicking.patch +++ b/patches/server/0457-Entity-isTicking.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Entity#isTicking diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 03eee2a591a533ec9930a262ffd4af2023a07c91..4a1245fb3ad821ee997b35f180390a07bc871982 100644 +index 2b8706dfccd263c2843dd8661a260536134ad3f8..cdfc00e4bee78fc7ac7dc9f52301f16cd7846698 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -4498,5 +4498,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -4515,5 +4515,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S public static int nextEntityId() { return ENTITY_COUNTER.incrementAndGet(); } diff --git a/patches/server/0497-MC-4-Fix-item-position-desync.patch b/patches/server/0497-MC-4-Fix-item-position-desync.patch index 7d3b45708b..1f65133aff 100644 --- a/patches/server/0497-MC-4-Fix-item-position-desync.patch +++ b/patches/server/0497-MC-4-Fix-item-position-desync.patch @@ -28,10 +28,10 @@ index 05ac41e136da43284fb24a6b698ebd36318278fb..33d9131e9c75ef23cd637f5d6c39a270 public Vec3 decode(long x, long y, long z) { diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 82eb980dd463c423b2b30a3149166a227608bb96..5436949cd928303cf80b606c747f386f0189f774 100644 +index 02b102b2d3e8e8ca9d0c95d3a44a56a88bee3b18..3a8572ded5c9bdf621a8c16123707da9ceb70d54 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -4269,6 +4269,16 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -4286,6 +4286,16 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S return; } // Paper end - rewrite chunk system diff --git a/patches/server/0644-Add-back-EntityPortalExitEvent.patch b/patches/server/0644-Add-back-EntityPortalExitEvent.patch index ab399684bb..b4d0987e13 100644 --- a/patches/server/0644-Add-back-EntityPortalExitEvent.patch +++ b/patches/server/0644-Add-back-EntityPortalExitEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add back EntityPortalExitEvent diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index c598247bd8cf65f33845502107277518f7260d4d..8db434d01f2771a94cd4c4a662ea0482b2a02307 100644 +index c598247bd8cf65f33845502107277518f7260d4d..80df6afacee92b205949322c9ccfba6f37af0279 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -3373,6 +3373,28 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -33,7 +33,7 @@ index c598247bd8cf65f33845502107277518f7260d4d..8db434d01f2771a94cd4c4a662ea0482 + pitch = event.getTo().getPitch(); + velocity = org.bukkit.craftbukkit.util.CraftVector.toNMS(event.getAfter()); + } -+ // Paper end ++ // Paper end - Call EntityPortalExitEvent if (worldserver == this.level) { // SPIGOT-6782: Just move the entity if a plugin changed the world to the one the entity is already in this.moveTo(shapedetectorshape.pos.x, shapedetectorshape.pos.y, shapedetectorshape.pos.z, shapedetectorshape.yRot, shapedetectorshape.xRot); @@ -43,8 +43,8 @@ index c598247bd8cf65f33845502107277518f7260d4d..8db434d01f2771a94cd4c4a662ea0482 entity.restoreFrom(this); - entity.moveTo(shapedetectorshape.pos.x, shapedetectorshape.pos.y, shapedetectorshape.pos.z, shapedetectorshape.yRot, entity.getXRot()); - entity.setDeltaMovement(shapedetectorshape.speed); -+ entity.moveTo(position.x, position.y, position.z, yaw, pitch); // Paper - use EntityPortalExitEvent values -+ entity.setDeltaMovement(velocity); // Paper - use EntityPortalExitEvent values ++ entity.moveTo(position.x, position.y, position.z, yaw, pitch); // Paper - EntityPortalExitEvent ++ entity.setDeltaMovement(velocity); // Paper - EntityPortalExitEvent // CraftBukkit start - Don't spawn the new entity if the current entity isn't spawned if (this.inWorld) { worldserver.addDuringTeleport(entity); diff --git a/patches/server/0645-Add-methods-to-find-targets-for-lightning-strikes.patch b/patches/server/0645-Add-methods-to-find-targets-for-lightning-strikes.patch index 8b56c0c4a7..50dd1e74aa 100644 --- a/patches/server/0645-Add-methods-to-find-targets-for-lightning-strikes.patch +++ b/patches/server/0645-Add-methods-to-find-targets-for-lightning-strikes.patch @@ -7,18 +7,18 @@ Subject: [PATCH] Add methods to find targets for lightning strikes public net.minecraft.server.level.ServerLevel findLightningRod(Lnet/minecraft/core/BlockPos;)Ljava/util/Optional; diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index dbfd4a642e862f46a8b4fd1f3fc52c13ecf74284..1629a94a272f34d395b6be8f16944b9a8837d195 100644 +index dbfd4a642e862f46a8b4fd1f3fc52c13ecf74284..1e67fd45b4449b46992cb0617db22e74ce517b4d 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -998,6 +998,11 @@ public class ServerLevel extends Level implements WorldGenLevel { } protected BlockPos findLightningTargetAround(BlockPos pos) { -+ // Paper start ++ // Paper start - Add methods to find targets for lightning strikes + return this.findLightningTargetAround(pos, false); + } + public BlockPos findLightningTargetAround(BlockPos pos, boolean returnNullWhenNoTarget) { -+ // Paper end ++ // Paper end - Add methods to find targets for lightning strikes BlockPos blockposition1 = this.getHeightmapPos(Heightmap.Types.MOTION_BLOCKING, pos); Optional optional = this.findLightningRod(blockposition1); @@ -26,19 +26,19 @@ index dbfd4a642e862f46a8b4fd1f3fc52c13ecf74284..1629a94a272f34d395b6be8f16944b9a if (!list.isEmpty()) { return ((LivingEntity) list.get(this.random.nextInt(list.size()))).blockPosition(); } else { -+ if (returnNullWhenNoTarget) return null; // Paper ++ if (returnNullWhenNoTarget) return null; // Paper - Add methods to find targets for lightning strikes if (blockposition1.getY() == this.getMinBuildHeight() - 1) { blockposition1 = blockposition1.above(2); } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index a920936018a2e05ea72d68a83e6debb3807df353..095fa9e4c4d367a3cdd343ca71bef7a6564759be 100644 +index a920936018a2e05ea72d68a83e6debb3807df353..59ca5a224561f59bf1f44e11db9bc323ac2f6d71 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -701,6 +701,23 @@ public class CraftWorld extends CraftRegionAccessor implements World { return (LightningStrike) lightning.getBukkitEntity(); } -+ // Paper start ++ // Paper start - Add methods to find targets for lightning strikes + @Override + public Location findLightningRod(Location location) { + return this.world.findLightningRod(io.papermc.paper.util.MCUtil.toBlockPosition(location)) @@ -53,7 +53,7 @@ index a920936018a2e05ea72d68a83e6debb3807df353..095fa9e4c4d367a3cdd343ca71bef7a6 + final BlockPos pos = this.world.findLightningTargetAround(io.papermc.paper.util.MCUtil.toBlockPosition(location), true); + return pos == null ? null : io.papermc.paper.util.MCUtil.toLocation(this.world, pos); + } -+ // Paper end ++ // Paper end - Add methods to find targets for lightning strikes + @Override public boolean generateTree(Location loc, TreeType type) { diff --git a/patches/server/0648-Add-more-advancement-API.patch b/patches/server/0648-Add-more-advancement-API.patch index 9504a69ec5..98836b6fe4 100644 --- a/patches/server/0648-Add-more-advancement-API.patch +++ b/patches/server/0648-Add-more-advancement-API.patch @@ -84,26 +84,26 @@ index 0000000000000000000000000000000000000000..adac21ce6db3ff7a56dbcd6bffc02143 + } +} diff --git a/src/main/java/net/minecraft/advancements/DisplayInfo.java b/src/main/java/net/minecraft/advancements/DisplayInfo.java -index d357deb8a9e1d4043f5fb3302b957b20ffc0cc32..d83acd5eac3d7d1893b1b97ab0b0764c06da016b 100644 +index d357deb8a9e1d4043f5fb3302b957b20ffc0cc32..54298a80bd86ae8c2bdbfc69d381173aea2f1410 100644 --- a/src/main/java/net/minecraft/advancements/DisplayInfo.java +++ b/src/main/java/net/minecraft/advancements/DisplayInfo.java @@ -24,6 +24,7 @@ public class DisplayInfo { private final boolean hidden; private float x; private float y; -+ public final io.papermc.paper.advancement.AdvancementDisplay paper = new io.papermc.paper.advancement.PaperAdvancementDisplay(this); // Paper ++ public final io.papermc.paper.advancement.AdvancementDisplay paper = new io.papermc.paper.advancement.PaperAdvancementDisplay(this); // Paper - Add more advancement API public DisplayInfo(ItemStack icon, Component title, Component description, Optional background, AdvancementType frame, boolean showToast, boolean announceToChat, boolean hidden) { this.title = title; diff --git a/src/main/java/org/bukkit/craftbukkit/advancement/CraftAdvancement.java b/src/main/java/org/bukkit/craftbukkit/advancement/CraftAdvancement.java -index 52baf818579a6841b77ff80e42f4f1b9f635ea08..bd640e0d8d796ee114ff787def7e07edbeffc0a5 100644 +index 52baf818579a6841b77ff80e42f4f1b9f635ea08..8dfaca2efa0b0bdc97b75aaa83158a2e46361e4e 100644 --- a/src/main/java/org/bukkit/craftbukkit/advancement/CraftAdvancement.java +++ b/src/main/java/org/bukkit/craftbukkit/advancement/CraftAdvancement.java @@ -29,12 +29,47 @@ public class CraftAdvancement implements org.bukkit.advancement.Advancement { return Collections.unmodifiableCollection(this.handle.value().criteria().keySet()); } -+ // Paper start ++ // Paper start - Add more advancement API @Override - public AdvancementDisplay getDisplay() { - if (this.handle.value().display().isEmpty()) { @@ -149,7 +149,7 @@ index 52baf818579a6841b77ff80e42f4f1b9f635ea08..bd640e0d8d796ee114ff787def7e07ed + final net.minecraft.advancements.AdvancementNode advancementNode = net.minecraft.server.MinecraftServer.getServer().getAdvancements().tree().get(this.handle); + return java.util.Objects.requireNonNull(advancementNode, "could not find internal advancement node for advancement " + this.handle.id()).root().holder().toBukkit(); } -+ // Paper end ++ // Paper end - Add more advancement API } diff --git a/src/main/java/org/bukkit/craftbukkit/advancement/CraftAdvancementDisplay.java b/src/main/java/org/bukkit/craftbukkit/advancement/CraftAdvancementDisplay.java index 8ca86852319d7463f60832bc98b825b0b4325995..62ada73302c6b3ce3fb2dcc8c31a1d9c0ac4fd09 100644 diff --git a/patches/server/0649-Add-ItemFactory-getSpawnEgg-API.patch b/patches/server/0649-Add-ItemFactory-getSpawnEgg-API.patch index 1876c86ea1..c1c7ed6a2c 100644 --- a/patches/server/0649-Add-ItemFactory-getSpawnEgg-API.patch +++ b/patches/server/0649-Add-ItemFactory-getSpawnEgg-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add ItemFactory#getSpawnEgg API diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java -index 12f90520e4d6d5fcea0c2f8e19dad9102970cd99..2dc5cdf72034f27cf9c61ce979a7018f169bb786 100644 +index 12f90520e4d6d5fcea0c2f8e19dad9102970cd99..ef0c6e04a89704688f7b5461b27c0036abbf647d 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java @@ -564,4 +564,19 @@ public final class CraftItemFactory implements ItemFactory { @@ -26,7 +26,7 @@ index 12f90520e4d6d5fcea0c2f8e19dad9102970cd99..2dc5cdf72034f27cf9c61ce979a7018f + net.minecraft.world.item.SpawnEggItem eggItem = net.minecraft.world.item.SpawnEggItem.byId(nmsType); + return eggItem == null ? null : new net.minecraft.world.item.ItemStack(eggItem).asBukkitMirror(); + } -+ // Paper end ++ // Paper end - old getSpawnEgg API } diff --git a/src/main/java/org/bukkit/craftbukkit/util/Commodore.java b/src/main/java/org/bukkit/craftbukkit/util/Commodore.java index 6d6a7abe1aa39a2e4ecf3ac5f55b1f227e1a9db9..010014c06fcea7d603160928f124f54d6e5e63d8 100644 diff --git a/patches/server/0650-Add-critical-damage-API.patch b/patches/server/0650-Add-critical-damage-API.patch index d2acf3ffd5..3c62cf890e 100644 --- a/patches/server/0650-Add-critical-damage-API.patch +++ b/patches/server/0650-Add-critical-damage-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add critical damage API diff --git a/src/main/java/net/minecraft/world/damagesource/DamageSource.java b/src/main/java/net/minecraft/world/damagesource/DamageSource.java -index df8c88bfa749e02f633350446101dcce05db7ac1..1a0f86b5a632469942e33c237c247d2d1dee4a3d 100644 +index df8c88bfa749e02f633350446101dcce05db7ac1..ed1277fad60992344b94f8a939febaca3edd9702 100644 --- a/src/main/java/net/minecraft/world/damagesource/DamageSource.java +++ b/src/main/java/net/minecraft/world/damagesource/DamageSource.java @@ -191,4 +191,18 @@ public class DamageSource { @@ -25,10 +25,10 @@ index df8c88bfa749e02f633350446101dcce05db7ac1..1a0f86b5a632469942e33c237c247d2d + this.critical = critical; + return this; + } -+ // Paper end ++ // Paper end - add critical damage API } diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java -index e77a2d3a321313e8476068d895dfb39cb152f7e6..9193e0fb5c2a545907c084322b548722312a5583 100644 +index e77a2d3a321313e8476068d895dfb39cb152f7e6..21a02cab65506a3746ddc709d92c6fde244446eb 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java @@ -1263,7 +1263,7 @@ public abstract class Player extends LivingEntity { @@ -36,7 +36,7 @@ index e77a2d3a321313e8476068d895dfb39cb152f7e6..9193e0fb5c2a545907c084322b548722 } - boolean flag2 = flag && this.fallDistance > 0.0F && !this.onGround() && !this.onClimbable() && !this.isInWater() && !this.hasEffect(MobEffects.BLINDNESS) && !this.isPassenger() && target instanceof LivingEntity; -+ boolean flag2 = flag && this.fallDistance > 0.0F && !this.onGround() && !this.onClimbable() && !this.isInWater() && !this.hasEffect(MobEffects.BLINDNESS) && !this.isPassenger() && target instanceof LivingEntity; // Paper - Add critical damage API - conflict on change ++ boolean flag2 = flag && this.fallDistance > 0.0F && !this.onGround() && !this.onClimbable() && !this.isInWater() && !this.hasEffect(MobEffects.BLINDNESS) && !this.isPassenger() && target instanceof LivingEntity; // Paper - Add critical damage API; diff on change flag2 = flag2 && !this.level().paperConfig().entities.behavior.disablePlayerCrits; // Paper flag2 = flag2 && !this.isSprinting(); diff --git a/patches/server/0651-Fix-issues-with-mob-conversion.patch b/patches/server/0651-Fix-issues-with-mob-conversion.patch index 237d313b89..657dd4ec5d 100644 --- a/patches/server/0651-Fix-issues-with-mob-conversion.patch +++ b/patches/server/0651-Fix-issues-with-mob-conversion.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fix issues with mob conversion diff --git a/src/main/java/net/minecraft/world/entity/monster/Skeleton.java b/src/main/java/net/minecraft/world/entity/monster/Skeleton.java -index e88af2dcc0f7fc5190654e2640f67d706e6c8c81..8b818a7cb835512c4bd2ea9641d4bfd904150332 100644 +index e88af2dcc0f7fc5190654e2640f67d706e6c8c81..92974452d8f63fde8524cfac305ee2ef5212f840 100644 --- a/src/main/java/net/minecraft/world/entity/monster/Skeleton.java +++ b/src/main/java/net/minecraft/world/entity/monster/Skeleton.java @@ -90,10 +90,15 @@ public class Skeleton extends AbstractSkeleton { @@ -13,47 +13,47 @@ index e88af2dcc0f7fc5190654e2640f67d706e6c8c81..8b818a7cb835512c4bd2ea9641d4bfd9 protected void doFreezeConversion() { - this.convertTo(EntityType.STRAY, true, org.bukkit.event.entity.EntityTransformEvent.TransformReason.FROZEN, org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason.FROZEN); // CraftBukkit - add spawn and transform reasons -+ Stray stray = this.convertTo(EntityType.STRAY, true, org.bukkit.event.entity.EntityTransformEvent.TransformReason.FROZEN, org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason.FROZEN); // CraftBukkit - add spawn and transform reasons // Paper - track result of conversion ++ Stray stray = this.convertTo(EntityType.STRAY, true, org.bukkit.event.entity.EntityTransformEvent.TransformReason.FROZEN, org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason.FROZEN); // CraftBukkit - add spawn and transform reasons // Paper - Fix issues with mob conversion if (!this.isSilent()) { this.level().levelEvent((Player) null, 1048, this.blockPosition(), 0); } -+ // Paper start - reset conversion time to prevent event spam ++ // Paper start - Fix issues with mob conversion; reset conversion time to prevent event spam + if (stray == null) { + this.conversionTime = 300; + } -+ // Paper end ++ // Paper end - Fix issues with mob conversion } diff --git a/src/main/java/net/minecraft/world/entity/monster/hoglin/Hoglin.java b/src/main/java/net/minecraft/world/entity/monster/hoglin/Hoglin.java -index 7bcd5498c734873b74bee503992ec4806ae61df7..4257f2282152aee09533c9a2e53018d3e49effa4 100644 +index 7bcd5498c734873b74bee503992ec4806ae61df7..01a2016ac82807d28ffe407b7dbb74bdbcde503e 100644 --- a/src/main/java/net/minecraft/world/entity/monster/hoglin/Hoglin.java +++ b/src/main/java/net/minecraft/world/entity/monster/hoglin/Hoglin.java @@ -241,6 +241,11 @@ public class Hoglin extends Animal implements Enemy, HoglinBase { if (zoglin != null) { zoglin.addEffect(new MobEffectInstance(MobEffects.CONFUSION, 200, 0)); } -+ // Paper start - reset to prevent event spam ++ // Paper start - Fix issues with mob conversion; reset to prevent event spam + else { + this.timeInOverworld = 0; + } -+ // Paper end ++ // Paper end - Fix issues with mob conversion } diff --git a/src/main/java/net/minecraft/world/entity/monster/piglin/AbstractPiglin.java b/src/main/java/net/minecraft/world/entity/monster/piglin/AbstractPiglin.java -index 22c8d6233be5e4f7fb4f03176e83dbee02256b1f..4384cbf9c53b220128cd278f126466b143fab2f2 100644 +index 22c8d6233be5e4f7fb4f03176e83dbee02256b1f..c575a86ca5c1bbdd6d2faf6e4a609af8ba03cab6 100644 --- a/src/main/java/net/minecraft/world/entity/monster/piglin/AbstractPiglin.java +++ b/src/main/java/net/minecraft/world/entity/monster/piglin/AbstractPiglin.java @@ -120,6 +120,11 @@ public abstract class AbstractPiglin extends Monster { if (entitypigzombie != null) { entitypigzombie.addEffect(new MobEffectInstance(MobEffects.CONFUSION, 200, 0)); } -+ // Paper start - reset to prevent event spam ++ // Paper start - Fix issues with mob conversion; reset to prevent event spam + else { + this.timeInOverworld = 0; + } -+ // Paper end ++ // Paper end - Fix issues with mob conversion } diff --git a/patches/server/0653-Goat-ram-API.patch b/patches/server/0653-Goat-ram-API.patch index 443c58b4ee..04a1b6c686 100644 --- a/patches/server/0653-Goat-ram-API.patch +++ b/patches/server/0653-Goat-ram-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Goat ram API diff --git a/src/main/java/net/minecraft/world/entity/animal/goat/Goat.java b/src/main/java/net/minecraft/world/entity/animal/goat/Goat.java -index 52f3f679568955b632a60d44de687c6db0e2b38a..3ec2f590dfe9410f1a9d2afb530eebfcce917798 100644 +index 52f3f679568955b632a60d44de687c6db0e2b38a..ee1b2c1fec4b76a821e1d52fbb07e1f302b2efa1 100644 --- a/src/main/java/net/minecraft/world/entity/animal/goat/Goat.java +++ b/src/main/java/net/minecraft/world/entity/animal/goat/Goat.java @@ -392,4 +392,15 @@ public class Goat extends Animal { @@ -22,7 +22,7 @@ index 52f3f679568955b632a60d44de687c6db0e2b38a..3ec2f590dfe9410f1a9d2afb530eebfc + brain.eraseMemory(MemoryModuleType.TEMPTING_PLAYER); + brain.setActiveActivityIfPossible(net.minecraft.world.entity.schedule.Activity.RAM); + } -+ // Paper end ++ // Paper end - Goat ram API } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftGoat.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftGoat.java index 65fcb36e849da6949c123a6f3672b485036f368e..2c21de478bff9cdf13ba46cd041831d54c11e924 100644 diff --git a/patches/server/0655-Add-Raw-Byte-Entity-Serialization.patch b/patches/server/0655-Add-Raw-Byte-Entity-Serialization.patch index 4479e72d21..6e0757e264 100644 --- a/patches/server/0655-Add-Raw-Byte-Entity-Serialization.patch +++ b/patches/server/0655-Add-Raw-Byte-Entity-Serialization.patch @@ -7,7 +7,7 @@ Subject: [PATCH] Add Raw Byte Entity Serialization public net.minecraft.world.entity.Entity setLevel(Lnet/minecraft/world/level/Level;)V diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 8db434d01f2771a94cd4c4a662ea0482b2a02307..58aa16888666f81ba688037bff61d149a03767af 100644 +index 80df6afacee92b205949322c9ccfba6f37af0279..024b993b1fb709297fb495a5fd8224484c48c8b6 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -2159,6 +2159,15 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -22,7 +22,7 @@ index 8db434d01f2771a94cd4c4a662ea0482b2a02307..58aa16888666f81ba688037bff61d149 + this.passengers = ImmutableList.copyOf(pass); + return result; + } -+ // Paper end ++ // Paper end - Entity serialization api public boolean save(CompoundTag nbt) { return this.isPassenger() ? false : this.saveAsPassenger(nbt); } diff --git a/patches/server/0656-Vanilla-command-permission-fixes.patch b/patches/server/0656-Vanilla-command-permission-fixes.patch index 6813c9adc7..6b39bdbefb 100644 --- a/patches/server/0656-Vanilla-command-permission-fixes.patch +++ b/patches/server/0656-Vanilla-command-permission-fixes.patch @@ -10,48 +10,48 @@ requirement, as well as for namespaced vanilla commands. public-f com.mojang.brigadier.tree.CommandNode requirement diff --git a/src/main/java/com/mojang/brigadier/builder/ArgumentBuilder.java b/src/main/java/com/mojang/brigadier/builder/ArgumentBuilder.java -index 899008b2980d13f1be6280cd8cb959c53a29bebf..f875507241ac6769545e91cd3285232b75b892f0 100644 +index 899008b2980d13f1be6280cd8cb959c53a29bebf..d5f7da3502575f6847f3c22ab0e942848a7c6031 100644 --- a/src/main/java/com/mojang/brigadier/builder/ArgumentBuilder.java +++ b/src/main/java/com/mojang/brigadier/builder/ArgumentBuilder.java @@ -14,9 +14,17 @@ import java.util.Collections; import java.util.function.Predicate; public abstract class ArgumentBuilder> { -+ // Paper start ++ // Paper start - Vanilla command permission fixes + private static final Predicate DEFAULT_REQUIREMENT = s -> true; + + @SuppressWarnings("unchecked") + public static Predicate defaultRequirement() { + return (Predicate) DEFAULT_REQUIREMENT; + } -+ // Paper end ++ // Paper end - Vanilla command permission fixes private final RootCommandNode arguments = new RootCommandNode<>(); private Command command; - private Predicate requirement = s -> true; -+ private Predicate requirement = defaultRequirement(); // Paper ++ private Predicate requirement = defaultRequirement(); // Paper - Vanilla command permission fixes private CommandNode target; private RedirectModifier modifier = null; private boolean forks; diff --git a/src/main/java/net/minecraft/commands/Commands.java b/src/main/java/net/minecraft/commands/Commands.java -index 3b3fa067ee5a95d52645147c2d9d1e43d7a789b6..bc0f9bf88de8f79f8e2aa2261d5a8bdc9dd1f53a 100644 +index 3b3fa067ee5a95d52645147c2d9d1e43d7a789b6..9a01905bdbf0b721a129984d71c5745fa5e3c8a5 100644 --- a/src/main/java/net/minecraft/commands/Commands.java +++ b/src/main/java/net/minecraft/commands/Commands.java @@ -257,6 +257,13 @@ public class Commands { } this.vanillaCommandNodes.addAll(this.dispatcher.getRoot().getChildren()); // Paper -+ // Paper start ++ // Paper start - Vanilla command permission fixes + for (final CommandNode node : this.dispatcher.getRoot().getChildren()) { + if (node.getRequirement() == com.mojang.brigadier.builder.ArgumentBuilder.defaultRequirement()) { + node.requirement = stack -> stack.source == CommandSource.NULL || stack.getBukkitSender().hasPermission(org.bukkit.craftbukkit.command.VanillaCommandWrapper.getPermission(node)); + } + } -+ // Paper end ++ // Paper end - Vanilla command permission fixes // CraftBukkit start } diff --git a/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java b/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java -index 5e6645e16b185aaa6f719055ddbf670b8741fead..f4961a0f360a39124544cbe0adbd94eeeef32ab5 100644 +index 5e6645e16b185aaa6f719055ddbf670b8741fead..bda9a0b99184adce28bb7851612ed7f4e324826d 100644 --- a/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java +++ b/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java @@ -86,7 +86,23 @@ public final class VanillaCommandWrapper extends BukkitCommand { @@ -59,7 +59,7 @@ index 5e6645e16b185aaa6f719055ddbf670b8741fead..f4961a0f360a39124544cbe0adbd94ee public static String getPermission(CommandNode vanillaCommand) { - return "minecraft.command." + ((vanillaCommand.getRedirect() == null) ? vanillaCommand.getName() : vanillaCommand.getRedirect().getName()); -+ // Paper start ++ // Paper start - Vanilla command permission fixes + final String commandName; + if (vanillaCommand.getRedirect() == null) { + commandName = vanillaCommand.getName(); @@ -75,7 +75,7 @@ index 5e6645e16b185aaa6f719055ddbf670b8741fead..f4961a0f360a39124544cbe0adbd94ee + return maybeNamespaced.substring(prefix.length()); + } + return maybeNamespaced; -+ // Paper end ++ // Paper end - Vanilla command permission fixes } private String toDispatcher(String[] args, String name) { diff --git a/patches/server/0657-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch b/patches/server/0657-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch index 55882d0841..ee3ea5e0f7 100644 --- a/patches/server/0657-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch +++ b/patches/server/0657-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch @@ -9,7 +9,7 @@ chunk through it. This should also be OK from a leak prevention/ state desync POV because the TE is getting unloaded anyways. diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 1629a94a272f34d395b6be8f16944b9a8837d195..ce74bfb123427c5459c03c3c8f85445077c329c7 100644 +index 1e67fd45b4449b46992cb0617db22e74ce517b4d..dfbec0bd98f58f7e01d0f45f2ab2c433f9094cc3 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -1578,9 +1578,13 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -23,7 +23,7 @@ index 1629a94a272f34d395b6be8f16944b9a8837d195..ce74bfb123427c5459c03c3c8f854450 - h.closeInventory(org.bukkit.event.inventory.InventoryCloseEvent.Reason.UNLOADED); // Paper + ((org.bukkit.craftbukkit.entity.CraftHumanEntity)h).getHandle().closeUnloadedInventory(org.bukkit.event.inventory.InventoryCloseEvent.Reason.UNLOADED); // Paper } -+ // Paper end ++ // Paper end - this area looks like it can load chunks, change the behavior } } // Spigot End @@ -51,7 +51,7 @@ index 9f7c149d3ad1175d55ec02e295ee43bc571c3280..87fdc78409fb16c961c04a5551980a8a @Override public void doCloseContainer() { diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java -index 9193e0fb5c2a545907c084322b548722312a5583..bce494bb7bc1ce20809ac7d355f04aa7aad78308 100644 +index 21a02cab65506a3746ddc709d92c6fde244446eb..6018717ea7ff9d3947e48aacd3dbedc075a8376e 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java @@ -508,6 +508,11 @@ public abstract class Player extends LivingEntity { diff --git a/patches/server/0658-Fix-GameProfileCache-concurrency.patch b/patches/server/0658-Fix-GameProfileCache-concurrency.patch index 68ec851967..bd43b7aa18 100644 --- a/patches/server/0658-Fix-GameProfileCache-concurrency.patch +++ b/patches/server/0658-Fix-GameProfileCache-concurrency.patch @@ -7,17 +7,17 @@ Separate lookup and state access locks prevent lookups from stalling simple state access/write calls diff --git a/src/main/java/net/minecraft/server/players/GameProfileCache.java b/src/main/java/net/minecraft/server/players/GameProfileCache.java -index 85172de608f04abca1be4591749564ccc0e8d600..85df8ebb1e0030e98a2b03688451cf391593651e 100644 +index 85172de608f04abca1be4591749564ccc0e8d600..572263b112762e69bd61fedf7c0fdd810164e6dd 100644 --- a/src/main/java/net/minecraft/server/players/GameProfileCache.java +++ b/src/main/java/net/minecraft/server/players/GameProfileCache.java @@ -60,6 +60,11 @@ public class GameProfileCache { @Nullable private Executor executor; -+ // Paper start ++ // Paper start - Fix GameProfileCache concurrency + protected final java.util.concurrent.locks.ReentrantLock stateLock = new java.util.concurrent.locks.ReentrantLock(); + protected final java.util.concurrent.locks.ReentrantLock lookupLock = new java.util.concurrent.locks.ReentrantLock(); -+ // Paper end ++ // Paper end - Fix GameProfileCache concurrency + public GameProfileCache(GameProfileRepository profileRepository, File cacheFile) { this.profileRepository = profileRepository; @@ -26,13 +26,13 @@ index 85172de608f04abca1be4591749564ccc0e8d600..85df8ebb1e0030e98a2b03688451cf39 } private void safeAdd(GameProfileCache.GameProfileInfo entry) { -+ try { this.stateLock.lock(); // Paper - allow better concurrency ++ try { this.stateLock.lock(); // Paper - Fix GameProfileCache concurrency GameProfile gameprofile = entry.getProfile(); entry.setLastAccess(this.getNextOperation()); this.profilesByName.put(gameprofile.getName().toLowerCase(Locale.ROOT), entry); this.profilesByUUID.put(gameprofile.getId(), entry); -+ } finally { this.stateLock.unlock(); } // Paper - allow better concurrency ++ } finally { this.stateLock.unlock(); } // Paper - Fix GameProfileCache concurrency } private static Optional lookupGameProfile(GameProfileRepository repository, String name) { @@ -40,20 +40,20 @@ index 85172de608f04abca1be4591749564ccc0e8d600..85df8ebb1e0030e98a2b03688451cf39 // Paper start public @Nullable GameProfile getProfileIfCached(String name) { -+ try { this.stateLock.lock(); // Paper - allow better concurrency ++ try { this.stateLock.lock(); // Paper - Fix GameProfileCache concurrency GameProfileCache.GameProfileInfo entry = this.profilesByName.get(name.toLowerCase(Locale.ROOT)); if (entry == null) { return null; } entry.setLastAccess(this.getNextOperation()); return entry.getProfile(); -+ } finally { this.stateLock.unlock(); } // Paper - allow better concurrency ++ } finally { this.stateLock.unlock(); } // Paper - Fix GameProfileCache concurrency } // Paper end public Optional get(String name) { String s1 = name.toLowerCase(Locale.ROOT); -+ boolean stateLocked = true; try { this.stateLock.lock(); // Paper - allow better concurrency ++ boolean stateLocked = true; try { this.stateLock.lock(); // Paper - Fix GameProfileCache concurrency GameProfileCache.GameProfileInfo usercache_usercacheentry = (GameProfileCache.GameProfileInfo) this.profilesByName.get(s1); boolean flag = false; @@ -61,12 +61,12 @@ index 85172de608f04abca1be4591749564ccc0e8d600..85df8ebb1e0030e98a2b03688451cf39 if (usercache_usercacheentry != null) { usercache_usercacheentry.setLastAccess(this.getNextOperation()); optional = Optional.of(usercache_usercacheentry.getProfile()); -+ stateLocked = false; this.stateLock.unlock(); // Paper - allow better concurrency ++ stateLocked = false; this.stateLock.unlock(); // Paper - Fix GameProfileCache concurrency } else { -+ stateLocked = false; this.stateLock.unlock(); // Paper - allow better concurrency -+ try { this.lookupLock.lock(); // Paper - allow better concurrency ++ stateLocked = false; this.stateLock.unlock(); // Paper - Fix GameProfileCache concurrency ++ try { this.lookupLock.lock(); // Paper - Fix GameProfileCache concurrency optional = GameProfileCache.lookupGameProfile(this.profileRepository, name); // CraftBukkit - use correct case for offline players -+ } finally { this.lookupLock.unlock(); } // Paper - allow better concurrency ++ } finally { this.lookupLock.unlock(); } // Paper - Fix GameProfileCache concurrency if (optional.isPresent()) { this.add((GameProfile) optional.get()); flag = false; @@ -74,7 +74,7 @@ index 85172de608f04abca1be4591749564ccc0e8d600..85df8ebb1e0030e98a2b03688451cf39 } return optional; -+ } finally { if (stateLocked) { this.stateLock.unlock(); } } // Paper - allow better concurrency ++ } finally { if (stateLocked) { this.stateLock.unlock(); } } // Paper - Fix GameProfileCache concurrency } public CompletableFuture> getAsync(String username) { @@ -82,7 +82,7 @@ index 85172de608f04abca1be4591749564ccc0e8d600..85df8ebb1e0030e98a2b03688451cf39 } public Optional get(UUID uuid) { -+ try { this.stateLock.lock(); // Paper - allow better concurrency ++ try { this.stateLock.lock(); // Paper - Fix GameProfileCache concurrency GameProfileCache.GameProfileInfo usercache_usercacheentry = (GameProfileCache.GameProfileInfo) this.profilesByUUID.get(uuid); if (usercache_usercacheentry == null) { @@ -90,7 +90,7 @@ index 85172de608f04abca1be4591749564ccc0e8d600..85df8ebb1e0030e98a2b03688451cf39 usercache_usercacheentry.setLastAccess(this.getNextOperation()); return Optional.of(usercache_usercacheentry.getProfile()); } -+ } finally { this.stateLock.unlock(); } // Paper - allow better concurrency ++ } finally { this.stateLock.unlock(); } // Paper - Fix GameProfileCache concurrency } public void setExecutor(Executor executor) { @@ -99,7 +99,7 @@ index 85172de608f04abca1be4591749564ccc0e8d600..85df8ebb1e0030e98a2b03688451cf39 DateFormat dateformat = GameProfileCache.createDateFormat(); - this.getTopMRUProfiles(org.spigotmc.SpigotConfig.userCacheCap).forEach((usercache_usercacheentry) -> { // Spigot -+ this.listTopMRUProfiles(org.spigotmc.SpigotConfig.userCacheCap).forEach((usercache_usercacheentry) -> { // Spigot // Paper - allow better concurrency ++ this.listTopMRUProfiles(org.spigotmc.SpigotConfig.userCacheCap).forEach((usercache_usercacheentry) -> { // Spigot // Paper - Fix GameProfileCache concurrency jsonarray.add(GameProfileCache.writeGameProfile(usercache_usercacheentry, dateformat)); }); String s = this.gson.toJson(jsonarray); @@ -108,7 +108,7 @@ index 85172de608f04abca1be4591749564ccc0e8d600..85df8ebb1e0030e98a2b03688451cf39 private Stream getTopMRUProfiles(int limit) { - return ImmutableList.copyOf(this.profilesByUUID.values()).stream().sorted(Comparator.comparing(GameProfileCache.GameProfileInfo::getLastAccess).reversed()).limit((long) limit); -+ // Paper start - allow better concurrency ++ // Paper start - Fix GameProfileCache concurrency + return this.listTopMRUProfiles(limit).stream(); + } + @@ -120,7 +120,7 @@ index 85172de608f04abca1be4591749564ccc0e8d600..85df8ebb1e0030e98a2b03688451cf39 + this.stateLock.unlock(); + } } -+ // Paper end ++ // Paper end - Fix GameProfileCache concurrency private static JsonElement writeGameProfile(GameProfileCache.GameProfileInfo entry, DateFormat dateFormat) { JsonObject jsonobject = new JsonObject(); diff --git a/patches/server/0660-Add-paper-mobcaps-and-paper-playermobcaps.patch b/patches/server/0660-Add-paper-mobcaps-and-paper-playermobcaps.patch index 435570bcbe..3e9c79b5ea 100644 --- a/patches/server/0660-Add-paper-mobcaps-and-paper-playermobcaps.patch +++ b/patches/server/0660-Add-paper-mobcaps-and-paper-playermobcaps.patch @@ -257,14 +257,14 @@ index 0000000000000000000000000000000000000000..d3b39d88a72ca25057fd8574d32f28db + } +} diff --git a/src/main/java/net/minecraft/world/level/NaturalSpawner.java b/src/main/java/net/minecraft/world/level/NaturalSpawner.java -index 9df761f5cf043e8d2dffa711c20ab32fe2992331..d08c7b0b52065980f1f13c5533ff6355028322db 100644 +index 9df761f5cf043e8d2dffa711c20ab32fe2992331..48cc5623973713e07d95639e5359fc15e59785cc 100644 --- a/src/main/java/net/minecraft/world/level/NaturalSpawner.java +++ b/src/main/java/net/minecraft/world/level/NaturalSpawner.java @@ -190,6 +190,16 @@ public final class NaturalSpawner { world.getProfiler().pop(); } -+ // Paper start ++ // Paper start - Add mobcaps commands + public static int globalLimitForCategory(final ServerLevel level, final MobCategory category, final int spawnableChunkCount) { + final int categoryLimit = level.getWorld().getSpawnLimitUnsafe(CraftSpawnCategory.toBukkit(category)); + if (categoryLimit < 1) { @@ -272,36 +272,36 @@ index 9df761f5cf043e8d2dffa711c20ab32fe2992331..d08c7b0b52065980f1f13c5533ff6355 + } + return categoryLimit * spawnableChunkCount / NaturalSpawner.MAGIC_NUMBER; + } -+ // Paper end ++ // Paper end - Add mobcaps commands + public static void spawnCategoryForChunk(MobCategory group, ServerLevel world, LevelChunk chunk, NaturalSpawner.SpawnPredicate checker, NaturalSpawner.AfterSpawnCallback runner) { // Paper start - add parameters and int ret type spawnCategoryForChunk(group, world, chunk, checker, runner, Integer.MAX_VALUE, null); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 7df30c0d3f647b74dd812fc9d286feb95b52dfae..8f61efe32500ebe47e13d96fd96df646adb3dd5b 100644 +index 7df30c0d3f647b74dd812fc9d286feb95b52dfae..65809db4522c3b1ce0b5bf11828de129713d7d21 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -2279,6 +2279,11 @@ public final class CraftServer implements Server { @Override public int getSpawnLimit(SpawnCategory spawnCategory) { -+ // Paper start ++ // Paper start - Add mobcaps commands + return this.getSpawnLimitUnsafe(spawnCategory); + } + public int getSpawnLimitUnsafe(final SpawnCategory spawnCategory) { -+ // Paper end ++ // Paper end - Add mobcaps commands return this.spawnCategoryLimit.getOrDefault(spawnCategory, -1); } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index b52d3413cfe725ff5778c897a0ba06ca834e533f..24156bd9d964e2c32bc758dd9e099744cf8ac647 100644 +index b882e8d1b3e45277b5e9e3a359f51d9703bdb2d0..3eeb878924827861f79c6bc1b510d0167b9ac10b 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -1761,9 +1761,14 @@ public class CraftWorld extends CraftRegionAccessor implements World { Preconditions.checkArgument(spawnCategory != null, "SpawnCategory cannot be null"); Preconditions.checkArgument(CraftSpawnCategory.isValidForLimits(spawnCategory), "SpawnCategory.%s are not supported", spawnCategory); -+ // Paper start ++ // Paper start - Add mobcaps commands + return this.getSpawnLimitUnsafe(spawnCategory); + } + public final int getSpawnLimitUnsafe(final SpawnCategory spawnCategory) { @@ -309,7 +309,7 @@ index b52d3413cfe725ff5778c897a0ba06ca834e533f..24156bd9d964e2c32bc758dd9e099744 if (limit < 0) { - limit = this.server.getSpawnLimit(spawnCategory); + limit = this.server.getSpawnLimitUnsafe(spawnCategory); -+ // Paper end ++ // Paper end - Add mobcaps commands } return limit; } diff --git a/patches/server/0661-Sanitize-ResourceLocation-error-logging.patch b/patches/server/0661-Sanitize-ResourceLocation-error-logging.patch index 989716f6fd..1359f8648a 100644 --- a/patches/server/0661-Sanitize-ResourceLocation-error-logging.patch +++ b/patches/server/0661-Sanitize-ResourceLocation-error-logging.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Sanitize ResourceLocation error logging diff --git a/src/main/java/net/minecraft/resources/ResourceLocation.java b/src/main/java/net/minecraft/resources/ResourceLocation.java -index d3300e43523429fdd0e61c5aa9aed2e6bc78e07e..38e2a8cec48bc779b8154d6d719031f457a2403e 100644 +index d3300e43523429fdd0e61c5aa9aed2e6bc78e07e..5f9dcab27a07969c93555ad0892683c62cbebc8c 100644 --- a/src/main/java/net/minecraft/resources/ResourceLocation.java +++ b/src/main/java/net/minecraft/resources/ResourceLocation.java @@ -211,7 +211,7 @@ public class ResourceLocation implements Comparable { @@ -13,7 +13,7 @@ index d3300e43523429fdd0e61c5aa9aed2e6bc78e07e..38e2a8cec48bc779b8154d6d719031f4 private static String assertValidNamespace(String namespace, String path) { if (!isValidNamespace(namespace)) { - throw new ResourceLocationException("Non [a-z0-9_.-] character in namespace of location: " + namespace + ":" + path); -+ throw new ResourceLocationException("Non [a-z0-9_.-] character in namespace of location: " + org.apache.commons.lang3.StringUtils.normalizeSpace(namespace) + ":" + org.apache.commons.lang3.StringUtils.normalizeSpace(path)); // Paper ++ throw new ResourceLocationException("Non [a-z0-9_.-] character in namespace of location: " + org.apache.commons.lang3.StringUtils.normalizeSpace(namespace) + ":" + org.apache.commons.lang3.StringUtils.normalizeSpace(path)); // Paper - Sanitize ResourceLocation error logging } else { return namespace; } @@ -22,7 +22,7 @@ index d3300e43523429fdd0e61c5aa9aed2e6bc78e07e..38e2a8cec48bc779b8154d6d719031f4 private static String assertValidPath(String namespace, String path) { if (!isValidPath(path)) { - throw new ResourceLocationException("Non [a-z0-9/._-] character in path of location: " + namespace + ":" + path); -+ throw new ResourceLocationException("Non [a-z0-9/._-] character in path of location: " + namespace + ":" + org.apache.commons.lang3.StringUtils.normalizeSpace(path)); // Paper ++ throw new ResourceLocationException("Non [a-z0-9/._-] character in path of location: " + namespace + ":" + org.apache.commons.lang3.StringUtils.normalizeSpace(path)); // Paper - Sanitize ResourceLocation error logging } else { return path; } diff --git a/patches/server/0664-Manually-inline-methods-in-BlockPosition.patch b/patches/server/0664-Manually-inline-methods-in-BlockPosition.patch index 93554d0b99..3921497e1b 100644 --- a/patches/server/0664-Manually-inline-methods-in-BlockPosition.patch +++ b/patches/server/0664-Manually-inline-methods-in-BlockPosition.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Manually inline methods in BlockPosition diff --git a/src/main/java/net/minecraft/core/BlockPos.java b/src/main/java/net/minecraft/core/BlockPos.java -index e5dfc4009cb06e500c6b54ee4228117061758b53..c47aa87db42dea74a2e07ffe6015257fa337da23 100644 +index e5dfc4009cb06e500c6b54ee4228117061758b53..3a9715a81a8551c07ba61850e82b1ccb8a324c80 100644 --- a/src/main/java/net/minecraft/core/BlockPos.java +++ b/src/main/java/net/minecraft/core/BlockPos.java @@ -515,9 +515,9 @@ public class BlockPos extends Vec3i { @@ -26,26 +26,26 @@ index e5dfc4009cb06e500c6b54ee4228117061758b53..c47aa87db42dea74a2e07ffe6015257f @Override public BlockPos.MutableBlockPos setX(int i) { - super.setX(i); -+ this.x = i; // Paper ++ this.x = i; // Paper - force line return this; } @Override public BlockPos.MutableBlockPos setY(int i) { - super.setY(i); -+ this.y = i; // Paper ++ this.y = i; // Paper - force line return this; } @Override public BlockPos.MutableBlockPos setZ(int i) { - super.setZ(i); -+ this.z = i; // Paper ++ this.z = i; // Paper - force line return this; } diff --git a/src/main/java/net/minecraft/core/Vec3i.java b/src/main/java/net/minecraft/core/Vec3i.java -index e87ef99260bff134529e00b9a75381cecaec01a4..74a3f2ba6aaec39ba4721fb546bfccb325c86343 100644 +index e87ef99260bff134529e00b9a75381cecaec01a4..0f8766ea9dc1893f88c5b1e7d6e2a474100efcbb 100644 --- a/src/main/java/net/minecraft/core/Vec3i.java +++ b/src/main/java/net/minecraft/core/Vec3i.java @@ -19,9 +19,9 @@ public class Vec3i implements Comparable { @@ -55,9 +55,9 @@ index e87ef99260bff134529e00b9a75381cecaec01a4..74a3f2ba6aaec39ba4721fb546bfccb3 - private int x; - private int y; - private int z; -+ protected int x; // Paper - protected -+ protected int y; // Paper - protected -+ protected int z; // Paper - protected ++ protected int x; // Paper - force line; protected ++ protected int y; // Paper - force line; protected ++ protected int z; // Paper - force line; protected public static Codec offsetCodec(int maxAbsValue) { return ExtraCodecs.validate(CODEC, (vec) -> { diff --git a/patches/server/0665-Name-craft-scheduler-threads-according-to-the-plugin.patch b/patches/server/0665-Name-craft-scheduler-threads-according-to-the-plugin.patch index e97fc69558..30f250f235 100644 --- a/patches/server/0665-Name-craft-scheduler-threads-according-to-the-plugin.patch +++ b/patches/server/0665-Name-craft-scheduler-threads-according-to-the-plugin.patch @@ -8,7 +8,7 @@ Provides quick access to culprits running far more threads than they should be diff --git a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftAsyncTask.java b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftAsyncTask.java -index 365b7e7c665bec357fb76d1479bf17da6f603590..b17d40ced3f2d5859c61f1826ead72c5f07abe9f 100644 +index 365b7e7c665bec357fb76d1479bf17da6f603590..e97f6b76ef2fe21c7c2eca8d4a707e5866d70de9 100644 --- a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftAsyncTask.java +++ b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftAsyncTask.java @@ -25,7 +25,10 @@ class CraftAsyncTask extends CraftTask { @@ -27,7 +27,7 @@ index 365b7e7c665bec357fb76d1479bf17da6f603590..b17d40ced3f2d5859c61f1826ead72c5 } } } -+ } finally { thread.setName(nameBefore); } // Paper - name worker thread according ++ } finally { thread.setName(nameBefore); } // Paper - name threads according to running plugin } LinkedList getWorkers() { diff --git a/patches/server/0666-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch b/patches/server/0666-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch index 779fad9d1a..1c15bbb35a 100644 --- a/patches/server/0666-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch +++ b/patches/server/0666-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch @@ -9,18 +9,15 @@ previous getChunkAt method which had inlined logic for loaded chunks did get inlined, but the standard CPS.getChunkAt method was not inlined. -Paper recently reverted this optimisation, so it's been reintroduced -here. - diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 35ca44c88497e0b07f43ba7bf092360365b1c53a..e297be9cf8c59b6b8d051d5db70c3bebcd235a2d 100644 +index 35ca44c88497e0b07f43ba7bf092360365b1c53a..69730027a70e91ec32604b1fb32820363ea20a71 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -458,6 +458,15 @@ public abstract class Level implements LevelAccessor, AutoCloseable { @Override public final LevelChunk getChunk(int chunkX, int chunkZ) { // Paper - final to help inline -+ // Paper start - make sure loaded chunks get the inlined variant of this function ++ // Paper start - Perf: make sure loaded chunks get the inlined variant of this function + net.minecraft.server.level.ServerChunkCache cps = ((ServerLevel)this).getChunkSource(); + if (cps.mainThread == Thread.currentThread()) { + LevelChunk ifLoaded = cps.getChunkAtIfLoadedMainThread(chunkX, chunkZ); @@ -28,7 +25,7 @@ index 35ca44c88497e0b07f43ba7bf092360365b1c53a..e297be9cf8c59b6b8d051d5db70c3beb + return ifLoaded; + } + } -+ // Paper end - make sure loaded chunks get the inlined variant of this function ++ // Paper end - Perf: make sure loaded chunks get the inlined variant of this function return (LevelChunk) this.getChunk(chunkX, chunkZ, ChunkStatus.FULL, true); // Paper - avoid a method jump } diff --git a/patches/server/0667-Don-t-read-neighbour-chunk-data-off-disk-when-conver.patch b/patches/server/0667-Don-t-read-neighbour-chunk-data-off-disk-when-conver.patch index 5475ff2092..16b343c84c 100644 --- a/patches/server/0667-Don-t-read-neighbour-chunk-data-off-disk-when-conver.patch +++ b/patches/server/0667-Don-t-read-neighbour-chunk-data-off-disk-when-conver.patch @@ -8,14 +8,14 @@ Lighting is purged on update anyways, so let's not add more into the conversion process diff --git a/src/main/java/net/minecraft/world/level/chunk/storage/ChunkStorage.java b/src/main/java/net/minecraft/world/level/chunk/storage/ChunkStorage.java -index e4b3a70ff9f906a10f2ba3c07642193ca3269db7..dfeda27add86be0d56ad023f7391fa21e36c5062 100644 +index e4b3a70ff9f906a10f2ba3c07642193ca3269db7..7f7c05c498dfe11842a0c35d6e8c2c428cf7647b 100644 --- a/src/main/java/net/minecraft/world/level/chunk/storage/ChunkStorage.java +++ b/src/main/java/net/minecraft/world/level/chunk/storage/ChunkStorage.java @@ -51,6 +51,7 @@ public class ChunkStorage implements AutoCloseable { // CraftBukkit start private boolean check(ServerChunkCache cps, int x, int z) { -+ if (true) return true; // Paper - this isn't even needed anymore, light is purged updating to 1.14+, why are we holding up the conversion process reading chunk data off disk - return true, we need to set light populated to true so the converter recognizes the chunk as being "full" ++ if (true) return true; // Paper - Perf: this isn't even needed anymore, light is purged updating to 1.14+, why are we holding up the conversion process reading chunk data off disk - return true, we need to set light populated to true so the converter recognizes the chunk as being "full" ChunkPos pos = new ChunkPos(x, z); if (cps != null) { //com.google.common.base.Preconditions.checkState(org.bukkit.Bukkit.isPrimaryThread(), "primary thread"); // Paper - this function is now MT-Safe diff --git a/patches/server/0672-Oprimise-map-impl-for-tracked-players.patch b/patches/server/0672-Oprimise-map-impl-for-tracked-players.patch index 8c8fcd06e9..73a51061c9 100644 --- a/patches/server/0672-Oprimise-map-impl-for-tracked-players.patch +++ b/patches/server/0672-Oprimise-map-impl-for-tracked-players.patch @@ -7,7 +7,7 @@ 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 07abd089e5091d292d4542bbe0fbb416a111bf8e..a0603e567deeede8b4cd2ba57ded44f29239d78d 100644 +index 07abd089e5091d292d4542bbe0fbb416a111bf8e..534493aaddced9200e1618d5eabf2b176a1f35b6 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java @@ -1301,7 +1301,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider @@ -15,7 +15,7 @@ index 07abd089e5091d292d4542bbe0fbb416a111bf8e..a0603e567deeede8b4cd2ba57ded44f2 private final int range; SectionPos lastSectionPos; - public final Set seenBy = Sets.newIdentityHashSet(); -+ public final Set seenBy = new it.unimi.dsi.fastutil.objects.ReferenceOpenHashSet<>(); // Paper - optimise map impl ++ public final Set seenBy = new it.unimi.dsi.fastutil.objects.ReferenceOpenHashSet<>(); // Paper - Perf: optimise map impl public TrackedEntity(Entity entity, int i, int j, boolean flag) { this.serverEntity = new ServerEntity(ChunkMap.this.level, entity, j, flag, this::broadcast, this.seenBy); // CraftBukkit diff --git a/patches/server/0673-Optimise-BlockSoil-nearby-water-lookup.patch b/patches/server/0673-Optimise-BlockSoil-nearby-water-lookup.patch index ec0e0d60a8..467d7d58e7 100644 --- a/patches/server/0673-Optimise-BlockSoil-nearby-water-lookup.patch +++ b/patches/server/0673-Optimise-BlockSoil-nearby-water-lookup.patch @@ -7,10 +7,10 @@ Apparently the abstract block iteration was taking about 75% of the method call. diff --git a/src/main/java/net/minecraft/world/level/block/FarmBlock.java b/src/main/java/net/minecraft/world/level/block/FarmBlock.java -index 6c1e8ba518c883aa5c079b4c94f068833609acc3..59bbdead2ebd8965d222540c7243dde051bbcc4b 100644 +index 6c1e8ba518c883aa5c079b4c94f068833609acc3..47eb8bf604a63259c0200cada1403dc005a6cbac 100644 --- a/src/main/java/net/minecraft/world/level/block/FarmBlock.java +++ b/src/main/java/net/minecraft/world/level/block/FarmBlock.java -@@ -151,19 +151,27 @@ public class FarmBlock extends Block { +@@ -151,19 +151,28 @@ public class FarmBlock extends Block { } private static boolean isNearWater(LevelReader world, BlockPos pos) { @@ -21,7 +21,7 @@ index 6c1e8ba518c883aa5c079b4c94f068833609acc3..59bbdead2ebd8965d222540c7243dde0 - do { - if (!iterator.hasNext()) { - return false; -+ // Paper start - remove abstract block iteration ++ // Paper start - Perf: remove abstract block iteration + int xOff = pos.getX(); + int yOff = pos.getY(); + int zOff = pos.getZ(); @@ -46,6 +46,7 @@ index 6c1e8ba518c883aa5c079b4c94f068833609acc3..59bbdead2ebd8965d222540c7243dde0 - - return true; + return false; ++ // Paper end - Perf: remove abstract block iteration } @Override diff --git a/patches/server/0675-Attempt-to-recalculate-regionfile-header-if-it-is-co.patch b/patches/server/0675-Attempt-to-recalculate-regionfile-header-if-it-is-co.patch index d2cc318b7d..ac15766a9a 100644 --- a/patches/server/0675-Attempt-to-recalculate-regionfile-header-if-it-is-co.patch +++ b/patches/server/0675-Attempt-to-recalculate-regionfile-header-if-it-is-co.patch @@ -10,14 +10,14 @@ hoping that at least then we don't swap chunks, and maybe recover them all. diff --git a/src/main/java/net/minecraft/world/level/chunk/storage/ChunkSerializer.java b/src/main/java/net/minecraft/world/level/chunk/storage/ChunkSerializer.java -index a95909bc818f395ce5772c5129f9cc9b789ce133..df9ae808c5a59ea25145c9df62f42fb33d159021 100644 +index a95909bc818f395ce5772c5129f9cc9b789ce133..72cfe25cbc2076bc83c9f965ab70b0e636800212 100644 --- a/src/main/java/net/minecraft/world/level/chunk/storage/ChunkSerializer.java +++ b/src/main/java/net/minecraft/world/level/chunk/storage/ChunkSerializer.java @@ -70,6 +70,18 @@ import net.minecraft.world.ticks.ProtoChunkTicks; import org.slf4j.Logger; public class ChunkSerializer { -+ // Paper start ++ // Paper start - Attempt to recalculate regionfile header if it is corrupt + // TODO: Check on update + public static long getLastWorldSaveTime(CompoundTag chunkData) { + final int dataVersion = ChunkStorage.getVersion(chunkData); @@ -28,7 +28,7 @@ index a95909bc818f395ce5772c5129f9cc9b789ce133..df9ae808c5a59ea25145c9df62f42fb3 + return chunkData.getLong("LastUpdate"); + } + } -+ // Paper end ++ // Paper end - Attempt to recalculate regionfile header if it is corrupt public static final Codec> BLOCK_STATE_CODEC = PalettedContainer.codecRW(Block.BLOCK_STATE_REGISTRY, BlockState.CODEC, PalettedContainer.Strategy.SECTION_STATES, Blocks.AIR.defaultBlockState(), null); // Paper - Anti-Xray - Add preset block states private static final Logger LOGGER = LogUtils.getLogger(); @@ -42,7 +42,7 @@ index a95909bc818f395ce5772c5129f9cc9b789ce133..df9ae808c5a59ea25145c9df62f42fb3 nbttagcompound.putString("Status", BuiltInRegistries.CHUNK_STATUS.getKey(chunk.getStatus()).toString()); BlendingData blendingdata = chunk.getBlendingData(); diff --git a/src/main/java/net/minecraft/world/level/chunk/storage/ChunkStorage.java b/src/main/java/net/minecraft/world/level/chunk/storage/ChunkStorage.java -index dfeda27add86be0d56ad023f7391fa21e36c5062..8ebecb588058da174b0e0e19e54fcddfeeca1422 100644 +index 7f7c05c498dfe11842a0c35d6e8c2c428cf7647b..4a84ada69c6abc8f2743579d4451e639836274b4 100644 --- a/src/main/java/net/minecraft/world/level/chunk/storage/ChunkStorage.java +++ b/src/main/java/net/minecraft/world/level/chunk/storage/ChunkStorage.java @@ -41,7 +41,7 @@ public class ChunkStorage implements AutoCloseable { @@ -50,19 +50,19 @@ index dfeda27add86be0d56ad023f7391fa21e36c5062..8ebecb588058da174b0e0e19e54fcddf // Paper start - async chunk io // remove IO worker - this.regionFileCache = new RegionFileStorage(directory, dsync); // Paper - nuke IOWorker -+ this.regionFileCache = new RegionFileStorage(directory, dsync, true); // Paper - nuke IOWorker // Paper ++ this.regionFileCache = new RegionFileStorage(directory, dsync, true); // Paper - nuke IOWorker // Paper - Attempt to recalculate regionfile header if it is corrupt // Paper end - async chunk io } diff --git a/src/main/java/net/minecraft/world/level/chunk/storage/RegionBitmap.java b/src/main/java/net/minecraft/world/level/chunk/storage/RegionBitmap.java -index c8298a597818227de33a4afce4698ec0666cf758..6baceb6ce9021c489be6e79d338a9704285afa26 100644 +index c8298a597818227de33a4afce4698ec0666cf758..6762b0f71ea9e369bb77103b7f1938983cb77a44 100644 --- a/src/main/java/net/minecraft/world/level/chunk/storage/RegionBitmap.java +++ b/src/main/java/net/minecraft/world/level/chunk/storage/RegionBitmap.java @@ -9,6 +9,27 @@ import java.util.BitSet; public class RegionBitmap { private final BitSet used = new BitSet(); -+ // Paper start ++ // Paper start - Attempt to recalculate regionfile header if it is corrupt + public final void copyFrom(RegionBitmap other) { + BitSet thisBitset = this.used; + BitSet otherBitset = other.used; @@ -81,20 +81,20 @@ index c8298a597818227de33a4afce4698ec0666cf758..6baceb6ce9021c489be6e79d338a9704 + bitset.set(from, from + length); + return true; + } -+ // Paper end ++ // Paper end - Attempt to recalculate regionfile header if it is corrupt + public void force(int start, int size) { 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 647ce340c81606ab86d33e1f9dec1fb0afc262d8..98c8b676fc5b2add44d6ddf5d32f85bc07ea22cb 100644 +index 647ce340c81606ab86d33e1f9dec1fb0afc262d8..2c951dfb17a11bd81c19080a1f8f498f8e534cff 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 { public final java.util.concurrent.locks.ReentrantLock fileLock = new java.util.concurrent.locks.ReentrantLock(); // Paper public final Path regionFile; // Paper -+ // Paper start - try to recover from RegionFile header corruption ++ // Paper start - Attempt to recalculate regionfile header if it is corrupt + private static long roundToSectors(long bytes) { + long sectors = bytes >>> 12; // 4096 = 2^12 + long remainingBytes = bytes & 4095; @@ -441,7 +441,7 @@ index 647ce340c81606ab86d33e1f9dec1fb0afc262d8..98c8b676fc5b2add44d6ddf5d32f85bc + } + + final boolean canRecalcHeader; // final forces compile fail on new constructor -+ // Paper end ++ // Paper end - Attempt to recalculate regionfile header if it is corrupt + // Paper start - Cache chunk status private final net.minecraft.world.level.chunk.ChunkStatus[] statuses = new net.minecraft.world.level.chunk.ChunkStatus[32 * 32]; diff --git a/patches/server/0676-Use-Velocity-compression-and-cipher-natives.patch b/patches/server/0676-Use-Velocity-compression-and-cipher-natives.patch index c37c0306aa..8ba39c1f5d 100644 --- a/patches/server/0676-Use-Velocity-compression-and-cipher-natives.patch +++ b/patches/server/0676-Use-Velocity-compression-and-cipher-natives.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Use Velocity compression and cipher natives diff --git a/build.gradle.kts b/build.gradle.kts -index c6241f858209ed662d8720217d143340916024e9..517920023bc28fea04eeb709364d5a7292adcc5e 100644 +index c6241f858209ed662d8720217d143340916024e9..ff1636d3e047e124c73496f4942e991abe01c150 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -39,6 +39,11 @@ dependencies { @@ -16,12 +16,12 @@ index c6241f858209ed662d8720217d143340916024e9..517920023bc28fea04eeb709364d5a72 + implementation("com.velocitypowered:velocity-native:3.1.2-SNAPSHOT") { + isTransitive = false + } -+ // Paper end ++ // Paper end - Use Velocity cipher runtimeOnly("org.apache.maven:maven-resolver-provider:3.9.6") runtimeOnly("org.apache.maven.resolver:maven-resolver-connector-basic:1.9.18") diff --git a/src/main/java/net/minecraft/network/CipherDecoder.java b/src/main/java/net/minecraft/network/CipherDecoder.java -index 778beb445eac5769b9e4e07b4d1294c50ae2602b..c712fb8193115e1ab71b5e40fb0ccb9413062b03 100644 +index 778beb445eac5769b9e4e07b4d1294c50ae2602b..7b895b6a626da6297f07582e96d98ecfb6c8c951 100644 --- a/src/main/java/net/minecraft/network/CipherDecoder.java +++ b/src/main/java/net/minecraft/network/CipherDecoder.java @@ -7,13 +7,29 @@ import java.util.List; @@ -29,17 +29,17 @@ index 778beb445eac5769b9e4e07b4d1294c50ae2602b..c712fb8193115e1ab71b5e40fb0ccb94 public class CipherDecoder extends MessageToMessageDecoder { - private final CipherBase cipher; -+ private final com.velocitypowered.natives.encryption.VelocityCipher cipher; // Paper ++ private final com.velocitypowered.natives.encryption.VelocityCipher cipher; // Paper - Use Velocity cipher - public CipherDecoder(Cipher cipher) { - this.cipher = new CipherBase(cipher); -+ public CipherDecoder(com.velocitypowered.natives.encryption.VelocityCipher cipher) { // Paper -+ this.cipher = cipher; // Paper ++ public CipherDecoder(com.velocitypowered.natives.encryption.VelocityCipher cipher) { // Paper - Use Velocity cipher ++ this.cipher = cipher; // Paper - Use Velocity cipher } protected void decode(ChannelHandlerContext channelHandlerContext, ByteBuf byteBuf, List list) throws Exception { - list.add(this.cipher.decipher(channelHandlerContext, byteBuf)); -+ // Paper start ++ // Paper start - Use Velocity cipher + ByteBuf compatible = com.velocitypowered.natives.util.MoreByteBufUtils.ensureCompatible(channelHandlerContext.alloc(), cipher, byteBuf); + try { + cipher.process(compatible); @@ -48,18 +48,18 @@ index 778beb445eac5769b9e4e07b4d1294c50ae2602b..c712fb8193115e1ab71b5e40fb0ccb94 + compatible.release(); // compatible will never be used if we throw an exception + throw e; + } -+ // Paper end ++ // Paper end - Use Velocity cipher } + -+ // Paper start ++ // Paper start - Use Velocity cipher + @Override + public void handlerRemoved(ChannelHandlerContext ctx) throws Exception { + cipher.close(); + } -+ // Paper end ++ // Paper end - Use Velocity cipher } diff --git a/src/main/java/net/minecraft/network/CipherEncoder.java b/src/main/java/net/minecraft/network/CipherEncoder.java -index 0f3d502a9680006bcdcd7d272240a2e5c3b46790..5dd7be70603e8754d2625bb9d16900cb01b9c730 100644 +index 0f3d502a9680006bcdcd7d272240a2e5c3b46790..ffa1c48585fbbc1d30826d435043527f6183a3ee 100644 --- a/src/main/java/net/minecraft/network/CipherEncoder.java +++ b/src/main/java/net/minecraft/network/CipherEncoder.java @@ -4,15 +4,32 @@ import io.netty.buffer.ByteBuf; @@ -70,19 +70,19 @@ index 0f3d502a9680006bcdcd7d272240a2e5c3b46790..5dd7be70603e8754d2625bb9d16900cb -public class CipherEncoder extends MessageToByteEncoder { - private final CipherBase cipher; -+public class CipherEncoder extends io.netty.handler.codec.MessageToMessageEncoder { // Paper - change superclass -+ private final com.velocitypowered.natives.encryption.VelocityCipher cipher; // Paper ++public class CipherEncoder extends io.netty.handler.codec.MessageToMessageEncoder { // Paper - Use Velocity cipher; change superclass ++ private final com.velocitypowered.natives.encryption.VelocityCipher cipher; // Paper - Use Velocity cipher - public CipherEncoder(Cipher cipher) { - this.cipher = new CipherBase(cipher); -+ public CipherEncoder(com.velocitypowered.natives.encryption.VelocityCipher cipher) { // Paper -+ this.cipher = cipher; // Paper ++ public CipherEncoder(com.velocitypowered.natives.encryption.VelocityCipher cipher) { // Paper - Use Velocity cipher ++ this.cipher = cipher; // Paper - Use Velocity cipher } - protected void encode(ChannelHandlerContext channelHandlerContext, ByteBuf byteBuf, ByteBuf byteBuf2) throws Exception { - this.cipher.encipher(byteBuf, byteBuf2); + protected void encode(ChannelHandlerContext channelHandlerContext, ByteBuf byteBuf, List list) throws Exception { -+ // Paper start ++ // Paper start - Use Velocity cipher + ByteBuf compatible = com.velocitypowered.natives.util.MoreByteBufUtils.ensureCompatible(channelHandlerContext.alloc(), cipher, byteBuf); + try { + cipher.process(compatible); @@ -91,29 +91,29 @@ index 0f3d502a9680006bcdcd7d272240a2e5c3b46790..5dd7be70603e8754d2625bb9d16900cb + compatible.release(); // compatible will never be used if we throw an exception + throw e; + } -+ // Paper end ++ // Paper end - Use Velocity cipher } + -+ // Paper start ++ // Paper start - Use Velocity cipher + @Override + public void handlerRemoved(ChannelHandlerContext ctx) throws Exception { + cipher.close(); + } -+ // Paper end ++ // Paper end - Use Velocity cipher } diff --git a/src/main/java/net/minecraft/network/CompressionDecoder.java b/src/main/java/net/minecraft/network/CompressionDecoder.java -index 2758c257cb4e2b0497bd9243c635f8fe3dbc414c..a0bab433d003de49bf55e71fd744ce47d6899182 100644 +index 2758c257cb4e2b0497bd9243c635f8fe3dbc414c..2763052eb2d5b8eb432022ab00a417976f4b2927 100644 --- a/src/main/java/net/minecraft/network/CompressionDecoder.java +++ b/src/main/java/net/minecraft/network/CompressionDecoder.java @@ -13,13 +13,20 @@ public class CompressionDecoder extends ByteToMessageDecoder { public static final int MAXIMUM_COMPRESSED_LENGTH = 2097152; public static final int MAXIMUM_UNCOMPRESSED_LENGTH = 8388608; private final Inflater inflater; -+ private final com.velocitypowered.natives.compression.VelocityCompressor compressor; // Paper ++ private final com.velocitypowered.natives.compression.VelocityCompressor compressor; // Paper - Use Velocity cipher private int threshold; private boolean validateDecompressed; -+ // Paper start ++ // Paper start - Use Velocity cipher public CompressionDecoder(int compressionThreshold, boolean rejectsBadPackets) { + this(null, compressionThreshold, rejectsBadPackets); + } @@ -123,7 +123,7 @@ index 2758c257cb4e2b0497bd9243c635f8fe3dbc414c..a0bab433d003de49bf55e71fd744ce47 - this.inflater = new Inflater(); + this.inflater = compressor == null ? new Inflater() : null; + this.compressor = compressor; -+ // Paper end ++ // Paper end - Use Velocity cipher } protected void decode(ChannelHandlerContext channelHandlerContext, ByteBuf byteBuf, List list) throws Exception { @@ -131,15 +131,15 @@ index 2758c257cb4e2b0497bd9243c635f8fe3dbc414c..a0bab433d003de49bf55e71fd744ce47 } } -+ if (inflater != null) { // Paper - use velocity compression - fallback to vanilla inflater ++ if (inflater != null) { // Paper - Use Velocity cipher; fallback to vanilla inflater this.setupInflaterInput(byteBuf); ByteBuf byteBuf2 = this.inflate(channelHandlerContext, i); this.inflater.reset(); list.add(byteBuf2); -+ return; // Paper - use velocity compression ++ return; // Paper - Use Velocity cipher + } // Paper - use velocity compression + -+ // Paper start - use velocity compression ++ // Paper start - Use Velocity cipher + int claimedUncompressedSize = i; // OBFHELPER + ByteBuf compatibleIn = com.velocitypowered.natives.util.MoreByteBufUtils.ensureCompatible(channelHandlerContext.alloc(), this.compressor, byteBuf); + ByteBuf uncompressed = com.velocitypowered.natives.util.MoreByteBufUtils.preferredBuffer(channelHandlerContext.alloc(), this.compressor, claimedUncompressedSize); @@ -153,25 +153,25 @@ index 2758c257cb4e2b0497bd9243c635f8fe3dbc414c..a0bab433d003de49bf55e71fd744ce47 + } finally { + compatibleIn.release(); + } -+ // Paper end - use velocity compression ++ // Paper end - Use Velocity cipher } } } -+ // Paper start ++ // Paper start - Use Velocity cipher + @Override + public void handlerRemoved0(ChannelHandlerContext ctx) throws Exception { + if (this.compressor != null) { + this.compressor.close(); + } + } -+ // Paper end ++ // Paper end - Use Velocity cipher + private void setupInflaterInput(ByteBuf buf) { ByteBuffer byteBuffer; if (buf.nioBufferCount() > 0) { diff --git a/src/main/java/net/minecraft/network/CompressionEncoder.java b/src/main/java/net/minecraft/network/CompressionEncoder.java -index 859af8c845bae9781a62fa4acae56c6e2d449e10..ec7239fd6a2ecf732d2843f9426e4cb69d166ce6 100644 +index 859af8c845bae9781a62fa4acae56c6e2d449e10..f67f59f287d9a5cdd685b6b56ed1daf3f091e099 100644 --- a/src/main/java/net/minecraft/network/CompressionEncoder.java +++ b/src/main/java/net/minecraft/network/CompressionEncoder.java @@ -6,21 +6,36 @@ import io.netty.handler.codec.MessageToByteEncoder; @@ -179,12 +179,12 @@ index 859af8c845bae9781a62fa4acae56c6e2d449e10..ec7239fd6a2ecf732d2843f9426e4cb6 public class CompressionEncoder extends MessageToByteEncoder { - private final byte[] encodeBuf = new byte[8192]; -+ private final byte[] encodeBuf; // Paper ++ private final byte[] encodeBuf; // Paper - Use Velocity cipher private final Deflater deflater; -+ private final com.velocitypowered.natives.compression.VelocityCompressor compressor; // Paper ++ private final com.velocitypowered.natives.compression.VelocityCompressor compressor; // Paper - Use Velocity cipher private int threshold; -+ // Paper start ++ // Paper start - Use Velocity cipher public CompressionEncoder(int compressionThreshold) { + this(null, compressionThreshold); + } @@ -199,17 +199,17 @@ index 859af8c845bae9781a62fa4acae56c6e2d449e10..ec7239fd6a2ecf732d2843f9426e4cb6 + this.deflater = null; + } + this.compressor = compressor; -+ // Paper end ++ // Paper end - Use Velocity cipher } - protected void encode(ChannelHandlerContext channelHandlerContext, ByteBuf byteBuf, ByteBuf byteBuf2) { -+ protected void encode(ChannelHandlerContext channelHandlerContext, ByteBuf byteBuf, ByteBuf byteBuf2) throws Exception { // Paper ++ protected void encode(ChannelHandlerContext channelHandlerContext, ByteBuf byteBuf, ByteBuf byteBuf2) throws Exception { // Paper - Use Velocity cipher int i = byteBuf.readableBytes(); if (i < this.threshold) { VarInt.write(byteBuf2, 0); byteBuf2.writeBytes(byteBuf); } else { -+ // Paper start ++ // Paper start - Use Velocity cipher + if (this.deflater != null) { byte[] bs = new byte[i]; byteBuf.readBytes(bs); @@ -228,12 +228,12 @@ index 859af8c845bae9781a62fa4acae56c6e2d449e10..ec7239fd6a2ecf732d2843f9426e4cb6 + } finally { + compatibleIn.release(); + } -+ // Paper end ++ // Paper end - Use Velocity cipher } } -+ // Paper start ++ // Paper start - Use Velocity cipher + @Override + protected ByteBuf allocateBuffer(ChannelHandlerContext ctx, ByteBuf msg, boolean preferDirect) throws Exception{ + if (this.compressor != null) { @@ -258,13 +258,13 @@ index 859af8c845bae9781a62fa4acae56c6e2d449e10..ec7239fd6a2ecf732d2843f9426e4cb6 + this.compressor.close(); + } + } -+ // Paper end ++ // Paper end - Use Velocity cipher + public int getThreshold() { return this.threshold; } diff --git a/src/main/java/net/minecraft/network/Connection.java b/src/main/java/net/minecraft/network/Connection.java -index d4e23bfb6135d52c1359d7ccfabc6a0e595afe6e..4ab5773f5869e40272b2da9e21e2efbd1a7eec5a 100644 +index d4e23bfb6135d52c1359d7ccfabc6a0e595afe6e..7f611f575c231dd459ae8ef17a10f71ef361a2cb 100644 --- a/src/main/java/net/minecraft/network/Connection.java +++ b/src/main/java/net/minecraft/network/Connection.java @@ -669,11 +669,28 @@ public class Connection extends SimpleChannelInboundHandler> { @@ -275,7 +275,7 @@ index d4e23bfb6135d52c1359d7ccfabc6a0e595afe6e..4ab5773f5869e40272b2da9e21e2efbd - this.encrypted = true; - this.channel.pipeline().addBefore("splitter", "decrypt", new CipherDecoder(decryptionCipher)); - this.channel.pipeline().addBefore("prepender", "encrypt", new CipherEncoder(encryptionCipher)); -+ // Paper start ++ // Paper start - Use Velocity cipher +// public void setEncryptionKey(Cipher decryptionCipher, Cipher encryptionCipher) { +// this.encrypted = true; +// this.channel.pipeline().addBefore("splitter", "decrypt", new CipherDecoder(decryptionCipher)); @@ -296,7 +296,7 @@ index d4e23bfb6135d52c1359d7ccfabc6a0e595afe6e..4ab5773f5869e40272b2da9e21e2efbd + } + } } -+ // Paper end ++ // Paper end - Use Velocity cipher public boolean isEncrypted() { return this.encrypted; @@ -304,40 +304,40 @@ index d4e23bfb6135d52c1359d7ccfabc6a0e595afe6e..4ab5773f5869e40272b2da9e21e2efbd public void setupCompression(int compressionThreshold, boolean rejectsBadPackets) { if (compressionThreshold >= 0) { -+ com.velocitypowered.natives.compression.VelocityCompressor compressor = com.velocitypowered.natives.util.Natives.compress.get().create(io.papermc.paper.configuration.GlobalConfiguration.get().misc.compressionLevel.or(-1)); // Paper ++ com.velocitypowered.natives.compression.VelocityCompressor compressor = com.velocitypowered.natives.util.Natives.compress.get().create(io.papermc.paper.configuration.GlobalConfiguration.get().misc.compressionLevel.or(-1)); // Paper - Use Velocity cipher if (this.channel.pipeline().get("decompress") instanceof CompressionDecoder) { ((CompressionDecoder) this.channel.pipeline().get("decompress")).setThreshold(compressionThreshold, rejectsBadPackets); } else { - this.channel.pipeline().addBefore("decoder", "decompress", new CompressionDecoder(compressionThreshold, rejectsBadPackets)); -+ this.channel.pipeline().addBefore("decoder", "decompress", new CompressionDecoder(compressor, compressionThreshold, rejectsBadPackets)); // Paper ++ this.channel.pipeline().addBefore("decoder", "decompress", new CompressionDecoder(compressor, compressionThreshold, rejectsBadPackets)); // Paper - Use Velocity cipher } if (this.channel.pipeline().get("compress") instanceof CompressionEncoder) { ((CompressionEncoder) this.channel.pipeline().get("compress")).setThreshold(compressionThreshold); } else { - this.channel.pipeline().addBefore("encoder", "compress", new CompressionEncoder(compressionThreshold)); -+ this.channel.pipeline().addBefore("encoder", "compress", new CompressionEncoder(compressor, compressionThreshold)); // Paper ++ this.channel.pipeline().addBefore("encoder", "compress", new CompressionEncoder(compressor, compressionThreshold)); // Paper - Use Velocity cipher } this.channel.pipeline().fireUserEventTriggered(io.papermc.paper.network.ConnectionEvent.COMPRESSION_THRESHOLD_SET); // Paper } else { diff --git a/src/main/java/net/minecraft/server/network/ServerConnectionListener.java b/src/main/java/net/minecraft/server/network/ServerConnectionListener.java -index 5f625acf04ddb56e3596d086252f9bfccfdb95f2..54c7f34ba3dc8466223e589702d0c93af8cf52a0 100644 +index 5f625acf04ddb56e3596d086252f9bfccfdb95f2..f7d5af5e6a39469914bd9c496582929c9b8e0300 100644 --- a/src/main/java/net/minecraft/server/network/ServerConnectionListener.java +++ b/src/main/java/net/minecraft/server/network/ServerConnectionListener.java @@ -106,6 +106,11 @@ public class ServerConnectionListener { ServerConnectionListener.LOGGER.info("Using default channel type"); } -+ // Paper start - indicate Velocity natives in use ++ // Paper start - Use Velocity cipher + ServerConnectionListener.LOGGER.info("Paper: Using " + com.velocitypowered.natives.util.Natives.compress.getLoadedVariant() + " compression from Velocity."); + ServerConnectionListener.LOGGER.info("Paper: Using " + com.velocitypowered.natives.util.Natives.cipher.getLoadedVariant() + " cipher from Velocity."); -+ // Paper end ++ // Paper end - Use Velocity cipher + this.channels.add(((ServerBootstrap) ((ServerBootstrap) (new ServerBootstrap()).channel(oclass)).childHandler(new ChannelInitializer() { protected void initChannel(Channel channel) { Connection.setInitialProtocolAttributes(channel); diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -index e2c7fa3fd05ebb3b76388410d26b6493baf4f877..7a2f78ae76354e15afa5368c8fb2a571c15dc82d 100644 +index e2c7fa3fd05ebb3b76388410d26b6493baf4f877..67c1cf5eb198079bd146a4a8ca0492b94cca788c 100644 --- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java @@ -223,12 +223,14 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, @@ -346,15 +346,15 @@ index e2c7fa3fd05ebb3b76388410d26b6493baf4f877..7a2f78ae76354e15afa5368c8fb2a571 SecretKey secretkey = packet.getSecretKey(privatekey); - Cipher cipher = Crypt.getCipher(2, secretkey); - Cipher cipher1 = Crypt.getCipher(1, secretkey); -+ // Paper start ++ // Paper start - Use Velocity cipher +// Cipher cipher = Crypt.getCipher(2, secretkey); +// Cipher cipher1 = Crypt.getCipher(1, secretkey); -+ // Paper end ++ // Paper end - Use Velocity cipher s = (new BigInteger(Crypt.digestData("", this.server.getKeyPair().getPublic(), secretkey))).toString(16); this.state = ServerLoginPacketListenerImpl.State.AUTHENTICATING; - this.connection.setEncryptionKey(cipher, cipher1); -+ this.connection.setupEncryption(secretkey); // Paper ++ this.connection.setupEncryption(secretkey); // Paper - Use Velocity cipher } catch (CryptException cryptographyexception) { throw new IllegalStateException("Protocol error", cryptographyexception); } diff --git a/patches/server/0677-Detail-more-information-in-watchdog-dumps.patch b/patches/server/0677-Detail-more-information-in-watchdog-dumps.patch index 3e22a49852..996e3727f5 100644 --- a/patches/server/0677-Detail-more-information-in-watchdog-dumps.patch +++ b/patches/server/0677-Detail-more-information-in-watchdog-dumps.patch @@ -7,7 +7,7 @@ Subject: [PATCH] Detail more information in watchdog dumps - Dump player name, player uuid, position, and world for packet handling diff --git a/src/main/java/net/minecraft/network/Connection.java b/src/main/java/net/minecraft/network/Connection.java -index 4ab5773f5869e40272b2da9e21e2efbd1a7eec5a..8b7e50c0bce9ff201e92fc6fff8934ea17f1b293 100644 +index 7f611f575c231dd459ae8ef17a10f71ef361a2cb..5e0793a1bfeaca021206b0b7cce20598ba6ed1d2 100644 --- a/src/main/java/net/minecraft/network/Connection.java +++ b/src/main/java/net/minecraft/network/Connection.java @@ -521,7 +521,13 @@ public class Connection extends SimpleChannelInboundHandler> { @@ -76,7 +76,7 @@ index 7de24c39b460e43d27839b3821e67213508ece81..7297bca9224c12d7ace0e1967340d994 }); throw RunningOnDifferentThreadException.RUNNING_ON_DIFFERENT_THREAD; diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index a9f336ed75ef406c1179bdc6e63e6fd944470534..56c999c7f80b280966e81a0b1ca4929f034edb20 100644 +index 8117a0334fdf59904e31a0419f7b5bf231d198c5..569fbb2f6c5f1ec286ecafe5c7f1b1fe6b547908 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -1244,7 +1244,26 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -122,7 +122,7 @@ index a9f336ed75ef406c1179bdc6e63e6fd944470534..56c999c7f80b280966e81a0b1ca4929f 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 58aa16888666f81ba688037bff61d149a03767af..0710061e41d6d6e5b38e62212bbd04e9ada0ec68 100644 +index b78bcccfb17f24cadea8ff63b6387a6f3ee6429b..a65a0ae8f7e9c2c5fe48d141dba6d95c2e94f426 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -1031,7 +1031,42 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -192,7 +192,7 @@ index 58aa16888666f81ba688037bff61d149a03767af..0710061e41d6d6e5b38e62212bbd04e9 } public void addDeltaMovement(Vec3 velocity) { -@@ -4358,7 +4402,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -4375,7 +4419,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/0679-Distance-manager-tick-timings.patch b/patches/server/0678-Distance-manager-tick-timings.patch similarity index 100% rename from patches/server/0679-Distance-manager-tick-timings.patch rename to patches/server/0678-Distance-manager-tick-timings.patch diff --git a/patches/server/0678-Reduce-worldgen-thread-worker-count-for-low-core-cou.patch b/patches/server/0678-Reduce-worldgen-thread-worker-count-for-low-core-cou.patch deleted file mode 100644 index e1abb64ae9..0000000000 --- a/patches/server/0678-Reduce-worldgen-thread-worker-count-for-low-core-cou.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Spottedleaf -Date: Mon, 30 Aug 2021 04:26:40 -0700 -Subject: [PATCH] Reduce worldgen thread worker count for low core count CPUs - - -diff --git a/src/main/java/net/minecraft/Util.java b/src/main/java/net/minecraft/Util.java -index e67a2aa92f9c9bb5a4ba9fc869aa738a43cd8595..7be16ce8c8582d8587c4d1cb4c099fa6fe5f1324 100644 ---- a/src/main/java/net/minecraft/Util.java -+++ b/src/main/java/net/minecraft/Util.java -@@ -155,7 +155,19 @@ public class Util { - - private static ExecutorService makeExecutor(String s, int priorityModifier) { // Paper - add priority - // Paper start - use simpler thread pool that allows 1 thread -- int i = Math.min(8, Math.max(Runtime.getRuntime().availableProcessors() - 2, 1)); -+ // Paper start - also try to avoid suffocating the system with the worldgen workers -+ int cpus = Runtime.getRuntime().availableProcessors() / 2; -+ int i; -+ if (cpus <= 4) { -+ i = cpus <= 2 ? 1 : 2; -+ } else if (cpus <= 8) { -+ // [5, 8] -+ i = Math.max(3, cpus - 2); -+ } else { -+ i = cpus * 2 / 3; -+ } -+ i = Math.min(8, i); -+ // Paper end - also try to avoid suffocating the system with the worldgen workers - i = Integer.getInteger("Paper.WorkerThreadCount", i); - ExecutorService executorService; - diff --git a/patches/server/0680-Fix-merchant-inventory-not-closing-on-entity-removal.patch b/patches/server/0679-Fix-merchant-inventory-not-closing-on-entity-removal.patch similarity index 84% rename from patches/server/0680-Fix-merchant-inventory-not-closing-on-entity-removal.patch rename to patches/server/0679-Fix-merchant-inventory-not-closing-on-entity-removal.patch index 5a15e29fbe..843fb89f53 100644 --- a/patches/server/0680-Fix-merchant-inventory-not-closing-on-entity-removal.patch +++ b/patches/server/0679-Fix-merchant-inventory-not-closing-on-entity-removal.patch @@ -5,18 +5,18 @@ Subject: [PATCH] Fix merchant inventory not closing on entity removal diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 56c999c7f80b280966e81a0b1ca4929f034edb20..cae00701c5dbf40be07ea5c2d01ea8929f4fa216 100644 +index 569fbb2f6c5f1ec286ecafe5c7f1b1fe6b547908..8f249587b873c5768bb5ebf13d5f378355e17556 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -2696,6 +2696,11 @@ public class ServerLevel extends Level implements WorldGenLevel { // Spigot end // Spigot Start if (entity.getBukkitEntity() instanceof org.bukkit.inventory.InventoryHolder && (!(entity instanceof ServerPlayer) || entity.getRemovalReason() != Entity.RemovalReason.KILLED)) { // SPIGOT-6876: closeInventory clears death message -+ // Paper start ++ // Paper start - Fix merchant inventory not closing on entity removal + if (entity.getBukkitEntity() instanceof org.bukkit.inventory.Merchant merchant && merchant.getTrader() != null) { + merchant.getTrader().closeInventory(org.bukkit.event.inventory.InventoryCloseEvent.Reason.UNLOADED); + } -+ // Paper end ++ // Paper end - Fix merchant inventory not closing on entity removal for (org.bukkit.entity.HumanEntity h : Lists.newArrayList(((org.bukkit.inventory.InventoryHolder) entity.getBukkitEntity()).getInventory().getViewers())) { h.closeInventory(org.bukkit.event.inventory.InventoryCloseEvent.Reason.UNLOADED); // Paper } diff --git a/patches/server/0681-Check-requirement-before-suggesting-root-nodes.patch b/patches/server/0680-Check-requirement-before-suggesting-root-nodes.patch similarity index 90% rename from patches/server/0681-Check-requirement-before-suggesting-root-nodes.patch rename to patches/server/0680-Check-requirement-before-suggesting-root-nodes.patch index ae4829b98a..fce5e326f9 100644 --- a/patches/server/0681-Check-requirement-before-suggesting-root-nodes.patch +++ b/patches/server/0680-Check-requirement-before-suggesting-root-nodes.patch @@ -11,7 +11,7 @@ encountering a command node with ASK_SERVER suggestions, however a modified client can send this packet whenever it wants. diff --git a/src/main/java/com/mojang/brigadier/CommandDispatcher.java b/src/main/java/com/mojang/brigadier/CommandDispatcher.java -index 858e41fba7dc285dd21a93f3918cc5de3887df5f..43018b34308eb12791616724e40c006b2141835c 100644 +index 858e41fba7dc285dd21a93f3918cc5de3887df5f..92848b64a78fce7a92e1657c2da6fc5ee53eea44 100644 --- a/src/main/java/com/mojang/brigadier/CommandDispatcher.java +++ b/src/main/java/com/mojang/brigadier/CommandDispatcher.java @@ -538,10 +538,14 @@ public class CommandDispatcher { @@ -26,7 +26,7 @@ index 858e41fba7dc285dd21a93f3918cc5de3887df5f..43018b34308eb12791616724e40c006b } catch (final CommandSyntaxException ignored) { } + } -+ // Paper end ++ // Paper end - Don't suggest if the requirement isn't met futures[i++] = future; } diff --git a/patches/server/0682-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch b/patches/server/0681-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch similarity index 100% rename from patches/server/0682-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch rename to patches/server/0681-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch diff --git a/patches/server/0683-Add-packet-limiter-config.patch b/patches/server/0682-Add-packet-limiter-config.patch similarity index 98% rename from patches/server/0683-Add-packet-limiter-config.patch rename to patches/server/0682-Add-packet-limiter-config.patch index 25a5f687bc..ae09f84ca9 100644 --- a/patches/server/0683-Add-packet-limiter-config.patch +++ b/patches/server/0682-Add-packet-limiter-config.patch @@ -24,7 +24,7 @@ and an action can be defined: DROP or KICK If interval or rate are less-than 0, the limit is ignored diff --git a/src/main/java/net/minecraft/network/Connection.java b/src/main/java/net/minecraft/network/Connection.java -index 8b7e50c0bce9ff201e92fc6fff8934ea17f1b293..2ae08b21c63490bbf8cd870f9585d82ed131f815 100644 +index 5e0793a1bfeaca021206b0b7cce20598ba6ed1d2..c0306ca996bb32b6a478c8d7158757af722a27ab 100644 --- a/src/main/java/net/minecraft/network/Connection.java +++ b/src/main/java/net/minecraft/network/Connection.java @@ -132,6 +132,22 @@ public class Connection extends SimpleChannelInboundHandler> { diff --git a/patches/server/0684-Fix-setPatternColor-on-tropical-fish-bucket-meta.patch b/patches/server/0683-Fix-setPatternColor-on-tropical-fish-bucket-meta.patch similarity index 100% rename from patches/server/0684-Fix-setPatternColor-on-tropical-fish-bucket-meta.patch rename to patches/server/0683-Fix-setPatternColor-on-tropical-fish-bucket-meta.patch diff --git a/patches/server/0685-Ensure-valid-vehicle-status.patch b/patches/server/0684-Ensure-valid-vehicle-status.patch similarity index 87% rename from patches/server/0685-Ensure-valid-vehicle-status.patch rename to patches/server/0684-Ensure-valid-vehicle-status.patch index 79db44c90b..ba23f6ae94 100644 --- a/patches/server/0685-Ensure-valid-vehicle-status.patch +++ b/patches/server/0684-Ensure-valid-vehicle-status.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Ensure valid vehicle status diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 87fdc78409fb16c961c04a5551980a8a231b70d0..60164d8ff63bf536ddf46605a9dc7931ebc5b82a 100644 +index 87fdc78409fb16c961c04a5551980a8a231b70d0..f99498d6864bc48683f8156e0365f1175edce0ba 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -576,7 +576,7 @@ public class ServerPlayer extends Player { @@ -13,7 +13,7 @@ index 87fdc78409fb16c961c04a5551980a8a231b70d0..60164d8ff63bf536ddf46605a9dc7931 } - if (persistVehicle && entity1 != null && entity != this && entity.hasExactlyOnePlayerPassenger()) { -+ if (persistVehicle && entity1 != null && entity != this && entity.hasExactlyOnePlayerPassenger() && !entity.isRemoved()) { // Paper ++ if (persistVehicle && entity1 != null && entity != this && entity.hasExactlyOnePlayerPassenger() && !entity.isRemoved()) { // Paper - Ensure valid vehicle status // CraftBukkit end CompoundTag nbttagcompound2 = new CompoundTag(); CompoundTag nbttagcompound3 = new CompoundTag(); diff --git a/patches/server/0686-Prevent-softlocked-end-exit-portal-generation.patch b/patches/server/0685-Prevent-softlocked-end-exit-portal-generation.patch similarity index 86% rename from patches/server/0686-Prevent-softlocked-end-exit-portal-generation.patch rename to patches/server/0685-Prevent-softlocked-end-exit-portal-generation.patch index df49391139..71978b46d8 100644 --- a/patches/server/0686-Prevent-softlocked-end-exit-portal-generation.patch +++ b/patches/server/0685-Prevent-softlocked-end-exit-portal-generation.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Prevent softlocked end exit portal generation diff --git a/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java b/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java -index c29ccc66c95faba425acb0ca06af15e2783b4bae..44f799d595d7150f00dfdfa2f85c87386f896607 100644 +index c29ccc66c95faba425acb0ca06af15e2783b4bae..02acd171f1d3d783b7cab56c69feca5325878fa8 100644 --- a/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java +++ b/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java @@ -466,6 +466,11 @@ public class EndDragonFight { @@ -16,7 +16,7 @@ index c29ccc66c95faba425acb0ca06af15e2783b4bae..44f799d595d7150f00dfdfa2f85c8738 + if (this.portalLocation.getY() <= this.level.getMinBuildHeight()) { + this.portalLocation = this.portalLocation.atY(this.level.getMinBuildHeight() + 1); + } -+ // Paper end ++ // Paper end - Prevent "softlocked" exit portal generation if (worldgenendtrophy.place(FeatureConfiguration.NONE, this.level, this.level.getChunkSource().getGenerator(), RandomSource.create(), this.portalLocation)) { int i = Mth.positiveCeilDiv(4, 16); diff --git a/patches/server/0687-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch b/patches/server/0686-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch similarity index 82% rename from patches/server/0687-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch rename to patches/server/0686-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch index b415f668ab..b766f53247 100644 --- a/patches/server/0687-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch +++ b/patches/server/0686-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch @@ -6,14 +6,14 @@ Subject: [PATCH] Fix CocaoDecorator causing a crash when trying to generate diff --git a/src/main/java/net/minecraft/world/level/levelgen/feature/treedecorators/CocoaDecorator.java b/src/main/java/net/minecraft/world/level/levelgen/feature/treedecorators/CocoaDecorator.java -index 42b4b306ee89a9e422d234bdaa9b43b118f8bd0a..0fc355bd847749f7ce716b283dd571f143824795 100644 +index 42b4b306ee89a9e422d234bdaa9b43b118f8bd0a..f0085174a8f6e05f30c583b1211a7be43128e540 100644 --- a/src/main/java/net/minecraft/world/level/levelgen/feature/treedecorators/CocoaDecorator.java +++ b/src/main/java/net/minecraft/world/level/levelgen/feature/treedecorators/CocoaDecorator.java @@ -25,6 +25,7 @@ public class CocoaDecorator extends TreeDecorator { @Override public void place(TreeDecorator.Context generator) { -+ if (generator.logs().isEmpty()) return; // Paper ++ if (generator.logs().isEmpty()) return; // Paper - Fix crash when trying to generate without logs RandomSource randomSource = generator.random(); if (!(randomSource.nextFloat() >= this.probability)) { List list = generator.logs(); diff --git a/patches/server/0688-Don-t-log-debug-logging-being-disabled.patch b/patches/server/0687-Don-t-log-debug-logging-being-disabled.patch similarity index 100% rename from patches/server/0688-Don-t-log-debug-logging-being-disabled.patch rename to patches/server/0687-Don-t-log-debug-logging-being-disabled.patch diff --git a/patches/server/0689-fix-various-menus-with-empty-level-accesses.patch b/patches/server/0688-fix-various-menus-with-empty-level-accesses.patch similarity index 80% rename from patches/server/0689-fix-various-menus-with-empty-level-accesses.patch rename to patches/server/0688-fix-various-menus-with-empty-level-accesses.patch index 3bda24b9c6..efe5d1ddce 100644 --- a/patches/server/0689-fix-various-menus-with-empty-level-accesses.patch +++ b/patches/server/0688-fix-various-menus-with-empty-level-accesses.patch @@ -5,19 +5,19 @@ Subject: [PATCH] fix various menus with empty level accesses diff --git a/src/main/java/net/minecraft/world/inventory/ContainerLevelAccess.java b/src/main/java/net/minecraft/world/inventory/ContainerLevelAccess.java -index c96b04f045dda384cdee9254a1765ef97e5f7f03..f00a957a0f55e69f93e6d7dc80193304447c3dcb 100644 +index c96b04f045dda384cdee9254a1765ef97e5f7f03..85e336637db8643fc5aca1dba724c9b341cbf46f 100644 --- a/src/main/java/net/minecraft/world/inventory/ContainerLevelAccess.java +++ b/src/main/java/net/minecraft/world/inventory/ContainerLevelAccess.java @@ -27,6 +27,12 @@ public interface ContainerLevelAccess { public Optional evaluate(BiFunction getter) { return Optional.empty(); } -+ // Paper start ++ // Paper start - fix menus with empty level accesses + @Override + public org.bukkit.Location getLocation() { + return null; + } -+ // Paper end ++ // Paper end - fix menus with empty level accesses }; static ContainerLevelAccess create(final Level world, final BlockPos pos) { diff --git a/patches/server/0690-Preserve-overstacked-loot.patch b/patches/server/0689-Preserve-overstacked-loot.patch similarity index 100% rename from patches/server/0690-Preserve-overstacked-loot.patch rename to patches/server/0689-Preserve-overstacked-loot.patch diff --git a/patches/server/0691-Update-head-rotation-in-missing-places.patch b/patches/server/0690-Update-head-rotation-in-missing-places.patch similarity index 93% rename from patches/server/0691-Update-head-rotation-in-missing-places.patch rename to patches/server/0690-Update-head-rotation-in-missing-places.patch index e22e6f7281..67fac67f77 100644 --- a/patches/server/0691-Update-head-rotation-in-missing-places.patch +++ b/patches/server/0690-Update-head-rotation-in-missing-places.patch @@ -8,7 +8,7 @@ This is because bukkit uses a separate head rotation field for yaw. This issue only applies to players. diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 0710061e41d6d6e5b38e62212bbd04e9ada0ec68..b01f722e9d52254e68634dbdf0749fa0fcc81da8 100644 +index a65a0ae8f7e9c2c5fe48d141dba6d95c2e94f426..0591b20138bf8b36aa7d78fc0c672ab55abf4f24 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -1918,6 +1918,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S diff --git a/patches/server/0692-prevent-unintended-light-block-manipulation.patch b/patches/server/0691-prevent-unintended-light-block-manipulation.patch similarity index 86% rename from patches/server/0692-prevent-unintended-light-block-manipulation.patch rename to patches/server/0691-prevent-unintended-light-block-manipulation.patch index 6aa3f47843..90c181a20a 100644 --- a/patches/server/0692-prevent-unintended-light-block-manipulation.patch +++ b/patches/server/0691-prevent-unintended-light-block-manipulation.patch @@ -5,14 +5,14 @@ Subject: [PATCH] prevent unintended light block manipulation diff --git a/src/main/java/net/minecraft/world/level/block/LightBlock.java b/src/main/java/net/minecraft/world/level/block/LightBlock.java -index a0fadee4be7c263ceaf1f4a987169b0f50308072..5e36baecd1e9fa02e00c250dd7ebe41e89fffeb7 100644 +index a0fadee4be7c263ceaf1f4a987169b0f50308072..a847b79da488c9d6059c9da941a50de8b1bfc24f 100644 --- a/src/main/java/net/minecraft/world/level/block/LightBlock.java +++ b/src/main/java/net/minecraft/world/level/block/LightBlock.java @@ -54,6 +54,7 @@ public class LightBlock extends Block implements SimpleWaterloggedBlock { @Override public InteractionResult use(BlockState state, Level world, BlockPos pos, Player player, InteractionHand hand, BlockHitResult hit) { if (!world.isClientSide && player.canUseGameMasterBlocks()) { -+ if (player.getItemInHand(hand).getItem() != Items.LIGHT || !player.mayInteract(world, pos) || !player.mayUseItemAt(pos, hit.getDirection(), player.getItemInHand(hand))) { return InteractionResult.FAIL; } // Paper ++ if (player.getItemInHand(hand).getItem() != Items.LIGHT || !player.mayInteract(world, pos) || !player.mayUseItemAt(pos, hit.getDirection(), player.getItemInHand(hand))) { return InteractionResult.FAIL; } // Paper - Prevent unintended light block manipulation world.setBlock(pos, state.cycle(LEVEL), 2); return InteractionResult.SUCCESS; } else { diff --git a/patches/server/0693-Fix-CraftCriteria-defaults-map.patch b/patches/server/0692-Fix-CraftCriteria-defaults-map.patch similarity index 100% rename from patches/server/0693-Fix-CraftCriteria-defaults-map.patch rename to patches/server/0692-Fix-CraftCriteria-defaults-map.patch diff --git a/patches/server/0694-Fix-upstreams-block-state-factories.patch b/patches/server/0693-Fix-upstreams-block-state-factories.patch similarity index 100% rename from patches/server/0694-Fix-upstreams-block-state-factories.patch rename to patches/server/0693-Fix-upstreams-block-state-factories.patch diff --git a/patches/server/0695-Configurable-feature-seeds.patch b/patches/server/0694-Configurable-feature-seeds.patch similarity index 90% rename from patches/server/0695-Configurable-feature-seeds.patch rename to patches/server/0694-Configurable-feature-seeds.patch index 85743deb81..dfeea66b8d 100644 --- a/patches/server/0695-Configurable-feature-seeds.patch +++ b/patches/server/0694-Configurable-feature-seeds.patch @@ -19,7 +19,7 @@ index 1080e1f67afe5574baca0df50cdb1d029a7a586a..a2f71a6d1a9e98133dff6cd0f625da94 } final Object val = config.get(key); diff --git a/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java b/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java -index 0a21632a3e02690a8edcc17ac25d2551a8964bbe..996a49e1ccf827edf28ca92e947014517b7dad6e 100644 +index 0a21632a3e02690a8edcc17ac25d2551a8964bbe..10b4458f3081dea06c1ff39d4134ab8e99adcc99 100644 --- a/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java +++ b/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java @@ -431,7 +431,14 @@ public abstract class ChunkGenerator { @@ -27,14 +27,14 @@ index 0a21632a3e02690a8edcc17ac25d2551a8964bbe..996a49e1ccf827edf28ca92e94701451 }; - seededrandom.setFeatureSeed(i, l1, l); -+ // Paper start - change populationSeed used in random ++ // Paper start - Configurable feature seeds; change populationSeed used in random + long featurePopulationSeed = i; + final long configFeatureSeed = generatoraccessseed.getMinecraftWorld().paperConfig().featureSeeds.features.getLong(placedfeature.feature()); + if (configFeatureSeed != -1) { + featurePopulationSeed = seededrandom.setDecorationSeed(configFeatureSeed, blockposition.getX(), blockposition.getZ()); // See seededrandom.setDecorationSeed from above + } + seededrandom.setFeatureSeed(featurePopulationSeed, l1, l); -+ // Paper end ++ // Paper end - Configurable feature seeds try { generatoraccessseed.setCurrentlyGenerating(supplier1); diff --git a/patches/server/0696-Add-root-admin-user-detection.patch b/patches/server/0695-Add-root-admin-user-detection.patch similarity index 96% rename from patches/server/0696-Add-root-admin-user-detection.patch rename to patches/server/0695-Add-root-admin-user-detection.patch index bdd773fb1a..d5a79a0018 100644 --- a/patches/server/0696-Add-root-admin-user-detection.patch +++ b/patches/server/0695-Add-root-admin-user-detection.patch @@ -57,7 +57,7 @@ index 0000000000000000000000000000000000000000..6bd0afddbcc461149dfe9a5c7a86fff6 + } +} diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java -index f0d6e6f85dc2a9ae8d70dd691b144fac0298bf33..e69a0121c8644d831cbb8bc1c95d9219d1c343da 100644 +index f0d6e6f85dc2a9ae8d70dd691b144fac0298bf33..63bfc209c7d77170ae7b60595d800bb19f1b5da6 100644 --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java @@ -179,6 +179,16 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface @@ -72,7 +72,7 @@ index f0d6e6f85dc2a9ae8d70dd691b144fac0298bf33..e69a0121c8644d831cbb8bc1c95d9219 + DedicatedServer.LOGGER.warn("FOR MORE INFORMATION, SEE https://madelinemiller.dev/blog/root-minecraft-server/"); + DedicatedServer.LOGGER.warn("****************************"); + } -+ // Paper end ++ // Paper end - detect running as root + DedicatedServer.LOGGER.info("Loading properties"); DedicatedServerProperties dedicatedserverproperties = this.settings.getProperties(); diff --git a/patches/server/0697-Always-allow-item-changing-in-Fireball.patch b/patches/server/0696-Always-allow-item-changing-in-Fireball.patch similarity index 100% rename from patches/server/0697-Always-allow-item-changing-in-Fireball.patch rename to patches/server/0696-Always-allow-item-changing-in-Fireball.patch diff --git a/patches/server/0698-don-t-attempt-to-teleport-dead-entities.patch b/patches/server/0697-don-t-attempt-to-teleport-dead-entities.patch similarity index 91% rename from patches/server/0698-don-t-attempt-to-teleport-dead-entities.patch rename to patches/server/0697-don-t-attempt-to-teleport-dead-entities.patch index 88f7c42f4d..bc383e78c4 100644 --- a/patches/server/0698-don-t-attempt-to-teleport-dead-entities.patch +++ b/patches/server/0697-don-t-attempt-to-teleport-dead-entities.patch @@ -5,7 +5,7 @@ Subject: [PATCH] don't attempt to teleport dead entities diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index b01f722e9d52254e68634dbdf0749fa0fcc81da8..9e617eb10380525f1aa7aa9cd7096aa133fe5920 100644 +index 0591b20138bf8b36aa7d78fc0c672ab55abf4f24..d2b2ab7415999b76d8cb0747f5b4235b5b4e07f6 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -794,7 +794,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S diff --git a/patches/server/0699-Prevent-excessive-velocity-through-repeated-crits.patch b/patches/server/0698-Prevent-excessive-velocity-through-repeated-crits.patch similarity index 77% rename from patches/server/0699-Prevent-excessive-velocity-through-repeated-crits.patch rename to patches/server/0698-Prevent-excessive-velocity-through-repeated-crits.patch index 0ea16f1cb0..92a76565ed 100644 --- a/patches/server/0699-Prevent-excessive-velocity-through-repeated-crits.patch +++ b/patches/server/0698-Prevent-excessive-velocity-through-repeated-crits.patch @@ -5,17 +5,17 @@ Subject: [PATCH] Prevent excessive velocity through repeated crits diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 1f3363da6642673d286cb7704aa61cb910c5d23f..ffc999a3a398bc73fffa7a68805baa1da7504750 100644 +index 1f3363da6642673d286cb7704aa61cb910c5d23f..f76c6360408a4d804143770d71eaf9c2146bcfa6 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -2677,13 +2677,26 @@ public abstract class LivingEntity extends Entity implements Attackable { return this.hasEffect(MobEffects.JUMP) ? 0.1F * ((float) this.getEffect(MobEffects.JUMP).getAmplifier() + 1.0F) : 0.0F; } -+ protected long lastJumpTime = 0L; // Paper ++ protected long lastJumpTime = 0L; // Paper - Prevent excessive velocity through repeated crits protected void jumpFromGround() { Vec3 vec3d = this.getDeltaMovement(); -+ // Paper start ++ // Paper start - Prevent excessive velocity through repeated crits + long time = System.nanoTime(); + boolean canCrit = true; + if (this instanceof net.minecraft.world.entity.player.Player) { @@ -25,13 +25,13 @@ index 1f3363da6642673d286cb7704aa61cb910c5d23f..ffc999a3a398bc73fffa7a68805baa1d + canCrit = true; + } + } -+ // Paper end ++ // Paper end - Prevent excessive velocity through repeated crits this.setDeltaMovement(vec3d.x, (double) this.getJumpPower(), vec3d.z); if (this.isSprinting()) { float f = this.getYRot() * 0.017453292F; -+ if (canCrit) // Paper ++ if (canCrit) // Paper - Prevent excessive velocity through repeated crits this.setDeltaMovement(this.getDeltaMovement().add((double) (-Mth.sin(f) * 0.2F), 0.0D, (double) (Mth.cos(f) * 0.2F))); } diff --git a/patches/server/0700-Remove-client-side-code-using-deprecated-for-removal.patch b/patches/server/0699-Remove-client-side-code-using-deprecated-for-removal.patch similarity index 90% rename from patches/server/0700-Remove-client-side-code-using-deprecated-for-removal.patch rename to patches/server/0699-Remove-client-side-code-using-deprecated-for-removal.patch index c9d518a9bb..80174ed254 100644 --- a/patches/server/0700-Remove-client-side-code-using-deprecated-for-removal.patch +++ b/patches/server/0699-Remove-client-side-code-using-deprecated-for-removal.patch @@ -7,10 +7,10 @@ Subject: [PATCH] Remove client-side code using deprecated for removal Fixes warnings on build diff --git a/src/main/java/net/minecraft/Util.java b/src/main/java/net/minecraft/Util.java -index 7be16ce8c8582d8587c4d1cb4c099fa6fe5f1324..646afa849148cdd5bc9812a1ebd9cb5d15c39311 100644 +index 3b73151b594e6f3882afa2a223d0d7ca5a0b47b3..736c7aed99928af654a8ee30602f705de18a8df6 100644 --- a/src/main/java/net/minecraft/Util.java +++ b/src/main/java/net/minecraft/Util.java -@@ -955,17 +955,7 @@ public class Util { +@@ -952,17 +952,7 @@ public class Util { } public void openUrl(URL url) { diff --git a/patches/server/0701-Fix-removing-recipes-from-RecipeIterator.patch b/patches/server/0700-Fix-removing-recipes-from-RecipeIterator.patch similarity index 100% rename from patches/server/0701-Fix-removing-recipes-from-RecipeIterator.patch rename to patches/server/0700-Fix-removing-recipes-from-RecipeIterator.patch diff --git a/patches/server/0702-Prevent-sending-oversized-item-data-in-equipment-and.patch b/patches/server/0701-Prevent-sending-oversized-item-data-in-equipment-and.patch similarity index 98% rename from patches/server/0702-Prevent-sending-oversized-item-data-in-equipment-and.patch rename to patches/server/0701-Prevent-sending-oversized-item-data-in-equipment-and.patch index 74dfc70c85..276abcde9e 100644 --- a/patches/server/0702-Prevent-sending-oversized-item-data-in-equipment-and.patch +++ b/patches/server/0701-Prevent-sending-oversized-item-data-in-equipment-and.patch @@ -34,7 +34,7 @@ index e0802f1cb73a80b08482832c2b269ac8485d5c1a..945a0317e9e49a159a1f42882a0a267a } diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index ffc999a3a398bc73fffa7a68805baa1da7504750..d1210e8cd501f0f3be92189d129f1d354ddb00cb 100644 +index f76c6360408a4d804143770d71eaf9c2146bcfa6..b63c4510cb6a14d754776967ccc7020d85fc2abd 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3188,7 +3188,10 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0703-Hide-unnecessary-itemmeta-from-clients.patch b/patches/server/0702-Hide-unnecessary-itemmeta-from-clients.patch similarity index 98% rename from patches/server/0703-Hide-unnecessary-itemmeta-from-clients.patch rename to patches/server/0702-Hide-unnecessary-itemmeta-from-clients.patch index 633b91c07d..d0b98fb05c 100644 --- a/patches/server/0703-Hide-unnecessary-itemmeta-from-clients.patch +++ b/patches/server/0702-Hide-unnecessary-itemmeta-from-clients.patch @@ -33,7 +33,7 @@ index 648530ce3183362ed71cbd2de534471da65ab787..bfbbb0f6e73e9d59e73944b77e088021 } } diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index d1210e8cd501f0f3be92189d129f1d354ddb00cb..1a16dc3ac00c2756f1ea7154c38345393f3d5a96 100644 +index b63c4510cb6a14d754776967ccc7020d85fc2abd..95c9b69934fb1d8b49caf9e5c6184435bd18b66d 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3190,7 +3190,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0704-Fix-Spigot-growth-modifiers.patch b/patches/server/0703-Fix-Spigot-growth-modifiers.patch similarity index 100% rename from patches/server/0704-Fix-Spigot-growth-modifiers.patch rename to patches/server/0703-Fix-Spigot-growth-modifiers.patch diff --git a/patches/server/0705-Prevent-ContainerOpenersCounter-openCount-from-going.patch b/patches/server/0704-Prevent-ContainerOpenersCounter-openCount-from-going.patch similarity index 100% rename from patches/server/0705-Prevent-ContainerOpenersCounter-openCount-from-going.patch rename to patches/server/0704-Prevent-ContainerOpenersCounter-openCount-from-going.patch diff --git a/patches/server/0706-Add-PlayerItemFrameChangeEvent.patch b/patches/server/0705-Add-PlayerItemFrameChangeEvent.patch similarity index 100% rename from patches/server/0706-Add-PlayerItemFrameChangeEvent.patch rename to patches/server/0705-Add-PlayerItemFrameChangeEvent.patch diff --git a/patches/server/0707-Optimize-HashMapPalette.patch b/patches/server/0706-Optimize-HashMapPalette.patch similarity index 100% rename from patches/server/0707-Optimize-HashMapPalette.patch rename to patches/server/0706-Optimize-HashMapPalette.patch diff --git a/patches/server/0708-Allow-delegation-to-vanilla-chunk-gen.patch b/patches/server/0707-Allow-delegation-to-vanilla-chunk-gen.patch similarity index 98% rename from patches/server/0708-Allow-delegation-to-vanilla-chunk-gen.patch rename to patches/server/0707-Allow-delegation-to-vanilla-chunk-gen.patch index 474a8bb6f3..51927546b9 100644 --- a/patches/server/0708-Allow-delegation-to-vanilla-chunk-gen.patch +++ b/patches/server/0707-Allow-delegation-to-vanilla-chunk-gen.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Allow delegation to vanilla chunk gen diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 8f61efe32500ebe47e13d96fd96df646adb3dd5b..9f9492f0f5bc9c39f4c0021956e3240a466f3085 100644 +index 65809db4522c3b1ce0b5bf11828de129713d7d21..4195bdfef0916f18cd448ba2c47e44f4c3996943 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -2459,6 +2459,88 @@ public final class CraftServer implements Server { diff --git a/patches/server/0709-Collision-optimisations.patch b/patches/server/0708-Collision-optimisations.patch similarity index 99% rename from patches/server/0709-Collision-optimisations.patch rename to patches/server/0708-Collision-optimisations.patch index c2a0bb699d..26fe75aa66 100644 --- a/patches/server/0709-Collision-optimisations.patch +++ b/patches/server/0708-Collision-optimisations.patch @@ -2179,7 +2179,7 @@ index d0a8092bf57a29ab7c00ec0ddf52a9fdb2a33267..392406722b0a040c1d41fdc1154d75d3 private Direction(int id, int idOpposite, int idHorizontal, String name, Direction.AxisDirection direction, Direction.Axis axis, Vec3i vector) { this.data3d = id; diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 60164d8ff63bf536ddf46605a9dc7931ebc5b82a..7c8f5ae6bd83bd08403738dcd364b0af06fb1a9b 100644 +index f99498d6864bc48683f8156e0365f1175edce0ba..f62f3a904ca09b7a5edf40b739a70c00de927429 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -469,7 +469,7 @@ public class ServerPlayer extends Player { @@ -2214,7 +2214,7 @@ index f7588787769902506e317bdb052483c5dc377693..8f0d1e9e8a191a2049f3ad2d9b4ffdbd 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 9e617eb10380525f1aa7aa9cd7096aa133fe5920..519e3f0e376198fb399819f4587ccf935b93ea1a 100644 +index d2b2ab7415999b76d8cb0747f5b4235b5b4e07f6..7d70af32d67c5201e278424f7025eb8db5653d8e 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -1217,9 +1217,44 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -2600,7 +2600,7 @@ index a25497eec004add7408a63b1a0f09e3fa443b324..9f892de55ab03367daed4c30cc44c9dd // 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 94a4ceeea167164fb589518881952dd5e082f8c2..2287987d5bb0e6c4cb6153f04c420fe5ec7c8089 100644 +index 0d685f1f446061cc723d190b16eedcb2ddedfa46..b8188a5d0ac9be4d4ca52bd4faaf5a677029f1dc 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -300,6 +300,10 @@ public abstract class Level implements LevelAccessor, AutoCloseable { diff --git a/patches/server/0710-Optimise-collision-checking-in-player-move-packet-ha.patch b/patches/server/0709-Optimise-collision-checking-in-player-move-packet-ha.patch similarity index 99% rename from patches/server/0710-Optimise-collision-checking-in-player-move-packet-ha.patch rename to patches/server/0709-Optimise-collision-checking-in-player-move-packet-ha.patch index 67f3734290..ccdf60c47d 100644 --- a/patches/server/0710-Optimise-collision-checking-in-player-move-packet-ha.patch +++ b/patches/server/0709-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 1e519cdd673a4d4beb53ae84822e7b85c25a5e97..554b0cd2f61005b57e1b0f68730354a8753fb0b7 100644 +index bfbbb0f6e73e9d59e73944b77e08802132f2a739..027bc0d89b7ade602565ed3717e87c56de7265e1 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -543,7 +543,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl diff --git a/patches/server/0711-Fix-ChunkSnapshot-isSectionEmpty-int-and-optimize-Pa.patch b/patches/server/0710-Fix-ChunkSnapshot-isSectionEmpty-int-and-optimize-Pa.patch similarity index 100% rename from patches/server/0711-Fix-ChunkSnapshot-isSectionEmpty-int-and-optimize-Pa.patch rename to patches/server/0710-Fix-ChunkSnapshot-isSectionEmpty-int-and-optimize-Pa.patch diff --git a/patches/server/0712-Add-more-Campfire-API.patch b/patches/server/0711-Add-more-Campfire-API.patch similarity index 100% rename from patches/server/0712-Add-more-Campfire-API.patch rename to patches/server/0711-Add-more-Campfire-API.patch diff --git a/patches/server/0713-Only-write-chunk-data-to-disk-if-it-serializes-witho.patch b/patches/server/0712-Only-write-chunk-data-to-disk-if-it-serializes-witho.patch similarity index 97% rename from patches/server/0713-Only-write-chunk-data-to-disk-if-it-serializes-witho.patch rename to patches/server/0712-Only-write-chunk-data-to-disk-if-it-serializes-witho.patch index 118bc88750..249347a171 100644 --- a/patches/server/0713-Only-write-chunk-data-to-disk-if-it-serializes-witho.patch +++ b/patches/server/0712-Only-write-chunk-data-to-disk-if-it-serializes-witho.patch @@ -8,7 +8,7 @@ This ensures at least a valid version of the chunk exists on disk, even if outdated 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 98c8b676fc5b2add44d6ddf5d32f85bc07ea22cb..83966430240d375e7618e13c75676d510a222c37 100644 +index 2c951dfb17a11bd81c19080a1f8f498f8e534cff..b0fa77d298ad1476fdc2433b0308276068e53a71 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 @@ -1003,6 +1003,9 @@ public class RegionFile implements AutoCloseable { diff --git a/patches/server/0714-Fix-tripwire-state-inconsistency.patch b/patches/server/0713-Fix-tripwire-state-inconsistency.patch similarity index 100% rename from patches/server/0714-Fix-tripwire-state-inconsistency.patch rename to patches/server/0713-Fix-tripwire-state-inconsistency.patch diff --git a/patches/server/0715-Forward-CraftEntity-in-teleport-command.patch b/patches/server/0714-Forward-CraftEntity-in-teleport-command.patch similarity index 95% rename from patches/server/0715-Forward-CraftEntity-in-teleport-command.patch rename to patches/server/0714-Forward-CraftEntity-in-teleport-command.patch index ca6fe40d41..4e5fe82d76 100644 --- a/patches/server/0715-Forward-CraftEntity-in-teleport-command.patch +++ b/patches/server/0714-Forward-CraftEntity-in-teleport-command.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Forward CraftEntity in teleport command diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 519e3f0e376198fb399819f4587ccf935b93ea1a..449601d6a8e89ae4f225407d7e00efedbe6eb6c9 100644 +index 7d70af32d67c5201e278424f7025eb8db5653d8e..0d9d46b97314bd9a95d5d4f35bf196abfd11c200 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -3531,6 +3531,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S diff --git a/patches/server/0716-Improve-scoreboard-entries.patch b/patches/server/0715-Improve-scoreboard-entries.patch similarity index 100% rename from patches/server/0716-Improve-scoreboard-entries.patch rename to patches/server/0715-Improve-scoreboard-entries.patch diff --git a/patches/server/0717-Entity-powdered-snow-API.patch b/patches/server/0716-Entity-powdered-snow-API.patch similarity index 100% rename from patches/server/0717-Entity-powdered-snow-API.patch rename to patches/server/0716-Entity-powdered-snow-API.patch diff --git a/patches/server/0718-Add-API-for-item-entity-health.patch b/patches/server/0717-Add-API-for-item-entity-health.patch similarity index 100% rename from patches/server/0718-Add-API-for-item-entity-health.patch rename to patches/server/0717-Add-API-for-item-entity-health.patch diff --git a/patches/server/0719-Fix-entity-type-tags-suggestions-in-selectors.patch b/patches/server/0718-Fix-entity-type-tags-suggestions-in-selectors.patch similarity index 99% rename from patches/server/0719-Fix-entity-type-tags-suggestions-in-selectors.patch rename to patches/server/0718-Fix-entity-type-tags-suggestions-in-selectors.patch index 5c935836f8..736faffc8d 100644 --- a/patches/server/0719-Fix-entity-type-tags-suggestions-in-selectors.patch +++ b/patches/server/0718-Fix-entity-type-tags-suggestions-in-selectors.patch @@ -35,7 +35,7 @@ index 79732086bc4cdbca8364d78eb60d68c758055966..e65d7980b7ebed60786bc31e2f8156fd + // Paper end - tell clients to ask server for suggestions for EntityArguments } diff --git a/src/main/java/net/minecraft/commands/Commands.java b/src/main/java/net/minecraft/commands/Commands.java -index bc0f9bf88de8f79f8e2aa2261d5a8bdc9dd1f53a..c2bd7eea15437f3526da37ce1c8642084a26406b 100644 +index 9a01905bdbf0b721a129984d71c5745fa5e3c8a5..4ef2f90809b946dcdb52a4ab58cd1c15b682f790 100644 --- a/src/main/java/net/minecraft/commands/Commands.java +++ b/src/main/java/net/minecraft/commands/Commands.java @@ -532,6 +532,7 @@ public class Commands { diff --git a/patches/server/0720-Configurable-max-block-light-for-monster-spawning.patch b/patches/server/0719-Configurable-max-block-light-for-monster-spawning.patch similarity index 100% rename from patches/server/0720-Configurable-max-block-light-for-monster-spawning.patch rename to patches/server/0719-Configurable-max-block-light-for-monster-spawning.patch diff --git a/patches/server/0721-Fix-sticky-pistons-and-BlockPistonRetractEvent.patch b/patches/server/0720-Fix-sticky-pistons-and-BlockPistonRetractEvent.patch similarity index 100% rename from patches/server/0721-Fix-sticky-pistons-and-BlockPistonRetractEvent.patch rename to patches/server/0720-Fix-sticky-pistons-and-BlockPistonRetractEvent.patch diff --git a/patches/server/0722-Load-effect-amplifiers-greater-than-127-correctly.patch b/patches/server/0721-Load-effect-amplifiers-greater-than-127-correctly.patch similarity index 100% rename from patches/server/0722-Load-effect-amplifiers-greater-than-127-correctly.patch rename to patches/server/0721-Load-effect-amplifiers-greater-than-127-correctly.patch diff --git a/patches/server/0723-Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch b/patches/server/0722-Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch similarity index 100% rename from patches/server/0723-Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch rename to patches/server/0722-Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch diff --git a/patches/server/0724-Fix-bees-aging-inside-hives.patch b/patches/server/0723-Fix-bees-aging-inside-hives.patch similarity index 100% rename from patches/server/0724-Fix-bees-aging-inside-hives.patch rename to patches/server/0723-Fix-bees-aging-inside-hives.patch diff --git a/patches/server/0725-Bucketable-API.patch b/patches/server/0724-Bucketable-API.patch similarity index 100% rename from patches/server/0725-Bucketable-API.patch rename to patches/server/0724-Bucketable-API.patch diff --git a/patches/server/0726-Validate-usernames.patch b/patches/server/0725-Validate-usernames.patch similarity index 95% rename from patches/server/0726-Validate-usernames.patch rename to patches/server/0725-Validate-usernames.patch index 0c5d204b61..a4e3af4972 100644 --- a/patches/server/0726-Validate-usernames.patch +++ b/patches/server/0725-Validate-usernames.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Validate usernames diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -index 7a2f78ae76354e15afa5368c8fb2a571c15dc82d..6121a3879eeb1d13653e93da02ecdbbcb2a866ac 100644 +index 67c1cf5eb198079bd146a4a8ca0492b94cca788c..c03329267a2a97af32a0c2c9d7e94fa00596e1cf 100644 --- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java @@ -63,6 +63,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, @@ -39,7 +39,7 @@ index 8f0d1e9e8a191a2049f3ad2d9b4ffdbd15c45d9f..1038bdb761c4b413cb92e08aa7ef634b } } diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java -index bce494bb7bc1ce20809ac7d355f04aa7aad78308..6ab0c3116a4238a4c5369cc33452fed594149ea4 100644 +index 6018717ea7ff9d3947e48aacd3dbedc075a8376e..548343be02a627d2c2475a4452363876a126b3a8 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java @@ -2340,9 +2340,23 @@ public abstract class Player extends LivingEntity { diff --git a/patches/server/0727-Make-water-animal-spawn-height-configurable.patch b/patches/server/0726-Make-water-animal-spawn-height-configurable.patch similarity index 100% rename from patches/server/0727-Make-water-animal-spawn-height-configurable.patch rename to patches/server/0726-Make-water-animal-spawn-height-configurable.patch diff --git a/patches/server/0728-Expose-vanilla-BiomeProvider-from-WorldInfo.patch b/patches/server/0727-Expose-vanilla-BiomeProvider-from-WorldInfo.patch similarity index 97% rename from patches/server/0728-Expose-vanilla-BiomeProvider-from-WorldInfo.patch rename to patches/server/0727-Expose-vanilla-BiomeProvider-from-WorldInfo.patch index 32e655a2ae..ccd43f3ca1 100644 --- a/patches/server/0728-Expose-vanilla-BiomeProvider-from-WorldInfo.patch +++ b/patches/server/0727-Expose-vanilla-BiomeProvider-from-WorldInfo.patch @@ -18,7 +18,7 @@ index 6873036e7d24a2b8e85ab7ae270eec63bd7e7b5b..70adb35d0f267666e44c61ac0578a12f biomeProvider = gen.getDefaultBiomeProvider(worldInfo); } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 9f9492f0f5bc9c39f4c0021956e3240a466f3085..6e1ebb33413018d0cd2275eb76a7bdfbf8542da1 100644 +index 4195bdfef0916f18cd448ba2c47e44f4c3996943..fe0a12e0f8a5318f7a8d2d336da62aa9f7710832 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1258,7 +1258,7 @@ public final class CraftServer implements Server { @@ -31,7 +31,7 @@ index 9f9492f0f5bc9c39f4c0021956e3240a466f3085..6e1ebb33413018d0cd2275eb76a7bdfb biomeProvider = generator.getDefaultBiomeProvider(worldInfo); } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 24156bd9d964e2c32bc758dd9e099744cf8ac647..999602a6c11257b05083bcc2d36b6e30b2b129f4 100644 +index 3eeb878924827861f79c6bc1b510d0167b9ac10b..d17454114ced443b576ca0fa608a4846364efbe5 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -205,6 +205,29 @@ public class CraftWorld extends CraftRegionAccessor implements World { diff --git a/patches/server/0729-Add-config-option-for-worlds-affected-by-time-cmd.patch b/patches/server/0728-Add-config-option-for-worlds-affected-by-time-cmd.patch similarity index 100% rename from patches/server/0729-Add-config-option-for-worlds-affected-by-time-cmd.patch rename to patches/server/0728-Add-config-option-for-worlds-affected-by-time-cmd.patch diff --git a/patches/server/0730-Add-missing-IAE-check-for-PersistentDataContainer-ha.patch b/patches/server/0729-Add-missing-IAE-check-for-PersistentDataContainer-ha.patch similarity index 100% rename from patches/server/0730-Add-missing-IAE-check-for-PersistentDataContainer-ha.patch rename to patches/server/0729-Add-missing-IAE-check-for-PersistentDataContainer-ha.patch diff --git a/patches/server/0731-Multiple-Entries-with-Scoreboards.patch b/patches/server/0730-Multiple-Entries-with-Scoreboards.patch similarity index 100% rename from patches/server/0731-Multiple-Entries-with-Scoreboards.patch rename to patches/server/0730-Multiple-Entries-with-Scoreboards.patch diff --git a/patches/server/0732-Reset-placed-block-on-exception.patch b/patches/server/0731-Reset-placed-block-on-exception.patch similarity index 100% rename from patches/server/0732-Reset-placed-block-on-exception.patch rename to patches/server/0731-Reset-placed-block-on-exception.patch diff --git a/patches/server/0733-Add-configurable-height-for-slime-spawn.patch b/patches/server/0732-Add-configurable-height-for-slime-spawn.patch similarity index 100% rename from patches/server/0733-Add-configurable-height-for-slime-spawn.patch rename to patches/server/0732-Add-configurable-height-for-slime-spawn.patch diff --git a/patches/server/0734-Fix-xp-reward-for-baby-zombies.patch b/patches/server/0733-Fix-xp-reward-for-baby-zombies.patch similarity index 100% rename from patches/server/0734-Fix-xp-reward-for-baby-zombies.patch rename to patches/server/0733-Fix-xp-reward-for-baby-zombies.patch diff --git a/patches/server/0735-Multi-Block-Change-API-Implementation.patch b/patches/server/0734-Multi-Block-Change-API-Implementation.patch similarity index 100% rename from patches/server/0735-Multi-Block-Change-API-Implementation.patch rename to patches/server/0734-Multi-Block-Change-API-Implementation.patch diff --git a/patches/server/0736-Fix-NotePlayEvent.patch b/patches/server/0735-Fix-NotePlayEvent.patch similarity index 100% rename from patches/server/0736-Fix-NotePlayEvent.patch rename to patches/server/0735-Fix-NotePlayEvent.patch diff --git a/patches/server/0737-Freeze-Tick-Lock-API.patch b/patches/server/0736-Freeze-Tick-Lock-API.patch similarity index 95% rename from patches/server/0737-Freeze-Tick-Lock-API.patch rename to patches/server/0736-Freeze-Tick-Lock-API.patch index b8278a2f4b..82f27fc507 100644 --- a/patches/server/0737-Freeze-Tick-Lock-API.patch +++ b/patches/server/0736-Freeze-Tick-Lock-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Freeze Tick Lock API diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 4ffd551e6ea540cff14eaba0e95ed2c7c0bca513..2f0c5e1b4b2dfb8006447c296170e80a97b36562 100644 +index 0d9d46b97314bd9a95d5d4f35bf196abfd11c200..b9e1f7d74f7ba8d4375077a39738bde6eb98e7ab 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -409,6 +409,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -46,7 +46,7 @@ index 4ffd551e6ea540cff14eaba0e95ed2c7c0bca513..2f0c5e1b4b2dfb8006447c296170e80a } catch (Throwable throwable) { diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index cf91a4b9d2aab2ed32d7d53e5d3bd97838b7a8a4..e27b19cf56b269c426cb6ddf81513497b70c676f 100644 +index 95c9b69934fb1d8b49caf9e5c6184435bd18b66d..861f0d81501f63fdfa25f5f6f9da4701957fc7d8 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3452,7 +3452,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0738-More-PotionEffectType-API.patch b/patches/server/0737-More-PotionEffectType-API.patch similarity index 100% rename from patches/server/0738-More-PotionEffectType-API.patch rename to patches/server/0737-More-PotionEffectType-API.patch diff --git a/patches/server/0739-Use-a-CHM-for-StructureTemplate.Pallete-cache.patch b/patches/server/0738-Use-a-CHM-for-StructureTemplate.Pallete-cache.patch similarity index 100% rename from patches/server/0739-Use-a-CHM-for-StructureTemplate.Pallete-cache.patch rename to patches/server/0738-Use-a-CHM-for-StructureTemplate.Pallete-cache.patch diff --git a/patches/server/0740-API-for-creating-command-sender-which-forwards-feedb.patch b/patches/server/0739-API-for-creating-command-sender-which-forwards-feedb.patch similarity index 97% rename from patches/server/0740-API-for-creating-command-sender-which-forwards-feedb.patch rename to patches/server/0739-API-for-creating-command-sender-which-forwards-feedb.patch index f7945e5795..2fe3b44279 100644 --- a/patches/server/0740-API-for-creating-command-sender-which-forwards-feedb.patch +++ b/patches/server/0739-API-for-creating-command-sender-which-forwards-feedb.patch @@ -122,7 +122,7 @@ index 0000000000000000000000000000000000000000..e3a5f1ec376319bdfda87fa27ae217bf + } +} diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 6e1ebb33413018d0cd2275eb76a7bdfbf8542da1..d53abb73ab61151a14baef8ce5cdf40ff8709238 100644 +index fe0a12e0f8a5318f7a8d2d336da62aa9f7710832..9f4d929e0e248cc2cc02ccb0c8915aeb6d9c03b5 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -2110,6 +2110,13 @@ public final class CraftServer implements Server { @@ -153,7 +153,7 @@ index 7f22950ae61436e91a59cd29a345809c42bbe739..1e3091687735b461d3b6a313ab876112 protected ServerCommandSender() { diff --git a/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java b/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java -index f4961a0f360a39124544cbe0adbd94eeeef32ab5..11d7471faf35339b290b5b90c7db595e4813deb7 100644 +index bda9a0b99184adce28bb7851612ed7f4e324826d..61115db85b81e627d11a0de21691a2ca69aafe2c 100644 --- a/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java +++ b/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java @@ -81,6 +81,11 @@ public final class VanillaCommandWrapper extends BukkitCommand { diff --git a/patches/server/0741-Add-missing-structure-set-seed-configs.patch b/patches/server/0740-Add-missing-structure-set-seed-configs.patch similarity index 99% rename from patches/server/0741-Add-missing-structure-set-seed-configs.patch rename to patches/server/0740-Add-missing-structure-set-seed-configs.patch index 9df945ead5..6b1b8d62b1 100644 --- a/patches/server/0741-Add-missing-structure-set-seed-configs.patch +++ b/patches/server/0740-Add-missing-structure-set-seed-configs.patch @@ -20,7 +20,7 @@ seeds/salts to the frequency reducer which has a similar effect. Co-authored-by: William Blake Galbreath diff --git a/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java b/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java -index 996a49e1ccf827edf28ca92e947014517b7dad6e..65db282b32dfec041579812f9b7275d8c0b99a0d 100644 +index 10b4458f3081dea06c1ff39d4134ab8e99adcc99..6b743d4c7b304c21e2e89300e69df8eff672e8a6 100644 --- a/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java +++ b/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java @@ -568,7 +568,7 @@ public abstract class ChunkGenerator { diff --git a/patches/server/0742-Implement-regenerateChunk.patch b/patches/server/0741-Implement-regenerateChunk.patch similarity index 98% rename from patches/server/0742-Implement-regenerateChunk.patch rename to patches/server/0741-Implement-regenerateChunk.patch index d8d6665de1..93947b77e2 100644 --- a/patches/server/0742-Implement-regenerateChunk.patch +++ b/patches/server/0741-Implement-regenerateChunk.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Implement regenerateChunk Co-authored-by: Jason Penilla <11360596+jpenilla@users.noreply.github.com> diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 999602a6c11257b05083bcc2d36b6e30b2b129f4..cf43f2e7bfc465c1c804daa5d86a6ce1808d8041 100644 +index d17454114ced443b576ca0fa608a4846364efbe5..0f5b125a307769c6430dbb9f3289efd66c2c8601 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -144,6 +144,7 @@ import org.jetbrains.annotations.NotNull; diff --git a/patches/server/0743-Fix-cancelled-powdered-snow-bucket-placement.patch b/patches/server/0742-Fix-cancelled-powdered-snow-bucket-placement.patch similarity index 100% rename from patches/server/0743-Fix-cancelled-powdered-snow-bucket-placement.patch rename to patches/server/0742-Fix-cancelled-powdered-snow-bucket-placement.patch diff --git a/patches/server/0744-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch b/patches/server/0743-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch similarity index 88% rename from patches/server/0744-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch rename to patches/server/0743-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch index 37d1c7f455..3f96eb8cf8 100644 --- a/patches/server/0744-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch +++ b/patches/server/0743-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch @@ -6,13 +6,13 @@ Subject: [PATCH] Add missing Validate calls to CraftServer#getSpawnLimit Copies appropriate checks from CraftWorld#getSpawnLimit diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index d53abb73ab61151a14baef8ce5cdf40ff8709238..bafdb900286c9015840aa74e8a84493bdaf8eaa2 100644 +index 9f4d929e0e248cc2cc02ccb0c8915aeb6d9c03b5..630048f21d794cd2f5c10e7b1a7fca30a14e6856 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -2287,6 +2287,8 @@ public final class CraftServer implements Server { @Override public int getSpawnLimit(SpawnCategory spawnCategory) { - // Paper start + // Paper start - Add mobcaps commands + Preconditions.checkArgument(spawnCategory != null, "SpawnCategory cannot be null"); + Preconditions.checkArgument(CraftSpawnCategory.isValidForLimits(spawnCategory), "SpawnCategory." + spawnCategory + " does not have a spawn limit."); return this.getSpawnLimitUnsafe(spawnCategory); diff --git a/patches/server/0745-Add-GameEvent-tags.patch b/patches/server/0744-Add-GameEvent-tags.patch similarity index 97% rename from patches/server/0745-Add-GameEvent-tags.patch rename to patches/server/0744-Add-GameEvent-tags.patch index 1f3ec77e51..29a529cde1 100644 --- a/patches/server/0745-Add-GameEvent-tags.patch +++ b/patches/server/0744-Add-GameEvent-tags.patch @@ -46,7 +46,7 @@ index 0000000000000000000000000000000000000000..e7d9fd2702a1ce96596580fff8f5ee4f + } +} diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index bafdb900286c9015840aa74e8a84493bdaf8eaa2..d96450c5b83bf785cdb24ca1c2653e642be9302d 100644 +index 630048f21d794cd2f5c10e7b1a7fca30a14e6856..1278e02a723aac491af24b42c6268164b5f16ddb 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -2708,6 +2708,15 @@ public final class CraftServer implements Server { diff --git a/patches/server/0746-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch b/patches/server/0745-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch similarity index 100% rename from patches/server/0746-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch rename to patches/server/0745-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch diff --git a/patches/server/0747-Furnace-RecipesUsed-API.patch b/patches/server/0746-Furnace-RecipesUsed-API.patch similarity index 100% rename from patches/server/0747-Furnace-RecipesUsed-API.patch rename to patches/server/0746-Furnace-RecipesUsed-API.patch diff --git a/patches/server/0748-Configurable-sculk-sensor-listener-range.patch b/patches/server/0747-Configurable-sculk-sensor-listener-range.patch similarity index 100% rename from patches/server/0748-Configurable-sculk-sensor-listener-range.patch rename to patches/server/0747-Configurable-sculk-sensor-listener-range.patch diff --git a/patches/server/0749-Add-missing-block-data-mins-and-maxes.patch b/patches/server/0748-Add-missing-block-data-mins-and-maxes.patch similarity index 100% rename from patches/server/0749-Add-missing-block-data-mins-and-maxes.patch rename to patches/server/0748-Add-missing-block-data-mins-and-maxes.patch diff --git a/patches/server/0750-Option-to-have-default-CustomSpawners-in-custom-worl.patch b/patches/server/0749-Option-to-have-default-CustomSpawners-in-custom-worl.patch similarity index 100% rename from patches/server/0750-Option-to-have-default-CustomSpawners-in-custom-worl.patch rename to patches/server/0749-Option-to-have-default-CustomSpawners-in-custom-worl.patch diff --git a/patches/server/0751-Put-world-into-worldlist-before-initing-the-world.patch b/patches/server/0750-Put-world-into-worldlist-before-initing-the-world.patch similarity index 96% rename from patches/server/0751-Put-world-into-worldlist-before-initing-the-world.patch rename to patches/server/0750-Put-world-into-worldlist-before-initing-the-world.patch index e83c9487fd..8858cc1a7d 100644 --- a/patches/server/0751-Put-world-into-worldlist-before-initing-the-world.patch +++ b/patches/server/0750-Put-world-into-worldlist-before-initing-the-world.patch @@ -23,7 +23,7 @@ index 27ef9e114f2951c0874e853ba866c6e27fc531cc..db7345c936816c4bea12969853cf743c if (worlddata.getCustomBossEvents() != null) { diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index d96450c5b83bf785cdb24ca1c2653e642be9302d..1225d688d18c0c660d0d229a5f6ef9ef7ab72c54 100644 +index 1278e02a723aac491af24b42c6268164b5f16ddb..8c08cf509faccc202222471eed06c6393aaeb594 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1288,10 +1288,11 @@ public final class CraftServer implements Server { diff --git a/patches/server/0752-Fix-Entity-Position-Desync.patch b/patches/server/0751-Fix-Entity-Position-Desync.patch similarity index 100% rename from patches/server/0752-Fix-Entity-Position-Desync.patch rename to patches/server/0751-Fix-Entity-Position-Desync.patch diff --git a/patches/server/0753-Custom-Potion-Mixes.patch b/patches/server/0752-Custom-Potion-Mixes.patch similarity index 99% rename from patches/server/0753-Custom-Potion-Mixes.patch rename to patches/server/0752-Custom-Potion-Mixes.patch index e8e048c334..204d5bc36b 100644 --- a/patches/server/0753-Custom-Potion-Mixes.patch +++ b/patches/server/0752-Custom-Potion-Mixes.patch @@ -172,7 +172,7 @@ index 424406d2692856cfd82b6f3b7b6228fa3bd20c2f..bc01481ac5990ad1cfd1def5a16dd0ed @Override diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 1225d688d18c0c660d0d229a5f6ef9ef7ab72c54..21c9bfd9d9fd76e2a1b41001ea0f726d7b784309 100644 +index 8c08cf509faccc202222471eed06c6393aaeb594..a55abfd40b7151e0eaf057bce4d3a2f6508d4ba4 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -304,6 +304,7 @@ public final class CraftServer implements Server { diff --git a/patches/server/0754-Force-close-world-loading-screen.patch b/patches/server/0753-Force-close-world-loading-screen.patch similarity index 100% rename from patches/server/0754-Force-close-world-loading-screen.patch rename to patches/server/0753-Force-close-world-loading-screen.patch diff --git a/patches/server/0755-Fix-falling-block-spawn-methods.patch b/patches/server/0754-Fix-falling-block-spawn-methods.patch similarity index 97% rename from patches/server/0755-Fix-falling-block-spawn-methods.patch rename to patches/server/0754-Fix-falling-block-spawn-methods.patch index 7c30e3228a..5ecbeebf33 100644 --- a/patches/server/0755-Fix-falling-block-spawn-methods.patch +++ b/patches/server/0754-Fix-falling-block-spawn-methods.patch @@ -11,7 +11,7 @@ Restores the API behavior from previous versions of the server public net.minecraft.world.entity.item.FallingBlockEntity (Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/level/block/state/BlockState;)V diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index cf43f2e7bfc465c1c804daa5d86a6ce1808d8041..5e31aa4383113b586b9ce440f121cb65045bf70a 100644 +index 0f5b125a307769c6430dbb9f3289efd66c2c8601..b73488765daa9c734dc711839f444ce831b16e8e 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -1453,7 +1453,12 @@ public class CraftWorld extends CraftRegionAccessor implements World { diff --git a/patches/server/0756-Expose-furnace-minecart-push-values.patch b/patches/server/0755-Expose-furnace-minecart-push-values.patch similarity index 100% rename from patches/server/0756-Expose-furnace-minecart-push-values.patch rename to patches/server/0755-Expose-furnace-minecart-push-values.patch diff --git a/patches/server/0757-Fix-cancelling-ProjectileHitEvent-for-piercing-arrow.patch b/patches/server/0756-Fix-cancelling-ProjectileHitEvent-for-piercing-arrow.patch similarity index 100% rename from patches/server/0757-Fix-cancelling-ProjectileHitEvent-for-piercing-arrow.patch rename to patches/server/0756-Fix-cancelling-ProjectileHitEvent-for-piercing-arrow.patch diff --git a/patches/server/0758-More-Projectile-API.patch b/patches/server/0757-More-Projectile-API.patch similarity index 100% rename from patches/server/0758-More-Projectile-API.patch rename to patches/server/0757-More-Projectile-API.patch diff --git a/patches/server/0759-Fix-swamp-hut-cat-generation-deadlock.patch b/patches/server/0758-Fix-swamp-hut-cat-generation-deadlock.patch similarity index 100% rename from patches/server/0759-Fix-swamp-hut-cat-generation-deadlock.patch rename to patches/server/0758-Fix-swamp-hut-cat-generation-deadlock.patch diff --git a/patches/server/0760-Don-t-allow-vehicle-movement-from-players-while-tele.patch b/patches/server/0759-Don-t-allow-vehicle-movement-from-players-while-tele.patch similarity index 100% rename from patches/server/0760-Don-t-allow-vehicle-movement-from-players-while-tele.patch rename to patches/server/0759-Don-t-allow-vehicle-movement-from-players-while-tele.patch diff --git a/patches/server/0761-Implement-getComputedBiome-API.patch b/patches/server/0760-Implement-getComputedBiome-API.patch similarity index 100% rename from patches/server/0761-Implement-getComputedBiome-API.patch rename to patches/server/0760-Implement-getComputedBiome-API.patch diff --git a/patches/server/0762-Make-some-itemstacks-nonnull.patch b/patches/server/0761-Make-some-itemstacks-nonnull.patch similarity index 100% rename from patches/server/0762-Make-some-itemstacks-nonnull.patch rename to patches/server/0761-Make-some-itemstacks-nonnull.patch diff --git a/patches/server/0763-Implement-enchantWithLevels-API.patch b/patches/server/0762-Implement-enchantWithLevels-API.patch similarity index 90% rename from patches/server/0763-Implement-enchantWithLevels-API.patch rename to patches/server/0762-Implement-enchantWithLevels-API.patch index 7267b72677..ed80635228 100644 --- a/patches/server/0763-Implement-enchantWithLevels-API.patch +++ b/patches/server/0762-Implement-enchantWithLevels-API.patch @@ -5,14 +5,13 @@ Subject: [PATCH] Implement enchantWithLevels API diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java -index 2dc5cdf72034f27cf9c61ce979a7018f169bb786..5df92d21e1e1827c59352d9f89dbfb23af7c0d7b 100644 +index ef0c6e04a89704688f7b5461b27c0036abbf647d..c421649a0c88ee9c773bb6985f7114e58f08a7a1 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java -@@ -579,4 +579,21 @@ public final class CraftItemFactory implements ItemFactory { +@@ -579,4 +579,20 @@ public final class CraftItemFactory implements ItemFactory { return eggItem == null ? null : new net.minecraft.world.item.ItemStack(eggItem).asBukkitMirror(); } - // Paper end -+ + // Paper end - old getSpawnEgg API + // Paper start - enchantWithLevels API + @Override + public ItemStack enchantWithLevels(ItemStack itemStack, int levels, boolean allowTreasure, java.util.Random random) { diff --git a/patches/server/0764-Fix-saving-in-unloadWorld.patch b/patches/server/0763-Fix-saving-in-unloadWorld.patch similarity index 90% rename from patches/server/0764-Fix-saving-in-unloadWorld.patch rename to patches/server/0763-Fix-saving-in-unloadWorld.patch index a3f7632753..fa5308fba9 100644 --- a/patches/server/0764-Fix-saving-in-unloadWorld.patch +++ b/patches/server/0763-Fix-saving-in-unloadWorld.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Fix saving in unloadWorld Change savingDisabled to false to ensure ServerLevel's saving logic gets called when unloadWorld is called with save = true diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 21c9bfd9d9fd76e2a1b41001ea0f726d7b784309..7da2853b86a1e3cd7d1e3c985448727e04542f4f 100644 +index a55abfd40b7151e0eaf057bce4d3a2f6508d4ba4..d86a49c0afaee47d2dd0f0bad1e833b2a80ced53 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1336,7 +1336,7 @@ public final class CraftServer implements Server { diff --git a/patches/server/0765-Buffer-OOB-setBlock-calls.patch b/patches/server/0764-Buffer-OOB-setBlock-calls.patch similarity index 100% rename from patches/server/0765-Buffer-OOB-setBlock-calls.patch rename to patches/server/0764-Buffer-OOB-setBlock-calls.patch diff --git a/patches/server/0766-Add-TameableDeathMessageEvent.patch b/patches/server/0765-Add-TameableDeathMessageEvent.patch similarity index 100% rename from patches/server/0766-Add-TameableDeathMessageEvent.patch rename to patches/server/0765-Add-TameableDeathMessageEvent.patch diff --git a/patches/server/0767-Fix-new-block-data-for-EntityChangeBlockEvent.patch b/patches/server/0766-Fix-new-block-data-for-EntityChangeBlockEvent.patch similarity index 100% rename from patches/server/0767-Fix-new-block-data-for-EntityChangeBlockEvent.patch rename to patches/server/0766-Fix-new-block-data-for-EntityChangeBlockEvent.patch diff --git a/patches/server/0768-fix-player-loottables-running-when-mob-loot-gamerule.patch b/patches/server/0767-fix-player-loottables-running-when-mob-loot-gamerule.patch similarity index 93% rename from patches/server/0768-fix-player-loottables-running-when-mob-loot-gamerule.patch rename to patches/server/0767-fix-player-loottables-running-when-mob-loot-gamerule.patch index dd3d2ae37b..4b6b9f12ab 100644 --- a/patches/server/0768-fix-player-loottables-running-when-mob-loot-gamerule.patch +++ b/patches/server/0767-fix-player-loottables-running-when-mob-loot-gamerule.patch @@ -5,7 +5,7 @@ Subject: [PATCH] fix player loottables running when mob loot gamerule is false diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 7c8f5ae6bd83bd08403738dcd364b0af06fb1a9b..1695e7d3e456bb3539fb37d943e8cf45489f0762 100644 +index f62f3a904ca09b7a5edf40b739a70c00de927429..6e139b278d4f14a92190b93942a0d43884dc4315 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -924,12 +924,14 @@ public class ServerPlayer extends Player { diff --git a/patches/server/0769-Ensure-entity-passenger-world-matches-ridden-entity.patch b/patches/server/0768-Ensure-entity-passenger-world-matches-ridden-entity.patch similarity index 91% rename from patches/server/0769-Ensure-entity-passenger-world-matches-ridden-entity.patch rename to patches/server/0768-Ensure-entity-passenger-world-matches-ridden-entity.patch index ab2ce748ed..02140bb268 100644 --- a/patches/server/0769-Ensure-entity-passenger-world-matches-ridden-entity.patch +++ b/patches/server/0768-Ensure-entity-passenger-world-matches-ridden-entity.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Ensure entity passenger world matches ridden entity Bad plugins doing this would cause some obvious problems... diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index e10b08802cb170a0af8a3cfc01e730e32e6ca0f3..ca145fee91adb669665c881f150a339a773b28cb 100644 +index b9e1f7d74f7ba8d4375077a39738bde6eb98e7ab..b2844876255ec1d30e70b1b7f370b4751fecafb5 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -2847,7 +2847,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S diff --git a/patches/server/0771-cache-resource-keys.patch b/patches/server/0769-cache-resource-keys.patch similarity index 100% rename from patches/server/0771-cache-resource-keys.patch rename to patches/server/0769-cache-resource-keys.patch diff --git a/patches/server/0772-Allow-changing-the-EnderDragon-podium.patch b/patches/server/0770-Allow-changing-the-EnderDragon-podium.patch similarity index 100% rename from patches/server/0772-Allow-changing-the-EnderDragon-podium.patch rename to patches/server/0770-Allow-changing-the-EnderDragon-podium.patch diff --git a/patches/server/0770-Guard-against-invalid-entity-positions.patch b/patches/server/0770-Guard-against-invalid-entity-positions.patch deleted file mode 100644 index d108dbce73..0000000000 --- a/patches/server/0770-Guard-against-invalid-entity-positions.patch +++ /dev/null @@ -1,45 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Spottedleaf -Date: Thu, 31 Mar 2022 05:18:28 -0700 -Subject: [PATCH] Guard against invalid entity positions - -Anything not finite should be blocked and logged - -diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index ca145fee91adb669665c881f150a339a773b28cb..64a1dc13690568baba60dddc6f66a1700f618e51 100644 ---- a/src/main/java/net/minecraft/world/entity/Entity.java -+++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -4539,11 +4539,33 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S - return this.getZ((2.0D * this.random.nextDouble() - 1.0D) * widthScale); - } - -+ // Paper start - block invalid positions -+ public static boolean checkPosition(Entity entity, double newX, double newY, double newZ) { -+ if (Double.isFinite(newX) && Double.isFinite(newY) && Double.isFinite(newZ)) { -+ return true; -+ } -+ -+ String entityInfo = null; -+ try { -+ entityInfo = entity.toString(); -+ } catch (Exception ex) { -+ entityInfo = "[Entity info unavailable] "; -+ } -+ LOGGER.error("New entity position is invalid! Tried to set invalid position (" + newX + "," + newY + "," + newZ + ") for entity " + entity.getClass().getName() + " located at " + entity.position + ", entity info: " + entityInfo, new Throwable()); -+ return false; -+ } -+ // Paper end - block invalid positions -+ - public final void setPosRaw(double x, double y, double z) { - // Paper start - this.setPosRaw(x, y, z, false); - } - public final void setPosRaw(double x, double y, double z, boolean forceBoundingBoxUpdate) { -+ // Paper start - block invalid positions -+ if (!checkPosition(this, x, y, z)) { -+ return; -+ } -+ // Paper end - block invalid positions - // Paper end - // Paper start - rewrite chunk system - if (this.updatingSectionStatus) { diff --git a/patches/server/0773-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch b/patches/server/0771-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch similarity index 100% rename from patches/server/0773-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch rename to patches/server/0771-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch diff --git a/patches/server/0774-Fix-StructureGrowEvent-species-for-RED_MUSHROOM.patch b/patches/server/0772-Fix-StructureGrowEvent-species-for-RED_MUSHROOM.patch similarity index 100% rename from patches/server/0774-Fix-StructureGrowEvent-species-for-RED_MUSHROOM.patch rename to patches/server/0772-Fix-StructureGrowEvent-species-for-RED_MUSHROOM.patch diff --git a/patches/server/0775-Prevent-tile-entity-copies-loading-chunks.patch b/patches/server/0773-Prevent-tile-entity-copies-loading-chunks.patch similarity index 100% rename from patches/server/0775-Prevent-tile-entity-copies-loading-chunks.patch rename to patches/server/0773-Prevent-tile-entity-copies-loading-chunks.patch diff --git a/patches/server/0776-Use-username-instead-of-display-name-in-PlayerList-g.patch b/patches/server/0774-Use-username-instead-of-display-name-in-PlayerList-g.patch similarity index 100% rename from patches/server/0776-Use-username-instead-of-display-name-in-PlayerList-g.patch rename to patches/server/0774-Use-username-instead-of-display-name-in-PlayerList-g.patch diff --git a/patches/server/0777-Pass-ServerLevel-for-gamerule-callbacks.patch b/patches/server/0775-Pass-ServerLevel-for-gamerule-callbacks.patch similarity index 98% rename from patches/server/0777-Pass-ServerLevel-for-gamerule-callbacks.patch rename to patches/server/0775-Pass-ServerLevel-for-gamerule-callbacks.patch index 451e4e5624..f84d3c303a 100644 --- a/patches/server/0777-Pass-ServerLevel-for-gamerule-callbacks.patch +++ b/patches/server/0775-Pass-ServerLevel-for-gamerule-callbacks.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Pass ServerLevel for gamerule callbacks diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java -index e69a0121c8644d831cbb8bc1c95d9219d1c343da..7d33ce8d68ca55e0fd37d2d4e3c78a436f17f229 100644 +index 63bfc209c7d77170ae7b60595d800bb19f1b5da6..24fd1c18f20752679b5679e1f882b4c1ec2416b2 100644 --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java @@ -304,7 +304,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface @@ -167,7 +167,7 @@ index 2a480026c3bfb06e6556fe5b11d9712c8e02debe..dd03426943dd380cefe12afe3e63c318 this.onChanged(server); } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 5e31aa4383113b586b9ce440f121cb65045bf70a..b504bdd02041f4fe7a7ed4ed9d8563cd9b338125 100644 +index b73488765daa9c734dc711839f444ce831b16e8e..75e573ef6e211c1a7fe6168595179eccdb8fd4d2 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -2038,7 +2038,7 @@ public class CraftWorld extends CraftRegionAccessor implements World { diff --git a/patches/server/0778-Expand-PlayerItemDamageEvent.patch b/patches/server/0776-Expand-PlayerItemDamageEvent.patch similarity index 100% rename from patches/server/0778-Expand-PlayerItemDamageEvent.patch rename to patches/server/0776-Expand-PlayerItemDamageEvent.patch diff --git a/patches/server/0779-WorldCreator-keepSpawnLoaded.patch b/patches/server/0777-WorldCreator-keepSpawnLoaded.patch similarity index 94% rename from patches/server/0779-WorldCreator-keepSpawnLoaded.patch rename to patches/server/0777-WorldCreator-keepSpawnLoaded.patch index 07e956fd9e..8813177e0f 100644 --- a/patches/server/0779-WorldCreator-keepSpawnLoaded.patch +++ b/patches/server/0777-WorldCreator-keepSpawnLoaded.patch @@ -5,7 +5,7 @@ Subject: [PATCH] WorldCreator#keepSpawnLoaded diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 7da2853b86a1e3cd7d1e3c985448727e04542f4f..b76bb0142cbe64064f7835807974414c879f57a5 100644 +index d86a49c0afaee47d2dd0f0bad1e833b2a80ced53..4b8814cbbcc91798653e6d66face1d9b03c66d1d 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1283,7 +1283,7 @@ public final class CraftServer implements Server { diff --git a/patches/server/0780-Fix-CME-in-CraftPersistentDataTypeRegistry.patch b/patches/server/0778-Fix-CME-in-CraftPersistentDataTypeRegistry.patch similarity index 100% rename from patches/server/0780-Fix-CME-in-CraftPersistentDataTypeRegistry.patch rename to patches/server/0778-Fix-CME-in-CraftPersistentDataTypeRegistry.patch diff --git a/patches/server/0781-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch b/patches/server/0779-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch similarity index 100% rename from patches/server/0781-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch rename to patches/server/0779-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch diff --git a/patches/server/0782-Add-EntityDyeEvent-and-CollarColorable-interface.patch b/patches/server/0780-Add-EntityDyeEvent-and-CollarColorable-interface.patch similarity index 100% rename from patches/server/0782-Add-EntityDyeEvent-and-CollarColorable-interface.patch rename to patches/server/0780-Add-EntityDyeEvent-and-CollarColorable-interface.patch diff --git a/patches/server/0783-Fire-CauldronLevelChange-on-initial-fill.patch b/patches/server/0781-Fire-CauldronLevelChange-on-initial-fill.patch similarity index 100% rename from patches/server/0783-Fire-CauldronLevelChange-on-initial-fill.patch rename to patches/server/0781-Fire-CauldronLevelChange-on-initial-fill.patch diff --git a/patches/server/0784-fix-powder-snow-cauldrons-not-turning-to-water.patch b/patches/server/0782-fix-powder-snow-cauldrons-not-turning-to-water.patch similarity index 100% rename from patches/server/0784-fix-powder-snow-cauldrons-not-turning-to-water.patch rename to patches/server/0782-fix-powder-snow-cauldrons-not-turning-to-water.patch diff --git a/patches/server/0785-Add-PlayerStopUsingItemEvent.patch b/patches/server/0783-Add-PlayerStopUsingItemEvent.patch similarity index 91% rename from patches/server/0785-Add-PlayerStopUsingItemEvent.patch rename to patches/server/0783-Add-PlayerStopUsingItemEvent.patch index 24390d47ae..4af671aa5e 100644 --- a/patches/server/0785-Add-PlayerStopUsingItemEvent.patch +++ b/patches/server/0783-Add-PlayerStopUsingItemEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add PlayerStopUsingItemEvent diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 31ee19d5740d74418cb4d42d0ce78a0a7cb51e0a..e94084b1f0fb04625cb94ca07825b8f78c0c9012 100644 +index 861f0d81501f63fdfa25f5f6f9da4701957fc7d8..1666a06f64826da9b9e122d3811ecfce16255d1a 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -4025,6 +4025,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0786-Don-t-tick-markers.patch b/patches/server/0784-Don-t-tick-markers.patch similarity index 97% rename from patches/server/0786-Don-t-tick-markers.patch rename to patches/server/0784-Don-t-tick-markers.patch index 1346990dc8..1dbbc6a019 100644 --- a/patches/server/0786-Don-t-tick-markers.patch +++ b/patches/server/0784-Don-t-tick-markers.patch @@ -23,7 +23,7 @@ index ff99336e0b8131ae161cfa5c4fc83c6905e3dbc8..5e5a018433414af76eaa1e781f61612d } }); diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index cae00701c5dbf40be07ea5c2d01ea8929f4fa216..646fb7e4a83e9f9a1b78d8c70f3518b977572fde 100644 +index 8f249587b873c5768bb5ebf13d5f378355e17556..4c7369e222166a2342038ed5640eeb17030246fa 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -2605,6 +2605,7 @@ public class ServerLevel extends Level implements WorldGenLevel { diff --git a/patches/server/0787-Expand-FallingBlock-API.patch b/patches/server/0785-Expand-FallingBlock-API.patch similarity index 100% rename from patches/server/0787-Expand-FallingBlock-API.patch rename to patches/server/0785-Expand-FallingBlock-API.patch diff --git a/patches/server/0788-Do-not-accept-invalid-client-settings.patch b/patches/server/0786-Do-not-accept-invalid-client-settings.patch similarity index 100% rename from patches/server/0788-Do-not-accept-invalid-client-settings.patch rename to patches/server/0786-Do-not-accept-invalid-client-settings.patch diff --git a/patches/server/0789-Add-support-for-Proxy-Protocol.patch b/patches/server/0787-Add-support-for-Proxy-Protocol.patch similarity index 94% rename from patches/server/0789-Add-support-for-Proxy-Protocol.patch rename to patches/server/0787-Add-support-for-Proxy-Protocol.patch index 17373a6c19..20e01676af 100644 --- a/patches/server/0789-Add-support-for-Proxy-Protocol.patch +++ b/patches/server/0787-Add-support-for-Proxy-Protocol.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add support for Proxy Protocol diff --git a/build.gradle.kts b/build.gradle.kts -index 517920023bc28fea04eeb709364d5a7292adcc5e..444ff797c70b0e285d4272ea2ce3d72453c9bda5 100644 +index ff1636d3e047e124c73496f4942e991abe01c150..376e8983fdfdbb6c3e5fd8ad0f6a05e655b622bf 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -30,6 +30,7 @@ dependencies { @@ -17,12 +17,12 @@ index 517920023bc28fea04eeb709364d5a7292adcc5e..444ff797c70b0e285d4272ea2ce3d724 implementation("org.apache.logging.log4j:log4j-iostreams:2.19.0") // Paper - remove exclusion implementation("org.ow2.asm:asm-commons:9.5") diff --git a/src/main/java/net/minecraft/server/network/ServerConnectionListener.java b/src/main/java/net/minecraft/server/network/ServerConnectionListener.java -index 54c7f34ba3dc8466223e589702d0c93af8cf52a0..1df438ce6604981d459a6bc0b351be6d7c1bc050 100644 +index f7d5af5e6a39469914bd9c496582929c9b8e0300..2cdb427eb7d88778ef4b6831336814cdc45e5ef9 100644 --- a/src/main/java/net/minecraft/server/network/ServerConnectionListener.java +++ b/src/main/java/net/minecraft/server/network/ServerConnectionListener.java @@ -111,6 +111,12 @@ public class ServerConnectionListener { ServerConnectionListener.LOGGER.info("Paper: Using " + com.velocitypowered.natives.util.Natives.cipher.getLoadedVariant() + " cipher from Velocity."); - // Paper end + // Paper end - Use Velocity cipher + // Paper start - Add support for proxy protocol + if (io.papermc.paper.configuration.GlobalConfiguration.get().proxies.proxyProtocol) { diff --git a/patches/server/0790-Fix-OfflinePlayer-getBedSpawnLocation.patch b/patches/server/0788-Fix-OfflinePlayer-getBedSpawnLocation.patch similarity index 100% rename from patches/server/0790-Fix-OfflinePlayer-getBedSpawnLocation.patch rename to patches/server/0788-Fix-OfflinePlayer-getBedSpawnLocation.patch diff --git a/patches/server/0791-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch b/patches/server/0789-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch similarity index 100% rename from patches/server/0791-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch rename to patches/server/0789-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch diff --git a/patches/server/0792-Sanitize-sent-BlockEntity-NBT.patch b/patches/server/0790-Sanitize-sent-BlockEntity-NBT.patch similarity index 100% rename from patches/server/0792-Sanitize-sent-BlockEntity-NBT.patch rename to patches/server/0790-Sanitize-sent-BlockEntity-NBT.patch diff --git a/patches/server/0793-Disable-component-selector-resolving-in-books-by-def.patch b/patches/server/0791-Disable-component-selector-resolving-in-books-by-def.patch similarity index 100% rename from patches/server/0793-Disable-component-selector-resolving-in-books-by-def.patch rename to patches/server/0791-Disable-component-selector-resolving-in-books-by-def.patch diff --git a/patches/server/0794-Prevent-entity-loading-causing-async-lookups.patch b/patches/server/0792-Prevent-entity-loading-causing-async-lookups.patch similarity index 97% rename from patches/server/0794-Prevent-entity-loading-causing-async-lookups.patch rename to patches/server/0792-Prevent-entity-loading-causing-async-lookups.patch index 76c416d518..0d3b511891 100644 --- a/patches/server/0794-Prevent-entity-loading-causing-async-lookups.patch +++ b/patches/server/0792-Prevent-entity-loading-causing-async-lookups.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Prevent entity loading causing async lookups diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 64a1dc13690568baba60dddc6f66a1700f618e51..d5cc94219976e3832617210e0aa3b773f3eca432 100644 +index b2844876255ec1d30e70b1b7f370b4751fecafb5..5f8edf65598f1bed0b1726e645dc857ebb6d2e57 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -803,6 +803,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S diff --git a/patches/server/0795-Throw-exception-on-world-create-while-being-ticked.patch b/patches/server/0793-Throw-exception-on-world-create-while-being-ticked.patch similarity index 97% rename from patches/server/0795-Throw-exception-on-world-create-while-being-ticked.patch rename to patches/server/0793-Throw-exception-on-world-create-while-being-ticked.patch index bcb16c777c..8f980b01ff 100644 --- a/patches/server/0795-Throw-exception-on-world-create-while-being-ticked.patch +++ b/patches/server/0793-Throw-exception-on-world-create-while-being-ticked.patch @@ -45,7 +45,7 @@ index c1ef4dd08b39adf3ab8dbfe286c6378f3efbf54e..4d4617635c9dc0d011cf8fc57ece6e23 this.profiler.popPush("connection"); MinecraftTimings.connectionTimer.startTiming(); // Spigot // Paper diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index b76bb0142cbe64064f7835807974414c879f57a5..a12267638500fe5a20f46fb8e0b93c250227c273 100644 +index 4b8814cbbcc91798653e6d66face1d9b03c66d1d..22eca67fb5781f2b60cdbbd228a607cec05c501b 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -874,6 +874,11 @@ public final class CraftServer implements Server { diff --git a/patches/server/0796-Add-Alternate-Current-redstone-implementation.patch b/patches/server/0794-Add-Alternate-Current-redstone-implementation.patch similarity index 99% rename from patches/server/0796-Add-Alternate-Current-redstone-implementation.patch rename to patches/server/0794-Add-Alternate-Current-redstone-implementation.patch index 8fb3cccdf2..d379fbe248 100644 --- a/patches/server/0796-Add-Alternate-Current-redstone-implementation.patch +++ b/patches/server/0794-Add-Alternate-Current-redstone-implementation.patch @@ -2008,7 +2008,7 @@ index 0000000000000000000000000000000000000000..33cd90c30c22200a4e1ae64f40a0bf78 + } +} diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 646fb7e4a83e9f9a1b78d8c70f3518b977572fde..2af4d65fc0c761bcf58e94d4ce0cc918afa47c10 100644 +index 4c7369e222166a2342038ed5640eeb17030246fa..234740b7ff58734753e7a2bd6f3c8c3991a96239 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -223,6 +223,7 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -2034,7 +2034,7 @@ index 646fb7e4a83e9f9a1b78d8c70f3518b977572fde..2af4d65fc0c761bcf58e94d4ce0cc918 EntityCallbacks() {} diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 2287987d5bb0e6c4cb6153f04c420fe5ec7c8089..8200844b73dc7181d5867aafa83087e09ff2df76 100644 +index b8188a5d0ac9be4d4ca52bd4faaf5a677029f1dc..15200db3bc2fde3858d55156b039996366e72dd4 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -1885,4 +1885,15 @@ public abstract class Level implements LevelAccessor, AutoCloseable { diff --git a/patches/server/0797-Dont-resent-entity-on-art-update.patch b/patches/server/0795-Dont-resent-entity-on-art-update.patch similarity index 100% rename from patches/server/0797-Dont-resent-entity-on-art-update.patch rename to patches/server/0795-Dont-resent-entity-on-art-update.patch diff --git a/patches/server/0798-Add-WardenAngerChangeEvent.patch b/patches/server/0796-Add-WardenAngerChangeEvent.patch similarity index 100% rename from patches/server/0798-Add-WardenAngerChangeEvent.patch rename to patches/server/0796-Add-WardenAngerChangeEvent.patch diff --git a/patches/server/0799-Add-option-for-strict-advancement-dimension-checks.patch b/patches/server/0797-Add-option-for-strict-advancement-dimension-checks.patch similarity index 96% rename from patches/server/0799-Add-option-for-strict-advancement-dimension-checks.patch rename to patches/server/0797-Add-option-for-strict-advancement-dimension-checks.patch index 3677466251..2ecf58d074 100644 --- a/patches/server/0799-Add-option-for-strict-advancement-dimension-checks.patch +++ b/patches/server/0797-Add-option-for-strict-advancement-dimension-checks.patch @@ -24,7 +24,7 @@ index 5f9cb2c7a2874e423087d04d3360af0364692b5c..428e0afef2cac9f2a19d8cfe8f2504dd } else { BlockPos blockPos = BlockPos.containing(x, y, z); diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 1695e7d3e456bb3539fb37d943e8cf45489f0762..d3fdb56f1e62a241d8edbde4faa1296de36de246 100644 +index 6e139b278d4f14a92190b93942a0d43884dc4315..202077ef20e15e7e02a37babc1fb31478db4e92b 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -1321,6 +1321,12 @@ public class ServerPlayer extends Player { diff --git a/patches/server/0800-Add-missing-important-BlockStateListPopulator-method.patch b/patches/server/0798-Add-missing-important-BlockStateListPopulator-method.patch similarity index 100% rename from patches/server/0800-Add-missing-important-BlockStateListPopulator-method.patch rename to patches/server/0798-Add-missing-important-BlockStateListPopulator-method.patch diff --git a/patches/server/0801-Nameable-Banner-API.patch b/patches/server/0799-Nameable-Banner-API.patch similarity index 100% rename from patches/server/0801-Nameable-Banner-API.patch rename to patches/server/0799-Nameable-Banner-API.patch diff --git a/patches/server/0802-Don-t-broadcast-messages-to-command-blocks.patch b/patches/server/0800-Don-t-broadcast-messages-to-command-blocks.patch similarity index 95% rename from patches/server/0802-Don-t-broadcast-messages-to-command-blocks.patch rename to patches/server/0800-Don-t-broadcast-messages-to-command-blocks.patch index b50055721f..af4d6c1e4d 100644 --- a/patches/server/0802-Don-t-broadcast-messages-to-command-blocks.patch +++ b/patches/server/0800-Don-t-broadcast-messages-to-command-blocks.patch @@ -20,7 +20,7 @@ index c56f5173fda6b38c2dcaea196217f2f5a7d7c641..524b0f1086c01888fe0b76e180c40915 Date date = new Date(); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index a12267638500fe5a20f46fb8e0b93c250227c273..69ae0f5d0a398f7e2509697e8de95a2a82ec15ef 100644 +index 22eca67fb5781f2b60cdbbd228a607cec05c501b..b0a058139d7e57b575382162408bb3687e237de3 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1873,7 +1873,7 @@ public final class CraftServer implements Server { diff --git a/patches/server/0803-Prevent-empty-items-from-being-added-to-world.patch b/patches/server/0801-Prevent-empty-items-from-being-added-to-world.patch similarity index 93% rename from patches/server/0803-Prevent-empty-items-from-being-added-to-world.patch rename to patches/server/0801-Prevent-empty-items-from-being-added-to-world.patch index 90dd35e0ae..4207cb10b4 100644 --- a/patches/server/0803-Prevent-empty-items-from-being-added-to-world.patch +++ b/patches/server/0801-Prevent-empty-items-from-being-added-to-world.patch @@ -7,7 +7,7 @@ The previous solution caused a bunch of bandaid fixes inorder to resolve edge ca Just simply prevent them from being added to the world instead. diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 2af4d65fc0c761bcf58e94d4ce0cc918afa47c10..d6bf1580787a4d5a2ac9ebde5efe236be3f15a1a 100644 +index 234740b7ff58734753e7a2bd6f3c8c3991a96239..cf9f2d309a2b8ff67bd43bf191ab37e50baacaff 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -1587,6 +1587,7 @@ public class ServerLevel extends Level implements WorldGenLevel { diff --git a/patches/server/0804-Fix-CCE-for-SplashPotion-and-LingeringPotion-spawnin.patch b/patches/server/0802-Fix-CCE-for-SplashPotion-and-LingeringPotion-spawnin.patch similarity index 100% rename from patches/server/0804-Fix-CCE-for-SplashPotion-and-LingeringPotion-spawnin.patch rename to patches/server/0802-Fix-CCE-for-SplashPotion-and-LingeringPotion-spawnin.patch diff --git a/patches/server/0805-Add-Player-getFishHook.patch b/patches/server/0803-Add-Player-getFishHook.patch similarity index 100% rename from patches/server/0805-Add-Player-getFishHook.patch rename to patches/server/0803-Add-Player-getFishHook.patch diff --git a/patches/server/0806-Do-not-sync-load-chunk-for-dynamic-game-event-listen.patch b/patches/server/0804-Do-not-sync-load-chunk-for-dynamic-game-event-listen.patch similarity index 100% rename from patches/server/0806-Do-not-sync-load-chunk-for-dynamic-game-event-listen.patch rename to patches/server/0804-Do-not-sync-load-chunk-for-dynamic-game-event-listen.patch diff --git a/patches/server/0807-Add-various-missing-EntityDropItemEvent-calls.patch b/patches/server/0805-Add-various-missing-EntityDropItemEvent-calls.patch similarity index 96% rename from patches/server/0807-Add-various-missing-EntityDropItemEvent-calls.patch rename to patches/server/0805-Add-various-missing-EntityDropItemEvent-calls.patch index 7f9d05ef60..7dfeb7b4ec 100644 --- a/patches/server/0807-Add-various-missing-EntityDropItemEvent-calls.patch +++ b/patches/server/0805-Add-various-missing-EntityDropItemEvent-calls.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add various missing EntityDropItemEvent calls diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index d5cc94219976e3832617210e0aa3b773f3eca432..10d681e95b8e9cc432ed43930d76da19bfd4fc29 100644 +index 5f8edf65598f1bed0b1726e645dc857ebb6d2e57..67e5536b9e6fac1fe4f70fe0551b399380ec416f 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -2699,6 +2699,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -58,7 +58,7 @@ index 6124209f50300eeaab45b66c2f1a5b2944119450..94bb69a7f5795e0fbee171433632b5c3 @Override diff --git a/src/main/java/net/minecraft/world/entity/animal/goat/Goat.java b/src/main/java/net/minecraft/world/entity/animal/goat/Goat.java -index 3ec2f590dfe9410f1a9d2afb530eebfcce917798..cafea947d49b729268c0fce98ce7fcf4b0c69478 100644 +index ee1b2c1fec4b76a821e1d52fbb07e1f302b2efa1..110dd5418b0512a2f27f0c4d5a5f1812356a6a12 100644 --- a/src/main/java/net/minecraft/world/entity/animal/goat/Goat.java +++ b/src/main/java/net/minecraft/world/entity/animal/goat/Goat.java @@ -357,8 +357,7 @@ public class Goat extends Animal { diff --git a/patches/server/0808-Fix-Bee-flower-NPE.patch b/patches/server/0806-Fix-Bee-flower-NPE.patch similarity index 100% rename from patches/server/0808-Fix-Bee-flower-NPE.patch rename to patches/server/0806-Fix-Bee-flower-NPE.patch diff --git a/patches/server/0809-Fix-Spigot-Config-not-using-commands.spam-exclusions.patch b/patches/server/0807-Fix-Spigot-Config-not-using-commands.spam-exclusions.patch similarity index 100% rename from patches/server/0809-Fix-Spigot-Config-not-using-commands.spam-exclusions.patch rename to patches/server/0807-Fix-Spigot-Config-not-using-commands.spam-exclusions.patch diff --git a/patches/server/0810-More-Teleport-API.patch b/patches/server/0808-More-Teleport-API.patch similarity index 100% rename from patches/server/0810-More-Teleport-API.patch rename to patches/server/0808-More-Teleport-API.patch diff --git a/patches/server/0811-Add-EntityPortalReadyEvent.patch b/patches/server/0809-Add-EntityPortalReadyEvent.patch similarity index 95% rename from patches/server/0811-Add-EntityPortalReadyEvent.patch rename to patches/server/0809-Add-EntityPortalReadyEvent.patch index 751c7ea58c..4a6e7d5cd8 100644 --- a/patches/server/0811-Add-EntityPortalReadyEvent.patch +++ b/patches/server/0809-Add-EntityPortalReadyEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add EntityPortalReadyEvent diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 10d681e95b8e9cc432ed43930d76da19bfd4fc29..3f9954e1bae36c8dedfb99a5b753d873ce521226 100644 +index 67e5536b9e6fac1fe4f70fe0551b399380ec416f..c7022c10896f53379e3759f597b393143972163c 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -3099,6 +3099,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S diff --git a/patches/server/0812-Don-t-use-level-random-in-entity-constructors.patch b/patches/server/0810-Don-t-use-level-random-in-entity-constructors.patch similarity index 100% rename from patches/server/0812-Don-t-use-level-random-in-entity-constructors.patch rename to patches/server/0810-Don-t-use-level-random-in-entity-constructors.patch diff --git a/patches/server/0813-Send-block-entities-after-destroy-prediction.patch b/patches/server/0811-Send-block-entities-after-destroy-prediction.patch similarity index 100% rename from patches/server/0813-Send-block-entities-after-destroy-prediction.patch rename to patches/server/0811-Send-block-entities-after-destroy-prediction.patch diff --git a/patches/server/0814-Warn-on-plugins-accessing-faraway-chunks.patch b/patches/server/0812-Warn-on-plugins-accessing-faraway-chunks.patch similarity index 96% rename from patches/server/0814-Warn-on-plugins-accessing-faraway-chunks.patch rename to patches/server/0812-Warn-on-plugins-accessing-faraway-chunks.patch index 9b8a11a7f9..0c7ce5648b 100644 --- a/patches/server/0814-Warn-on-plugins-accessing-faraway-chunks.patch +++ b/patches/server/0812-Warn-on-plugins-accessing-faraway-chunks.patch @@ -5,7 +5,7 @@ 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 8200844b73dc7181d5867aafa83087e09ff2df76..e853c9fdc8ebde6a653aacbb1db6679ce4d9d50b 100644 +index 15200db3bc2fde3858d55156b039996366e72dd4..2ef137e93f88b98812fc5b2c36f32d7d7b4216ae 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -813,7 +813,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { @@ -18,7 +18,7 @@ index 8200844b73dc7181d5867aafa83087e09ff2df76..e853c9fdc8ebde6a653aacbb1db6679c private static boolean isOutsideSpawnableHeight(int y) { diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index b504bdd02041f4fe7a7ed4ed9d8563cd9b338125..e72f8f6dd741a7a83f7c40809939bb976c355a0c 100644 +index 75e573ef6e211c1a7fe6168595179eccdb8fd4d2..56a98b297f3f8742d400cd3a1f335cec1d50b331 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -312,9 +312,24 @@ public class CraftWorld extends CraftRegionAccessor implements World { diff --git a/patches/server/0815-Custom-Chat-Completion-Suggestions-API.patch b/patches/server/0813-Custom-Chat-Completion-Suggestions-API.patch similarity index 100% rename from patches/server/0815-Custom-Chat-Completion-Suggestions-API.patch rename to patches/server/0813-Custom-Chat-Completion-Suggestions-API.patch diff --git a/patches/server/0816-Add-and-fix-missing-BlockFadeEvents.patch b/patches/server/0814-Add-and-fix-missing-BlockFadeEvents.patch similarity index 100% rename from patches/server/0816-Add-and-fix-missing-BlockFadeEvents.patch rename to patches/server/0814-Add-and-fix-missing-BlockFadeEvents.patch diff --git a/patches/server/0817-Collision-API.patch b/patches/server/0815-Collision-API.patch similarity index 100% rename from patches/server/0817-Collision-API.patch rename to patches/server/0815-Collision-API.patch diff --git a/patches/server/0818-Fix-suggest-command-message-for-brigadier-syntax-exc.patch b/patches/server/0816-Fix-suggest-command-message-for-brigadier-syntax-exc.patch similarity index 92% rename from patches/server/0818-Fix-suggest-command-message-for-brigadier-syntax-exc.patch rename to patches/server/0816-Fix-suggest-command-message-for-brigadier-syntax-exc.patch index 6dd245b2cb..468dd8c012 100644 --- a/patches/server/0818-Fix-suggest-command-message-for-brigadier-syntax-exc.patch +++ b/patches/server/0816-Fix-suggest-command-message-for-brigadier-syntax-exc.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Fix suggest command message for brigadier syntax exceptions This is a bug accidentally introduced in upstream CB diff --git a/src/main/java/net/minecraft/commands/Commands.java b/src/main/java/net/minecraft/commands/Commands.java -index c2bd7eea15437f3526da37ce1c8642084a26406b..6abef7947cadca6bccac809a8d58d38961132e0f 100644 +index 4ef2f90809b946dcdb52a4ab58cd1c15b682f790..1bf9cff3c1446be74ded3ac14658e283290b438b 100644 --- a/src/main/java/net/minecraft/commands/Commands.java +++ b/src/main/java/net/minecraft/commands/Commands.java @@ -392,7 +392,7 @@ public class Commands { diff --git a/patches/server/0819-Block-Ticking-API.patch b/patches/server/0817-Block-Ticking-API.patch similarity index 100% rename from patches/server/0819-Block-Ticking-API.patch rename to patches/server/0817-Block-Ticking-API.patch diff --git a/patches/server/0820-Add-Velocity-IP-Forwarding-Support.patch b/patches/server/0818-Add-Velocity-IP-Forwarding-Support.patch similarity index 98% rename from patches/server/0820-Add-Velocity-IP-Forwarding-Support.patch rename to patches/server/0818-Add-Velocity-IP-Forwarding-Support.patch index 5965296637..ba835bdc6a 100644 --- a/patches/server/0820-Add-Velocity-IP-Forwarding-Support.patch +++ b/patches/server/0818-Add-Velocity-IP-Forwarding-Support.patch @@ -106,7 +106,7 @@ index 0000000000000000000000000000000000000000..3c31ff3330c2e925e205c0c9ff4f0b83 + } +} diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java -index 7d33ce8d68ca55e0fd37d2d4e3c78a436f17f229..cb7fe116a29916761299a808572f76547d143971 100644 +index 24fd1c18f20752679b5679e1f882b4c1ec2416b2..78687afe9dade0e64cb4868cfd51f8349acdd786 100644 --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java @@ -274,13 +274,20 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface @@ -134,7 +134,7 @@ index 7d33ce8d68ca55e0fd37d2d4e3c78a436f17f229..cb7fe116a29916761299a808572f7654 DedicatedServer.LOGGER.warn("While this makes the game possible to play without internet access, it also opens up the ability for hackers to connect with any username they choose."); } diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -index 6121a3879eeb1d13653e93da02ecdbbcb2a866ac..a9f5af48c1f97b2e635727b48f4383502b17d82f 100644 +index c03329267a2a97af32a0c2c9d7e94fa00596e1cf..399786839bb9dbf96d2ecd654f999cb944cf2822 100644 --- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java @@ -64,6 +64,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, @@ -228,7 +228,7 @@ index 6121a3879eeb1d13653e93da02ecdbbcb2a866ac..a9f5af48c1f97b2e635727b48f438350 } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 69ae0f5d0a398f7e2509697e8de95a2a82ec15ef..16c2942ef30c8f3caccb56c85ebad660f785c070 100644 +index b0a058139d7e57b575382162408bb3687e237de3..1c7f88d71ee7262a31d75e1462e45f3f5e8da232 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -803,7 +803,7 @@ public final class CraftServer implements Server { diff --git a/patches/server/0821-Add-NamespacedKey-biome-methods.patch b/patches/server/0819-Add-NamespacedKey-biome-methods.patch similarity index 100% rename from patches/server/0821-Add-NamespacedKey-biome-methods.patch rename to patches/server/0819-Add-NamespacedKey-biome-methods.patch diff --git a/patches/server/0822-Fix-plugin-loggers-on-server-shutdown.patch b/patches/server/0820-Fix-plugin-loggers-on-server-shutdown.patch similarity index 100% rename from patches/server/0822-Fix-plugin-loggers-on-server-shutdown.patch rename to patches/server/0820-Fix-plugin-loggers-on-server-shutdown.patch diff --git a/patches/server/0823-Stop-large-look-changes-from-crashing-the-server.patch b/patches/server/0821-Stop-large-look-changes-from-crashing-the-server.patch similarity index 96% rename from patches/server/0823-Stop-large-look-changes-from-crashing-the-server.patch rename to patches/server/0821-Stop-large-look-changes-from-crashing-the-server.patch index 0ae5d2e6d0..70102e6029 100644 --- a/patches/server/0823-Stop-large-look-changes-from-crashing-the-server.patch +++ b/patches/server/0821-Stop-large-look-changes-from-crashing-the-server.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Stop large look changes from crashing the server Co-authored-by: Jaren Knodel diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index e94084b1f0fb04625cb94ca07825b8f78c0c9012..bbe594f57b7d11d6947b6b313901020c06324bdc 100644 +index 1666a06f64826da9b9e122d3811ecfce16255d1a..085ab9cd7e0898313ad4542ca2fc949377dad521 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3056,37 +3056,15 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0824-Fire-EntityChangeBlockEvent-in-more-places.patch b/patches/server/0822-Fire-EntityChangeBlockEvent-in-more-places.patch similarity index 100% rename from patches/server/0824-Fire-EntityChangeBlockEvent-in-more-places.patch rename to patches/server/0822-Fire-EntityChangeBlockEvent-in-more-places.patch diff --git a/patches/server/0825-Missing-eating-regain-reason.patch b/patches/server/0823-Missing-eating-regain-reason.patch similarity index 100% rename from patches/server/0825-Missing-eating-regain-reason.patch rename to patches/server/0823-Missing-eating-regain-reason.patch diff --git a/patches/server/0826-Missing-effect-cause.patch b/patches/server/0824-Missing-effect-cause.patch similarity index 100% rename from patches/server/0826-Missing-effect-cause.patch rename to patches/server/0824-Missing-effect-cause.patch diff --git a/patches/server/0827-Added-byte-array-serialization-deserialization-for-P.patch b/patches/server/0825-Added-byte-array-serialization-deserialization-for-P.patch similarity index 100% rename from patches/server/0827-Added-byte-array-serialization-deserialization-for-P.patch rename to patches/server/0825-Added-byte-array-serialization-deserialization-for-P.patch diff --git a/patches/server/0828-Add-a-consumer-parameter-to-ProjectileSource-launchP.patch b/patches/server/0826-Add-a-consumer-parameter-to-ProjectileSource-launchP.patch similarity index 100% rename from patches/server/0828-Add-a-consumer-parameter-to-ProjectileSource-launchP.patch rename to patches/server/0826-Add-a-consumer-parameter-to-ProjectileSource-launchP.patch diff --git a/patches/server/0829-Call-BlockPhysicsEvent-more-often.patch b/patches/server/0827-Call-BlockPhysicsEvent-more-often.patch similarity index 100% rename from patches/server/0829-Call-BlockPhysicsEvent-more-often.patch rename to patches/server/0827-Call-BlockPhysicsEvent-more-often.patch diff --git a/patches/server/0830-Configurable-chat-thread-limit.patch b/patches/server/0828-Configurable-chat-thread-limit.patch similarity index 100% rename from patches/server/0830-Configurable-chat-thread-limit.patch rename to patches/server/0828-Configurable-chat-thread-limit.patch diff --git a/patches/server/0831-Mitigate-effects-of-WorldCreator-keepSpawnLoaded-ret.patch b/patches/server/0829-Mitigate-effects-of-WorldCreator-keepSpawnLoaded-ret.patch similarity index 100% rename from patches/server/0831-Mitigate-effects-of-WorldCreator-keepSpawnLoaded-ret.patch rename to patches/server/0829-Mitigate-effects-of-WorldCreator-keepSpawnLoaded-ret.patch diff --git a/patches/server/0832-fix-Jigsaw-block-kicking-user.patch b/patches/server/0830-fix-Jigsaw-block-kicking-user.patch similarity index 100% rename from patches/server/0832-fix-Jigsaw-block-kicking-user.patch rename to patches/server/0830-fix-Jigsaw-block-kicking-user.patch diff --git a/patches/server/0833-use-BlockFormEvent-for-mud-converting-into-clay.patch b/patches/server/0831-use-BlockFormEvent-for-mud-converting-into-clay.patch similarity index 100% rename from patches/server/0833-use-BlockFormEvent-for-mud-converting-into-clay.patch rename to patches/server/0831-use-BlockFormEvent-for-mud-converting-into-clay.patch diff --git a/patches/server/0834-Add-getDrops-to-BlockState.patch b/patches/server/0832-Add-getDrops-to-BlockState.patch similarity index 100% rename from patches/server/0834-Add-getDrops-to-BlockState.patch rename to patches/server/0832-Add-getDrops-to-BlockState.patch diff --git a/patches/server/0835-Fix-a-bunch-of-vanilla-bugs.patch b/patches/server/0833-Fix-a-bunch-of-vanilla-bugs.patch similarity index 98% rename from patches/server/0835-Fix-a-bunch-of-vanilla-bugs.patch rename to patches/server/0833-Fix-a-bunch-of-vanilla-bugs.patch index 52b5ed123b..a2d0ca49c5 100644 --- a/patches/server/0835-Fix-a-bunch-of-vanilla-bugs.patch +++ b/patches/server/0833-Fix-a-bunch-of-vanilla-bugs.patch @@ -116,7 +116,7 @@ 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 a0603e567deeede8b4cd2ba57ded44f29239d78d..982750fd4f3f474514194df9b76388311c052b29 100644 +index 534493aaddced9200e1618d5eabf2b176a1f35b6..a58c47b16254262ec705a8f986ef42c71503770d 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java @@ -898,7 +898,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider @@ -129,7 +129,7 @@ index a0603e567deeede8b4cd2ba57ded44f29239d78d..982750fd4f3f474514194df9b7638831 return this.anyPlayerCloseEnoughForSpawning(pos, false); } diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index d6bf1580787a4d5a2ac9ebde5efe236be3f15a1a..675bc8df01ad9e338541e16575c9ec8e538787e2 100644 +index cf9f2d309a2b8ff67bd43bf191ab37e50baacaff..81db115871c524209adec41e79e37bbfb876805b 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -1032,7 +1032,7 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -142,7 +142,7 @@ index d6bf1580787a4d5a2ac9ebde5efe236be3f15a1a..675bc8df01ad9e338541e16575c9ec8e if (!list.isEmpty()) { diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index d3fdb56f1e62a241d8edbde4faa1296de36de246..482cf5cf164ee33691a5581c6acafb5959705c83 100644 +index 202077ef20e15e7e02a37babc1fb31478db4e92b..62110908f3230aa3e3b81772fed67aee8171cc53 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -468,14 +468,14 @@ public class ServerPlayer extends Player { @@ -285,7 +285,7 @@ index 19540fd4a7f992888fadb6501d0c8a5a7e71fcf6..e241ae250f4f04a17ef2c583d00b065a public void start() { this.creeper.getNavigation().stop(); diff --git a/src/main/java/net/minecraft/world/entity/animal/goat/Goat.java b/src/main/java/net/minecraft/world/entity/animal/goat/Goat.java -index cafea947d49b729268c0fce98ce7fcf4b0c69478..2e631060d1b46c4cfeb8a64b879e995e7109fee8 100644 +index 110dd5418b0512a2f27f0c4d5a5f1812356a6a12..5d247ac38fe8a61603b3d934f3000bcda773142b 100644 --- a/src/main/java/net/minecraft/world/entity/animal/goat/Goat.java +++ b/src/main/java/net/minecraft/world/entity/animal/goat/Goat.java @@ -239,9 +239,10 @@ public class Goat extends Animal { diff --git a/patches/server/0836-Remove-unnecessary-onTrackingStart-during-navigation.patch b/patches/server/0834-Remove-unnecessary-onTrackingStart-during-navigation.patch similarity index 94% rename from patches/server/0836-Remove-unnecessary-onTrackingStart-during-navigation.patch rename to patches/server/0834-Remove-unnecessary-onTrackingStart-during-navigation.patch index 4c638e8ea7..0e00a33a69 100644 --- a/patches/server/0836-Remove-unnecessary-onTrackingStart-during-navigation.patch +++ b/patches/server/0834-Remove-unnecessary-onTrackingStart-during-navigation.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Remove unnecessary onTrackingStart during navigation warning diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 675bc8df01ad9e338541e16575c9ec8e538787e2..c71a844064f15bdcc2f4fab14b7ace80d95269c0 100644 +index 81db115871c524209adec41e79e37bbfb876805b..616fe8522736600722a8ab4cce0b36ec359699bd 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -2641,7 +2641,7 @@ public class ServerLevel extends Level implements WorldGenLevel { diff --git a/patches/server/0837-Fix-custom-piglin-loved-items.patch b/patches/server/0835-Fix-custom-piglin-loved-items.patch similarity index 100% rename from patches/server/0837-Fix-custom-piglin-loved-items.patch rename to patches/server/0835-Fix-custom-piglin-loved-items.patch diff --git a/patches/server/0838-EntityPickupItemEvent-fixes.patch b/patches/server/0836-EntityPickupItemEvent-fixes.patch similarity index 100% rename from patches/server/0838-EntityPickupItemEvent-fixes.patch rename to patches/server/0836-EntityPickupItemEvent-fixes.patch diff --git a/patches/server/0839-Correctly-handle-interactions-with-items-on-cooldown.patch b/patches/server/0837-Correctly-handle-interactions-with-items-on-cooldown.patch similarity index 100% rename from patches/server/0839-Correctly-handle-interactions-with-items-on-cooldown.patch rename to patches/server/0837-Correctly-handle-interactions-with-items-on-cooldown.patch diff --git a/patches/server/0840-Add-PlayerInventorySlotChangeEvent.patch b/patches/server/0838-Add-PlayerInventorySlotChangeEvent.patch similarity index 97% rename from patches/server/0840-Add-PlayerInventorySlotChangeEvent.patch rename to patches/server/0838-Add-PlayerInventorySlotChangeEvent.patch index 996866eed8..5ef2fc8d5d 100644 --- a/patches/server/0840-Add-PlayerInventorySlotChangeEvent.patch +++ b/patches/server/0838-Add-PlayerInventorySlotChangeEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add PlayerInventorySlotChangeEvent diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 482cf5cf164ee33691a5581c6acafb5959705c83..78e0c0b1eb659733d555d17dbeca8f186572b777 100644 +index 62110908f3230aa3e3b81772fed67aee8171cc53..4b843912ad87efe41524d5889645f2e8795130b3 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -379,6 +379,25 @@ public class ServerPlayer extends Player { diff --git a/patches/server/0841-Elder-Guardian-appearance-API.patch b/patches/server/0839-Elder-Guardian-appearance-API.patch similarity index 100% rename from patches/server/0841-Elder-Guardian-appearance-API.patch rename to patches/server/0839-Elder-Guardian-appearance-API.patch diff --git a/patches/server/0842-Allow-changing-bed-s-occupied-property.patch b/patches/server/0840-Allow-changing-bed-s-occupied-property.patch similarity index 100% rename from patches/server/0842-Allow-changing-bed-s-occupied-property.patch rename to patches/server/0840-Allow-changing-bed-s-occupied-property.patch diff --git a/patches/server/0843-Add-entity-knockback-API.patch b/patches/server/0841-Add-entity-knockback-API.patch similarity index 100% rename from patches/server/0843-Add-entity-knockback-API.patch rename to patches/server/0841-Add-entity-knockback-API.patch diff --git a/patches/server/0844-Detect-headless-JREs.patch b/patches/server/0842-Detect-headless-JREs.patch similarity index 100% rename from patches/server/0844-Detect-headless-JREs.patch rename to patches/server/0842-Detect-headless-JREs.patch diff --git a/patches/server/0845-fix-entity-vehicle-collision-event-not-called.patch b/patches/server/0843-fix-entity-vehicle-collision-event-not-called.patch similarity index 100% rename from patches/server/0845-fix-entity-vehicle-collision-event-not-called.patch rename to patches/server/0843-fix-entity-vehicle-collision-event-not-called.patch diff --git a/patches/server/0846-optimize-dirt-and-snow-spreading.patch b/patches/server/0844-optimize-dirt-and-snow-spreading.patch similarity index 100% rename from patches/server/0846-optimize-dirt-and-snow-spreading.patch rename to patches/server/0844-optimize-dirt-and-snow-spreading.patch diff --git a/patches/server/0847-Add-EntityToggleSitEvent.patch b/patches/server/0845-Add-EntityToggleSitEvent.patch similarity index 100% rename from patches/server/0847-Add-EntityToggleSitEvent.patch rename to patches/server/0845-Add-EntityToggleSitEvent.patch diff --git a/patches/server/0848-Add-fire-tick-delay-option.patch b/patches/server/0846-Add-fire-tick-delay-option.patch similarity index 100% rename from patches/server/0848-Add-fire-tick-delay-option.patch rename to patches/server/0846-Add-fire-tick-delay-option.patch diff --git a/patches/server/0849-Add-Moving-Piston-API.patch b/patches/server/0847-Add-Moving-Piston-API.patch similarity index 100% rename from patches/server/0849-Add-Moving-Piston-API.patch rename to patches/server/0847-Add-Moving-Piston-API.patch diff --git a/patches/server/0850-Ignore-impossible-spawn-tick.patch b/patches/server/0848-Ignore-impossible-spawn-tick.patch similarity index 100% rename from patches/server/0850-Ignore-impossible-spawn-tick.patch rename to patches/server/0848-Ignore-impossible-spawn-tick.patch diff --git a/patches/server/0851-Track-projectile-source-for-fireworks-from-dispenser.patch b/patches/server/0849-Track-projectile-source-for-fireworks-from-dispenser.patch similarity index 100% rename from patches/server/0851-Track-projectile-source-for-fireworks-from-dispenser.patch rename to patches/server/0849-Track-projectile-source-for-fireworks-from-dispenser.patch diff --git a/patches/server/0852-Fix-EntityArgument-suggestion-permissions-to-align-w.patch b/patches/server/0850-Fix-EntityArgument-suggestion-permissions-to-align-w.patch similarity index 100% rename from patches/server/0852-Fix-EntityArgument-suggestion-permissions-to-align-w.patch rename to patches/server/0850-Fix-EntityArgument-suggestion-permissions-to-align-w.patch diff --git a/patches/server/0853-Fix-EntityCombustEvent-cancellation-cant-fully-preve.patch b/patches/server/0851-Fix-EntityCombustEvent-cancellation-cant-fully-preve.patch similarity index 95% rename from patches/server/0853-Fix-EntityCombustEvent-cancellation-cant-fully-preve.patch rename to patches/server/0851-Fix-EntityCombustEvent-cancellation-cant-fully-preve.patch index 2964a3d3c6..5e1ef1ce6d 100644 --- a/patches/server/0853-Fix-EntityCombustEvent-cancellation-cant-fully-preve.patch +++ b/patches/server/0851-Fix-EntityCombustEvent-cancellation-cant-fully-preve.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Fix EntityCombustEvent cancellation cant fully prevent diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 3f9954e1bae36c8dedfb99a5b753d873ce521226..e83604aa0ae5760ba7335dac53b340406f4ffddf 100644 +index c7022c10896f53379e3759f597b393143972163c..68956aa1e50bef726cb480e3c317223781eb10eb 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -3378,6 +3378,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S diff --git a/patches/server/0854-Add-PrePlayerAttackEntityEvent.patch b/patches/server/0852-Add-PrePlayerAttackEntityEvent.patch similarity index 93% rename from patches/server/0854-Add-PrePlayerAttackEntityEvent.patch rename to patches/server/0852-Add-PrePlayerAttackEntityEvent.patch index 50dfe7026f..4f1c589826 100644 --- a/patches/server/0854-Add-PrePlayerAttackEntityEvent.patch +++ b/patches/server/0852-Add-PrePlayerAttackEntityEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add PrePlayerAttackEntityEvent diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java -index 6ab0c3116a4238a4c5369cc33452fed594149ea4..26930e84a4b089ffdf504ae244701f9c039234d4 100644 +index 548343be02a627d2c2475a4452363876a126b3a8..cc9835f7ee449098d442eeb5d6e77abeb72f108e 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java @@ -1240,8 +1240,17 @@ public abstract class Player extends LivingEntity { diff --git a/patches/server/0855-ensure-reset-EnderDragon-boss-event-name.patch b/patches/server/0853-ensure-reset-EnderDragon-boss-event-name.patch similarity index 96% rename from patches/server/0855-ensure-reset-EnderDragon-boss-event-name.patch rename to patches/server/0853-ensure-reset-EnderDragon-boss-event-name.patch index 8c84417744..0c1a084b1c 100644 --- a/patches/server/0855-ensure-reset-EnderDragon-boss-event-name.patch +++ b/patches/server/0853-ensure-reset-EnderDragon-boss-event-name.patch @@ -6,7 +6,7 @@ Subject: [PATCH] ensure reset EnderDragon boss event name Fix MC-257487 diff --git a/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java b/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java -index 44f799d595d7150f00dfdfa2f85c87386f896607..1469ad613e71bcf0fa8fb9b3389eb830dbd72ca0 100644 +index 02acd171f1d3d783b7cab56c69feca5325878fa8..c298977ae1cac57524b21efcb908b846cbcff6b6 100644 --- a/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java +++ b/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java @@ -73,6 +73,7 @@ public class EndDragonFight { diff --git a/patches/server/0856-fix-MC-252817-green-map-markers-do-not-disappear.patch b/patches/server/0854-fix-MC-252817-green-map-markers-do-not-disappear.patch similarity index 100% rename from patches/server/0856-fix-MC-252817-green-map-markers-do-not-disappear.patch rename to patches/server/0854-fix-MC-252817-green-map-markers-do-not-disappear.patch diff --git a/patches/server/0857-Add-Player-Warden-Warning-API.patch b/patches/server/0855-Add-Player-Warden-Warning-API.patch similarity index 100% rename from patches/server/0857-Add-Player-Warden-Warning-API.patch rename to patches/server/0855-Add-Player-Warden-Warning-API.patch diff --git a/patches/server/0858-More-vanilla-friendly-methods-to-update-trades.patch b/patches/server/0856-More-vanilla-friendly-methods-to-update-trades.patch similarity index 100% rename from patches/server/0858-More-vanilla-friendly-methods-to-update-trades.patch rename to patches/server/0856-More-vanilla-friendly-methods-to-update-trades.patch diff --git a/patches/server/0859-Add-paper-dumplisteners-command.patch b/patches/server/0857-Add-paper-dumplisteners-command.patch similarity index 100% rename from patches/server/0859-Add-paper-dumplisteners-command.patch rename to patches/server/0857-Add-paper-dumplisteners-command.patch diff --git a/patches/server/0860-check-global-player-list-where-appropriate.patch b/patches/server/0858-check-global-player-list-where-appropriate.patch similarity index 96% rename from patches/server/0860-check-global-player-list-where-appropriate.patch rename to patches/server/0858-check-global-player-list-where-appropriate.patch index 1ac6e75a50..cce3063d5c 100644 --- a/patches/server/0860-check-global-player-list-where-appropriate.patch +++ b/patches/server/0858-check-global-player-list-where-appropriate.patch @@ -7,7 +7,7 @@ Makes certain entities check all players when searching for a player instead of just checking players in their world. diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index c71a844064f15bdcc2f4fab14b7ace80d95269c0..77199a85df9559eeb83b6410ab0e1793020fd0c1 100644 +index 616fe8522736600722a8ab4cce0b36ec359699bd..88f2feed0c0612b588a332da59d1e17416bd8982 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -2764,4 +2764,12 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -24,7 +24,7 @@ index c71a844064f15bdcc2f4fab14b7ace80d95269c0..77199a85df9559eeb83b6410ab0e1793 + // Paper end - check global player list where appropriate } diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index bbe594f57b7d11d6947b6b313901020c06324bdc..81814c3896aff6b90c8755a5320ac24da925e5f7 100644 +index 085ab9cd7e0898313ad4542ca2fc949377dad521..6f7990b7dd6d30bd07ec7910d341e2aadca63f2d 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3678,7 +3678,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0861-Fix-async-entity-add-due-to-fungus-trees.patch b/patches/server/0859-Fix-async-entity-add-due-to-fungus-trees.patch similarity index 100% rename from patches/server/0861-Fix-async-entity-add-due-to-fungus-trees.patch rename to patches/server/0859-Fix-async-entity-add-due-to-fungus-trees.patch diff --git a/patches/server/0862-ItemStack-damage-API.patch b/patches/server/0860-ItemStack-damage-API.patch similarity index 100% rename from patches/server/0862-ItemStack-damage-API.patch rename to patches/server/0860-ItemStack-damage-API.patch diff --git a/patches/server/0863-Friction-API.patch b/patches/server/0861-Friction-API.patch similarity index 98% rename from patches/server/0863-Friction-API.patch rename to patches/server/0861-Friction-API.patch index f3ca18a211..0106603392 100644 --- a/patches/server/0863-Friction-API.patch +++ b/patches/server/0861-Friction-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Friction API diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 81814c3896aff6b90c8755a5320ac24da925e5f7..f1627ea97b2ce5eb00e9d30349786c3cac6b98cc 100644 +index 6f7990b7dd6d30bd07ec7910d341e2aadca63f2d..d5d8620bc4cc639daedd424ca137e99811084d78 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -261,6 +261,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0864-Ability-to-control-player-s-insomnia-and-phantoms.patch b/patches/server/0862-Ability-to-control-player-s-insomnia-and-phantoms.patch similarity index 100% rename from patches/server/0864-Ability-to-control-player-s-insomnia-and-phantoms.patch rename to patches/server/0862-Ability-to-control-player-s-insomnia-and-phantoms.patch diff --git a/patches/server/0865-Fix-player-kick-on-shutdown.patch b/patches/server/0863-Fix-player-kick-on-shutdown.patch similarity index 100% rename from patches/server/0865-Fix-player-kick-on-shutdown.patch rename to patches/server/0863-Fix-player-kick-on-shutdown.patch diff --git a/patches/server/0866-Sync-offhand-slot-in-menus.patch b/patches/server/0864-Sync-offhand-slot-in-menus.patch similarity index 97% rename from patches/server/0866-Sync-offhand-slot-in-menus.patch rename to patches/server/0864-Sync-offhand-slot-in-menus.patch index a71c963154..ba4012865e 100644 --- a/patches/server/0866-Sync-offhand-slot-in-menus.patch +++ b/patches/server/0864-Sync-offhand-slot-in-menus.patch @@ -8,7 +8,7 @@ offhand slot isn't sent. This is not correct because you *can* put stuff into th by pressing the offhand swap item diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 78e0c0b1eb659733d555d17dbeca8f186572b777..6bf33688882e3dca8868590454a9d25567a6a780 100644 +index 4b843912ad87efe41524d5889645f2e8795130b3..ea649799341a3f446469048924aae792e211de49 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -348,6 +348,13 @@ public class ServerPlayer extends Player { diff --git a/patches/server/0867-Player-Entity-Tracking-Events.patch b/patches/server/0865-Player-Entity-Tracking-Events.patch similarity index 92% rename from patches/server/0867-Player-Entity-Tracking-Events.patch rename to patches/server/0865-Player-Entity-Tracking-Events.patch index 67931e369e..e46dfbad5f 100644 --- a/patches/server/0867-Player-Entity-Tracking-Events.patch +++ b/patches/server/0865-Player-Entity-Tracking-Events.patch @@ -5,7 +5,7 @@ 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 982750fd4f3f474514194df9b76388311c052b29..a9c94645a4bf3837bce5622b76f0d24a5a4ef065 100644 +index a58c47b16254262ec705a8f986ef42c71503770d..8c5364e6adecc01f4fa9dcd0b4fd18e81324d1a9 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java @@ -1409,7 +1409,11 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider @@ -21,7 +21,7 @@ index 982750fd4f3f474514194df9b76388311c052b29..a9c94645a4bf3837bce5622b76f0d24a } else if (this.seenBy.remove(player.connection)) { this.serverEntity.removePairing(player); diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index e83604aa0ae5760ba7335dac53b340406f4ffddf..f18dfffdc45c23a9a78ae13685a67a7d4603a56b 100644 +index 68956aa1e50bef726cb480e3c317223781eb10eb..308573493d899e7df9b4ecbd4fe7cd5a533628d8 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -4107,7 +4107,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S diff --git a/patches/server/0868-Limit-pet-look-distance.patch b/patches/server/0866-Limit-pet-look-distance.patch similarity index 100% rename from patches/server/0868-Limit-pet-look-distance.patch rename to patches/server/0866-Limit-pet-look-distance.patch diff --git a/patches/server/0869-Properly-resend-entities.patch b/patches/server/0867-Properly-resend-entities.patch similarity index 100% rename from patches/server/0869-Properly-resend-entities.patch rename to patches/server/0867-Properly-resend-entities.patch diff --git a/patches/server/0870-Fixes-and-additions-to-the-SpawnReason-API.patch b/patches/server/0868-Fixes-and-additions-to-the-SpawnReason-API.patch similarity index 100% rename from patches/server/0870-Fixes-and-additions-to-the-SpawnReason-API.patch rename to patches/server/0868-Fixes-and-additions-to-the-SpawnReason-API.patch diff --git a/patches/server/0871-fix-Instruments.patch b/patches/server/0869-fix-Instruments.patch similarity index 100% rename from patches/server/0871-fix-Instruments.patch rename to patches/server/0869-fix-Instruments.patch diff --git a/patches/server/0872-Improve-inlining-for-some-hot-BlockBehavior-and-Flui.patch b/patches/server/0870-Improve-inlining-for-some-hot-BlockBehavior-and-Flui.patch similarity index 100% rename from patches/server/0872-Improve-inlining-for-some-hot-BlockBehavior-and-Flui.patch rename to patches/server/0870-Improve-inlining-for-some-hot-BlockBehavior-and-Flui.patch diff --git a/patches/server/0873-Fix-inconsistencies-in-dispense-events-regarding-sta.patch b/patches/server/0871-Fix-inconsistencies-in-dispense-events-regarding-sta.patch similarity index 100% rename from patches/server/0873-Fix-inconsistencies-in-dispense-events-regarding-sta.patch rename to patches/server/0871-Fix-inconsistencies-in-dispense-events-regarding-sta.patch diff --git a/patches/server/0874-Add-BlockLockCheckEvent.patch b/patches/server/0872-Add-BlockLockCheckEvent.patch similarity index 100% rename from patches/server/0874-Add-BlockLockCheckEvent.patch rename to patches/server/0872-Add-BlockLockCheckEvent.patch diff --git a/patches/server/0875-Add-Sneaking-API-for-Entities.patch b/patches/server/0873-Add-Sneaking-API-for-Entities.patch similarity index 100% rename from patches/server/0875-Add-Sneaking-API-for-Entities.patch rename to patches/server/0873-Add-Sneaking-API-for-Entities.patch diff --git a/patches/server/0876-Improve-logging-and-errors.patch b/patches/server/0874-Improve-logging-and-errors.patch similarity index 100% rename from patches/server/0876-Improve-logging-and-errors.patch rename to patches/server/0874-Improve-logging-and-errors.patch diff --git a/patches/server/0877-Improve-PortalEvents.patch b/patches/server/0875-Improve-PortalEvents.patch similarity index 93% rename from patches/server/0877-Improve-PortalEvents.patch rename to patches/server/0875-Improve-PortalEvents.patch index 2ad20a59ee..4baa9b1721 100644 --- a/patches/server/0877-Improve-PortalEvents.patch +++ b/patches/server/0875-Improve-PortalEvents.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Improve PortalEvents diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index f18dfffdc45c23a9a78ae13685a67a7d4603a56b..3f88e5e6aa260c6c05b57b19c6209357ac0bd4b1 100644 +index 308573493d899e7df9b4ecbd4fe7cd5a533628d8..912913b5d9b71e54661f7e4d1767d7ae149d13f7 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -3765,7 +3765,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S diff --git a/patches/server/0878-Add-config-option-for-spider-worldborder-climbing.patch b/patches/server/0876-Add-config-option-for-spider-worldborder-climbing.patch similarity index 100% rename from patches/server/0878-Add-config-option-for-spider-worldborder-climbing.patch rename to patches/server/0876-Add-config-option-for-spider-worldborder-climbing.patch diff --git a/patches/server/0879-Add-missing-SpigotConfig-logCommands-check.patch b/patches/server/0877-Add-missing-SpigotConfig-logCommands-check.patch similarity index 100% rename from patches/server/0879-Add-missing-SpigotConfig-logCommands-check.patch rename to patches/server/0877-Add-missing-SpigotConfig-logCommands-check.patch diff --git a/patches/server/0880-Fix-NPE-on-Allay-stopDancing-while-not-dancing.patch b/patches/server/0878-Fix-NPE-on-Allay-stopDancing-while-not-dancing.patch similarity index 100% rename from patches/server/0880-Fix-NPE-on-Allay-stopDancing-while-not-dancing.patch rename to patches/server/0878-Fix-NPE-on-Allay-stopDancing-while-not-dancing.patch diff --git a/patches/server/0881-Flying-Fall-Damage.patch b/patches/server/0879-Flying-Fall-Damage.patch similarity index 96% rename from patches/server/0881-Flying-Fall-Damage.patch rename to patches/server/0879-Flying-Fall-Damage.patch index 8bcd7a81a2..e882ff3518 100644 --- a/patches/server/0881-Flying-Fall-Damage.patch +++ b/patches/server/0879-Flying-Fall-Damage.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Flying Fall Damage diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java -index 26930e84a4b089ffdf504ae244701f9c039234d4..659cb241643ddf0b680582b710cea6991dc476cb 100644 +index cc9835f7ee449098d442eeb5d6e77abeb72f108e..a623b22e02647d2b14e0b5a662920c4cc5d4361e 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java @@ -181,6 +181,7 @@ public abstract class Player extends LivingEntity { diff --git a/patches/server/0882-Add-exploded-block-state-to-BlockExplodeEvent-and-En.patch b/patches/server/0880-Add-exploded-block-state-to-BlockExplodeEvent-and-En.patch similarity index 99% rename from patches/server/0882-Add-exploded-block-state-to-BlockExplodeEvent-and-En.patch rename to patches/server/0880-Add-exploded-block-state-to-BlockExplodeEvent-and-En.patch index a25f59f415..dbe8948243 100644 --- a/patches/server/0882-Add-exploded-block-state-to-BlockExplodeEvent-and-En.patch +++ b/patches/server/0880-Add-exploded-block-state-to-BlockExplodeEvent-and-En.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Add exploded block state to BlockExplodeEvent and diff --git a/src/main/java/net/minecraft/world/damagesource/DamageSource.java b/src/main/java/net/minecraft/world/damagesource/DamageSource.java -index 1a0f86b5a632469942e33c237c247d2d1dee4a3d..25a5a3b949a0eb632611355e74ccd4865be108ca 100644 +index ed1277fad60992344b94f8a939febaca3edd9702..fc6903b20a6e084729306fc960a6fc80e094f76c 100644 --- a/src/main/java/net/minecraft/world/damagesource/DamageSource.java +++ b/src/main/java/net/minecraft/world/damagesource/DamageSource.java @@ -52,6 +52,7 @@ public class DamageSource { diff --git a/patches/server/0883-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch b/patches/server/0881-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch similarity index 91% rename from patches/server/0883-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch rename to patches/server/0881-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch index 4d37205c2d..cb64e5ae62 100644 --- a/patches/server/0883-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch +++ b/patches/server/0881-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch @@ -6,7 +6,7 @@ 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 3f88e5e6aa260c6c05b57b19c6209357ac0bd4b1..809762ac5758996668d220f2d3b6ab004bf0e306 100644 +index 912913b5d9b71e54661f7e4d1767d7ae149d13f7..9c686161a1248af1cc8ae20c67c7b2b8d881e07d 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -1162,7 +1162,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S diff --git a/patches/server/0884-config-for-disabling-entity-tag-tags.patch b/patches/server/0882-config-for-disabling-entity-tag-tags.patch similarity index 100% rename from patches/server/0884-config-for-disabling-entity-tag-tags.patch rename to patches/server/0882-config-for-disabling-entity-tag-tags.patch diff --git a/patches/server/0885-Use-single-player-info-update-packet-on-join.patch b/patches/server/0883-Use-single-player-info-update-packet-on-join.patch similarity index 100% rename from patches/server/0885-Use-single-player-info-update-packet-on-join.patch rename to patches/server/0883-Use-single-player-info-update-packet-on-join.patch diff --git a/patches/server/0886-Correctly-shrink-items-during-EntityResurrectEvent.patch b/patches/server/0884-Correctly-shrink-items-during-EntityResurrectEvent.patch similarity index 95% rename from patches/server/0886-Correctly-shrink-items-during-EntityResurrectEvent.patch rename to patches/server/0884-Correctly-shrink-items-during-EntityResurrectEvent.patch index 41e9439102..478a6e9f71 100644 --- a/patches/server/0886-Correctly-shrink-items-during-EntityResurrectEvent.patch +++ b/patches/server/0884-Correctly-shrink-items-during-EntityResurrectEvent.patch @@ -22,7 +22,7 @@ This patch corrects this behaviour by only shrinking the item if a totem of undying was found and the event was called uncancelled. diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index f1627ea97b2ce5eb00e9d30349786c3cac6b98cc..70ab1159191ca4c7e5a271221010c743957a6ed1 100644 +index d5d8620bc4cc639daedd424ca137e99811084d78..1dfef0d35561e0af76ccddcb38ff9a3a99c47691 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -1611,7 +1611,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0887-Win-Screen-API.patch b/patches/server/0885-Win-Screen-API.patch similarity index 100% rename from patches/server/0887-Win-Screen-API.patch rename to patches/server/0885-Win-Screen-API.patch diff --git a/patches/server/0888-Remove-CraftItemStack-setAmount-null-assignment.patch b/patches/server/0886-Remove-CraftItemStack-setAmount-null-assignment.patch similarity index 100% rename from patches/server/0888-Remove-CraftItemStack-setAmount-null-assignment.patch rename to patches/server/0886-Remove-CraftItemStack-setAmount-null-assignment.patch diff --git a/patches/server/0889-Fix-force-opening-enchantment-tables.patch b/patches/server/0887-Fix-force-opening-enchantment-tables.patch similarity index 100% rename from patches/server/0889-Fix-force-opening-enchantment-tables.patch rename to patches/server/0887-Fix-force-opening-enchantment-tables.patch diff --git a/patches/server/0890-Add-Entity-Body-Yaw-API.patch b/patches/server/0888-Add-Entity-Body-Yaw-API.patch similarity index 100% rename from patches/server/0890-Add-Entity-Body-Yaw-API.patch rename to patches/server/0888-Add-Entity-Body-Yaw-API.patch diff --git a/patches/server/0891-Fix-MC-157464-Prevent-sleeping-villagers-moving-towa.patch b/patches/server/0889-Fix-MC-157464-Prevent-sleeping-villagers-moving-towa.patch similarity index 100% rename from patches/server/0891-Fix-MC-157464-Prevent-sleeping-villagers-moving-towa.patch rename to patches/server/0889-Fix-MC-157464-Prevent-sleeping-villagers-moving-towa.patch diff --git a/patches/server/0892-Update-the-flag-when-a-captured-block-state-is-outda.patch b/patches/server/0890-Update-the-flag-when-a-captured-block-state-is-outda.patch similarity index 90% rename from patches/server/0892-Update-the-flag-when-a-captured-block-state-is-outda.patch rename to patches/server/0890-Update-the-flag-when-a-captured-block-state-is-outda.patch index 122e19307c..006fae5113 100644 --- a/patches/server/0892-Update-the-flag-when-a-captured-block-state-is-outda.patch +++ b/patches/server/0890-Update-the-flag-when-a-captured-block-state-is-outda.patch @@ -5,7 +5,7 @@ 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 e853c9fdc8ebde6a653aacbb1db6679ce4d9d50b..8d887a07bd2ef11667ccb34872d629656859fb6c 100644 +index 2ef137e93f88b98812fc5b2c36f32d7d7b4216ae..ba1e041e856261643f0d64528f6fbe2f5279b476 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -923,6 +923,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { diff --git a/patches/server/0893-Add-EntityFertilizeEggEvent.patch b/patches/server/0891-Add-EntityFertilizeEggEvent.patch similarity index 100% rename from patches/server/0893-Add-EntityFertilizeEggEvent.patch rename to patches/server/0891-Add-EntityFertilizeEggEvent.patch diff --git a/patches/server/0894-Fix-HumanEntity-drop-not-updating-the-client-inv.patch b/patches/server/0892-Fix-HumanEntity-drop-not-updating-the-client-inv.patch similarity index 100% rename from patches/server/0894-Fix-HumanEntity-drop-not-updating-the-client-inv.patch rename to patches/server/0892-Fix-HumanEntity-drop-not-updating-the-client-inv.patch diff --git a/patches/server/0895-Add-CompostItemEvent-and-EntityCompostItemEvent.patch b/patches/server/0893-Add-CompostItemEvent-and-EntityCompostItemEvent.patch similarity index 100% rename from patches/server/0895-Add-CompostItemEvent-and-EntityCompostItemEvent.patch rename to patches/server/0893-Add-CompostItemEvent-and-EntityCompostItemEvent.patch diff --git a/patches/server/0896-Correctly-handle-ArmorStand-invisibility.patch b/patches/server/0894-Correctly-handle-ArmorStand-invisibility.patch similarity index 100% rename from patches/server/0896-Correctly-handle-ArmorStand-invisibility.patch rename to patches/server/0894-Correctly-handle-ArmorStand-invisibility.patch diff --git a/patches/server/0897-Fix-advancement-triggers-for-entity-damage.patch b/patches/server/0895-Fix-advancement-triggers-for-entity-damage.patch similarity index 97% rename from patches/server/0897-Fix-advancement-triggers-for-entity-damage.patch rename to patches/server/0895-Fix-advancement-triggers-for-entity-damage.patch index 504f2e9112..4568aa9c21 100644 --- a/patches/server/0897-Fix-advancement-triggers-for-entity-damage.patch +++ b/patches/server/0895-Fix-advancement-triggers-for-entity-damage.patch @@ -23,7 +23,7 @@ index f054d67a637b204de604fadc0d321f5c9816d808..fc5f1e1b445f0a55a35a31d58a90920a return !this.getResponse(); diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 70ab1159191ca4c7e5a271221010c743957a6ed1..b99c7e77948f2a341dd924f65bf952f8695591b4 100644 +index 1dfef0d35561e0af76ccddcb38ff9a3a99c47691..0a274d7ca72c75c9a36e8e688f22097c4abd8ba2 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -2302,7 +2302,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0898-Fix-text-display-error-on-spawn.patch b/patches/server/0896-Fix-text-display-error-on-spawn.patch similarity index 100% rename from patches/server/0898-Fix-text-display-error-on-spawn.patch rename to patches/server/0896-Fix-text-display-error-on-spawn.patch diff --git a/patches/server/0899-Fix-inventories-returning-null-Locations.patch b/patches/server/0897-Fix-inventories-returning-null-Locations.patch similarity index 100% rename from patches/server/0899-Fix-inventories-returning-null-Locations.patch rename to patches/server/0897-Fix-inventories-returning-null-Locations.patch diff --git a/patches/server/0900-Add-Shearable-API.patch b/patches/server/0898-Add-Shearable-API.patch similarity index 100% rename from patches/server/0900-Add-Shearable-API.patch rename to patches/server/0898-Add-Shearable-API.patch diff --git a/patches/server/0901-Fix-SpawnEggMeta-get-setSpawnedType.patch b/patches/server/0899-Fix-SpawnEggMeta-get-setSpawnedType.patch similarity index 100% rename from patches/server/0901-Fix-SpawnEggMeta-get-setSpawnedType.patch rename to patches/server/0899-Fix-SpawnEggMeta-get-setSpawnedType.patch diff --git a/patches/server/0902-Optimize-Hoppers.patch b/patches/server/0900-Optimize-Hoppers.patch similarity index 100% rename from patches/server/0902-Optimize-Hoppers.patch rename to patches/server/0900-Optimize-Hoppers.patch diff --git a/patches/server/0903-Fix-beehives-generating-from-using-bonemeal.patch b/patches/server/0901-Fix-beehives-generating-from-using-bonemeal.patch similarity index 100% rename from patches/server/0903-Fix-beehives-generating-from-using-bonemeal.patch rename to patches/server/0901-Fix-beehives-generating-from-using-bonemeal.patch diff --git a/patches/server/0904-Fix-crash-relating-to-bad-recipes-in-furnace-like-ti.patch b/patches/server/0902-Fix-crash-relating-to-bad-recipes-in-furnace-like-ti.patch similarity index 100% rename from patches/server/0904-Fix-crash-relating-to-bad-recipes-in-furnace-like-ti.patch rename to patches/server/0902-Fix-crash-relating-to-bad-recipes-in-furnace-like-ti.patch diff --git a/patches/server/0905-Treat-sequence-violations-like-they-should-be.patch b/patches/server/0903-Treat-sequence-violations-like-they-should-be.patch similarity index 100% rename from patches/server/0905-Treat-sequence-violations-like-they-should-be.patch rename to patches/server/0903-Treat-sequence-violations-like-they-should-be.patch diff --git a/patches/server/0906-remove-duplicate-animate-packet-for-records.patch b/patches/server/0904-remove-duplicate-animate-packet-for-records.patch similarity index 100% rename from patches/server/0906-remove-duplicate-animate-packet-for-records.patch rename to patches/server/0904-remove-duplicate-animate-packet-for-records.patch diff --git a/patches/server/0907-Prevent-causing-expired-keys-from-impacting-new-join.patch b/patches/server/0905-Prevent-causing-expired-keys-from-impacting-new-join.patch similarity index 100% rename from patches/server/0907-Prevent-causing-expired-keys-from-impacting-new-join.patch rename to patches/server/0905-Prevent-causing-expired-keys-from-impacting-new-join.patch diff --git a/patches/server/0908-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch b/patches/server/0906-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch similarity index 91% rename from patches/server/0908-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch rename to patches/server/0906-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch index 0b5c35b7d0..bee1419087 100644 --- a/patches/server/0908-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch +++ b/patches/server/0906-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Prevent GameEvents being fired from unloaded chunks diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 77199a85df9559eeb83b6410ab0e1793020fd0c1..799ffd47bca76dd9a8c19ab5d37d09e82b477717 100644 +index 88f2feed0c0612b588a332da59d1e17416bd8982..720d5275199e73b0c9d0b1d1a9f6a4463c9bb3bb 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -1724,6 +1724,11 @@ public class ServerLevel extends Level implements WorldGenLevel { diff --git a/patches/server/0909-Use-array-for-gamerule-storage.patch b/patches/server/0907-Use-array-for-gamerule-storage.patch similarity index 100% rename from patches/server/0909-Use-array-for-gamerule-storage.patch rename to patches/server/0907-Use-array-for-gamerule-storage.patch diff --git a/patches/server/0910-Fix-a-couple-of-upstream-bed-issues.patch b/patches/server/0908-Fix-a-couple-of-upstream-bed-issues.patch similarity index 100% rename from patches/server/0910-Fix-a-couple-of-upstream-bed-issues.patch rename to patches/server/0908-Fix-a-couple-of-upstream-bed-issues.patch diff --git a/patches/server/0911-Fix-demo-flag-not-enabling-demo-mode.patch b/patches/server/0909-Fix-demo-flag-not-enabling-demo-mode.patch similarity index 100% rename from patches/server/0911-Fix-demo-flag-not-enabling-demo-mode.patch rename to patches/server/0909-Fix-demo-flag-not-enabling-demo-mode.patch diff --git a/patches/server/0912-Add-Mob-Experience-reward-API.patch b/patches/server/0910-Add-Mob-Experience-reward-API.patch similarity index 100% rename from patches/server/0912-Add-Mob-Experience-reward-API.patch rename to patches/server/0910-Add-Mob-Experience-reward-API.patch diff --git a/patches/server/0913-Break-redstone-on-top-of-trap-doors-early.patch b/patches/server/0911-Break-redstone-on-top-of-trap-doors-early.patch similarity index 100% rename from patches/server/0913-Break-redstone-on-top-of-trap-doors-early.patch rename to patches/server/0911-Break-redstone-on-top-of-trap-doors-early.patch diff --git a/patches/server/0914-Fix-DamageCause-for-Falling-Blocks.patch b/patches/server/0912-Fix-DamageCause-for-Falling-Blocks.patch similarity index 100% rename from patches/server/0914-Fix-DamageCause-for-Falling-Blocks.patch rename to patches/server/0912-Fix-DamageCause-for-Falling-Blocks.patch diff --git a/patches/server/0915-Avoid-Lazy-Initialization-for-Enum-Fields.patch b/patches/server/0913-Avoid-Lazy-Initialization-for-Enum-Fields.patch similarity index 100% rename from patches/server/0915-Avoid-Lazy-Initialization-for-Enum-Fields.patch rename to patches/server/0913-Avoid-Lazy-Initialization-for-Enum-Fields.patch diff --git a/patches/server/0916-More-accurate-isInOpenWater-impl.patch b/patches/server/0914-More-accurate-isInOpenWater-impl.patch similarity index 100% rename from patches/server/0916-More-accurate-isInOpenWater-impl.patch rename to patches/server/0914-More-accurate-isInOpenWater-impl.patch diff --git a/patches/server/0917-Fix-concurrenct-access-to-lookups-field-in-RegistryO.patch b/patches/server/0915-Fix-concurrenct-access-to-lookups-field-in-RegistryO.patch similarity index 100% rename from patches/server/0917-Fix-concurrenct-access-to-lookups-field-in-RegistryO.patch rename to patches/server/0915-Fix-concurrenct-access-to-lookups-field-in-RegistryO.patch diff --git a/patches/server/0918-Optimise-recalcBlockCounts-for-empty-sections.patch b/patches/server/0916-Optimise-recalcBlockCounts-for-empty-sections.patch similarity index 100% rename from patches/server/0918-Optimise-recalcBlockCounts-for-empty-sections.patch rename to patches/server/0916-Optimise-recalcBlockCounts-for-empty-sections.patch diff --git a/patches/server/0919-Expand-PlayerItemMendEvent.patch b/patches/server/0917-Expand-PlayerItemMendEvent.patch similarity index 100% rename from patches/server/0919-Expand-PlayerItemMendEvent.patch rename to patches/server/0917-Expand-PlayerItemMendEvent.patch diff --git a/patches/server/0920-Refresh-ProjectileSource-for-projectiles.patch b/patches/server/0918-Refresh-ProjectileSource-for-projectiles.patch similarity index 97% rename from patches/server/0920-Refresh-ProjectileSource-for-projectiles.patch rename to patches/server/0918-Refresh-ProjectileSource-for-projectiles.patch index 4f6486d6cb..d8d231dc6f 100644 --- a/patches/server/0920-Refresh-ProjectileSource-for-projectiles.patch +++ b/patches/server/0918-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 809762ac5758996668d220f2d3b6ab004bf0e306..145f9020d4d9f45fffadb9ed8ba5a2f9a13873dc 100644 +index 9c686161a1248af1cc8ae20c67c7b2b8d881e07d..cedf5d153abf6d0edc2a56ca7e393ece362145d3 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -386,6 +386,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S diff --git a/patches/server/0921-Add-transient-modifier-API.patch b/patches/server/0919-Add-transient-modifier-API.patch similarity index 100% rename from patches/server/0921-Add-transient-modifier-API.patch rename to patches/server/0919-Add-transient-modifier-API.patch diff --git a/patches/server/0922-Fix-block-place-logic.patch b/patches/server/0920-Fix-block-place-logic.patch similarity index 97% rename from patches/server/0922-Fix-block-place-logic.patch rename to patches/server/0920-Fix-block-place-logic.patch index 52870b6cb3..fa5764019a 100644 --- a/patches/server/0922-Fix-block-place-logic.patch +++ b/patches/server/0920-Fix-block-place-logic.patch @@ -41,7 +41,7 @@ index df38d95c38831c884cbfb4a15b8ba682f0b1ab51..82a1615f00b6f32c81e537f93a3d3645 } diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 8d887a07bd2ef11667ccb34872d629656859fb6c..7311a9a3b8c4b62b232ea54568c4090a8e121f26 100644 +index ba1e041e856261643f0d64528f6fbe2f5279b476..3660ebab9164146fb75075462802f5ba383dd9c5 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -1038,17 +1038,18 @@ public abstract class Level implements LevelAccessor, AutoCloseable { diff --git a/patches/server/0923-Fix-spigot-sound-playing-for-BlockItem-ItemStacks.patch b/patches/server/0921-Fix-spigot-sound-playing-for-BlockItem-ItemStacks.patch similarity index 100% rename from patches/server/0923-Fix-spigot-sound-playing-for-BlockItem-ItemStacks.patch rename to patches/server/0921-Fix-spigot-sound-playing-for-BlockItem-ItemStacks.patch diff --git a/patches/server/0924-Call-BlockGrowEvent-for-missing-blocks.patch b/patches/server/0922-Call-BlockGrowEvent-for-missing-blocks.patch similarity index 100% rename from patches/server/0924-Call-BlockGrowEvent-for-missing-blocks.patch rename to patches/server/0922-Call-BlockGrowEvent-for-missing-blocks.patch diff --git a/patches/server/0925-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch b/patches/server/0923-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch similarity index 94% rename from patches/server/0925-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch rename to patches/server/0923-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch index 436cde524c..c4f54468e4 100644 --- a/patches/server/0925-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch +++ b/patches/server/0923-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Don't enforce icanhasbukkit default if alias block exists diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 16c2942ef30c8f3caccb56c85ebad660f785c070..dcd0ffc8b1567d51117bc8b811ac066bdf276bc7 100644 +index 1c7f88d71ee7262a31d75e1462e45f3f5e8da232..758ca700cfa0f05357f051962e41a215ade3724f 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -352,7 +352,11 @@ public final class CraftServer implements Server { diff --git a/patches/server/0926-fix-MapLike-spam-for-missing-key-selector.patch b/patches/server/0924-fix-MapLike-spam-for-missing-key-selector.patch similarity index 100% rename from patches/server/0926-fix-MapLike-spam-for-missing-key-selector.patch rename to patches/server/0924-fix-MapLike-spam-for-missing-key-selector.patch diff --git a/patches/server/0927-Fix-sniffer-removeExploredLocation.patch b/patches/server/0925-Fix-sniffer-removeExploredLocation.patch similarity index 100% rename from patches/server/0927-Fix-sniffer-removeExploredLocation.patch rename to patches/server/0925-Fix-sniffer-removeExploredLocation.patch diff --git a/patches/server/0928-Add-method-to-remove-all-active-potion-effects.patch b/patches/server/0926-Add-method-to-remove-all-active-potion-effects.patch similarity index 100% rename from patches/server/0928-Add-method-to-remove-all-active-potion-effects.patch rename to patches/server/0926-Add-method-to-remove-all-active-potion-effects.patch diff --git a/patches/server/0929-Temp-Pre-init-PlayerChunkLoaderData-in-order-to-prep.patch b/patches/server/0927-Temp-Pre-init-PlayerChunkLoaderData-in-order-to-prep.patch similarity index 100% rename from patches/server/0929-Temp-Pre-init-PlayerChunkLoaderData-in-order-to-prep.patch rename to patches/server/0927-Temp-Pre-init-PlayerChunkLoaderData-in-order-to-prep.patch diff --git a/patches/server/0930-Fix-incorrect-crafting-result-amount-for-fireworks.patch b/patches/server/0928-Fix-incorrect-crafting-result-amount-for-fireworks.patch similarity index 100% rename from patches/server/0930-Fix-incorrect-crafting-result-amount-for-fireworks.patch rename to patches/server/0928-Fix-incorrect-crafting-result-amount-for-fireworks.patch diff --git a/patches/server/0931-Properly-cancel-usable-items.patch b/patches/server/0929-Properly-cancel-usable-items.patch similarity index 97% rename from patches/server/0931-Properly-cancel-usable-items.patch rename to patches/server/0929-Properly-cancel-usable-items.patch index 69da56a36f..aa63be117a 100644 --- a/patches/server/0931-Properly-cancel-usable-items.patch +++ b/patches/server/0929-Properly-cancel-usable-items.patch @@ -46,7 +46,7 @@ index 294dd52de7b0b19b19bbef9bb6ec6b5b2845cdeb..ac41dc96a4aee7b0bb71cbf71d3109ff return; } diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index b99c7e77948f2a341dd924f65bf952f8695591b4..5f0d7448bca32a80d4488a4e9ad87918fedf356c 100644 +index 0a274d7ca72c75c9a36e8e688f22097c4abd8ba2..03caab6d49f74402c5c6c932e3a85e72a6edf3bc 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3814,6 +3814,11 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0932-Add-event-for-player-editing-sign.patch b/patches/server/0930-Add-event-for-player-editing-sign.patch similarity index 100% rename from patches/server/0932-Add-event-for-player-editing-sign.patch rename to patches/server/0930-Add-event-for-player-editing-sign.patch diff --git a/patches/server/0933-Only-tick-item-frames-if-players-can-see-it.patch b/patches/server/0931-Only-tick-item-frames-if-players-can-see-it.patch similarity index 100% rename from patches/server/0933-Only-tick-item-frames-if-players-can-see-it.patch rename to patches/server/0931-Only-tick-item-frames-if-players-can-see-it.patch diff --git a/patches/server/0934-Fix-cmd-permission-levels-for-command-blocks.patch b/patches/server/0932-Fix-cmd-permission-levels-for-command-blocks.patch similarity index 98% rename from patches/server/0934-Fix-cmd-permission-levels-for-command-blocks.patch rename to patches/server/0932-Fix-cmd-permission-levels-for-command-blocks.patch index a7a6c86d67..772d421a4a 100644 --- a/patches/server/0934-Fix-cmd-permission-levels-for-command-blocks.patch +++ b/patches/server/0932-Fix-cmd-permission-levels-for-command-blocks.patch @@ -41,7 +41,7 @@ index e65d7980b7ebed60786bc31e2f8156fda3b59556..6978d0a9abc9cc5870ac5ee6308f2e99 // CraftBukkit end diff --git a/src/main/java/net/minecraft/commands/Commands.java b/src/main/java/net/minecraft/commands/Commands.java -index 6abef7947cadca6bccac809a8d58d38961132e0f..1a5b1be217e210db3f498b93fbcae7509be597ee 100644 +index 1bf9cff3c1446be74ded3ac14658e283290b438b..4f627f80811b06d27311a39d00fdc3d39b9887b2 100644 --- a/src/main/java/net/minecraft/commands/Commands.java +++ b/src/main/java/net/minecraft/commands/Commands.java @@ -296,16 +296,7 @@ public class Commands { diff --git a/patches/server/0935-Add-option-to-disable-block-updates.patch b/patches/server/0933-Add-option-to-disable-block-updates.patch similarity index 100% rename from patches/server/0935-Add-option-to-disable-block-updates.patch rename to patches/server/0933-Add-option-to-disable-block-updates.patch diff --git a/patches/server/0936-Call-missing-BlockDispenseEvent.patch b/patches/server/0934-Call-missing-BlockDispenseEvent.patch similarity index 100% rename from patches/server/0936-Call-missing-BlockDispenseEvent.patch rename to patches/server/0934-Call-missing-BlockDispenseEvent.patch diff --git a/patches/server/0937-Don-t-load-chunks-for-supporting-block-checks.patch b/patches/server/0935-Don-t-load-chunks-for-supporting-block-checks.patch similarity index 90% rename from patches/server/0937-Don-t-load-chunks-for-supporting-block-checks.patch rename to patches/server/0935-Don-t-load-chunks-for-supporting-block-checks.patch index af0b86d27f..8b19f91a28 100644 --- a/patches/server/0937-Don-t-load-chunks-for-supporting-block-checks.patch +++ b/patches/server/0935-Don-t-load-chunks-for-supporting-block-checks.patch @@ -5,7 +5,7 @@ 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 145f9020d4d9f45fffadb9ed8ba5a2f9a13873dc..058d63bc53d8b4551d3a1b03b3c66b6e4635e82e 100644 +index cedf5d153abf6d0edc2a56ca7e393ece362145d3..3cbe1cf7ed1091a74432ca6eb5745d10e590f5d3 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -1362,7 +1362,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S diff --git a/patches/server/0938-Optimize-player-lookups-for-beacons.patch b/patches/server/0936-Optimize-player-lookups-for-beacons.patch similarity index 100% rename from patches/server/0938-Optimize-player-lookups-for-beacons.patch rename to patches/server/0936-Optimize-player-lookups-for-beacons.patch diff --git a/patches/server/0939-Add-Sign-getInteractableSideFor.patch b/patches/server/0937-Add-Sign-getInteractableSideFor.patch similarity index 100% rename from patches/server/0939-Add-Sign-getInteractableSideFor.patch rename to patches/server/0937-Add-Sign-getInteractableSideFor.patch diff --git a/patches/server/0940-Array-backed-synched-entity-data.patch b/patches/server/0938-Array-backed-synched-entity-data.patch similarity index 100% rename from patches/server/0940-Array-backed-synched-entity-data.patch rename to patches/server/0938-Array-backed-synched-entity-data.patch diff --git a/patches/server/0941-fix-item-meta-for-tadpole-buckets.patch b/patches/server/0939-fix-item-meta-for-tadpole-buckets.patch similarity index 97% rename from patches/server/0941-fix-item-meta-for-tadpole-buckets.patch rename to patches/server/0939-fix-item-meta-for-tadpole-buckets.patch index 472ece5bf8..ef43744d92 100644 --- a/patches/server/0941-fix-item-meta-for-tadpole-buckets.patch +++ b/patches/server/0939-fix-item-meta-for-tadpole-buckets.patch @@ -5,7 +5,7 @@ Subject: [PATCH] fix item meta for tadpole buckets diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java -index 5df92d21e1e1827c59352d9f89dbfb23af7c0d7b..090ba0b85fe72419c419cc72b5584ec391c0cfa1 100644 +index c421649a0c88ee9c773bb6985f7114e58f08a7a1..71aac5d4cf29cea9daa378fc8ac584750de4d1ca 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java @@ -357,6 +357,7 @@ public final class CraftItemFactory implements ItemFactory { diff --git a/patches/server/0942-Fix-BanList-API.patch b/patches/server/0940-Fix-BanList-API.patch similarity index 100% rename from patches/server/0942-Fix-BanList-API.patch rename to patches/server/0940-Fix-BanList-API.patch diff --git a/patches/server/0943-Determine-lava-and-water-fluid-explosion-resistance-.patch b/patches/server/0941-Determine-lava-and-water-fluid-explosion-resistance-.patch similarity index 100% rename from patches/server/0943-Determine-lava-and-water-fluid-explosion-resistance-.patch rename to patches/server/0941-Determine-lava-and-water-fluid-explosion-resistance-.patch diff --git a/patches/server/0944-Fix-possible-NPE-on-painting-creation.patch b/patches/server/0942-Fix-possible-NPE-on-painting-creation.patch similarity index 100% rename from patches/server/0944-Fix-possible-NPE-on-painting-creation.patch rename to patches/server/0942-Fix-possible-NPE-on-painting-creation.patch diff --git a/patches/server/0945-Only-set-despawnTimer-for-Wandering-Traders-spawned-.patch b/patches/server/0943-Only-set-despawnTimer-for-Wandering-Traders-spawned-.patch similarity index 100% rename from patches/server/0945-Only-set-despawnTimer-for-Wandering-Traders-spawned-.patch rename to patches/server/0943-Only-set-despawnTimer-for-Wandering-Traders-spawned-.patch diff --git a/patches/server/0946-ExperienceOrb-should-call-EntitySpawnEvent.patch b/patches/server/0944-ExperienceOrb-should-call-EntitySpawnEvent.patch similarity index 100% rename from patches/server/0946-ExperienceOrb-should-call-EntitySpawnEvent.patch rename to patches/server/0944-ExperienceOrb-should-call-EntitySpawnEvent.patch diff --git a/patches/server/0947-Make-Amethyst-throw-both-Spread-and-Grow-Events.patch b/patches/server/0945-Make-Amethyst-throw-both-Spread-and-Grow-Events.patch similarity index 100% rename from patches/server/0947-Make-Amethyst-throw-both-Spread-and-Grow-Events.patch rename to patches/server/0945-Make-Amethyst-throw-both-Spread-and-Grow-Events.patch diff --git a/patches/server/0948-Add-whitelist-events.patch b/patches/server/0946-Add-whitelist-events.patch similarity index 100% rename from patches/server/0948-Add-whitelist-events.patch rename to patches/server/0946-Add-whitelist-events.patch diff --git a/patches/server/0949-Implement-PlayerFailMoveEvent.patch b/patches/server/0947-Implement-PlayerFailMoveEvent.patch similarity index 100% rename from patches/server/0949-Implement-PlayerFailMoveEvent.patch rename to patches/server/0947-Implement-PlayerFailMoveEvent.patch diff --git a/patches/server/0950-Folia-scheduler-and-owned-region-API.patch b/patches/server/0948-Folia-scheduler-and-owned-region-API.patch similarity index 99% rename from patches/server/0950-Folia-scheduler-and-owned-region-API.patch rename to patches/server/0948-Folia-scheduler-and-owned-region-API.patch index 38a1d9eb0b..17cf66aa5e 100644 --- a/patches/server/0950-Folia-scheduler-and-owned-region-API.patch +++ b/patches/server/0948-Folia-scheduler-and-owned-region-API.patch @@ -1185,7 +1185,7 @@ index 8d8cc5463f261334d0aabf4fd31854a2af862acc..e05bfebf51d210dad08292489bae8930 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 058d63bc53d8b4551d3a1b03b3c66b6e4635e82e..d97d1878f7c4ddbdfc5fc4d79838e43e7332936e 100644 +index 3cbe1cf7ed1091a74432ca6eb5745d10e590f5d3..de71cbda2f38ebce85819cfe008ae44c969dee01 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -249,11 +249,23 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -1213,7 +1213,7 @@ index 058d63bc53d8b4551d3a1b03b3c66b6e4635e82e..d97d1878f7c4ddbdfc5fc4d79838e43e @Override public CommandSender getBukkitSender(CommandSourceStack wrapper) { return this.getBukkitEntity(); -@@ -4741,6 +4753,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -4736,6 +4748,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S return; } // Paper end - rewrite chunk system @@ -1221,7 +1221,7 @@ index 058d63bc53d8b4551d3a1b03b3c66b6e4635e82e..d97d1878f7c4ddbdfc5fc4d79838e43e if (this.removalReason == null) { this.removalReason = reason; } -@@ -4751,12 +4764,28 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -4746,12 +4759,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); @@ -1251,7 +1251,7 @@ index 058d63bc53d8b4551d3a1b03b3c66b6e4635e82e..d97d1878f7c4ddbdfc5fc4d79838e43e public void setLevelCallback(EntityInLevelCallback changeListener) { this.levelCallback = changeListener; diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index dcd0ffc8b1567d51117bc8b811ac066bdf276bc7..6c99807731006bbc6b1653ff40bb72d2a3170c37 100644 +index 758ca700cfa0f05357f051962e41a215ade3724f..ac5abd9da8205e72f8b422a06ef77ad8b6e5da7b 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -306,6 +306,76 @@ public final class CraftServer implements Server { diff --git a/patches/server/0951-Only-erase-allay-memory-on-non-item-targets.patch b/patches/server/0949-Only-erase-allay-memory-on-non-item-targets.patch similarity index 100% rename from patches/server/0951-Only-erase-allay-memory-on-non-item-targets.patch rename to patches/server/0949-Only-erase-allay-memory-on-non-item-targets.patch diff --git a/patches/server/0952-API-for-updating-recipes-on-clients.patch b/patches/server/0950-API-for-updating-recipes-on-clients.patch similarity index 97% rename from patches/server/0952-API-for-updating-recipes-on-clients.patch rename to patches/server/0950-API-for-updating-recipes-on-clients.patch index deaffb985d..138e49502f 100644 --- a/patches/server/0952-API-for-updating-recipes-on-clients.patch +++ b/patches/server/0950-API-for-updating-recipes-on-clients.patch @@ -39,7 +39,7 @@ index e05bfebf51d210dad08292489bae89300abf99da..7c054f3b431171a296549bc2aa597df8 Iterator iterator1 = this.players.iterator(); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 6c99807731006bbc6b1653ff40bb72d2a3170c37..cce8cc4006c1e7ddae495822fa22771b751e4d20 100644 +index ac5abd9da8205e72f8b422a06ef77ad8b6e5da7b..be176bbb17e871d7ff99e7136cbb0a5bbc25f047 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1129,6 +1129,18 @@ public final class CraftServer implements Server { diff --git a/patches/server/0953-Fix-rotation-when-spawning-display-entities.patch b/patches/server/0951-Fix-rotation-when-spawning-display-entities.patch similarity index 100% rename from patches/server/0953-Fix-rotation-when-spawning-display-entities.patch rename to patches/server/0951-Fix-rotation-when-spawning-display-entities.patch diff --git a/patches/server/0954-Only-capture-actual-tree-growth.patch b/patches/server/0952-Only-capture-actual-tree-growth.patch similarity index 98% rename from patches/server/0954-Only-capture-actual-tree-growth.patch rename to patches/server/0952-Only-capture-actual-tree-growth.patch index 79885da383..ff212708ba 100644 --- a/patches/server/0954-Only-capture-actual-tree-growth.patch +++ b/patches/server/0952-Only-capture-actual-tree-growth.patch @@ -29,7 +29,7 @@ index 2a76c686cc1e5609db85bf21718660cf838d5899..7f48a350a2bddf891e54e8e5349976cd } 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 7311a9a3b8c4b62b232ea54568c4090a8e121f26..03c43220425411e0a135e7d63df276c4571d23d0 100644 +index 3660ebab9164146fb75075462802f5ba383dd9c5..315dc7b198179f2f1384ab898d36d66f3c592d95 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -1898,4 +1898,14 @@ public abstract class Level implements LevelAccessor, AutoCloseable { diff --git a/patches/server/0955-Use-correct-source-for-mushroom-block-spread-event.patch b/patches/server/0953-Use-correct-source-for-mushroom-block-spread-event.patch similarity index 100% rename from patches/server/0955-Use-correct-source-for-mushroom-block-spread-event.patch rename to patches/server/0953-Use-correct-source-for-mushroom-block-spread-event.patch diff --git a/patches/server/0956-Respect-randomizeData-on-more-entities-when-spawning.patch b/patches/server/0954-Respect-randomizeData-on-more-entities-when-spawning.patch similarity index 100% rename from patches/server/0956-Respect-randomizeData-on-more-entities-when-spawning.patch rename to patches/server/0954-Respect-randomizeData-on-more-entities-when-spawning.patch diff --git a/patches/server/0957-Use-correct-seed-on-api-world-load.patch b/patches/server/0955-Use-correct-seed-on-api-world-load.patch similarity index 90% rename from patches/server/0957-Use-correct-seed-on-api-world-load.patch rename to patches/server/0955-Use-correct-seed-on-api-world-load.patch index 6c98e92243..3e622561c9 100644 --- a/patches/server/0957-Use-correct-seed-on-api-world-load.patch +++ b/patches/server/0955-Use-correct-seed-on-api-world-load.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Use correct seed on api world load diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index cce8cc4006c1e7ddae495822fa22771b751e4d20..4a5052d8ba952a386e8a5ace4821848371397a9b 100644 +index be176bbb17e871d7ff99e7136cbb0a5bbc25f047..d9aecf9f930b0cd4b21b7c29628ea4b49f087209 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1347,7 +1347,7 @@ public final class CraftServer implements Server { diff --git a/patches/server/0958-Remove-UpgradeData-neighbour-ticks-outside-of-range.patch b/patches/server/0956-Remove-UpgradeData-neighbour-ticks-outside-of-range.patch similarity index 100% rename from patches/server/0958-Remove-UpgradeData-neighbour-ticks-outside-of-range.patch rename to patches/server/0956-Remove-UpgradeData-neighbour-ticks-outside-of-range.patch diff --git a/patches/server/0959-Cache-map-ids-on-item-frames.patch b/patches/server/0957-Cache-map-ids-on-item-frames.patch similarity index 100% rename from patches/server/0959-Cache-map-ids-on-item-frames.patch rename to patches/server/0957-Cache-map-ids-on-item-frames.patch diff --git a/patches/server/0960-Fix-custom-statistic-criteria-creation.patch b/patches/server/0958-Fix-custom-statistic-criteria-creation.patch similarity index 100% rename from patches/server/0960-Fix-custom-statistic-criteria-creation.patch rename to patches/server/0958-Fix-custom-statistic-criteria-creation.patch diff --git a/patches/server/0961-Bandaid-fix-for-Effect.patch b/patches/server/0959-Bandaid-fix-for-Effect.patch similarity index 98% rename from patches/server/0961-Bandaid-fix-for-Effect.patch rename to patches/server/0959-Bandaid-fix-for-Effect.patch index efc6d6e6bb..a99ca4e333 100644 --- a/patches/server/0961-Bandaid-fix-for-Effect.patch +++ b/patches/server/0959-Bandaid-fix-for-Effect.patch @@ -60,7 +60,7 @@ index a4519762175c68256b1f303daca8b9408ac182bb..457e9093adb99d31ffc7f061d8c858f9 case COMPOSTER_FILL_ATTEMPT: datavalue = ((Boolean) data) ? 1 : 0; diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index e72f8f6dd741a7a83f7c40809939bb976c355a0c..8d76e78f91877d906b03b58dffd1402e15714791 100644 +index 56a98b297f3f8742d400cd3a1f335cec1d50b331..0cc5c04f121860180e5886b484aa3cf8f2002131 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -1430,7 +1430,7 @@ public class CraftWorld extends CraftRegionAccessor implements World { diff --git a/patches/server/0962-SculkCatalyst-bloom-API.patch b/patches/server/0960-SculkCatalyst-bloom-API.patch similarity index 100% rename from patches/server/0962-SculkCatalyst-bloom-API.patch rename to patches/server/0960-SculkCatalyst-bloom-API.patch diff --git a/patches/server/0963-API-for-an-entity-s-scoreboard-name.patch b/patches/server/0961-API-for-an-entity-s-scoreboard-name.patch similarity index 100% rename from patches/server/0963-API-for-an-entity-s-scoreboard-name.patch rename to patches/server/0961-API-for-an-entity-s-scoreboard-name.patch diff --git a/patches/server/0964-Improve-cancelling-PreCreatureSpawnEvent-with-per-pl.patch b/patches/server/0962-Improve-cancelling-PreCreatureSpawnEvent-with-per-pl.patch similarity index 95% rename from patches/server/0964-Improve-cancelling-PreCreatureSpawnEvent-with-per-pl.patch rename to patches/server/0962-Improve-cancelling-PreCreatureSpawnEvent-with-per-pl.patch index 6f931d7d9a..07588bde77 100644 --- a/patches/server/0964-Improve-cancelling-PreCreatureSpawnEvent-with-per-pl.patch +++ b/patches/server/0962-Improve-cancelling-PreCreatureSpawnEvent-with-per-pl.patch @@ -6,7 +6,7 @@ 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 a9c94645a4bf3837bce5622b76f0d24a5a4ef065..cc1b903111730d4042fdbf4d2dae88ae72ac4bc8 100644 +index 8c5364e6adecc01f4fa9dcd0b4fd18e81324d1a9..34edd2032abb9e444d7b67672dc72335216dbe82 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java @@ -386,8 +386,26 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider @@ -61,7 +61,7 @@ index 1483007b79e18107e41037c279e048f04f666d1d..5152979bf81345fc365e7b16028c7d97 spawnercreature_d = NaturalSpawner.createState(naturalSpawnChunkCount, this.level.getAllEntities(), this::getFullChunk, null, true); } else { diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 6bf33688882e3dca8868590454a9d25567a6a780..b63cbff6e42791bb9e490c0fb5e4e719abb4f202 100644 +index ea649799341a3f446469048924aae792e211de49..0dd61a4baee77fec577ca23d9e356c0b4327dded 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -260,6 +260,7 @@ public class ServerPlayer extends Player { @@ -73,7 +73,7 @@ index 6bf33688882e3dca8868590454a9d25567a6a780..b63cbff6e42791bb9e490c0fb5e4e719 // CraftBukkit start public String displayName; diff --git a/src/main/java/net/minecraft/world/level/NaturalSpawner.java b/src/main/java/net/minecraft/world/level/NaturalSpawner.java -index d08c7b0b52065980f1f13c5533ff6355028322db..dc211c6aedc178ac50b7d05aab3662c422211cbd 100644 +index 48cc5623973713e07d95639e5359fc15e59785cc..46d743db099e69e10f5534aafdd7aa5eda67dec9 100644 --- a/src/main/java/net/minecraft/world/level/NaturalSpawner.java +++ b/src/main/java/net/minecraft/world/level/NaturalSpawner.java @@ -277,6 +277,11 @@ public final class NaturalSpawner { diff --git a/patches/server/0965-Deprecate-and-replace-methods-with-old-StructureType.patch b/patches/server/0963-Deprecate-and-replace-methods-with-old-StructureType.patch similarity index 96% rename from patches/server/0965-Deprecate-and-replace-methods-with-old-StructureType.patch rename to patches/server/0963-Deprecate-and-replace-methods-with-old-StructureType.patch index 8ca41cfb6c..fc6082d962 100644 --- a/patches/server/0965-Deprecate-and-replace-methods-with-old-StructureType.patch +++ b/patches/server/0963-Deprecate-and-replace-methods-with-old-StructureType.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Deprecate and replace methods with old StructureType diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 4a5052d8ba952a386e8a5ace4821848371397a9b..70274239aa95d41953291d138cc46e0d7b491a8a 100644 +index d9aecf9f930b0cd4b21b7c29628ea4b49f087209..86554e595e0b61b3ad0d180b94bd73aa05079cec 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1951,6 +1951,11 @@ public final class CraftServer implements Server { diff --git a/patches/server/0966-Don-t-tab-complete-namespaced-commands-if-send-names.patch b/patches/server/0964-Don-t-tab-complete-namespaced-commands-if-send-names.patch similarity index 100% rename from patches/server/0966-Don-t-tab-complete-namespaced-commands-if-send-names.patch rename to patches/server/0964-Don-t-tab-complete-namespaced-commands-if-send-names.patch diff --git a/patches/server/0967-Properly-handle-BlockBreakEvent-isDropItems.patch b/patches/server/0965-Properly-handle-BlockBreakEvent-isDropItems.patch similarity index 100% rename from patches/server/0967-Properly-handle-BlockBreakEvent-isDropItems.patch rename to patches/server/0965-Properly-handle-BlockBreakEvent-isDropItems.patch diff --git a/patches/server/0968-Fire-entity-death-event-for-ender-dragon.patch b/patches/server/0966-Fire-entity-death-event-for-ender-dragon.patch similarity index 100% rename from patches/server/0968-Fire-entity-death-event-for-ender-dragon.patch rename to patches/server/0966-Fire-entity-death-event-for-ender-dragon.patch diff --git a/patches/server/0969-Configurable-entity-tracking-range-by-Y-coordinate.patch b/patches/server/0967-Configurable-entity-tracking-range-by-Y-coordinate.patch similarity index 94% rename from patches/server/0969-Configurable-entity-tracking-range-by-Y-coordinate.patch rename to patches/server/0967-Configurable-entity-tracking-range-by-Y-coordinate.patch index 64db2f97e3..4a323f5f56 100644 --- a/patches/server/0969-Configurable-entity-tracking-range-by-Y-coordinate.patch +++ b/patches/server/0967-Configurable-entity-tracking-range-by-Y-coordinate.patch @@ -6,7 +6,7 @@ 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 cc1b903111730d4042fdbf4d2dae88ae72ac4bc8..3ba98e9bf7db37567d38d62eef6825eba57afdc6 100644 +index 34edd2032abb9e444d7b67672dc72335216dbe82..6e51837a99bb69240f82a061f2c808f78a8346a6 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java @@ -1419,6 +1419,15 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider diff --git a/patches/server/0970-Add-Listing-API-for-Player.patch b/patches/server/0968-Add-Listing-API-for-Player.patch similarity index 100% rename from patches/server/0970-Add-Listing-API-for-Player.patch rename to patches/server/0968-Add-Listing-API-for-Player.patch diff --git a/patches/server/0971-Configurable-Region-Compression-Format.patch b/patches/server/0969-Configurable-Region-Compression-Format.patch similarity index 96% rename from patches/server/0971-Configurable-Region-Compression-Format.patch rename to patches/server/0969-Configurable-Region-Compression-Format.patch index 0edf890d22..12a20130d7 100644 --- a/patches/server/0971-Configurable-Region-Compression-Format.patch +++ b/patches/server/0969-Configurable-Region-Compression-Format.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Configurable Region Compression Format 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 83966430240d375e7618e13c75676d510a222c37..c50d317d63f5ce61788abf449ec59a542b021f50 100644 +index b0fa77d298ad1476fdc2433b0308276068e53a71..22de360e6775943c0c8bd5717c78d49b45e70d6d 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 @@ -424,11 +424,11 @@ public class RegionFile implements AutoCloseable { diff --git a/patches/server/0972-Add-BlockFace-to-BlockDamageEvent.patch b/patches/server/0970-Add-BlockFace-to-BlockDamageEvent.patch similarity index 100% rename from patches/server/0972-Add-BlockFace-to-BlockDamageEvent.patch rename to patches/server/0970-Add-BlockFace-to-BlockDamageEvent.patch diff --git a/patches/server/0973-Fix-NPE-on-Boat-getStatus.patch b/patches/server/0971-Fix-NPE-on-Boat-getStatus.patch similarity index 100% rename from patches/server/0973-Fix-NPE-on-Boat-getStatus.patch rename to patches/server/0971-Fix-NPE-on-Boat-getStatus.patch diff --git a/patches/server/0974-Expand-Pose-API.patch b/patches/server/0972-Expand-Pose-API.patch similarity index 95% rename from patches/server/0974-Expand-Pose-API.patch rename to patches/server/0972-Expand-Pose-API.patch index 3986eb912d..1f9cd15761 100644 --- a/patches/server/0974-Expand-Pose-API.patch +++ b/patches/server/0972-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 d97d1878f7c4ddbdfc5fc4d79838e43e7332936e..c926ee51cf6a5f75c762ace22259b2f38a5f6239 100644 +index de71cbda2f38ebce85819cfe008ae44c969dee01..ecc50db7e63d40944423f74677ed7e916397f6b7 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -423,6 +423,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S diff --git a/patches/server/0975-More-DragonBattle-API.patch b/patches/server/0973-More-DragonBattle-API.patch similarity index 97% rename from patches/server/0975-More-DragonBattle-API.patch rename to patches/server/0973-More-DragonBattle-API.patch index 62707b07e2..3831f7381e 100644 --- a/patches/server/0975-More-DragonBattle-API.patch +++ b/patches/server/0973-More-DragonBattle-API.patch @@ -10,7 +10,7 @@ public net.minecraft.world.level.dimension.end.EndDragonFight respawnCrystals public net.minecraft.world.level.dimension.end.EndDragonFight spawnNewGateway(Lnet/minecraft/core/BlockPos;)V diff --git a/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java b/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java -index 1469ad613e71bcf0fa8fb9b3389eb830dbd72ca0..e0f11a4ec60a72c510af8fa4297eee3727c791bc 100644 +index c298977ae1cac57524b21efcb908b846cbcff6b6..17f4f6b098411c64d09fe01965c22a1789faa6bb 100644 --- a/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java +++ b/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java @@ -439,6 +439,24 @@ public class EndDragonFight { diff --git a/patches/server/0976-Deep-clone-unhandled-nbt-tags.patch b/patches/server/0974-Deep-clone-unhandled-nbt-tags.patch similarity index 100% rename from patches/server/0976-Deep-clone-unhandled-nbt-tags.patch rename to patches/server/0974-Deep-clone-unhandled-nbt-tags.patch diff --git a/patches/server/0977-Add-PlayerPickItemEvent.patch b/patches/server/0975-Add-PlayerPickItemEvent.patch similarity index 100% rename from patches/server/0977-Add-PlayerPickItemEvent.patch rename to patches/server/0975-Add-PlayerPickItemEvent.patch diff --git a/patches/server/0978-Improve-performance-of-mass-crafts.patch b/patches/server/0976-Improve-performance-of-mass-crafts.patch similarity index 100% rename from patches/server/0978-Improve-performance-of-mass-crafts.patch rename to patches/server/0976-Improve-performance-of-mass-crafts.patch diff --git a/patches/server/0979-Allow-trident-custom-damage.patch b/patches/server/0977-Allow-trident-custom-damage.patch similarity index 100% rename from patches/server/0979-Allow-trident-custom-damage.patch rename to patches/server/0977-Allow-trident-custom-damage.patch diff --git a/patches/server/0980-Expose-hand-in-BlockCanBuildEvent.patch b/patches/server/0978-Expose-hand-in-BlockCanBuildEvent.patch similarity index 100% rename from patches/server/0980-Expose-hand-in-BlockCanBuildEvent.patch rename to patches/server/0978-Expose-hand-in-BlockCanBuildEvent.patch diff --git a/patches/server/0981-Optimize-nearest-structure-border-iteration.patch b/patches/server/0979-Optimize-nearest-structure-border-iteration.patch similarity index 95% rename from patches/server/0981-Optimize-nearest-structure-border-iteration.patch rename to patches/server/0979-Optimize-nearest-structure-border-iteration.patch index 5678ffb6f6..ddf78eeb73 100644 --- a/patches/server/0981-Optimize-nearest-structure-border-iteration.patch +++ b/patches/server/0979-Optimize-nearest-structure-border-iteration.patch @@ -14,7 +14,7 @@ ensure that the returned found structure (which may for example be a buried treasure that will be marked on a treasure map) is the same as in vanilla. diff --git a/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java b/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java -index 65db282b32dfec041579812f9b7275d8c0b99a0d..0ae5c5ed8064d9fb3acc10f8503eafdcea42667a 100644 +index 6b743d4c7b304c21e2e89300e69df8eff672e8a6..9cfb0283e568a7d4d554a2fed2417b375485df94 100644 --- a/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java +++ b/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java @@ -260,12 +260,15 @@ public abstract class ChunkGenerator { diff --git a/patches/server/0982-Implement-OfflinePlayer-isConnected.patch b/patches/server/0980-Implement-OfflinePlayer-isConnected.patch similarity index 100% rename from patches/server/0982-Implement-OfflinePlayer-isConnected.patch rename to patches/server/0980-Implement-OfflinePlayer-isConnected.patch diff --git a/patches/server/0983-Fix-inventory-desync.patch b/patches/server/0981-Fix-inventory-desync.patch similarity index 100% rename from patches/server/0983-Fix-inventory-desync.patch rename to patches/server/0981-Fix-inventory-desync.patch diff --git a/patches/server/0984-Add-titleOverride-to-InventoryOpenEvent.patch b/patches/server/0982-Add-titleOverride-to-InventoryOpenEvent.patch similarity index 98% rename from patches/server/0984-Add-titleOverride-to-InventoryOpenEvent.patch rename to patches/server/0982-Add-titleOverride-to-InventoryOpenEvent.patch index 452553c277..5d37d11cdc 100644 --- a/patches/server/0984-Add-titleOverride-to-InventoryOpenEvent.patch +++ b/patches/server/0982-Add-titleOverride-to-InventoryOpenEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add titleOverride to InventoryOpenEvent diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index b63cbff6e42791bb9e490c0fb5e4e719abb4f202..92e48b7368e27aff16552d5ab03d1168598d852f 100644 +index 0dd61a4baee77fec577ca23d9e356c0b4327dded..52f50d89cbbde6898acb61c227c06c9c587d59c0 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -1573,12 +1573,17 @@ public class ServerPlayer extends Player { diff --git a/patches/server/0985-Configure-sniffer-egg-hatch-time.patch b/patches/server/0983-Configure-sniffer-egg-hatch-time.patch similarity index 100% rename from patches/server/0985-Configure-sniffer-egg-hatch-time.patch rename to patches/server/0983-Configure-sniffer-egg-hatch-time.patch diff --git a/patches/server/0986-Do-crystal-portal-proximity-check-before-entity-look.patch b/patches/server/0984-Do-crystal-portal-proximity-check-before-entity-look.patch similarity index 97% rename from patches/server/0986-Do-crystal-portal-proximity-check-before-entity-look.patch rename to patches/server/0984-Do-crystal-portal-proximity-check-before-entity-look.patch index c5c4ed65ca..0d845b7122 100644 --- a/patches/server/0986-Do-crystal-portal-proximity-check-before-entity-look.patch +++ b/patches/server/0984-Do-crystal-portal-proximity-check-before-entity-look.patch @@ -34,7 +34,7 @@ index ca1edc083847b47bb450b291723aca778a5912dc..e1696f6b77df4c8fceaece64701d4db7 } diff --git a/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java b/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java -index e0f11a4ec60a72c510af8fa4297eee3727c791bc..6046dc009c59ac3472eca6a8cfb759eacbfbc70a 100644 +index 17f4f6b098411c64d09fe01965c22a1789faa6bb..8d57a03793934c8c0b259974bd4d9f9c2cab884d 100644 --- a/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java +++ b/src/main/java/net/minecraft/world/level/dimension/end/EndDragonFight.java @@ -558,6 +558,12 @@ public class EndDragonFight { diff --git a/patches/server/0987-Skip-POI-finding-if-stuck-in-vehicle.patch b/patches/server/0985-Skip-POI-finding-if-stuck-in-vehicle.patch similarity index 100% rename from patches/server/0987-Skip-POI-finding-if-stuck-in-vehicle.patch rename to patches/server/0985-Skip-POI-finding-if-stuck-in-vehicle.patch diff --git a/patches/server/0988-Add-slot-sanity-checks-in-container-clicks.patch b/patches/server/0986-Add-slot-sanity-checks-in-container-clicks.patch similarity index 100% rename from patches/server/0988-Add-slot-sanity-checks-in-container-clicks.patch rename to patches/server/0986-Add-slot-sanity-checks-in-container-clicks.patch diff --git a/patches/server/0989-Call-BlockRedstoneEvents-for-lecterns.patch b/patches/server/0987-Call-BlockRedstoneEvents-for-lecterns.patch similarity index 100% rename from patches/server/0989-Call-BlockRedstoneEvents-for-lecterns.patch rename to patches/server/0987-Call-BlockRedstoneEvents-for-lecterns.patch diff --git a/patches/server/0990-Allow-proper-checking-of-empty-item-stacks.patch b/patches/server/0988-Allow-proper-checking-of-empty-item-stacks.patch similarity index 100% rename from patches/server/0990-Allow-proper-checking-of-empty-item-stacks.patch rename to patches/server/0988-Allow-proper-checking-of-empty-item-stacks.patch diff --git a/patches/server/0991-Fix-silent-equipment-change-for-mobs.patch b/patches/server/0989-Fix-silent-equipment-change-for-mobs.patch similarity index 100% rename from patches/server/0991-Fix-silent-equipment-change-for-mobs.patch rename to patches/server/0989-Fix-silent-equipment-change-for-mobs.patch diff --git a/patches/server/0992-Fix-spigot-s-Forced-Stats.patch b/patches/server/0990-Fix-spigot-s-Forced-Stats.patch similarity index 100% rename from patches/server/0992-Fix-spigot-s-Forced-Stats.patch rename to patches/server/0990-Fix-spigot-s-Forced-Stats.patch diff --git a/patches/server/0993-Add-missing-InventoryHolders-to-inventories.patch b/patches/server/0991-Add-missing-InventoryHolders-to-inventories.patch similarity index 99% rename from patches/server/0993-Add-missing-InventoryHolders-to-inventories.patch rename to patches/server/0991-Add-missing-InventoryHolders-to-inventories.patch index abc17ee405..64367c8db8 100644 --- a/patches/server/0993-Add-missing-InventoryHolders-to-inventories.patch +++ b/patches/server/0991-Add-missing-InventoryHolders-to-inventories.patch @@ -112,7 +112,7 @@ index 819187dbcf468d9278ce33bd97688476aab53f8e..32e7c7599bffb9ea5384615d31e0b63d public void setChanged() { CartographyTableMenu.this.slotsChanged(this); diff --git a/src/main/java/net/minecraft/world/inventory/ContainerLevelAccess.java b/src/main/java/net/minecraft/world/inventory/ContainerLevelAccess.java -index f00a957a0f55e69f93e6d7dc80193304447c3dcb..91699661c78089e07be06e4456413c5aa90562b1 100644 +index 85e336637db8643fc5aca1dba724c9b341cbf46f..12b466ccb7c36021cf807c4f3fd2bcb037943abc 100644 --- a/src/main/java/net/minecraft/world/inventory/ContainerLevelAccess.java +++ b/src/main/java/net/minecraft/world/inventory/ContainerLevelAccess.java @@ -21,6 +21,18 @@ public interface ContainerLevelAccess { diff --git a/patches/server/0994-Do-not-read-tile-entities-in-chunks-that-are-positio.patch b/patches/server/0992-Do-not-read-tile-entities-in-chunks-that-are-positio.patch similarity index 97% rename from patches/server/0994-Do-not-read-tile-entities-in-chunks-that-are-positio.patch rename to patches/server/0992-Do-not-read-tile-entities-in-chunks-that-are-positio.patch index f75b6c2e5a..0da15fa481 100644 --- a/patches/server/0994-Do-not-read-tile-entities-in-chunks-that-are-positio.patch +++ b/patches/server/0992-Do-not-read-tile-entities-in-chunks-that-are-positio.patch @@ -10,7 +10,7 @@ which would cause a crash on Folia but would appear to function fine on Paper. diff --git a/src/main/java/net/minecraft/world/level/chunk/storage/ChunkSerializer.java b/src/main/java/net/minecraft/world/level/chunk/storage/ChunkSerializer.java -index df9ae808c5a59ea25145c9df62f42fb33d159021..11eb5fc65ea0dccbb38c7d47a4dfd5cf3b46c79e 100644 +index 72cfe25cbc2076bc83c9f965ab70b0e636800212..c57ca085afe52af0ae9e40e241452796e246f5cc 100644 --- a/src/main/java/net/minecraft/world/level/chunk/storage/ChunkSerializer.java +++ b/src/main/java/net/minecraft/world/level/chunk/storage/ChunkSerializer.java @@ -381,6 +381,13 @@ public class ChunkSerializer { diff --git a/patches/server/0995-Actually-optimise-explosions.patch b/patches/server/0993-Actually-optimise-explosions.patch similarity index 100% rename from patches/server/0995-Actually-optimise-explosions.patch rename to patches/server/0993-Actually-optimise-explosions.patch diff --git a/patches/server/0996-Add-missing-logs-for-log-ips-config-option.patch b/patches/server/0994-Add-missing-logs-for-log-ips-config-option.patch similarity index 100% rename from patches/server/0996-Add-missing-logs-for-log-ips-config-option.patch rename to patches/server/0994-Add-missing-logs-for-log-ips-config-option.patch diff --git a/patches/server/0997-Remove-Spigot-Bug-Fix-for-MC-109346.patch b/patches/server/0995-Remove-Spigot-Bug-Fix-for-MC-109346.patch similarity index 100% rename from patches/server/0997-Remove-Spigot-Bug-Fix-for-MC-109346.patch rename to patches/server/0995-Remove-Spigot-Bug-Fix-for-MC-109346.patch diff --git a/patches/server/0998-Fix-SuspiciousStewMeta.patch b/patches/server/0996-Fix-SuspiciousStewMeta.patch similarity index 100% rename from patches/server/0998-Fix-SuspiciousStewMeta.patch rename to patches/server/0996-Fix-SuspiciousStewMeta.patch diff --git a/patches/server/0999-Optimise-chunk-tick-iteration.patch b/patches/server/0997-Optimise-chunk-tick-iteration.patch similarity index 99% rename from patches/server/0999-Optimise-chunk-tick-iteration.patch rename to patches/server/0997-Optimise-chunk-tick-iteration.patch index 68aad5c1b9..9995794ed7 100644 --- a/patches/server/0999-Optimise-chunk-tick-iteration.patch +++ b/patches/server/0997-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 3ba98e9bf7db37567d38d62eef6825eba57afdc6..e7cb1eb0740dcf8184a609172031f45fbf92957b 100644 +index 6e51837a99bb69240f82a061f2c808f78a8346a6..c6e764f140d3fe6342c6f224fe0d9643a3185cba 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 @@ -365,7 +365,7 @@ index 5152979bf81345fc365e7b16028c7d970d2f5856..44ada45d9bf2d9b48e5de1c3cb1a8559 gameprofilerfiller.pop(); } diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 92e48b7368e27aff16552d5ab03d1168598d852f..f4f8c60a24664b6fb33361ae830987701a0e9394 100644 +index 52f50d89cbbde6898acb61c227c06c9c587d59c0..1bdc710ae8ad0629eb715e00254f8465e69fb9d1 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -325,6 +325,9 @@ public class ServerPlayer extends Player { diff --git a/patches/server/1000-Lag-compensation-ticks.patch b/patches/server/0998-Lag-compensation-ticks.patch similarity index 97% rename from patches/server/1000-Lag-compensation-ticks.patch rename to patches/server/0998-Lag-compensation-ticks.patch index 4898e06039..a7f23bbb82 100644 --- a/patches/server/1000-Lag-compensation-ticks.patch +++ b/patches/server/0998-Lag-compensation-ticks.patch @@ -30,7 +30,7 @@ index 140dd3283eb2bb0e1ea76034f71f9184b9761789..c1c1763de0ad0376c504946cbfd7bbd5 net.minecraft.world.level.block.entity.HopperBlockEntity.skipHopperEvents = worldserver.paperConfig().hopper.disableMoveEvent || org.bukkit.event.inventory.InventoryMoveItemEvent.getHandlerList().getRegisteredListeners().length == 0; // Paper - Perf: Optimize Hoppers worldserver.hasEntityMoveEvent = io.papermc.paper.event.entity.EntityMoveEvent.getHandlerList().getRegisteredListeners().length > 0; // Paper diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 799ffd47bca76dd9a8c19ab5d37d09e82b477717..8a7de73ce83966c81c456d4744b04fd0f886646d 100644 +index 720d5275199e73b0c9d0b1d1a9f6a4463c9bb3bb..6d1e96e971d03026a5583455193c023188fa8157 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -570,6 +570,17 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -65,7 +65,7 @@ index 9024cd25faabb4d5aed3681d4389baad6ad7b964..82aabd5234102c3763891ebe3009e75f 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 5f0d7448bca32a80d4488a4e9ad87918fedf356c..2a9b9c28e667c5fafe1eeb9bc7a41fa80843bd82 100644 +index 03caab6d49f74402c5c6c932e3a85e72a6edf3bc..85d743315ae0083636c6ffee2f5081e3def4c4ee 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3819,6 +3819,10 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/1001-Fix-race-condition-on-UpgradeData.BlockFixers-class-.patch b/patches/server/0999-Fix-race-condition-on-UpgradeData.BlockFixers-class-.patch similarity index 100% rename from patches/server/1001-Fix-race-condition-on-UpgradeData.BlockFixers-class-.patch rename to patches/server/0999-Fix-race-condition-on-UpgradeData.BlockFixers-class-.patch diff --git a/patches/server/1002-Fix-NPE-in-AdvancementProgress-getDateAwarded.patch b/patches/server/1000-Fix-NPE-in-AdvancementProgress-getDateAwarded.patch similarity index 100% rename from patches/server/1002-Fix-NPE-in-AdvancementProgress-getDateAwarded.patch rename to patches/server/1000-Fix-NPE-in-AdvancementProgress-getDateAwarded.patch diff --git a/patches/server/1003-Fix-team-sidebar-objectives-not-being-cleared.patch b/patches/server/1001-Fix-team-sidebar-objectives-not-being-cleared.patch similarity index 100% rename from patches/server/1003-Fix-team-sidebar-objectives-not-being-cleared.patch rename to patches/server/1001-Fix-team-sidebar-objectives-not-being-cleared.patch diff --git a/patches/server/1004-Optimise-nearby-player-retrieval.patch b/patches/server/1002-Optimise-nearby-player-retrieval.patch similarity index 99% rename from patches/server/1004-Optimise-nearby-player-retrieval.patch rename to patches/server/1002-Optimise-nearby-player-retrieval.patch index 902b9ab5fb..602c0b77e1 100644 --- a/patches/server/1004-Optimise-nearby-player-retrieval.patch +++ b/patches/server/1002-Optimise-nearby-player-retrieval.patch @@ -8,7 +8,7 @@ we can instead use the nearby player tracking system to reduce the number of tests per search. diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 8a7de73ce83966c81c456d4744b04fd0f886646d..e57d86b0f66f5ca6e494c693128d67eedbb8ed0d 100644 +index 6d1e96e971d03026a5583455193c023188fa8157..575a2be5b5d2062b7b8629e8691a604ad801720e 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -581,6 +581,115 @@ public class ServerLevel extends Level implements WorldGenLevel { diff --git a/patches/server/1005-Fix-missing-map-initialize-event-call.patch b/patches/server/1003-Fix-missing-map-initialize-event-call.patch similarity index 95% rename from patches/server/1005-Fix-missing-map-initialize-event-call.patch rename to patches/server/1003-Fix-missing-map-initialize-event-call.patch index f3b3bbca54..4dfd28acb4 100644 --- a/patches/server/1005-Fix-missing-map-initialize-event-call.patch +++ b/patches/server/1003-Fix-missing-map-initialize-event-call.patch @@ -7,7 +7,7 @@ Subject: [PATCH] Fix missing map initialize event call public net.minecraft.world.level.storage.DimensionDataStorage readSavedData(Ljava/util/function/Function;Lnet/minecraft/util/datafix/DataFixTypes;Ljava/lang/String;)Lnet/minecraft/world/level/saveddata/SavedData; diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index e57d86b0f66f5ca6e494c693128d67eedbb8ed0d..51f14e0c22dd66d8e33c132974139922fcadf095 100644 +index 575a2be5b5d2062b7b8629e8691a604ad801720e..a89d3bcfe24d70d8764fe6931dafdeaf1111117e 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -2133,13 +2133,25 @@ public class ServerLevel extends Level implements WorldGenLevel { diff --git a/patches/server/1006-Update-entity-data-when-attaching-firework-to-entity.patch b/patches/server/1004-Update-entity-data-when-attaching-firework-to-entity.patch similarity index 100% rename from patches/server/1006-Update-entity-data-when-attaching-firework-to-entity.patch rename to patches/server/1004-Update-entity-data-when-attaching-firework-to-entity.patch diff --git a/patches/server/1007-Use-correct-variable-for-initializing-CraftLootTable.patch b/patches/server/1005-Use-correct-variable-for-initializing-CraftLootTable.patch similarity index 100% rename from patches/server/1007-Use-correct-variable-for-initializing-CraftLootTable.patch rename to patches/server/1005-Use-correct-variable-for-initializing-CraftLootTable.patch diff --git a/patches/server/1008-Make-setVelocity-method-of-Fireballs-change-the-trav.patch b/patches/server/1006-Make-setVelocity-method-of-Fireballs-change-the-trav.patch similarity index 100% rename from patches/server/1008-Make-setVelocity-method-of-Fireballs-change-the-trav.patch rename to patches/server/1006-Make-setVelocity-method-of-Fireballs-change-the-trav.patch diff --git a/patches/server/1009-Fix-UnsafeValues-loadAdvancement.patch b/patches/server/1007-Fix-UnsafeValues-loadAdvancement.patch similarity index 100% rename from patches/server/1009-Fix-UnsafeValues-loadAdvancement.patch rename to patches/server/1007-Fix-UnsafeValues-loadAdvancement.patch diff --git a/patches/server/1010-Add-player-idle-duration-API.patch b/patches/server/1008-Add-player-idle-duration-API.patch similarity index 100% rename from patches/server/1010-Add-player-idle-duration-API.patch rename to patches/server/1008-Add-player-idle-duration-API.patch diff --git a/patches/server/1011-Don-t-check-if-we-can-see-non-visible-entities.patch b/patches/server/1009-Don-t-check-if-we-can-see-non-visible-entities.patch similarity index 91% rename from patches/server/1011-Don-t-check-if-we-can-see-non-visible-entities.patch rename to patches/server/1009-Don-t-check-if-we-can-see-non-visible-entities.patch index 19ba458122..8016577180 100644 --- a/patches/server/1011-Don-t-check-if-we-can-see-non-visible-entities.patch +++ b/patches/server/1009-Don-t-check-if-we-can-see-non-visible-entities.patch @@ -5,7 +5,7 @@ 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 e7cb1eb0740dcf8184a609172031f45fbf92957b..4160fff108cc83bc0a1f0a0389ab22f722d483b4 100644 +index c6e764f140d3fe6342c6f224fe0d9643a3185cba..2458bc75ece2d5eadc49df0f1c94702bd20e779f 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java @@ -1435,7 +1435,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider diff --git a/patches/server/1012-Fix-NPE-in-SculkBloomEvent-world-access.patch b/patches/server/1010-Fix-NPE-in-SculkBloomEvent-world-access.patch similarity index 100% rename from patches/server/1012-Fix-NPE-in-SculkBloomEvent-world-access.patch rename to patches/server/1010-Fix-NPE-in-SculkBloomEvent-world-access.patch diff --git a/patches/server/1013-Allow-null-itemstack-for-Player-sendEquipmentChange.patch b/patches/server/1011-Allow-null-itemstack-for-Player-sendEquipmentChange.patch similarity index 100% rename from patches/server/1013-Allow-null-itemstack-for-Player-sendEquipmentChange.patch rename to patches/server/1011-Allow-null-itemstack-for-Player-sendEquipmentChange.patch diff --git a/patches/server/1014-Optimize-VarInts.patch b/patches/server/1012-Optimize-VarInts.patch similarity index 100% rename from patches/server/1014-Optimize-VarInts.patch rename to patches/server/1012-Optimize-VarInts.patch diff --git a/patches/server/1015-Add-API-to-get-the-collision-shape-of-a-block-before.patch b/patches/server/1013-Add-API-to-get-the-collision-shape-of-a-block-before.patch similarity index 100% rename from patches/server/1015-Add-API-to-get-the-collision-shape-of-a-block-before.patch rename to patches/server/1013-Add-API-to-get-the-collision-shape-of-a-block-before.patch diff --git a/patches/server/1016-Add-predicate-for-blocks-when-raytracing.patch b/patches/server/1014-Add-predicate-for-blocks-when-raytracing.patch similarity index 98% rename from patches/server/1016-Add-predicate-for-blocks-when-raytracing.patch rename to patches/server/1014-Add-predicate-for-blocks-when-raytracing.patch index 9c300fbad9..b658f2d1c5 100644 --- a/patches/server/1016-Add-predicate-for-blocks-when-raytracing.patch +++ b/patches/server/1014-Add-predicate-for-blocks-when-raytracing.patch @@ -47,7 +47,7 @@ index 7df62a219d0bcffc793c1a8c55b6ed244fdeb199..4b7ea18a34675702c5b17c4819f79778 Vec3 vec3d = raytrace1.getFrom().subtract(raytrace1.getTo()); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 8d76e78f91877d906b03b58dffd1402e15714791..2c318e68aa20e8783f7f58babe1efc72bcb3450b 100644 +index 0cc5c04f121860180e5886b484aa3cf8f2002131..c292895e7295077f513271df1bad90cbdac08f2f 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -1125,9 +1125,15 @@ public class CraftWorld extends CraftRegionAccessor implements World { diff --git a/patches/server/1017-Broadcast-take-item-packets-with-collector-as-source.patch b/patches/server/1015-Broadcast-take-item-packets-with-collector-as-source.patch similarity index 92% rename from patches/server/1017-Broadcast-take-item-packets-with-collector-as-source.patch rename to patches/server/1015-Broadcast-take-item-packets-with-collector-as-source.patch index 50cbca03fd..57c8463ee8 100644 --- a/patches/server/1017-Broadcast-take-item-packets-with-collector-as-source.patch +++ b/patches/server/1015-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 2a9b9c28e667c5fafe1eeb9bc7a41fa80843bd82..4070311f8a9c018eef8805e3c1a024e634e57e4f 100644 +index 85d743315ae0083636c6ffee2f5081e3def4c4ee..9fb5b4df574db63f005dc321ba76dcd92ffe67e3 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3704,7 +3704,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/1018-Expand-LingeringPotion-API.patch b/patches/server/1016-Expand-LingeringPotion-API.patch similarity index 100% rename from patches/server/1018-Expand-LingeringPotion-API.patch rename to patches/server/1016-Expand-LingeringPotion-API.patch diff --git a/patches/server/1019-Add-MaterialTagsTest.patch b/patches/server/1017-Add-MaterialTagsTest.patch similarity index 100% rename from patches/server/1019-Add-MaterialTagsTest.patch rename to patches/server/1017-Add-MaterialTagsTest.patch diff --git a/patches/server/1020-Fix-strikeLightningEffect-powers-lightning-rods-and-.patch b/patches/server/1018-Fix-strikeLightningEffect-powers-lightning-rods-and-.patch similarity index 97% rename from patches/server/1020-Fix-strikeLightningEffect-powers-lightning-rods-and-.patch rename to patches/server/1018-Fix-strikeLightningEffect-powers-lightning-rods-and-.patch index 61af637dfa..8e7b748c6a 100644 --- a/patches/server/1020-Fix-strikeLightningEffect-powers-lightning-rods-and-.patch +++ b/patches/server/1018-Fix-strikeLightningEffect-powers-lightning-rods-and-.patch @@ -45,7 +45,7 @@ index 0db0d67f9ac15372becc1166c37f7f0aede4a4da..a9e70484b01fc082ea25d43d1d428334 BlockState iblockdata = BaseFireBlock.getState(this.level(), blockposition); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 2c318e68aa20e8783f7f58babe1efc72bcb3450b..468c68eba244a1307ac283c9bf89196e28a40bf1 100644 +index c292895e7295077f513271df1bad90cbdac08f2f..e8859ba3ec67d14de09e4fdf737e3c938375c23d 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -773,7 +773,7 @@ public class CraftWorld extends CraftRegionAccessor implements World { diff --git a/patches/server/1021-Add-hand-to-fish-event-for-all-player-interactions.patch b/patches/server/1019-Add-hand-to-fish-event-for-all-player-interactions.patch similarity index 100% rename from patches/server/1021-Add-hand-to-fish-event-for-all-player-interactions.patch rename to patches/server/1019-Add-hand-to-fish-event-for-all-player-interactions.patch diff --git a/patches/server/1022-Fix-several-issues-with-EntityBreedEvent.patch b/patches/server/1020-Fix-several-issues-with-EntityBreedEvent.patch similarity index 100% rename from patches/server/1022-Fix-several-issues-with-EntityBreedEvent.patch rename to patches/server/1020-Fix-several-issues-with-EntityBreedEvent.patch diff --git a/patches/server/1023-Add-UUID-attribute-modifier-API.patch b/patches/server/1021-Add-UUID-attribute-modifier-API.patch similarity index 100% rename from patches/server/1023-Add-UUID-attribute-modifier-API.patch rename to patches/server/1021-Add-UUID-attribute-modifier-API.patch diff --git a/patches/server/1024-Fix-missing-event-call-for-entity-teleport-API.patch b/patches/server/1022-Fix-missing-event-call-for-entity-teleport-API.patch similarity index 100% rename from patches/server/1024-Fix-missing-event-call-for-entity-teleport-API.patch rename to patches/server/1022-Fix-missing-event-call-for-entity-teleport-API.patch diff --git a/patches/server/1025-Lazily-create-LootContext-for-criterions.patch b/patches/server/1023-Lazily-create-LootContext-for-criterions.patch similarity index 100% rename from patches/server/1025-Lazily-create-LootContext-for-criterions.patch rename to patches/server/1023-Lazily-create-LootContext-for-criterions.patch diff --git a/patches/server/1026-Don-t-fire-sync-events-during-worldgen.patch b/patches/server/1024-Don-t-fire-sync-events-during-worldgen.patch similarity index 97% rename from patches/server/1026-Don-t-fire-sync-events-during-worldgen.patch rename to patches/server/1024-Don-t-fire-sync-events-during-worldgen.patch index 71f9fb4d51..0ef7a0afae 100644 --- a/patches/server/1026-Don-t-fire-sync-events-during-worldgen.patch +++ b/patches/server/1024-Don-t-fire-sync-events-during-worldgen.patch @@ -19,7 +19,7 @@ where generation happened directly to a ServerLevel and the entity still has the flag set. diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 51f14e0c22dd66d8e33c132974139922fcadf095..9801b283da75aa63d7eba33d08322285c86c241c 100644 +index a89d3bcfe24d70d8764fe6931dafdeaf1111117e..c1560ea2be24f2f4173c2552597527dfd739a776 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -1681,6 +1681,7 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -31,7 +31,7 @@ index 51f14e0c22dd66d8e33c132974139922fcadf095..9801b283da75aa63d7eba33d08322285 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 c926ee51cf6a5f75c762ace22259b2f38a5f6239..c71d1d2885b608c681a95b380c6d68ea9c79cdb2 100644 +index ecc50db7e63d40944423f74677ed7e916397f6b7..afa4a07a94e9d74e6c91892a16ad9fe11dcb4a17 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -713,7 +713,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -68,7 +68,7 @@ index 82695b6f25011a315027bd7a5cb305af31663d4a..d362a06d0600003d40f632eac602ff55 }, () -> { 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 4070311f8a9c018eef8805e3c1a024e634e57e4f..bec8d27ea6077dd06001f48ac624a3da2ad041df 100644 +index 9fb5b4df574db63f005dc321ba76dcd92ffe67e3..060a5069f71ada46e97828560d06448547c2107e 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 { diff --git a/patches/server/1027-Fix-CraftMetaItem-getAttributeModifier-duplication-c.patch b/patches/server/1025-Fix-CraftMetaItem-getAttributeModifier-duplication-c.patch similarity index 100% rename from patches/server/1027-Fix-CraftMetaItem-getAttributeModifier-duplication-c.patch rename to patches/server/1025-Fix-CraftMetaItem-getAttributeModifier-duplication-c.patch diff --git a/patches/server/1028-Restore-vanilla-entity-drops-behavior.patch b/patches/server/1026-Restore-vanilla-entity-drops-behavior.patch similarity index 98% rename from patches/server/1028-Restore-vanilla-entity-drops-behavior.patch rename to patches/server/1026-Restore-vanilla-entity-drops-behavior.patch index aa8f7bc084..e13a962729 100644 --- a/patches/server/1028-Restore-vanilla-entity-drops-behavior.patch +++ b/patches/server/1026-Restore-vanilla-entity-drops-behavior.patch @@ -9,7 +9,7 @@ on dropping the item instead of generalizing it for all dropped items like CB does. diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index f4f8c60a24664b6fb33361ae830987701a0e9394..3506cd1c5960b58fe2805d9cc7ea6758f45d4e2a 100644 +index 1bdc710ae8ad0629eb715e00254f8465e69fb9d1..a43d37d074f89d645ff4a30b38a81f1841594cd9 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -944,22 +944,20 @@ public class ServerPlayer extends Player { @@ -50,7 +50,7 @@ index f4f8c60a24664b6fb33361ae830987701a0e9394..3506cd1c5960b58fe2805d9cc7ea6758 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 c71d1d2885b608c681a95b380c6d68ea9c79cdb2..92f9d55c224cd4e25060d8751ccb28a978979241 100644 +index afa4a07a94e9d74e6c91892a16ad9fe11dcb4a17..30e82b94bbee5f62da3bea5cad69a2bd98fc06e0 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -2703,6 +2703,25 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -104,7 +104,7 @@ index c71d1d2885b608c681a95b380c6d68ea9c79cdb2..92f9d55c224cd4e25060d8751ccb28a9 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 bec8d27ea6077dd06001f48ac624a3da2ad041df..3b37c9a440bc5d6375a653988c9011ba0e9b6e9b 100644 +index 060a5069f71ada46e97828560d06448547c2107e..aa389e1f67cbd1cbb7fcb9c340303bbe37bd48a4 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/1029-Add-Structure-check-API.patch b/patches/server/1027-Add-Structure-check-API.patch similarity index 91% rename from patches/server/1029-Add-Structure-check-API.patch rename to patches/server/1027-Add-Structure-check-API.patch index 419fe46106..7bca0ec250 100644 --- a/patches/server/1029-Add-Structure-check-API.patch +++ b/patches/server/1027-Add-Structure-check-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add Structure check API diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 468c68eba244a1307ac283c9bf89196e28a40bf1..2a685ac009a13d86d5baf3b649830a08189efb19 100644 +index e8859ba3ec67d14de09e4fdf737e3c938375c23d..649f264226eaf88ce9a95521adbe48dd067bdb85 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -230,6 +230,12 @@ public class CraftWorld extends CraftRegionAccessor implements World { diff --git a/patches/server/1030-Dont-resend-blocks-on-interactions.patch b/patches/server/1028-Dont-resend-blocks-on-interactions.patch similarity index 100% rename from patches/server/1030-Dont-resend-blocks-on-interactions.patch rename to patches/server/1028-Dont-resend-blocks-on-interactions.patch diff --git a/patches/server/1031-Keep-previous-behavior-for-setResourcePack.patch b/patches/server/1029-Keep-previous-behavior-for-setResourcePack.patch similarity index 100% rename from patches/server/1031-Keep-previous-behavior-for-setResourcePack.patch rename to patches/server/1029-Keep-previous-behavior-for-setResourcePack.patch diff --git a/patches/server/1032-properly-read-and-store-sus-effect-duration.patch b/patches/server/1030-properly-read-and-store-sus-effect-duration.patch similarity index 100% rename from patches/server/1032-properly-read-and-store-sus-effect-duration.patch rename to patches/server/1030-properly-read-and-store-sus-effect-duration.patch diff --git a/patches/server/1033-Use-correct-max-stack-size-in-crafter.patch b/patches/server/1031-Use-correct-max-stack-size-in-crafter.patch similarity index 100% rename from patches/server/1033-Use-correct-max-stack-size-in-crafter.patch rename to patches/server/1031-Use-correct-max-stack-size-in-crafter.patch diff --git a/patches/server/1034-add-more-scoreboard-API.patch b/patches/server/1032-add-more-scoreboard-API.patch similarity index 100% rename from patches/server/1034-add-more-scoreboard-API.patch rename to patches/server/1032-add-more-scoreboard-API.patch diff --git a/patches/server/1035-Improve-Registry.patch b/patches/server/1033-Improve-Registry.patch similarity index 100% rename from patches/server/1035-Improve-Registry.patch rename to patches/server/1033-Improve-Registry.patch diff --git a/patches/server/1036-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch b/patches/server/1034-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch similarity index 97% rename from patches/server/1036-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch rename to patches/server/1034-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch index 6df06e0dcc..97116f9ab8 100644 --- a/patches/server/1036-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch +++ b/patches/server/1034-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch @@ -26,7 +26,7 @@ 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 3b37c9a440bc5d6375a653988c9011ba0e9b6e9b..e914c36bede52838f47cd88b442b9cde3e4666f3 100644 +index aa389e1f67cbd1cbb7fcb9c340303bbe37bd48a4..c0f931dcd6c40c33d8a92bb01516b383f2bf7bec 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -4205,7 +4205,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/1037-Add-experience-points-API.patch b/patches/server/1035-Add-experience-points-API.patch similarity index 97% rename from patches/server/1037-Add-experience-points-API.patch rename to patches/server/1035-Add-experience-points-API.patch index 8d8c28227b..a2ed55757a 100644 --- a/patches/server/1037-Add-experience-points-API.patch +++ b/patches/server/1035-Add-experience-points-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add experience points API diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java -index 659cb241643ddf0b680582b710cea6991dc476cb..440ddbaf26a5d333a8cd456c501cbc9a759d12f1 100644 +index a623b22e02647d2b14e0b5a662920c4cc5d4361e..9bcb3b01ec3726f1ba77f63878e0eef7dc92bb6f 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java @@ -1833,7 +1833,7 @@ public abstract class Player extends LivingEntity { diff --git a/patches/server/1038-Add-missing-InventoryType.patch b/patches/server/1036-Add-missing-InventoryType.patch similarity index 100% rename from patches/server/1038-Add-missing-InventoryType.patch rename to patches/server/1036-Add-missing-InventoryType.patch diff --git a/patches/server/1039-Add-drops-to-shear-events.patch b/patches/server/1037-Add-drops-to-shear-events.patch similarity index 100% rename from patches/server/1039-Add-drops-to-shear-events.patch rename to patches/server/1037-Add-drops-to-shear-events.patch diff --git a/patches/server/1040-Add-PlayerShieldDisableEvent.patch b/patches/server/1038-Add-PlayerShieldDisableEvent.patch similarity index 97% rename from patches/server/1040-Add-PlayerShieldDisableEvent.patch rename to patches/server/1038-Add-PlayerShieldDisableEvent.patch index 9d5dd42eea..0796bead91 100644 --- a/patches/server/1040-Add-PlayerShieldDisableEvent.patch +++ b/patches/server/1038-Add-PlayerShieldDisableEvent.patch @@ -33,7 +33,7 @@ index c81c72bf1027fcbaac67808fbcf6e0af112176bc..42e2be9286b75a1d34845f303ffc65e9 } } diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java -index 440ddbaf26a5d333a8cd456c501cbc9a759d12f1..54a77399c1c42a1bcdbb4fd2cc09469a4838bd7c 100644 +index 9bcb3b01ec3726f1ba77f63878e0eef7dc92bb6f..708a4b9ba6605bd0c2a4624f9af6777452cf29b3 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java @@ -979,7 +979,7 @@ public abstract class Player extends LivingEntity { diff --git a/patches/server/1041-Add-HiddenPotionEffect-API.patch b/patches/server/1039-Add-HiddenPotionEffect-API.patch similarity index 100% rename from patches/server/1041-Add-HiddenPotionEffect-API.patch rename to patches/server/1039-Add-HiddenPotionEffect-API.patch diff --git a/patches/server/1042-Correctly-check-if-bucket-dispenses-will-succeed-for.patch b/patches/server/1040-Correctly-check-if-bucket-dispenses-will-succeed-for.patch similarity index 100% rename from patches/server/1042-Correctly-check-if-bucket-dispenses-will-succeed-for.patch rename to patches/server/1040-Correctly-check-if-bucket-dispenses-will-succeed-for.patch diff --git a/patches/server/1043-fix-ItemMeta-removing-CustomModelData.patch b/patches/server/1041-fix-ItemMeta-removing-CustomModelData.patch similarity index 100% rename from patches/server/1043-fix-ItemMeta-removing-CustomModelData.patch rename to patches/server/1041-fix-ItemMeta-removing-CustomModelData.patch diff --git a/patches/server/1044-Validate-ResourceLocation-in-NBT-reading.patch b/patches/server/1042-Validate-ResourceLocation-in-NBT-reading.patch similarity index 98% rename from patches/server/1044-Validate-ResourceLocation-in-NBT-reading.patch rename to patches/server/1042-Validate-ResourceLocation-in-NBT-reading.patch index 0a0ac3af7b..cf937cebbb 100644 --- a/patches/server/1044-Validate-ResourceLocation-in-NBT-reading.patch +++ b/patches/server/1042-Validate-ResourceLocation-in-NBT-reading.patch @@ -22,7 +22,7 @@ index 18fad4f083862ace2bc56579883f548f6d697091..8e68a094a22243f3e84110ddf8113621 return Blocks.AIR.defaultBlockState(); } else { diff --git a/src/main/java/net/minecraft/resources/ResourceLocation.java b/src/main/java/net/minecraft/resources/ResourceLocation.java -index 38e2a8cec48bc779b8154d6d719031f457a2403e..4379090b74d156b62b88163a234c22e78454f5e4 100644 +index 5f9dcab27a07969c93555ad0892683c62cbebc8c..a4d875df936b6de16f0233482b03af05b427a79f 100644 --- a/src/main/java/net/minecraft/resources/ResourceLocation.java +++ b/src/main/java/net/minecraft/resources/ResourceLocation.java @@ -31,6 +31,13 @@ public class ResourceLocation implements Comparable { diff --git a/patches/server/1045-Properly-handle-experience-dropping-on-block-break.patch b/patches/server/1043-Properly-handle-experience-dropping-on-block-break.patch similarity index 98% rename from patches/server/1045-Properly-handle-experience-dropping-on-block-break.patch rename to patches/server/1043-Properly-handle-experience-dropping-on-block-break.patch index 27f3eb631e..eacb696b99 100644 --- a/patches/server/1045-Properly-handle-experience-dropping-on-block-break.patch +++ b/patches/server/1043-Properly-handle-experience-dropping-on-block-break.patch @@ -7,7 +7,7 @@ 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 03c43220425411e0a135e7d63df276c4571d23d0..1496b870eaf99d4c3b6dd01159d7c2893fd9366b 100644 +index 315dc7b198179f2f1384ab898d36d66f3c592d95..5c6f656200111cc171a4c789894732d3164c37bc 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -1103,7 +1103,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable { diff --git a/patches/server/1046-Fixup-NamespacedKey-handling.patch b/patches/server/1044-Fixup-NamespacedKey-handling.patch similarity index 100% rename from patches/server/1046-Fixup-NamespacedKey-handling.patch rename to patches/server/1044-Fixup-NamespacedKey-handling.patch