From 4baae7b924e5e914b89ed543c916bb8c7d452ee8 Mon Sep 17 00:00:00 2001 From: violetc <58360096+s-yh-china@users.noreply.github.com> Date: Sun, 7 Jan 2024 20:25:10 +0800 Subject: [PATCH] Update Paper --- gradle.properties | 2 +- patches/server/0002-Delete-Timings.patch | 14 +++++++------- patches/server/0003-Leaves-Server-Utils.patch | 8 ++++---- patches/server/0007-Fix-gravity-block-duper.patch | 4 ++-- .../server/0008-Fix-trading-with-the-void.patch | 4 ++-- patches/server/0010-Fakeplayer-support.patch | 4 ++-- .../0014-Budding-Amethyst-can-push-by-piston.patch | 6 +++--- .../0030-Config-to-disable-method-profiler.patch | 4 ++-- ...-Reduce-entity-fluid-lookups-if-no-fluids.patch | 6 +++--- ...0046-Alternative-block-placement-Protocol.patch | 4 ++-- .../server/0051-MC-Technical-Survival-Mode.patch | 4 ++-- .../0073-Elytra-aeronautics-no-chunk-load.patch | 10 +++++----- patches/server/0077-No-block-update-command.patch | 6 +++--- .../server/0090-Cache-BlockStatePairKey-hash.patch | 6 +++--- patches/server/0093-Reduce-array-allocations.patch | 12 ++++++------ patches/server/0094-Optimize-sun-burn-tick.patch | 6 +++--- ...0101-Skip-entity-move-if-movement-is-zero.patch | 6 +++--- ...negligible-planar-movement-multiplication.patch | 4 ++-- 18 files changed, 55 insertions(+), 55 deletions(-) diff --git a/gradle.properties b/gradle.properties index ef8ec558..969d20ec 100644 --- a/gradle.properties +++ b/gradle.properties @@ -4,6 +4,6 @@ version=1.20.4-R0.1-SNAPSHOT mcVersion=1.20.4 packageVersion=1_20_R3 org.gradle.jvmargs=-Xmx2G -paperRef=ae001ae6ee11e09f5c6ae9d7dfbde7aac6da737b +paperRef=07b956e3a30d9cd192111829b59bdf4372f128b1 preVersion=false updatingMinecraft=false \ No newline at end of file diff --git a/patches/server/0002-Delete-Timings.patch b/patches/server/0002-Delete-Timings.patch index 5869ccd6..695d4126 100644 --- a/patches/server/0002-Delete-Timings.patch +++ b/patches/server/0002-Delete-Timings.patch @@ -1380,7 +1380,7 @@ index 44ada45d9bf2d9b48e5de1c3cb1a855902f3884b..d6089c0d0b076d232834619bc93bc64f gameprofilerfiller.pop(); } diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 676087c3addd712939c865b39ddb5d9f0bc7ce25..554c400802e0eda9eed41dcb478d8a4401614f1d 100644 +index 7c31f619a6e8e3539c547fc43d821d2cce7df7e7..ce4eb725a0a9b401a4f27b8047b463da2c782d03 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -1,7 +1,6 @@ @@ -1639,7 +1639,7 @@ index e98a455b6bca9d094d0da323bddd7b3f2c07bb23..192eeaffd6d51baca149c7b9eaccf532 } diff --git a/src/main/java/net/minecraft/world/entity/EntityType.java b/src/main/java/net/minecraft/world/entity/EntityType.java -index 940b8d0b89d7e55c938aefbe80ee71b0db3dacb8..068a22bd9ee64ed153b7eedbfad9252adf87cb89 100644 +index 6cfce9755dd464a7afb01f9032e567ce3bcd5bc5..738147183b7efd0247baab55334fb85ce1af4f33 100644 --- a/src/main/java/net/minecraft/world/entity/EntityType.java +++ b/src/main/java/net/minecraft/world/entity/EntityType.java @@ -331,10 +331,6 @@ public class EntityType implements FeatureElement, EntityTypeT @@ -1653,7 +1653,7 @@ index 940b8d0b89d7e55c938aefbe80ee71b0db3dacb8..068a22bd9ee64ed153b7eedbfad9252a // Paper end this.builtInRegistryHolder = BuiltInRegistries.ENTITY_TYPE.createIntrusiveHolder(this); this.factory = factory; -@@ -689,12 +685,6 @@ public class EntityType implements FeatureElement, EntityTypeT +@@ -695,12 +691,6 @@ public class EntityType implements FeatureElement, EntityTypeT return this.updateInterval; } @@ -1754,7 +1754,7 @@ index fcdb9bde8e1605e30dde3e580491522d4b62cdc0..b68c69a7ab71926ecf478d8daa5ec5ac } diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 8848eeda7a89d445e370626182f9bb4710e5edd4..c495dc410c17593bf8785c69eb23a41fc9d3084a 100644 +index 6403341f2e9d7ac4251336cb0bcc5d79dbb7bb0e..2f1e70a695b222dfa832b5d2c81544bc314b1aec 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -1,10 +1,7 @@ @@ -1827,7 +1827,7 @@ index 8848eeda7a89d445e370626182f9bb4710e5edd4..c495dc410c17593bf8785c69eb23a41f this.keepSpawnInMemory = this.paperConfig().spawn.keepSpawnLoaded; // Paper this.entityLimiter = new org.spigotmc.TickLimiter(this.spigotConfig.entityMaxTickTime); this.tileLimiter = new org.spigotmc.TickLimiter(this.spigotConfig.tileMaxTickTime); -@@ -1265,15 +1253,12 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -1270,15 +1258,12 @@ public abstract class Level implements LevelAccessor, AutoCloseable { ProfilerFiller gameprofilerfiller = this.getProfiler(); gameprofilerfiller.push("blockEntities"); @@ -1843,7 +1843,7 @@ index 8848eeda7a89d445e370626182f9bb4710e5edd4..c495dc410c17593bf8785c69eb23a41f // Spigot start // Iterator iterator = this.blockEntityTickers.iterator(); boolean flag = this.tickRateManager().runsNormally(); -@@ -1302,9 +1287,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -1307,9 +1292,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { } this.blockEntityTickers.removeAll(toRemove); @@ -1874,7 +1874,7 @@ index 3cdddda9c0618e95288b81b975d499c8dd30c05f..aec5396b7dea8ba45f82f487719d42a1 } diff --git a/src/main/java/net/minecraft/world/level/block/Block.java b/src/main/java/net/minecraft/world/level/block/Block.java -index 4d50dd92a7f3187ee1d8edb926e7c273c8156549..a0c43e8c65b6ab78b24d1514dace8d1d7ae56bd1 100644 +index e21867d3956078bb0db4ceed45e5811e9acd7377..67e1362a398daf13e128b64523e8db69fbb46fe1 100644 --- a/src/main/java/net/minecraft/world/level/block/Block.java +++ b/src/main/java/net/minecraft/world/level/block/Block.java @@ -103,13 +103,6 @@ public class Block extends BlockBehaviour implements ItemLike { diff --git a/patches/server/0003-Leaves-Server-Utils.patch b/patches/server/0003-Leaves-Server-Utils.patch index a8d3099e..fd7691fc 100644 --- a/patches/server/0003-Leaves-Server-Utils.patch +++ b/patches/server/0003-Leaves-Server-Utils.patch @@ -31,7 +31,7 @@ index 46954db7ecd35ac4018fdf476df7c8020d7ce6c8..044c51ebb058fc36074fd178929e3279 public PlayerAreaMap() { super(); diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index b82f968a9e02c75c99c524a6f51a953dd9c88486..2599148de3f2ab8ebb974612c6c19da3ea6b48af 100644 +index 1be10c57e374ad4018c08d96cfb69397a2f541d3..01f2f5ddbc41b0096e3c07170c0b0a40e728bf06 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -422,6 +422,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -42,7 +42,7 @@ index b82f968a9e02c75c99c524a6f51a953dd9c88486..2599148de3f2ab8ebb974612c6c19da3 public void setOrigin(@javax.annotation.Nonnull Location location) { this.origin = location.toVector(); -@@ -2473,6 +2474,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -2477,6 +2478,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S nbttagcompound.putBoolean("Paper.FreezeLock", true); } // Paper end @@ -50,7 +50,7 @@ index b82f968a9e02c75c99c524a6f51a953dd9c88486..2599148de3f2ab8ebb974612c6c19da3 return nbttagcompound; } catch (Throwable throwable) { CrashReport crashreport = CrashReport.forThrowable(throwable, "Saving entity NBT"); -@@ -2620,6 +2622,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -2624,6 +2626,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S freezeLocked = nbt.getBoolean("Paper.FreezeLock"); } // Paper end @@ -62,7 +62,7 @@ index b82f968a9e02c75c99c524a6f51a953dd9c88486..2599148de3f2ab8ebb974612c6c19da3 } catch (Throwable throwable) { CrashReport crashreport = CrashReport.forThrowable(throwable, "Loading entity NBT"); -@@ -4918,4 +4925,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -4922,4 +4929,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S return ((net.minecraft.server.level.ServerChunkCache) level.getChunkSource()).isPositionTicking(this); } // Paper end diff --git a/patches/server/0007-Fix-gravity-block-duper.patch b/patches/server/0007-Fix-gravity-block-duper.patch index 0293347e..dcdf42c5 100644 --- a/patches/server/0007-Fix-gravity-block-duper.patch +++ b/patches/server/0007-Fix-gravity-block-duper.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fix gravity block duper diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 3c9b90b8d997790f3e4302eee41919780e561aff..2134c810da69a8c4a2bddcb29c0534d7ad65e8aa 100644 +index 01f2f5ddbc41b0096e3c07170c0b0a40e728bf06..dc85c4d6b6fb9ca9d1dbd2e696616cc347f1c05a 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -504,38 +504,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -48,7 +48,7 @@ index 3c9b90b8d997790f3e4302eee41919780e561aff..2134c810da69a8c4a2bddcb29c0534d7 public boolean isLegacyTrackingEntity = false; -@@ -3178,7 +3149,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -3182,7 +3153,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S } this.processPortalCooldown(); diff --git a/patches/server/0008-Fix-trading-with-the-void.patch b/patches/server/0008-Fix-trading-with-the-void.patch index c40ab273..f512e6ff 100644 --- a/patches/server/0008-Fix-trading-with-the-void.patch +++ b/patches/server/0008-Fix-trading-with-the-void.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Fix trading with the void diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 554c400802e0eda9eed41dcb478d8a4401614f1d..62867bc387f49398ebb5d608c4f1e4e562079bd7 100644 +index ce4eb725a0a9b401a4f27b8047b463da2c782d03..90626c175b8bb496e2e1c18cc8a501d8eff44a87 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java -@@ -2809,11 +2809,7 @@ public class ServerLevel extends Level implements WorldGenLevel { +@@ -2810,11 +2810,7 @@ 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 diff --git a/patches/server/0010-Fakeplayer-support.patch b/patches/server/0010-Fakeplayer-support.patch index 15f51889..65798544 100644 --- a/patches/server/0010-Fakeplayer-support.patch +++ b/patches/server/0010-Fakeplayer-support.patch @@ -274,10 +274,10 @@ index 00f4ee320f8a8d019cb311cee78bb38445835952..52f6ef8702a1902df079b1ec34282b46 + // Leaves end - fakeplayer support } diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index b3275fcd829223a671381705bbfa188f8a99d914..c1da1cb9d3a8aedec05a89a256934c2229e9bc09 100644 +index dc85c4d6b6fb9ca9d1dbd2e696616cc347f1c05a..f9e9b708eecae0dfdb283899ac293ddbfb986ade 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -1420,7 +1420,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -1424,7 +1424,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S return offsetFactor; } diff --git a/patches/server/0014-Budding-Amethyst-can-push-by-piston.patch b/patches/server/0014-Budding-Amethyst-can-push-by-piston.patch index 5a5e7fc6..2cba7fd6 100644 --- a/patches/server/0014-Budding-Amethyst-can-push-by-piston.patch +++ b/patches/server/0014-Budding-Amethyst-can-push-by-piston.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Budding Amethyst can push by piston diff --git a/src/main/java/net/minecraft/world/level/block/Block.java b/src/main/java/net/minecraft/world/level/block/Block.java -index a0c43e8c65b6ab78b24d1514dace8d1d7ae56bd1..3d8b39cfc50de89fda4d221ea27743508691857c 100644 +index 67e1362a398daf13e128b64523e8db69fbb46fe1..14610260905dc6922bf173d1c2fc231d92e05a6f 100644 --- a/src/main/java/net/minecraft/world/level/block/Block.java +++ b/src/main/java/net/minecraft/world/level/block/Block.java -@@ -594,6 +594,12 @@ public class Block extends BlockBehaviour implements ItemLike { +@@ -602,6 +602,12 @@ public class Block extends BlockBehaviour implements ItemLike { } // Spigot end @@ -38,7 +38,7 @@ index ee24eac5e37a2fd0c8c37365ea10d03749beb9a7..915b148e8bf5bdf6364253cf81e01b87 + // Leaves end - budding amethyst can push by piston } diff --git a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java -index 3ab8b99837b1d1faea722c598b0228b2780be8b1..3ece300f5e5d470138b54b19b3ad082504831185 100644 +index 401f1b418a4f57059e991cc958ebadb31239a581..aafcd79bed9683cff5cc9634a01a781ab421d994 100644 --- a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java +++ b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java @@ -1157,7 +1157,7 @@ public abstract class BlockBehaviour implements FeatureElement { diff --git a/patches/server/0030-Config-to-disable-method-profiler.patch b/patches/server/0030-Config-to-disable-method-profiler.patch index a8537ed8..ad455bb6 100644 --- a/patches/server/0030-Config-to-disable-method-profiler.patch +++ b/patches/server/0030-Config-to-disable-method-profiler.patch @@ -22,10 +22,10 @@ index 37af0a508cfe56f23be806d2d4100d890ad5e7ec..89a50e07bc79cb0d5353f5a06fa037f3 } diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index f434b1dc911ce45a4d309b892079a266f2485c90..831a5795b08e9bb74649404d8ef767dc3f18f173 100644 +index 0934de77256734d3dd50ea7e16662d49c3d58242..12f5a090affed70ba041f77fd0eacbeb4a700cb9 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java -@@ -1786,6 +1786,11 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -1791,6 +1791,11 @@ public abstract class Level implements LevelAccessor, AutoCloseable { } public ProfilerFiller getProfiler() { diff --git a/patches/server/0039-Reduce-entity-fluid-lookups-if-no-fluids.patch b/patches/server/0039-Reduce-entity-fluid-lookups-if-no-fluids.patch index 9c1b15ef..e6be0291 100644 --- a/patches/server/0039-Reduce-entity-fluid-lookups-if-no-fluids.patch +++ b/patches/server/0039-Reduce-entity-fluid-lookups-if-no-fluids.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Reduce entity fluid lookups if no fluids This patch is Powered by Pufferfish(https://github.com/pufferfish-gg/Pufferfish) diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 4c24135468863a030f0b864a75f3ffce090c56ec..5cdce561bf337f6bae3f00d60ad9d47a2dcdee80 100644 +index 79b2831322b8312448c89b5276af40d1efa880d2..1f3a8f314832acc575e7d9d054eaa09ab6fdd1e4 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -4386,16 +4386,18 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -4390,16 +4390,18 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S } public boolean updateFluidHeightAndDoFluidPushing(TagKey tag, double speed) { @@ -35,7 +35,7 @@ index 4c24135468863a030f0b864a75f3ffce090c56ec..5cdce561bf337f6bae3f00d60ad9d47a double d1 = 0.0D; boolean flag = this.isPushedByFluid(); boolean flag1 = false; -@@ -4403,38 +4405,123 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -4407,38 +4409,123 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S int k1 = 0; BlockPos.MutableBlockPos blockposition_mutableblockposition = new BlockPos.MutableBlockPos(); diff --git a/patches/server/0046-Alternative-block-placement-Protocol.patch b/patches/server/0046-Alternative-block-placement-Protocol.patch index 4e7d6322..907b7ac7 100644 --- a/patches/server/0046-Alternative-block-placement-Protocol.patch +++ b/patches/server/0046-Alternative-block-placement-Protocol.patch @@ -44,10 +44,10 @@ index 88072259a9de205db428351c5c9f6114e199e402..e641360a3e82cb03393b856fa545d6b0 if (iblockdata2 != null && this.canPlace(world, iblockdata2, blockposition)) { iblockdata1 = iblockdata2; diff --git a/src/main/java/net/minecraft/world/level/block/Block.java b/src/main/java/net/minecraft/world/level/block/Block.java -index 3d8b39cfc50de89fda4d221ea27743508691857c..d38e7894239db17b6a00a6e6316643fbc990d496 100644 +index 14610260905dc6922bf173d1c2fc231d92e05a6f..f755e6f958cecc665201adac3bc06f12fd9e73f8 100644 --- a/src/main/java/net/minecraft/world/level/block/Block.java +++ b/src/main/java/net/minecraft/world/level/block/Block.java -@@ -411,6 +411,33 @@ public class Block extends BlockBehaviour implements ItemLike { +@@ -419,6 +419,33 @@ public class Block extends BlockBehaviour implements ItemLike { public void stepOn(Level world, BlockPos pos, BlockState state, Entity entity) {} diff --git a/patches/server/0051-MC-Technical-Survival-Mode.patch b/patches/server/0051-MC-Technical-Survival-Mode.patch index f7e9f86b..765ceb6b 100644 --- a/patches/server/0051-MC-Technical-Survival-Mode.patch +++ b/patches/server/0051-MC-Technical-Survival-Mode.patch @@ -31,10 +31,10 @@ index fa1c0aee8c3a4d0868482cf5c703bbfd08e09874..8b0feb7f0d008e5b8a5294a014a0cd9b throw new RuntimeException("Could not reload paper configuration files", ex); } diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index fc2f0e767e079b9c7aba131e71f11eb8a8920be2..725dd709bab2520b5ea23a4264143215fd8a181a 100644 +index 3397a9f45a82e00b71578d82b6f5505288a79820..9145d1d7f84b973bd905c6cad15cfce82b861c3d 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java -@@ -2748,7 +2748,7 @@ public class ServerLevel extends Level implements WorldGenLevel { +@@ -2749,7 +2749,7 @@ public class ServerLevel extends Level implements WorldGenLevel { public void onTickingEnd(Entity entity) { ServerLevel.this.entityTickList.remove(entity); // Paper start - Reset pearls when they stop being ticked diff --git a/patches/server/0073-Elytra-aeronautics-no-chunk-load.patch b/patches/server/0073-Elytra-aeronautics-no-chunk-load.patch index 7354b080..0ddee6a1 100644 --- a/patches/server/0073-Elytra-aeronautics-no-chunk-load.patch +++ b/patches/server/0073-Elytra-aeronautics-no-chunk-load.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Elytra aeronautics no chunk load diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index 24936f6b97a2c42259fcb6a9e914fe1175cce241..2e3061b3874764fa2bde068486fa0c03a6b6a6f4 100644 +index de5061ae7d0ecbb34a10f630a3ebd38c89e9862f..6edd6ae82a049d988331a22af8440ffacf0a6bbe 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java @@ -150,7 +150,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider @@ -45,7 +45,7 @@ index 24936f6b97a2c42259fcb6a9e914fe1175cce241..2e3061b3874764fa2bde068486fa0c03 SectionPos sectionposition = player.getLastSectionPos(); diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 6e70d8832ca06367573b0c8066a5d9fe41c0d9cf..9be579fae145329196c33d2c23c7bbd55470c549 100644 +index bcd90c6a9173d2b089995cd1049e0db1d7316719..5c305cfc4142aa859b3e2e065645f505fda22717 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -549,7 +549,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl @@ -58,10 +58,10 @@ index 6e70d8832ca06367573b0c8066a5d9fe41c0d9cf..9be579fae145329196c33d2c23c7bbd5 !worldserver.areChunksLoadedForMove(entity.getBoundingBox().expandTowards(new Vec3(toX, toY, toZ).subtract(entity.position()))) )) { diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index e4ad454fed1d4f615621c7973598f8106f57b5ab..c555922aaf678261fa67403194b3df08ab390e15 100644 +index 042653db5ec360e0dc67b7457b742432b76458a6..bfc65a9360e14093bb8e34e33b1cb3bf574bf575 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -1068,7 +1068,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -1072,7 +1072,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S return; } } @@ -76,7 +76,7 @@ index e4ad454fed1d4f615621c7973598f8106f57b5ab..c555922aaf678261fa67403194b3df08 this.level().getProfiler().push("move"); if (this.stuckSpeedMultiplier.lengthSqr() > 1.0E-7D) { movement = movement.multiply(this.stuckSpeedMultiplier); -@@ -2003,6 +2009,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -2007,6 +2013,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S this.yo = y; this.zo = d4; this.setPos(d3, y, d4); diff --git a/patches/server/0077-No-block-update-command.patch b/patches/server/0077-No-block-update-command.patch index aa2448c6..d2053989 100644 --- a/patches/server/0077-No-block-update-command.patch +++ b/patches/server/0077-No-block-update-command.patch @@ -5,10 +5,10 @@ Subject: [PATCH] No block update command diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 725dd709bab2520b5ea23a4264143215fd8a181a..bc863ab746fc754317f3168c96764c50f53697c4 100644 +index 9145d1d7f84b973bd905c6cad15cfce82b861c3d..18bf70e15ee98bc2c2dd3a6091d3f41300345a65 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java -@@ -2526,6 +2526,7 @@ public class ServerLevel extends Level implements WorldGenLevel { +@@ -2527,6 +2527,7 @@ public class ServerLevel extends Level implements WorldGenLevel { @Override public void blockUpdated(BlockPos pos, Block block) { @@ -17,7 +17,7 @@ index 725dd709bab2520b5ea23a4264143215fd8a181a..bc863ab746fc754317f3168c96764c50 // CraftBukkit start if (this.populating) { diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index de277d61b718fe07a87d75a2547bb1c7f8553aa1..fdfbca595e5bff701bf6d9dd7990d67fbb16795f 100644 +index 5b8a1f31e0b55da15daa4ab271317e4393a87e96..a489f3a8df86434ccadd97311f1e26999c27db79 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -482,7 +482,7 @@ public final class ItemStack { diff --git a/patches/server/0090-Cache-BlockStatePairKey-hash.patch b/patches/server/0090-Cache-BlockStatePairKey-hash.patch index c85eff8c..78ad54f4 100644 --- a/patches/server/0090-Cache-BlockStatePairKey-hash.patch +++ b/patches/server/0090-Cache-BlockStatePairKey-hash.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Cache BlockStatePairKey hash This patch is Powered by Gale(https://github.com/GaleMC/Gale) diff --git a/src/main/java/net/minecraft/world/level/block/Block.java b/src/main/java/net/minecraft/world/level/block/Block.java -index d38e7894239db17b6a00a6e6316643fbc990d496..478dcee61e4cb5e0691ce52a3be2e307f6d4af64 100644 +index f755e6f958cecc665201adac3bc06f12fd9e73f8..c498d397938c973608634867366aea8bfad7b3c9 100644 --- a/src/main/java/net/minecraft/world/level/block/Block.java +++ b/src/main/java/net/minecraft/world/level/block/Block.java -@@ -632,11 +632,18 @@ public class Block extends BlockBehaviour implements ItemLike { +@@ -640,11 +640,18 @@ public class Block extends BlockBehaviour implements ItemLike { private final BlockState first; private final BlockState second; private final Direction direction; @@ -28,7 +28,7 @@ index d38e7894239db17b6a00a6e6316643fbc990d496..478dcee61e4cb5e0691ce52a3be2e307 } public boolean equals(Object object) { -@@ -652,11 +659,17 @@ public class Block extends BlockBehaviour implements ItemLike { +@@ -660,11 +667,17 @@ public class Block extends BlockBehaviour implements ItemLike { } public int hashCode() { diff --git a/patches/server/0093-Reduce-array-allocations.patch b/patches/server/0093-Reduce-array-allocations.patch index 123302ba..158ab275 100644 --- a/patches/server/0093-Reduce-array-allocations.patch +++ b/patches/server/0093-Reduce-array-allocations.patch @@ -142,7 +142,7 @@ index 06648f9751fd8a322d0809ffebf6a544596ee1a4..40e957a4364c8017072dcd81fcb7cf2c @Override diff --git a/src/main/java/net/minecraft/nbt/CompoundTag.java b/src/main/java/net/minecraft/nbt/CompoundTag.java -index e464ada187fd1f15efef29a0e5033aeb0c688059..31ae491fdac6e27a3569c8c421cc49e7eab5d4b5 100644 +index 4c8f2dbdd6e384be026ae1c890096f89fd744eb0..5f6d8ad7340112ffb1c0581562a3f3df7c44a13b 100644 --- a/src/main/java/net/minecraft/nbt/CompoundTag.java +++ b/src/main/java/net/minecraft/nbt/CompoundTag.java @@ -17,6 +17,7 @@ import javax.annotation.Nullable; @@ -227,7 +227,7 @@ index b0517b9483a8cfd74997f89efdc0d8559b80ae4a..e7cfc98aa6dc19c5adad4c797ae7292a for (int j = 0; j < i; ++j) { diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index bc863ab746fc754317f3168c96764c50f53697c4..d891f404fe44ef24db57820a415a2517942020ef 100644 +index 18bf70e15ee98bc2c2dd3a6091d3f41300345a65..f802ff2a34900b57f3dd5f5f454f872708a8d375 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -178,6 +178,7 @@ import org.bukkit.event.world.GenericGameEvent; @@ -409,7 +409,7 @@ index ab8e19e67f173a6c05b4895b3fa78a1eb2b13675..7e6f28c0d10e70acdaedb06314f1f5fc for (int j = 0; j < i; ++j) { diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java -index dc196d04afa8e74be1a43994212d17b430aad2ee..4a8a4a6ffa781a59035f34d2f10ef6b1172a9efa 100644 +index f0e1318a0a7d7a409df8fc5567040de9da25b75d..3d7eaf2564c3dceb7b5c658940ead6da90256efb 100644 --- a/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java @@ -1082,7 +1082,7 @@ public abstract class Mob extends LivingEntity implements Targeting { @@ -462,7 +462,7 @@ index 94396ad1a3c280787d36c6c18256d10340ace488..ae0de0d0cb970a10a8a612cf34810a36 for (int j = 0; j < i; ++j) { diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index fdfbca595e5bff701bf6d9dd7990d67fbb16795f..c85ae98b7d50e7f08035417d2f4d43099c02041c 100644 +index a489f3a8df86434ccadd97311f1e26999c27db79..9293e1d9c13cab5511211f37ce00286ef4d5d1d5 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -1052,7 +1052,7 @@ public final class ItemStack { @@ -504,7 +504,7 @@ index 6c2e8049c2197ddc912c1a0fc99c87beae81e25b..be13baa7b51c4ad377b50d8ca8f7cfad private static Enchantment register(String name, Enchantment enchantment) { return Registry.register(BuiltInRegistries.ENCHANTMENT, name, enchantment); diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index fa93fd1fbcc3b508e46a2d1df38bb2c7ca1903c2..c2dbbde40bfd368ed78691b9b05ad2cc0a3be2af 100644 +index bae8f999f4d9e798d87018cca3ff9c98c9337aab..ea3db1021a076d7b0560676ef2b916f7b0e514db 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -97,6 +97,7 @@ import org.bukkit.craftbukkit.util.CraftSpawnCategory; @@ -515,7 +515,7 @@ index fa93fd1fbcc3b508e46a2d1df38bb2c7ca1903c2..c2dbbde40bfd368ed78691b9b05ad2cc public abstract class Level implements LevelAccessor, AutoCloseable { -@@ -1842,7 +1843,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -1847,7 +1848,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { public org.bukkit.entity.Entity[] getChunkEntities(int chunkX, int chunkZ) { io.papermc.paper.world.ChunkEntitySlices slices = ((ServerLevel)this).getEntityLookup().getChunk(chunkX, chunkZ); if (slices == null) { diff --git a/patches/server/0094-Optimize-sun-burn-tick.patch b/patches/server/0094-Optimize-sun-burn-tick.patch index ffa58d41..94b4b9f9 100644 --- a/patches/server/0094-Optimize-sun-burn-tick.patch +++ b/patches/server/0094-Optimize-sun-burn-tick.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Optimize sun burn tick This patch is Powered by Gale(https://github.com/GaleMC/Gale) diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index c555922aaf678261fa67403194b3df08ab390e15..595fd0bd92714b262db500dfafa6b651be8a19cd 100644 +index bfc65a9360e14093bb8e34e33b1cb3bf574bf575..19f25eeb534f259c4280530ad488f00d710dfe77 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -1989,8 +1989,22 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -1993,8 +1993,22 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S /** @deprecated */ @Deprecated public float getLightLevelDependentMagicValue() { @@ -34,7 +34,7 @@ index c555922aaf678261fa67403194b3df08ab390e15..595fd0bd92714b262db500dfafa6b651 public void absMoveTo(double x, double y, double z, float yaw, float pitch) { this.absMoveTo(x, y, z); diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java -index 4a8a4a6ffa781a59035f34d2f10ef6b1172a9efa..3fd75473811cb373c8cc13aeb8f6f8c875c4521a 100644 +index 3d7eaf2564c3dceb7b5c658940ead6da90256efb..9df2ee40e46087e4d03de7caea01af280fe0e0d0 100644 --- a/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java @@ -1716,15 +1716,41 @@ public abstract class Mob extends LivingEntity implements Targeting { diff --git a/patches/server/0101-Skip-entity-move-if-movement-is-zero.patch b/patches/server/0101-Skip-entity-move-if-movement-is-zero.patch index 68dab78a..b2d18314 100644 --- a/patches/server/0101-Skip-entity-move-if-movement-is-zero.patch +++ b/patches/server/0101-Skip-entity-move-if-movement-is-zero.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Skip entity move if movement is zero This patch is Powered by Gale(https://github.com/GaleMC/Gale) diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 595fd0bd92714b262db500dfafa6b651be8a19cd..30b49bdf47145e7ca87cd31a67a5aef4f46162fd 100644 +index 19f25eeb534f259c4280530ad488f00d710dfe77..c31fe20217872ed083e9283d21efacdd9f1029f8 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -315,6 +315,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -17,7 +17,7 @@ index 595fd0bd92714b262db500dfafa6b651be8a19cd..30b49bdf47145e7ca87cd31a67a5aef4 public boolean onGround; public boolean horizontalCollision; public boolean verticalCollision; -@@ -1046,6 +1047,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -1050,6 +1051,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S // Paper end - detailed watchdog information public void move(MoverType movementType, Vec3 movement) { @@ -31,7 +31,7 @@ index 595fd0bd92714b262db500dfafa6b651be8a19cd..30b49bdf47145e7ca87cd31a67a5aef4 // Paper start - detailed watchdog information io.papermc.paper.util.TickThread.ensureTickThread("Cannot move an entity off-main"); synchronized (this.posLock) { -@@ -4080,6 +4088,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -4084,6 +4092,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S } public final void setBoundingBox(AABB boundingBox) { diff --git a/patches/server/0103-Skip-negligible-planar-movement-multiplication.patch b/patches/server/0103-Skip-negligible-planar-movement-multiplication.patch index 4464e9bd..29a75680 100644 --- a/patches/server/0103-Skip-negligible-planar-movement-multiplication.patch +++ b/patches/server/0103-Skip-negligible-planar-movement-multiplication.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Skip negligible planar movement multiplication This patch is Powered by Gale(https://github.com/GaleMC/Gale) diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 30b49bdf47145e7ca87cd31a67a5aef4f46162fd..ee531617b44988cd8b65b4dc5618aac43076330c 100644 +index c31fe20217872ed083e9283d21efacdd9f1029f8..1010859ff55d1a62aa49bc05ba4467e15aa9ed4a 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -1217,9 +1217,16 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -1221,9 +1221,16 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S } this.tryCheckInsideBlocks();