diff --git a/patches/unapplied/server/0658-Add-methods-to-find-targets-for-lightning-strikes.patch b/patches/server/0658-Add-methods-to-find-targets-for-lightning-strikes.patch similarity index 86% rename from patches/unapplied/server/0658-Add-methods-to-find-targets-for-lightning-strikes.patch rename to patches/server/0658-Add-methods-to-find-targets-for-lightning-strikes.patch index 8668b37192..2817f50b08 100644 --- a/patches/unapplied/server/0658-Add-methods-to-find-targets-for-lightning-strikes.patch +++ b/patches/server/0658-Add-methods-to-find-targets-for-lightning-strikes.patch @@ -7,10 +7,10 @@ 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 4cc1cd4924aed4fddd46db9f8c76e45e7bfc661a..dceddff95dd9b152e25f656b95cc71025a123099 100644 +index d2e173c644ca005afd124b30566a01c22bcb7e0e..d5709319497a5589665388afd61307dc7755332d 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java -@@ -976,6 +976,11 @@ public class ServerLevel extends Level implements WorldGenLevel { +@@ -994,6 +994,11 @@ public class ServerLevel extends Level implements WorldGenLevel { } protected BlockPos findLightningTargetAround(BlockPos pos) { @@ -22,7 +22,7 @@ index 4cc1cd4924aed4fddd46db9f8c76e45e7bfc661a..dceddff95dd9b152e25f656b95cc7102 BlockPos blockposition1 = this.getHeightmapPos(Heightmap.Types.MOTION_BLOCKING, pos); Optional optional = this.findLightningRod(blockposition1); -@@ -990,6 +995,7 @@ public class ServerLevel extends Level implements WorldGenLevel { +@@ -1008,6 +1013,7 @@ public class ServerLevel extends Level implements WorldGenLevel { if (!list.isEmpty()) { return ((LivingEntity) list.get(this.random.nextInt(list.size()))).blockPosition(); } else { @@ -31,10 +31,10 @@ index 4cc1cd4924aed4fddd46db9f8c76e45e7bfc661a..dceddff95dd9b152e25f656b95cc7102 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 40cf3f53f46537bfa4fb4c2bedc93cc840084606..874fdf7c0e710e5f685c592ff341025f852bc4b0 100644 +index a5a6a1a946451e3f3f4f88eccb30eb3e870c58de..19db9c2447ffc2321e2f8a3b86f561d29b9eb6de 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 { +@@ -702,6 +702,23 @@ public class CraftWorld extends CraftRegionAccessor implements World { return (LightningStrike) lightning.getBukkitEntity(); } diff --git a/patches/unapplied/server/0659-Get-entity-default-attributes.patch b/patches/server/0659-Get-entity-default-attributes.patch similarity index 97% rename from patches/unapplied/server/0659-Get-entity-default-attributes.patch rename to patches/server/0659-Get-entity-default-attributes.patch index afd4c49b4d..2baecce8ee 100644 --- a/patches/unapplied/server/0659-Get-entity-default-attributes.patch +++ b/patches/server/0659-Get-entity-default-attributes.patch @@ -81,10 +81,10 @@ index 0000000000000000000000000000000000000000..68044b8439c302114240d0ae4da93ab3 + } +} diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java -index 9c06e1b5853de70eb9fad444b2a97acd25328bc4..19c07e2c4b6010bf673f79e58fdbaa41275c4fba 100644 +index 5045af60302e1929d9f904cb74214c3c15cfe60d..33988ab25aba60c75bffbd39da5562333875d0c1 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java +++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java -@@ -563,6 +563,18 @@ public final class CraftMagicNumbers implements UnsafeValues { +@@ -560,6 +560,18 @@ public final class CraftMagicNumbers implements UnsafeValues { public int getProtocolVersion() { return net.minecraft.SharedConstants.getCurrentVersion().getProtocolVersion(); } diff --git a/patches/unapplied/server/0660-Left-handed-API.patch b/patches/server/0660-Left-handed-API.patch similarity index 100% rename from patches/unapplied/server/0660-Left-handed-API.patch rename to patches/server/0660-Left-handed-API.patch diff --git a/patches/unapplied/server/0661-Add-more-advancement-API.patch b/patches/server/0661-Add-more-advancement-API.patch similarity index 95% rename from patches/unapplied/server/0661-Add-more-advancement-API.patch rename to patches/server/0661-Add-more-advancement-API.patch index c7966b2e3e..2b958e7e87 100644 --- a/patches/unapplied/server/0661-Add-more-advancement-API.patch +++ b/patches/server/0661-Add-more-advancement-API.patch @@ -84,16 +84,16 @@ index 0000000000000000000000000000000000000000..1705f65d897114dd0813f6d366124cef + } +} diff --git a/src/main/java/net/minecraft/advancements/DisplayInfo.java b/src/main/java/net/minecraft/advancements/DisplayInfo.java -index a6ea13198a2de14d57472681b5a2b30baf3c4280..11b26d14b863075d776884544629cdd23f219298 100644 +index d357deb8a9e1d4043f5fb3302b957b20ffc0cc32..d83acd5eac3d7d1893b1b97ab0b0764c06da016b 100644 --- a/src/main/java/net/minecraft/advancements/DisplayInfo.java +++ b/src/main/java/net/minecraft/advancements/DisplayInfo.java -@@ -29,6 +29,7 @@ public class DisplayInfo { +@@ -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 DisplayInfo(ItemStack icon, Component title, Component description, @Nullable ResourceLocation background, FrameType frame, boolean showToast, boolean announceToChat, boolean hidden) { + 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 @@ -152,7 +152,7 @@ index 52baf818579a6841b77ff80e42f4f1b9f635ea08..bd640e0d8d796ee114ff787def7e07ed + // Paper end } diff --git a/src/main/java/org/bukkit/craftbukkit/advancement/CraftAdvancementDisplay.java b/src/main/java/org/bukkit/craftbukkit/advancement/CraftAdvancementDisplay.java -index 4aa8cda2bf72627b153e636a408fb3971caf2309..e29d7c6e1cef10a76c8630855fada11cee583d30 100644 +index 8ca86852319d7463f60832bc98b825b0b4325995..62ada73302c6b3ce3fb2dcc8c31a1d9c0ac4fd09 100644 --- a/src/main/java/org/bukkit/craftbukkit/advancement/CraftAdvancementDisplay.java +++ b/src/main/java/org/bukkit/craftbukkit/advancement/CraftAdvancementDisplay.java @@ -6,6 +6,7 @@ import org.bukkit.craftbukkit.inventory.CraftItemStack; @@ -164,7 +164,7 @@ index 4aa8cda2bf72627b153e636a408fb3971caf2309..e29d7c6e1cef10a76c8630855fada11c private final DisplayInfo handle; diff --git a/src/main/java/org/bukkit/craftbukkit/util/Commodore.java b/src/main/java/org/bukkit/craftbukkit/util/Commodore.java -index e0c1131687fffd7f215505caafe6ef2292ac8672..51e60a68484b590906d83541e56f31305e683bc0 100644 +index 812819e814cfbdb542051a7dbfe123d3c59e66bd..61d00421b295103a6964b22fe0dfaf097bd7a671 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/Commodore.java +++ b/src/main/java/org/bukkit/craftbukkit/util/Commodore.java @@ -56,6 +56,7 @@ public class Commodore @@ -175,7 +175,7 @@ index e0c1131687fffd7f215505caafe6ef2292ac8672..51e60a68484b590906d83541e56f3130 private static final Map SEARCH_AND_REMOVE = initReplacementsMap(); private static Map initReplacementsMap() { -@@ -454,6 +455,11 @@ public class Commodore +@@ -457,6 +458,11 @@ public class Commodore super.visitMethodInsn(opcode, owner, name, "()Lcom/destroystokyo/paper/profile/PlayerProfile;", itf); return; } diff --git a/patches/unapplied/server/0662-Add-ItemFactory-getSpawnEgg-API.patch b/patches/server/0662-Add-ItemFactory-getSpawnEgg-API.patch similarity index 90% rename from patches/unapplied/server/0662-Add-ItemFactory-getSpawnEgg-API.patch rename to patches/server/0662-Add-ItemFactory-getSpawnEgg-API.patch index 2890a69389..0c570a0951 100644 --- a/patches/unapplied/server/0662-Add-ItemFactory-getSpawnEgg-API.patch +++ b/patches/server/0662-Add-ItemFactory-getSpawnEgg-API.patch @@ -5,10 +5,10 @@ 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 2251c06ae08a846129b1cef4842c112708a6ecf4..50fa1f903b99edadaa3470c2a6e15a32ff23bc85 100644 +index 866106d0d773e407a0cdd8614818cba4ab910040..259489c7d0f4b5ce3e8f4294f4f853e9b51ded0b 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java -@@ -567,4 +567,19 @@ public final class CraftItemFactory implements ItemFactory { +@@ -570,4 +570,19 @@ public final class CraftItemFactory implements ItemFactory { new net.md_5.bungee.api.chat.TextComponent(customName)); } // Paper end - bungee hover events @@ -29,10 +29,10 @@ index 2251c06ae08a846129b1cef4842c112708a6ecf4..50fa1f903b99edadaa3470c2a6e15a32 + // Paper end } diff --git a/src/main/java/org/bukkit/craftbukkit/util/Commodore.java b/src/main/java/org/bukkit/craftbukkit/util/Commodore.java -index 51e60a68484b590906d83541e56f31305e683bc0..1f30da05f0dd1d0f67ff7ec544e8f8455e2ef516 100644 +index 61d00421b295103a6964b22fe0dfaf097bd7a671..2a75bd263dce91bc64601f96b622ed6d4fb18fe6 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/Commodore.java +++ b/src/main/java/org/bukkit/craftbukkit/util/Commodore.java -@@ -461,6 +461,16 @@ public class Commodore +@@ -464,6 +464,16 @@ public class Commodore return; } // Paper end diff --git a/patches/unapplied/server/0663-Add-critical-damage-API.patch b/patches/server/0663-Add-critical-damage-API.patch similarity index 93% rename from patches/unapplied/server/0663-Add-critical-damage-API.patch rename to patches/server/0663-Add-critical-damage-API.patch index b2d6f4c157..70dba1b3af 100644 --- a/patches/unapplied/server/0663-Add-critical-damage-API.patch +++ b/patches/server/0663-Add-critical-damage-API.patch @@ -28,10 +28,10 @@ index df8c88bfa749e02f633350446101dcce05db7ac1..1a0f86b5a632469942e33c237c247d2d + // Paper end } 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 4bbd46618ec0f00e0aee7f681335bcbdb375c439..8dd7a1405997a7e90aab01ca7c20a616b15ca761 100644 +index e77a2d3a321313e8476068d895dfb39cb152f7e6..9193e0fb5c2a545907c084322b548722312a5583 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java -@@ -1268,7 +1268,7 @@ public abstract class Player extends LivingEntity { +@@ -1263,7 +1263,7 @@ public abstract class Player extends LivingEntity { flag1 = true; } @@ -40,7 +40,7 @@ index 4bbd46618ec0f00e0aee7f681335bcbdb375c439..8dd7a1405997a7e90aab01ca7c20a616 flag2 = flag2 && !this.level().paperConfig().entities.behavior.disablePlayerCrits; // Paper flag2 = flag2 && !this.isSprinting(); -@@ -1308,7 +1308,7 @@ public abstract class Player extends LivingEntity { +@@ -1303,7 +1303,7 @@ public abstract class Player extends LivingEntity { } Vec3 vec3d = target.getDeltaMovement(); @@ -49,7 +49,7 @@ index 4bbd46618ec0f00e0aee7f681335bcbdb375c439..8dd7a1405997a7e90aab01ca7c20a616 if (flag5) { if (i > 0) { -@@ -1336,7 +1336,7 @@ public abstract class Player extends LivingEntity { +@@ -1331,7 +1331,7 @@ public abstract class Player extends LivingEntity { if (entityliving != this && entityliving != target && !this.isAlliedTo((Entity) entityliving) && (!(entityliving instanceof ArmorStand) || !((ArmorStand) entityliving).isMarker()) && this.distanceToSqr((Entity) entityliving) < 9.0D) { // CraftBukkit start - Only apply knockback if the damage hits @@ -59,19 +59,19 @@ index 4bbd46618ec0f00e0aee7f681335bcbdb375c439..8dd7a1405997a7e90aab01ca7c20a616 } // CraftBukkit end diff --git a/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java b/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java -index 53de7f516aee20cb7b5db0648dea1c38d74e5d96..df7e044a585579534b3cad260abd74c945911dff 100644 +index 004c130fc03dc01ef75fabdb4ef1ef711e33cb95..ae4319c2532855315bc45995a39d7eb98961b939 100644 --- a/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java +++ b/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java -@@ -372,6 +372,7 @@ public abstract class AbstractArrow extends Projectile { +@@ -379,6 +379,7 @@ public abstract class AbstractArrow extends Projectile { } } + if (this.isCritArrow()) damagesource = damagesource.critical(); // Paper - add critical damage API boolean flag = entity.getType() == EntityType.ENDERMAN; int k = entity.getRemainingFireTicks(); - + boolean flag1 = entity.getType().is(EntityTypeTags.DEFLECTS_ARROWS); diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index e09fe6cb64556820fe50e5a771c9f91eebdb8da4..b0062d414cec76c47ab6b30738706d1e9ed3646c 100644 +index 9bb9be0c73386c3f1c49f8831402789e92e23c0f..cc679e7042c5a5fba2ce34598f2c1eaf49bb065f 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -1046,7 +1046,7 @@ public class CraftEventFactory { diff --git a/patches/unapplied/server/0664-Fix-issues-with-mob-conversion.patch b/patches/server/0664-Fix-issues-with-mob-conversion.patch similarity index 100% rename from patches/unapplied/server/0664-Fix-issues-with-mob-conversion.patch rename to patches/server/0664-Fix-issues-with-mob-conversion.patch diff --git a/patches/unapplied/server/0665-Add-isCollidable-methods-to-various-places.patch b/patches/server/0665-Add-isCollidable-methods-to-various-places.patch similarity index 88% rename from patches/unapplied/server/0665-Add-isCollidable-methods-to-various-places.patch rename to patches/server/0665-Add-isCollidable-methods-to-various-places.patch index 8c0d3f840e..4da501d7dd 100644 --- a/patches/unapplied/server/0665-Add-isCollidable-methods-to-various-places.patch +++ b/patches/server/0665-Add-isCollidable-methods-to-various-places.patch @@ -7,10 +7,10 @@ Subject: [PATCH] Add isCollidable methods to various places public net.minecraft.world.level.block.state.BlockBehaviour hasCollision diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java -index 29be71311755de77ce854f874b1fe2b093b997cf..6027b675ca032d7c8f6d43624dcfca69d26849ff 100644 +index ce297420f695404356655b1df2847a32fb98ec59..068b3735b6c50a7a2053c7dc39856f728fb7218a 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java -@@ -456,6 +456,11 @@ public class CraftBlock implements Block { +@@ -457,6 +457,11 @@ public class CraftBlock implements Block { public boolean isSolid() { return this.getNMS().blocksMotion(); } @@ -39,10 +39,10 @@ index aca63719790429d3d7c7c59a1931a98221c70fc0..31bb92c026a4a2de0e8d3500f6ecf35b + // Paper end } diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java -index 19c07e2c4b6010bf673f79e58fdbaa41275c4fba..4e4852a1973df20023b7213b18b032d7244a4c1f 100644 +index 33988ab25aba60c75bffbd39da5562333875d0c1..da0d44cf18888945ed24d941af0f1a3562156e50 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java +++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java -@@ -575,6 +575,12 @@ public final class CraftMagicNumbers implements UnsafeValues { +@@ -572,6 +572,12 @@ public final class CraftMagicNumbers implements UnsafeValues { var supplier = net.minecraft.world.entity.ai.attributes.DefaultAttributes.getSupplier((net.minecraft.world.entity.EntityType) net.minecraft.core.registries.BuiltInRegistries.ENTITY_TYPE.get(CraftNamespacedKey.toMinecraft(bukkitEntityKey))); return new io.papermc.paper.attribute.UnmodifiableAttributeMap(supplier); } diff --git a/patches/unapplied/server/0666-Goat-ram-API.patch b/patches/server/0666-Goat-ram-API.patch similarity index 100% rename from patches/unapplied/server/0666-Goat-ram-API.patch rename to patches/server/0666-Goat-ram-API.patch diff --git a/patches/unapplied/server/0667-Add-API-for-resetting-a-single-score.patch b/patches/server/0667-Add-API-for-resetting-a-single-score.patch similarity index 91% rename from patches/unapplied/server/0667-Add-API-for-resetting-a-single-score.patch rename to patches/server/0667-Add-API-for-resetting-a-single-score.patch index 7d45195961..9b1ff4a407 100644 --- a/patches/unapplied/server/0667-Add-API-for-resetting-a-single-score.patch +++ b/patches/server/0667-Add-API-for-resetting-a-single-score.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Add API for resetting a single score It was only possible to reset all scores for a specific entry, instead of resetting only specific scores. diff --git a/src/main/java/org/bukkit/craftbukkit/scoreboard/CraftScore.java b/src/main/java/org/bukkit/craftbukkit/scoreboard/CraftScore.java -index 510f5ce6c4ea16b5ef5b6942311aa6f43b0083be..552a548d5fc72707a3ab56595c1586c0cf70e836 100644 +index a7f53c135bae2a464e7cd28bf8e990d692c63d63..426a99e839986eb9c25cf4e65191f5a5a1efab6c 100644 --- a/src/main/java/org/bukkit/craftbukkit/scoreboard/CraftScore.java +++ b/src/main/java/org/bukkit/craftbukkit/scoreboard/CraftScore.java @@ -68,4 +68,12 @@ final class CraftScore implements Score { diff --git a/patches/unapplied/server/0668-Add-Raw-Byte-Entity-Serialization.patch b/patches/server/0668-Add-Raw-Byte-Entity-Serialization.patch similarity index 89% rename from patches/unapplied/server/0668-Add-Raw-Byte-Entity-Serialization.patch rename to patches/server/0668-Add-Raw-Byte-Entity-Serialization.patch index d794e27eeb..cdfebd0f66 100644 --- a/patches/unapplied/server/0668-Add-Raw-Byte-Entity-Serialization.patch +++ b/patches/server/0668-Add-Raw-Byte-Entity-Serialization.patch @@ -7,10 +7,10 @@ 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 44c63a57cc6bb992ae6788e23cc23300d43430f0..80ab060e9252d3284f9696ef739e96a35fead3e4 100644 +index 5f642ba64877a3ba53f69b8cffd99ed8c56a3d3f..430f36da1e40d8427f24994ab16e68da79f575d2 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2146,6 +2146,15 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -2157,6 +2157,15 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S } } @@ -27,10 +27,10 @@ index 44c63a57cc6bb992ae6788e23cc23300d43430f0..80ab060e9252d3284f9696ef739e96a3 return this.isPassenger() ? false : this.saveAsPassenger(nbt); } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index af7fec4029a5b6cd11a401d31b327c32ba79667b..0c0e3727cc1d911a9949fcaf6dcd0820b172edc0 100644 +index 6065336cd30e6400bd8875768f06c44a4be0a1e1..32fd3b7067894bc442bc5a74dbcf60164a8fd70f 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -@@ -1387,5 +1387,15 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { +@@ -1431,5 +1431,15 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { } return set; } @@ -47,10 +47,10 @@ index af7fec4029a5b6cd11a401d31b327c32ba79667b..0c0e3727cc1d911a9949fcaf6dcd0820 // Paper end } diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java -index 4e4852a1973df20023b7213b18b032d7244a4c1f..170fd09370ebf8c14116933fd505c8096904a281 100644 +index da0d44cf18888945ed24d941af0f1a3562156e50..ef59fcd13f8835001fcc6fba6165ffd6c35784fa 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java +++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java -@@ -486,6 +486,29 @@ public final class CraftMagicNumbers implements UnsafeValues { +@@ -483,6 +483,29 @@ public final class CraftMagicNumbers implements UnsafeValues { return CraftItemStack.asCraftMirror(net.minecraft.world.item.ItemStack.of(ca.spottedleaf.dataconverter.minecraft.MCDataConverter.convertTag(ca.spottedleaf.dataconverter.minecraft.datatypes.MCTypeRegistry.ITEM_STACK, compound, dataVersion, getDataVersion()))); } diff --git a/patches/unapplied/server/0669-Vanilla-command-permission-fixes.patch b/patches/server/0669-Vanilla-command-permission-fixes.patch similarity index 96% rename from patches/unapplied/server/0669-Vanilla-command-permission-fixes.patch rename to patches/server/0669-Vanilla-command-permission-fixes.patch index 316475ab5c..170881487e 100644 --- a/patches/unapplied/server/0669-Vanilla-command-permission-fixes.patch +++ b/patches/server/0669-Vanilla-command-permission-fixes.patch @@ -33,10 +33,10 @@ index 899008b2980d13f1be6280cd8cb959c53a29bebf..f875507241ac6769545e91cd3285232b 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 5fd7e5aa0644fda8e2f7f57eef9a6f0011534cb9..b201fd131864751bea1e926c6b23f9742eae1c8e 100644 +index 094eb2d3aff11c861490e04cc054918bff5e2d87..154cbcab900f4697f280a88d6307682a26f46bfc 100644 --- a/src/main/java/net/minecraft/commands/Commands.java +++ b/src/main/java/net/minecraft/commands/Commands.java -@@ -237,6 +237,13 @@ public class Commands { +@@ -257,6 +257,13 @@ public class Commands { } this.vanillaCommandNodes.addAll(this.dispatcher.getRoot().getChildren()); // Paper diff --git a/patches/unapplied/server/0670-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch b/patches/server/0670-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch similarity index 89% rename from patches/unapplied/server/0670-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch rename to patches/server/0670-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch index 0ada2d7d00..11d63cc2d0 100644 --- a/patches/unapplied/server/0670-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch +++ b/patches/server/0670-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch @@ -9,10 +9,10 @@ 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 dceddff95dd9b152e25f656b95cc71025a123099..d65e3cfeb8c6e7d26c03af8870d328c2f4094541 100644 +index d5709319497a5589665388afd61307dc7755332d..938a07d2e90ea2516b064d930b38e8908be91055 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java -@@ -1555,9 +1555,13 @@ public class ServerLevel extends Level implements WorldGenLevel { +@@ -1574,9 +1574,13 @@ public class ServerLevel extends Level implements WorldGenLevel { // Spigot Start for (net.minecraft.world.level.block.entity.BlockEntity tileentity : chunk.getBlockEntities().values()) { if (tileentity instanceof net.minecraft.world.Container) { @@ -28,10 +28,10 @@ index dceddff95dd9b152e25f656b95cc71025a123099..d65e3cfeb8c6e7d26c03af8870d328c2 } // Spigot End diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index c358a078bdbb672b41f606cf83353fc35bcb4b15..0ee7c54e4e46bc35e5a7b01ddd408bdbe0e3d1c1 100644 +index b1be9c5d7346841ea4c0f9b8aec5e7c4d9367dc8..5035609b0a4160c2671ee9939e2d8bbf17749370 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -1617,6 +1617,18 @@ public class ServerPlayer extends Player { +@@ -1629,6 +1629,18 @@ public class ServerPlayer extends Player { this.connection.send(new ClientboundContainerClosePacket(this.containerMenu.containerId)); this.doCloseContainer(); } @@ -51,7 +51,7 @@ index c358a078bdbb672b41f606cf83353fc35bcb4b15..0ee7c54e4e46bc35e5a7b01ddd408bdb @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 8dd7a1405997a7e90aab01ca7c20a616b15ca761..85799b95bab12b5a060246f20364e9440e56a3ed 100644 +index 9193e0fb5c2a545907c084322b548722312a5583..bce494bb7bc1ce20809ac7d355f04aa7aad78308 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/unapplied/server/0671-Fix-GameProfileCache-concurrency.patch b/patches/server/0671-Fix-GameProfileCache-concurrency.patch similarity index 91% rename from patches/unapplied/server/0671-Fix-GameProfileCache-concurrency.patch rename to patches/server/0671-Fix-GameProfileCache-concurrency.patch index 0337248104..e95139c0f4 100644 --- a/patches/unapplied/server/0671-Fix-GameProfileCache-concurrency.patch +++ b/patches/server/0671-Fix-GameProfileCache-concurrency.patch @@ -7,10 +7,10 @@ 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 eac9658fa4cab7a651e10e4e18c679e040e4aed0..f4d903ed4342c3100c30deda291dfd6dd4e1ef40 100644 +index 4dc08b0abf0a1edb51cc586d1a89444ba790ca7f..13e05a9e42ba89d37c423d819da33f2f67fa9eac 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 { +@@ -61,6 +61,11 @@ public class GameProfileCache { @Nullable private Executor executor; @@ -22,7 +22,7 @@ index eac9658fa4cab7a651e10e4e18c679e040e4aed0..f4d903ed4342c3100c30deda291dfd6d public GameProfileCache(GameProfileRepository profileRepository, File cacheFile) { this.profileRepository = profileRepository; this.file = cacheFile; -@@ -67,11 +72,13 @@ public class GameProfileCache { +@@ -68,11 +73,13 @@ public class GameProfileCache { } private void safeAdd(GameProfileCache.GameProfileInfo entry) { @@ -36,7 +36,7 @@ index eac9658fa4cab7a651e10e4e18c679e040e4aed0..f4d903ed4342c3100c30deda291dfd6d } private static Optional lookupGameProfile(GameProfileRepository repository, String name) { -@@ -126,17 +133,20 @@ public class GameProfileCache { +@@ -129,17 +136,20 @@ public class GameProfileCache { // Paper start public @Nullable GameProfile getProfileIfCached(String name) { @@ -57,7 +57,7 @@ index eac9658fa4cab7a651e10e4e18c679e040e4aed0..f4d903ed4342c3100c30deda291dfd6d GameProfileCache.GameProfileInfo usercache_usercacheentry = (GameProfileCache.GameProfileInfo) this.profilesByName.get(s1); boolean flag = false; -@@ -152,8 +162,12 @@ public class GameProfileCache { +@@ -155,8 +165,12 @@ public class GameProfileCache { if (usercache_usercacheentry != null) { usercache_usercacheentry.setLastAccess(this.getNextOperation()); optional = Optional.of(usercache_usercacheentry.getProfile()); @@ -70,7 +70,7 @@ index eac9658fa4cab7a651e10e4e18c679e040e4aed0..f4d903ed4342c3100c30deda291dfd6d if (optional.isPresent()) { this.add((GameProfile) optional.get()); flag = false; -@@ -165,6 +179,7 @@ public class GameProfileCache { +@@ -168,6 +182,7 @@ public class GameProfileCache { } return optional; @@ -78,7 +78,7 @@ index eac9658fa4cab7a651e10e4e18c679e040e4aed0..f4d903ed4342c3100c30deda291dfd6d } public CompletableFuture> getAsync(String username) { -@@ -189,6 +204,7 @@ public class GameProfileCache { +@@ -192,6 +207,7 @@ public class GameProfileCache { } public Optional get(UUID uuid) { @@ -86,7 +86,7 @@ index eac9658fa4cab7a651e10e4e18c679e040e4aed0..f4d903ed4342c3100c30deda291dfd6d GameProfileCache.GameProfileInfo usercache_usercacheentry = (GameProfileCache.GameProfileInfo) this.profilesByUUID.get(uuid); if (usercache_usercacheentry == null) { -@@ -197,6 +213,7 @@ public class GameProfileCache { +@@ -200,6 +216,7 @@ public class GameProfileCache { usercache_usercacheentry.setLastAccess(this.getNextOperation()); return Optional.of(usercache_usercacheentry.getProfile()); } @@ -94,7 +94,7 @@ index eac9658fa4cab7a651e10e4e18c679e040e4aed0..f4d903ed4342c3100c30deda291dfd6d } public void setExecutor(Executor executor) { -@@ -277,7 +294,7 @@ public class GameProfileCache { +@@ -280,7 +297,7 @@ public class GameProfileCache { JsonArray jsonarray = new JsonArray(); DateFormat dateformat = GameProfileCache.createDateFormat(); @@ -103,7 +103,7 @@ index eac9658fa4cab7a651e10e4e18c679e040e4aed0..f4d903ed4342c3100c30deda291dfd6d jsonarray.add(GameProfileCache.writeGameProfile(usercache_usercacheentry, dateformat)); }); String s = this.gson.toJson(jsonarray); -@@ -318,8 +335,19 @@ public class GameProfileCache { +@@ -321,8 +338,19 @@ public class GameProfileCache { } private Stream getTopMRUProfiles(int limit) { diff --git a/patches/unapplied/server/0672-Improve-and-expand-AsyncCatcher.patch b/patches/server/0672-Improve-and-expand-AsyncCatcher.patch similarity index 93% rename from patches/unapplied/server/0672-Improve-and-expand-AsyncCatcher.patch rename to patches/server/0672-Improve-and-expand-AsyncCatcher.patch index e2351667a7..68cde791a9 100644 --- a/patches/unapplied/server/0672-Improve-and-expand-AsyncCatcher.patch +++ b/patches/server/0672-Improve-and-expand-AsyncCatcher.patch @@ -17,10 +17,10 @@ Async catch modifications to critical entity state Co-authored-by: Jake Potrebic diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index f9c9c3b2f9c6796e4799a829dffc86b90b62559f..e6251951d677e2ac71e738070914997e01086be0 100644 +index 711842dda404b5e0ecbb753ce08dfdf70b556c20..ef031bf9df047534e154fb3b288d76df3bed89cc 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -1544,6 +1544,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1571,6 +1571,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl } public void internalTeleport(double d0, double d1, double d2, float f, float f1, Set set) { // Paper @@ -29,10 +29,10 @@ index f9c9c3b2f9c6796e4799a829dffc86b90b62559f..e6251951d677e2ac71e738070914997e if (player.isRemoved()) { LOGGER.info("Attempt to teleport removed player {} restricted", player.getScoreboardName()); diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index eca3c85b2b24a59b6c3b316e2535f2a4354f50f9..bbeb81980b847a65f8d57eb6caf26aae63ee2061 100644 +index b0e8a2f4a223cfe3652ad45c26bcf96f21bb7853..46e3f01c2158ec327a0daa232be1e7fb6d40a90e 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -1119,7 +1119,7 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -1118,7 +1118,7 @@ public abstract class LivingEntity extends Entity implements Attackable { } public boolean addEffect(MobEffectInstance mobeffect, @Nullable Entity entity, EntityPotionEffectEvent.Cause cause) { @@ -42,7 +42,7 @@ index eca3c85b2b24a59b6c3b316e2535f2a4354f50f9..bbeb81980b847a65f8d57eb6caf26aae this.effectsToProcess.add(new ProcessableEffect(mobeffect, cause)); return true; diff --git a/src/main/java/net/minecraft/world/level/entity/PersistentEntitySectionManager.java b/src/main/java/net/minecraft/world/level/entity/PersistentEntitySectionManager.java -index 47bab513feec217d875192afef61f3af95b93d24..d3fb277878adb26c7d80cf21f27070380fdfacd1 100644 +index bbbf6dd8e566ecdca8794e3b03765fe7e426a2bd..66ab901956ca394c251c420338643d39817a1b7e 100644 --- a/src/main/java/net/minecraft/world/level/entity/PersistentEntitySectionManager.java +++ b/src/main/java/net/minecraft/world/level/entity/PersistentEntitySectionManager.java @@ -77,6 +77,7 @@ public class PersistentEntitySectionManager implements A @@ -149,7 +149,7 @@ index 47bab513feec217d875192afef61f3af95b93d24..d3fb277878adb26c7d80cf21f2707038 LongSet longset = this.getAllChunksToSave(); while (!longset.isEmpty()) { -@@ -446,6 +460,7 @@ public class PersistentEntitySectionManager implements A +@@ -451,6 +465,7 @@ public class PersistentEntitySectionManager implements A long i = SectionPos.asLong(blockposition); if (i != this.currentSectionKey) { @@ -157,7 +157,7 @@ index 47bab513feec217d875192afef61f3af95b93d24..d3fb277878adb26c7d80cf21f2707038 Visibility visibility = this.currentSection.getStatus(); if (!this.currentSection.remove(this.entity)) { -@@ -500,6 +515,7 @@ public class PersistentEntitySectionManager implements A +@@ -505,6 +520,7 @@ public class PersistentEntitySectionManager implements A @Override public void onRemove(Entity.RemovalReason reason) { @@ -166,10 +166,10 @@ index 47bab513feec217d875192afef61f3af95b93d24..d3fb277878adb26c7d80cf21f2707038 PersistentEntitySectionManager.LOGGER.warn("Entity {} wasn't found in section {} (destroying due to {})", new Object[]{this.entity, SectionPos.of(this.currentSectionKey), reason}); } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index c5f8b461b8315d3db029dea2d5f7e9a764fc3443..0faed04c7794dd4fd758a151d15ad5956e4f4907 100644 +index faf32ed224f5471d8994ad09e493c1fb724904a0..68d827b95a67f2fb65ed806221bb4e7e906a05f4 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -@@ -464,6 +464,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { +@@ -465,6 +465,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { @Override public boolean addPotionEffect(PotionEffect effect, boolean force) { diff --git a/patches/unapplied/server/0673-Add-paper-mobcaps-and-paper-playermobcaps.patch b/patches/server/0673-Add-paper-mobcaps-and-paper-playermobcaps.patch similarity index 98% rename from patches/unapplied/server/0673-Add-paper-mobcaps-and-paper-playermobcaps.patch rename to patches/server/0673-Add-paper-mobcaps-and-paper-playermobcaps.patch index cd3071c768..7df46f6910 100644 --- a/patches/unapplied/server/0673-Add-paper-mobcaps-and-paper-playermobcaps.patch +++ b/patches/server/0673-Add-paper-mobcaps-and-paper-playermobcaps.patch @@ -278,10 +278,10 @@ index 9df761f5cf043e8d2dffa711c20ab32fe2992331..d08c7b0b52065980f1f13c5533ff6355 // 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 b18bf7b943fe2bb009babf9414559b832a51d505..443ffc28a387c6d29f841288da1bf93e45f30c9b 100644 +index 0b422ba3241b31ad9e4f227bcb5033df2545d84b..dcb3bc211b834aa6fd4cb19197debc93df3f4839 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -2247,6 +2247,11 @@ public final class CraftServer implements Server { +@@ -2279,6 +2279,11 @@ public final class CraftServer implements Server { @Override public int getSpawnLimit(SpawnCategory spawnCategory) { @@ -294,10 +294,10 @@ index b18bf7b943fe2bb009babf9414559b832a51d505..443ffc28a387c6d29f841288da1bf93e } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 874fdf7c0e710e5f685c592ff341025f852bc4b0..e45d6bcf2d604b7412f8c19469ee6f0f9a5e727a 100644 +index 19db9c2447ffc2321e2f8a3b86f561d29b9eb6de..3a5843b50a5cc5110bf484f9697674e5bfc9699f 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -@@ -1707,9 +1707,14 @@ public class CraftWorld extends CraftRegionAccessor implements World { +@@ -1713,9 +1713,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); diff --git a/patches/unapplied/server/0674-Sanitize-ResourceLocation-error-logging.patch b/patches/server/0674-Sanitize-ResourceLocation-error-logging.patch similarity index 100% rename from patches/unapplied/server/0674-Sanitize-ResourceLocation-error-logging.patch rename to patches/server/0674-Sanitize-ResourceLocation-error-logging.patch diff --git a/patches/unapplied/server/0675-Optimise-general-POI-access.patch b/patches/server/0675-Optimise-general-POI-access.patch similarity index 100% rename from patches/unapplied/server/0675-Optimise-general-POI-access.patch rename to patches/server/0675-Optimise-general-POI-access.patch diff --git a/patches/unapplied/server/0676-Custom-table-implementation-for-blockstate-state-loo.patch b/patches/server/0676-Custom-table-implementation-for-blockstate-state-loo.patch similarity index 100% rename from patches/unapplied/server/0676-Custom-table-implementation-for-blockstate-state-loo.patch rename to patches/server/0676-Custom-table-implementation-for-blockstate-state-loo.patch diff --git a/patches/unapplied/server/0677-Manually-inline-methods-in-BlockPosition.patch b/patches/server/0677-Manually-inline-methods-in-BlockPosition.patch similarity index 100% rename from patches/unapplied/server/0677-Manually-inline-methods-in-BlockPosition.patch rename to patches/server/0677-Manually-inline-methods-in-BlockPosition.patch diff --git a/patches/unapplied/server/0678-Name-craft-scheduler-threads-according-to-the-plugin.patch b/patches/server/0678-Name-craft-scheduler-threads-according-to-the-plugin.patch similarity index 100% rename from patches/unapplied/server/0678-Name-craft-scheduler-threads-according-to-the-plugin.patch rename to patches/server/0678-Name-craft-scheduler-threads-according-to-the-plugin.patch diff --git a/patches/unapplied/server/0679-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch b/patches/server/0679-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch similarity index 90% rename from patches/unapplied/server/0679-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch rename to patches/server/0679-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch index 007351ae6c..28d10c6045 100644 --- a/patches/unapplied/server/0679-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch +++ b/patches/server/0679-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch @@ -13,10 +13,10 @@ 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 eea2b7f9c566b5a21fa7da7d1321469a12c45b5a..6bd9b680fa1e84d058ada2354fa6a5b876185dc4 100644 +index 0e679bbbc000c32b840e5f3155a3c275216b20b5..58394bbf228f96f717e5318cd016caf9d2f09343 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java -@@ -455,6 +455,15 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -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 diff --git a/patches/unapplied/server/0680-Don-t-read-neighbour-chunk-data-off-disk-when-conver.patch b/patches/server/0680-Don-t-read-neighbour-chunk-data-off-disk-when-conver.patch similarity index 100% rename from patches/unapplied/server/0680-Don-t-read-neighbour-chunk-data-off-disk-when-conver.patch rename to patches/server/0680-Don-t-read-neighbour-chunk-data-off-disk-when-conver.patch diff --git a/patches/unapplied/server/0681-Don-t-lookup-fluid-state-when-raytracing.patch b/patches/server/0681-Don-t-lookup-fluid-state-when-raytracing.patch similarity index 100% rename from patches/unapplied/server/0681-Don-t-lookup-fluid-state-when-raytracing.patch rename to patches/server/0681-Don-t-lookup-fluid-state-when-raytracing.patch