diff --git a/gradle.properties b/gradle.properties index 36471ae..181fb2d 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,13 +1,13 @@ group = me.earthme.luminol -version = 1.21.3-R0.1-SNAPSHOT +version = 1.21.4-R0.1-SNAPSHOT -foliaCommit = c937c72ef9b6b621c03d82368eaa212c80de3878 +foliaCommit = d4bc33870b263650b9a023c439fbca92f8623992 org.gradle.caching = true org.gradle.parallel = true org.gradle.vfs.watch = false org.gradle.jvmargs = -Xmx3G -mcVersion = 1.21.3 +mcVersion = 1.21.4 GroupMCV = 1.21 preVersion = true \ No newline at end of file diff --git a/patches/server/0001-Fix-build.patch b/patches/server/0001-Fix-build.patch index 4a35754..1570e4c 100644 --- a/patches/server/0001-Fix-build.patch +++ b/patches/server/0001-Fix-build.patch @@ -1,11 +1,11 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: MrHua269 -Date: Sat, 30 Nov 2024 11:15:18 +0800 +Date: Wed, 4 Dec 2024 23:04:00 +0800 Subject: [PATCH] Fix build diff --git a/build.gradle.kts b/build.gradle.kts -index 142714c7d47eb5de937ad385c81968148a7e4828..a4b74fabc9f5a57c8897794e69855f2f3f82f986 100644 +index 8d2b5fec6fe27dca3ce01ba1ce50506179fc3b4d..dd6cc4972a209e58313a2b6c6fe87c3605fe34ae 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -25,7 +25,7 @@ abstract class MockitoAgentProvider : CommandLineArgumentProvider { @@ -14,6 +14,6 @@ index 142714c7d47eb5de937ad385c81968148a7e4828..a4b74fabc9f5a57c8897794e69855f2f dependencies { - implementation(project(":folia-api")) // Folia + implementation(project(":luminol-api")) // Folia // Luminol + implementation("ca.spottedleaf:concurrentutil:0.0.2") // Paper - Add ConcurrentUtil dependency // Paper start implementation("org.jline:jline-terminal-ffm:3.27.1") // use ffm on java 22+ - implementation("org.jline:jline-terminal-jni:3.27.1") // fall back to jni on java 21 diff --git a/patches/server/0002-Rebrand-to-Luminol.patch b/patches/server/0002-Rebrand-to-Luminol.patch index 400df3d..b113c08 100644 --- a/patches/server/0002-Rebrand-to-Luminol.patch +++ b/patches/server/0002-Rebrand-to-Luminol.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Rebrand to Luminol diff --git a/build.gradle.kts b/build.gradle.kts -index a4b74fabc9f5a57c8897794e69855f2f3f82f986..623816729867d0bee60075c00334e2011795049a 100644 +index dd6cc4972a209e58313a2b6c6fe87c3605fe34ae..17d2d18d7898e4f0898cc18c930b7cb26f826f2a 100644 --- a/build.gradle.kts +++ b/build.gradle.kts -@@ -99,14 +99,14 @@ tasks.jar { +@@ -100,14 +100,14 @@ tasks.jar { val gitBranch = git("rev-parse", "--abbrev-ref", "HEAD").getText().trim() // Paper attributes( "Main-Class" to "org.bukkit.craftbukkit.Main", diff --git a/patches/server/0003-Empty-config-file-base.patch b/patches/server/0003-Empty-config-file-base.patch index 94f5b32..f1a132b 100644 --- a/patches/server/0003-Empty-config-file-base.patch +++ b/patches/server/0003-Empty-config-file-base.patch @@ -1,11 +1,11 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: MrHua269 -Date: Sat, 30 Nov 2024 11:22:17 +0800 +Date: Wed, 4 Dec 2024 23:07:13 +0800 Subject: [PATCH] Empty config file base diff --git a/build.gradle.kts b/build.gradle.kts -index 623816729867d0bee60075c00334e2011795049a..fcc16a93482527b364c8ba1da5cb659b35fdfd4e 100644 +index 17d2d18d7898e4f0898cc18c930b7cb26f826f2a..017dc1ff0a7c6f7c50a57bf615fc31947ed49639 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -26,6 +26,7 @@ abstract class MockitoAgentProvider : CommandLineArgumentProvider { @@ -13,9 +13,9 @@ index 623816729867d0bee60075c00334e2011795049a..fcc16a93482527b364c8ba1da5cb659b dependencies { implementation(project(":luminol-api")) // Folia // Luminol + implementation("com.electronwill.night-config:toml:3.6.6") // Luminol - Night config + implementation("ca.spottedleaf:concurrentutil:0.0.2") // Paper - Add ConcurrentUtil dependency // Paper start implementation("org.jline:jline-terminal-ffm:3.27.1") // use ffm on java 22+ - implementation("org.jline:jline-terminal-jni:3.27.1") // fall back to jni on java 21 diff --git a/src/main/java/me/earthme/luminol/commands/LuminolConfigCommand.java b/src/main/java/me/earthme/luminol/commands/LuminolConfigCommand.java new file mode 100644 index 0000000000000000000000000000000000000000..5c8745dffa80cf47e856d04d283937bda86881f8 diff --git a/patches/server/0004-Add-config-for-server-mod-name.patch b/patches/server/0004-Add-config-for-server-mod-name.patch index 0d4b180..5fe2bc1 100644 --- a/patches/server/0004-Add-config-for-server-mod-name.patch +++ b/patches/server/0004-Add-config-for-server-mod-name.patch @@ -47,10 +47,10 @@ index 0000000000000000000000000000000000000000..94e7c8910e3623163528a844fd7a08b3 + } +} diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index b261d166eb09386275ba52372cca56fceaac002b..3e0fab30defa9bd92919219d47af02287364157e 100644 +index be6dc4c066efd66279301f5796451105e323089a..a99a275655ec8374c62cecbf00df6cddab00d6b9 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java -@@ -2120,7 +2120,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop DATA_START_POS = SynchedEntityData.defineId(FallingBlockEntity.class, EntityDataSerializers.BLOCK_POS); public boolean autoExpire = true; // Paper - Expand FallingBlock API -@@ -435,7 +435,7 @@ public class FallingBlockEntity extends Entity { +@@ -430,7 +430,7 @@ public class FallingBlockEntity extends Entity { boolean flag = (resourcekey1 == Level.END || resourcekey == Level.END) && resourcekey1 != resourcekey; Entity entity = super.teleport(teleportTarget); @@ -53,7 +53,7 @@ index 8203bc134888a57056a6cb301beb9ff21983716f..cac7453f83be82671fb21c8712ff190b } } diff --git a/src/main/java/net/minecraft/world/level/block/EndPortalBlock.java b/src/main/java/net/minecraft/world/level/block/EndPortalBlock.java -index 403cced72fa043a9084afb5bb8fa037ccb511d41..f8e40758e6aed473a06cce18f20e727e44a06436 100644 +index 45b8ac1418864ea32bd625b0d57fcec288ea5b0c..96dfc7062c2b0d371717c2042bf7c8e8b32e8716 100644 --- a/src/main/java/net/minecraft/world/level/block/EndPortalBlock.java +++ b/src/main/java/net/minecraft/world/level/block/EndPortalBlock.java @@ -76,7 +76,11 @@ public class EndPortalBlock extends BaseEntityBlock implements Portal { diff --git a/patches/server/0009-Add-a-simple-tpsbar.patch b/patches/server/0009-Add-a-simple-tpsbar.patch index 11046de..ea42993 100644 --- a/patches/server/0009-Add-a-simple-tpsbar.patch +++ b/patches/server/0009-Add-a-simple-tpsbar.patch @@ -358,10 +358,10 @@ index e3c8deea68ef49bcd07359e243a12afb57cbcf52..279bc6eede3a1ae77b810f0553efe36a //Util.shutdownExecutors(); // Paper - moved into super SkullBlockEntity.clear(); diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 68a88928a3aae9d2ea6cd18088ede0a54c31d0d2..8148cbbea2de545e538ce81b51de3919ba11ef59 100644 +index b6f3078fa688ca61cfd45d856b95c160cfe7b2da..3eded95f44f2d421f23a6daf4550240b8646f070 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -329,7 +329,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple +@@ -327,7 +327,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple public com.destroystokyo.paper.event.entity.PlayerNaturallySpawnCreaturesEvent playerNaturallySpawnedEvent; // Paper - PlayerNaturallySpawnCreaturesEvent public @Nullable String clientBrandName = null; // Paper - Brand support public org.bukkit.event.player.PlayerQuitEvent.QuitReason quitReason = null; // Paper - Add API for quit reason; there are a lot of changes to do if we change all methods leading to the event @@ -371,7 +371,7 @@ index 68a88928a3aae9d2ea6cd18088ede0a54c31d0d2..8148cbbea2de545e538ce81b51de3919 private ca.spottedleaf.moonrise.patches.chunk_system.player.RegionizedPlayerChunkLoader.PlayerChunkLoaderData chunkLoader; private final ca.spottedleaf.moonrise.patches.chunk_system.player.RegionizedPlayerChunkLoader.ViewDistanceHolder viewDistanceHolder = new ca.spottedleaf.moonrise.patches.chunk_system.player.RegionizedPlayerChunkLoader.ViewDistanceHolder(); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index b2ae1de0b18a7b5c684b04e3f81fdf071e013c61..5eb2432cb0a43afee70be081a8e05aaf35de4859 100644 +index 95047bf77be54af6968a6e77f13dd01aa989b4d8..7a585ce7ed7e489f0186a0a7c2370e0c439e3710 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -2405,6 +2405,9 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0010-Add-a-simple-membar.patch b/patches/server/0010-Add-a-simple-membar.patch index 0b02eac..58084cf 100644 --- a/patches/server/0010-Add-a-simple-membar.patch +++ b/patches/server/0010-Add-a-simple-membar.patch @@ -318,10 +318,10 @@ index 279bc6eede3a1ae77b810f0553efe36adeeefaa4..4ff5105d32c41a8ea145e7833ea6a3ce //Util.shutdownExecutors(); // Paper - moved into super SkullBlockEntity.clear(); diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 8148cbbea2de545e538ce81b51de3919ba11ef59..3f4518b29c9f0c4ad9561bde2ffded8404608cae 100644 +index 3eded95f44f2d421f23a6daf4550240b8646f070..e58e754534fc37f276e66cbd771d10f0d6d26706 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -330,6 +330,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple +@@ -328,6 +328,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple public @Nullable String clientBrandName = null; // Paper - Brand support public org.bukkit.event.player.PlayerQuitEvent.QuitReason quitReason = null; // Paper - Add API for quit reason; there are a lot of changes to do if we change all methods leading to the event public volatile boolean isTpsBarVisible = false; //Luminol - Tps bar @@ -330,7 +330,7 @@ index 8148cbbea2de545e538ce81b51de3919ba11ef59..3f4518b29c9f0c4ad9561bde2ffded84 private ca.spottedleaf.moonrise.patches.chunk_system.player.RegionizedPlayerChunkLoader.PlayerChunkLoaderData chunkLoader; private final ca.spottedleaf.moonrise.patches.chunk_system.player.RegionizedPlayerChunkLoader.ViewDistanceHolder viewDistanceHolder = new ca.spottedleaf.moonrise.patches.chunk_system.player.RegionizedPlayerChunkLoader.ViewDistanceHolder(); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 5eb2432cb0a43afee70be081a8e05aaf35de4859..566c404acfced53414f3d0facd22d03b71841587 100644 +index 7a585ce7ed7e489f0186a0a7c2370e0c439e3710..c8bdb67cf7e94523a6e6942cb552221be37482d4 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -2408,6 +2408,9 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0015-Add-config-to-disable-entity-tick-catchers.patch b/patches/server/0015-Add-config-to-disable-entity-tick-catchers.patch index 4d521d4..65db21d 100644 --- a/patches/server/0015-Add-config-to-disable-entity-tick-catchers.patch +++ b/patches/server/0015-Add-config-to-disable-entity-tick-catchers.patch @@ -31,10 +31,10 @@ index 0000000000000000000000000000000000000000..0fd71151a85dd87c2294033e2e7512ac + } +} diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 3d96f7ae648b47cc7494578d9776e7ea6dee0964..6161137e2249d592e2b6c7e0b94b7163b55788c7 100644 +index 456f15e44e41d65338c0346594be2b0042b84005..5127d0ef0c85b8f57d412d36eaca00153c4fe7b3 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java -@@ -1537,7 +1537,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl +@@ -1538,7 +1538,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl try { tickConsumer.accept(entity); } catch (Throwable throwable) { diff --git a/patches/server/0018-Try-fixing-folia-spector-teleportation.patch b/patches/server/0018-Try-fixing-folia-spector-teleportation.patch index 880d6a9..09a4668 100644 --- a/patches/server/0018-Try-fixing-folia-spector-teleportation.patch +++ b/patches/server/0018-Try-fixing-folia-spector-teleportation.patch @@ -36,10 +36,10 @@ index 0000000000000000000000000000000000000000..01f8c6ff3662569be5a4ff998bcd4fbb + } +} diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 3f4518b29c9f0c4ad9561bde2ffded8404608cae..225617af39a5ae5f2c0078aa030fb0a42250e9db 100644 +index e58e754534fc37f276e66cbd771d10f0d6d26706..76752263eba927fba482280680c011738247dbaa 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -1168,9 +1168,24 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple +@@ -1162,9 +1162,24 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple } Entity entity = this.getCamera(); diff --git a/patches/server/0019-Teleport-async-if-entity-was-moving-to-another-regio.patch b/patches/server/0019-Teleport-async-if-entity-was-moving-to-another-regio.patch index 7a08d47..339f51d 100644 --- a/patches/server/0019-Teleport-async-if-entity-was-moving-to-another-regio.patch +++ b/patches/server/0019-Teleport-async-if-entity-was-moving-to-another-regio.patch @@ -39,10 +39,10 @@ index 0000000000000000000000000000000000000000..0e51d465db3554ac80d00c6b85cc1f01 + } +} diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index d98a86e911c6b6bc181d5148e806e2452cb1c6f4..403585b38a2d8bc1e25fa8e3e4014470a65461b9 100644 +index eeb094265756e5440c0cdd0784f725f7de536493..4c95fb042b42e3acb7ec5fa93f5284434bf82196 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -1173,6 +1173,10 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -1181,6 +1181,10 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } // Paper end - detailed watchdog information @@ -53,7 +53,7 @@ index d98a86e911c6b6bc181d5148e806e2452cb1c6f4..403585b38a2d8bc1e25fa8e3e4014470 public void move(MoverType type, Vec3 movement) { final Vec3 originalMovement = movement; // Paper - Expose pre-collision velocity // Paper start - detailed watchdog information -@@ -1183,6 +1187,32 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -1191,6 +1195,32 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess this.moveStartZ = this.getZ(); this.moveVector = movement; } diff --git a/patches/server/0021-Force-disable-builtin-spark-plugin.patch b/patches/server/0021-Force-disable-builtin-spark-plugin.patch index 2b003cd..e863c22 100644 --- a/patches/server/0021-Force-disable-builtin-spark-plugin.patch +++ b/patches/server/0021-Force-disable-builtin-spark-plugin.patch @@ -18,10 +18,10 @@ index 48604e7f96adc9e226e034054c5e2bad0b024eb5..99f0c1e4d3437154a1062b0a8f94b7a0 return; } diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 3e0fab30defa9bd92919219d47af02287364157e..d54b5a0c4efd25d2792ab0ff69985eab663ab253 100644 +index a99a275655ec8374c62cecbf00df6cddab00d6b9..67245811b15d6dfc0626e1d6ca874a901e565c3c 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java -@@ -808,8 +808,8 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop= j) { @@ -59,7 +59,7 @@ index 3e0fab30defa9bd92919219d47af02287364157e..d54b5a0c4efd25d2792ab0ff69985eab if (this.emptyTicks == j) { MinecraftServer.LOGGER.info("Server empty for {} seconds, pausing", this.pauseWhileEmptySeconds()); this.autoSave(); -@@ -1746,7 +1746,8 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop { @@ -37,7 +37,7 @@ index 403585b38a2d8bc1e25fa8e3e4014470a65461b9..39ce6a8cd2713379712a0795bb372c7b TeleportTransition.PLAY_PORTAL_SOUND.then(TeleportTransition.PLACE_PORTAL_TICKET), org.bukkit.event.player.PlayerTeleportEvent.TeleportCause.END_PORTAL ) -@@ -4626,6 +4632,10 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4658,6 +4664,10 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess if (!this.canPortalAsync(destination, takePassengers)) { return false; } @@ -48,7 +48,7 @@ index 403585b38a2d8bc1e25fa8e3e4014470a65461b9..39ce6a8cd2713379712a0795bb372c7b Vec3 initialPosition = this.position(); ChunkPos initialPositionChunk = new ChunkPos( -@@ -4690,9 +4700,14 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4722,9 +4732,14 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess info.postTeleportTransition().onTransition(teleported); } diff --git a/patches/server/0024-Kaiiju-Entity-tick-and-removal-limiter.patch b/patches/server/0024-Kaiiju-Entity-tick-and-removal-limiter.patch index 50a6c0b..4372c12 100644 --- a/patches/server/0024-Kaiiju-Entity-tick-and-removal-limiter.patch +++ b/patches/server/0024-Kaiiju-Entity-tick-and-removal-limiter.patch @@ -1,11 +1,11 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: MrHua269 -Date: Sat, 30 Nov 2024 20:29:38 +0800 +Date: Wed, 4 Dec 2024 23:39:18 +0800 Subject: [PATCH] Kaiiju Entity tick and removal limiter diff --git a/build.gradle.kts b/build.gradle.kts -index fcc16a93482527b364c8ba1da5cb659b35fdfd4e..bdff148efc08334708cd58f7af4b87d6a07ef69f 100644 +index 017dc1ff0a7c6f7c50a57bf615fc31947ed49639..021b59d19d1af866fbbe7d68c700365b098cabdf 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -27,6 +27,7 @@ abstract class MockitoAgentProvider : CommandLineArgumentProvider { @@ -13,9 +13,9 @@ index fcc16a93482527b364c8ba1da5cb659b35fdfd4e..bdff148efc08334708cd58f7af4b87d6 implementation(project(":luminol-api")) // Folia // Luminol implementation("com.electronwill.night-config:toml:3.6.6") // Luminol - Night config + implementation("io.github.classgraph:classgraph:4.8.158") // Kaiiju - Entity throttling & Removal + implementation("ca.spottedleaf:concurrentutil:0.0.2") // Paper - Add ConcurrentUtil dependency // Paper start implementation("org.jline:jline-terminal-ffm:3.27.1") // use ffm on java 22+ - implementation("org.jline:jline-terminal-jni:3.27.1") // fall back to jni on java 21 diff --git a/src/main/java/dev/kaiijumc/kaiiju/KaiijuEntityLimits.java b/src/main/java/dev/kaiijumc/kaiiju/KaiijuEntityLimits.java new file mode 100644 index 0000000000000000000000000000000000000000..40e80fc685a42bbaeea3e6e64754121178cc7d22 @@ -295,10 +295,10 @@ index 0000000000000000000000000000000000000000..038d9ab60cfac7e40e7c0c0644fa0a0d + } +} diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index f15015e7ea2b4bc68f3d93ff9bb54da46389c098..8c96d9ece6fac543b1aef39565f8c47e6b27068f 100644 +index 66728181f92a900f4d3c667c2b963e3178bdcf02..992c4f2ed859570514e93d863a3fd64b7cadd209 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java -@@ -810,6 +810,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe +@@ -811,6 +811,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe } profiler.startTimer(ca.spottedleaf.leafprofiler.LProfilerRegistry.ACTIVATE_ENTITIES); try { // Folia - profiler @@ -306,7 +306,7 @@ index f15015e7ea2b4bc68f3d93ff9bb54da46389c098..8c96d9ece6fac543b1aef39565f8c47e org.spigotmc.ActivationRange.activateEntities(this); // Spigot } finally { profiler.stopTimer(ca.spottedleaf.leafprofiler.LProfilerRegistry.ACTIVATE_ENTITIES); } // Folia - profiler profiler.startTimer(ca.spottedleaf.leafprofiler.LProfilerRegistry.ENTITY_TICK); try { // Folia - profiler -@@ -831,6 +832,13 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe +@@ -832,6 +833,13 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe entity.stopRiding(); } @@ -320,7 +320,7 @@ index f15015e7ea2b4bc68f3d93ff9bb54da46389c098..8c96d9ece6fac543b1aef39565f8c47e gameprofilerfiller.push("tick"); this.guardEntityTick(this::tickNonPassenger, entity); gameprofilerfiller.pop(); -@@ -838,6 +846,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe +@@ -839,6 +847,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe } } }); diff --git a/patches/server/0025-Petal-Reduce-sensor-work.patch b/patches/server/0025-Petal-Reduce-sensor-work.patch index 57d21f5..7696059 100644 --- a/patches/server/0025-Petal-Reduce-sensor-work.patch +++ b/patches/server/0025-Petal-Reduce-sensor-work.patch @@ -33,10 +33,10 @@ index 0000000000000000000000000000000000000000..dd45cf1fde5ee4cf8347064f106c64b8 + } +} diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java -index bd2d62f73e4f1fa1e655012d04e104acca5db198..b136a3d32198cf0e3127966bffbac73315c78f8a 100644 +index 92bda33a8d42150e66f3d2c24bdcce6b7c42471b..4f5048b8b892fa5bd4132fbd74d3b404f2795ad6 100644 --- a/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java -@@ -938,12 +938,12 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab +@@ -928,12 +928,12 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab return; } // Paper end - Allow nerfed mobs to jump and float diff --git a/patches/server/0026-Pufferfish-Cache-climbing-check-for-activation.patch b/patches/server/0026-Pufferfish-Cache-climbing-check-for-activation.patch index 1e1d82e..f66bcf6 100644 --- a/patches/server/0026-Pufferfish-Cache-climbing-check-for-activation.patch +++ b/patches/server/0026-Pufferfish-Cache-climbing-check-for-activation.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Pufferfish Cache climbing check for activation diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index b63393c131f736cd51666c675ac18918e038eca6..f9a4ba5cc7c1029a5201e140c80648d07ca80936 100644 +index 73af15d18180b4df3fa0614b323f2397f5543db5..dcdc5ca699832b3c26b33a27f684a4c7dea103b9 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -2139,6 +2139,20 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -2154,6 +2154,20 @@ public abstract class LivingEntity extends Entity implements Attackable { return this.lastClimbablePos; } diff --git a/patches/server/0027-Pufferfish-Reduce-chunk-loading-lookups.patch b/patches/server/0027-Pufferfish-Reduce-chunk-loading-lookups.patch index 04e4f9d..514eebd 100644 --- a/patches/server/0027-Pufferfish-Reduce-chunk-loading-lookups.patch +++ b/patches/server/0027-Pufferfish-Reduce-chunk-loading-lookups.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Pufferfish Reduce chunk loading & lookups diff --git a/src/main/java/net/minecraft/world/entity/monster/EnderMan.java b/src/main/java/net/minecraft/world/entity/monster/EnderMan.java -index 48dcd2bc12ce1d08cc5195bff5460dc0dd9902d3..c7153cfec847fca4ce5d9ec729628aed5bed11be 100644 +index 2a394381a4ad46359359ba402b65c62b331480b4..4e4dab5bc202f6f421dcff98f0e36e8e70378b49 100644 --- a/src/main/java/net/minecraft/world/entity/monster/EnderMan.java +++ b/src/main/java/net/minecraft/world/entity/monster/EnderMan.java -@@ -307,11 +307,17 @@ public class EnderMan extends Monster implements NeutralMob { +@@ -306,11 +306,17 @@ public class EnderMan extends Monster implements NeutralMob { private boolean teleport(double x, double y, double z) { BlockPos.MutableBlockPos blockposition_mutableblockposition = new BlockPos.MutableBlockPos(x, y, z); diff --git a/patches/server/0031-Pufferfish-Only-check-for-spooky-season-once-an-hour.patch b/patches/server/0030-Pufferfish-Only-check-for-spooky-season-once-an-hour.patch similarity index 100% rename from patches/server/0031-Pufferfish-Only-check-for-spooky-season-once-an-hour.patch rename to patches/server/0030-Pufferfish-Only-check-for-spooky-season-once-an-hour.patch diff --git a/patches/server/0034-Pufferfish-Optimize-suffocation.patch b/patches/server/0031-Pufferfish-Optimize-suffocation.patch similarity index 91% rename from patches/server/0034-Pufferfish-Optimize-suffocation.patch rename to patches/server/0031-Pufferfish-Optimize-suffocation.patch index 6be9bec..7d710e5 100644 --- a/patches/server/0034-Pufferfish-Optimize-suffocation.patch +++ b/patches/server/0031-Pufferfish-Optimize-suffocation.patch @@ -31,10 +31,10 @@ index 0000000000000000000000000000000000000000..3e48cd297b4869e5c89b6abc43c726d3 + } +} diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index f9a4ba5cc7c1029a5201e140c80648d07ca80936..c079466246af4345e185faf96043ec148fdea2a8 100644 +index dcdc5ca699832b3c26b33a27f684a4c7dea103b9..f537fd0a6bf689b5804924950d1b7acf51664f33 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -482,7 +482,7 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -480,7 +480,7 @@ public abstract class LivingEntity extends Entity implements Attackable { if (world1 instanceof ServerLevel) { worldserver1 = (ServerLevel) world1; @@ -64,10 +64,10 @@ index f9a4ba5cc7c1029a5201e140c80648d07ca80936..c079466246af4345e185faf96043ec14 public boolean hurtServer(ServerLevel world, DamageSource source, float amount) { if (this.isInvulnerableTo(world, source)) { diff --git a/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java b/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java -index 244e38db508efa3eebebb6392c4ebb0805367baf..d62c0d3c2bd5df5ee908bdcfdffaae9ce780810f 100644 +index bd9e10f79eaf0d23908229b3ebc2227946a14843..2ce65ef77e4b28e1fd5ac7bd6a304cc115b8aca2 100644 --- a/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java +++ b/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java -@@ -152,6 +152,13 @@ public class WitherBoss extends Monster implements RangedAttackMob { +@@ -151,6 +151,13 @@ public class WitherBoss extends Monster implements RangedAttackMob { this.bossEvent.setName(this.getDisplayName()); } diff --git a/patches/server/0030-Pufferfish-Dynamic-Activation-of-Brain.patch b/patches/server/0032-Pufferfish-Dynamic-Activation-of-Brain.patch similarity index 92% rename from patches/server/0030-Pufferfish-Dynamic-Activation-of-Brain.patch rename to patches/server/0032-Pufferfish-Dynamic-Activation-of-Brain.patch index 558c0fe..80cad6f 100644 --- a/patches/server/0030-Pufferfish-Dynamic-Activation-of-Brain.patch +++ b/patches/server/0032-Pufferfish-Dynamic-Activation-of-Brain.patch @@ -1,6 +1,6 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: MrHua269 -Date: Sat, 30 Nov 2024 11:58:37 +0800 +Date: Wed, 4 Dec 2024 23:49:02 +0800 Subject: [PATCH] Pufferfish Dynamic Activation of Brain @@ -71,10 +71,10 @@ index 0000000000000000000000000000000000000000..af5893ba1f738ec9827d7b714682c314 + } +} diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 8c96d9ece6fac543b1aef39565f8c47e6b27068f..230b448d8dd5c49e2cd45d9f06a439912402d914 100644 +index 992c4f2ed859570514e93d863a3fd64b7cadd209..39a3e0d6c8c191b5ff8c897580f4ac0d8181a025 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java -@@ -815,6 +815,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe +@@ -816,6 +816,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe } finally { profiler.stopTimer(ca.spottedleaf.leafprofiler.LProfilerRegistry.ACTIVATE_ENTITIES); } // Folia - profiler profiler.startTimer(ca.spottedleaf.leafprofiler.LProfilerRegistry.ENTITY_TICK); try { // Folia - profiler regionizedWorldData.forEachTickingEntity((entity) -> { // Folia - regionised ticking @@ -83,7 +83,7 @@ index 8c96d9ece6fac543b1aef39565f8c47e6b27068f..230b448d8dd5c49e2cd45d9f06a43991 if (!tickratemanager.isEntityFrozen(entity)) { gameprofilerfiller.push("checkDespawn"); diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 39ce6a8cd2713379712a0795bb372c7be31c45c6..8d0aae7ae8abec5eac1357a1ea28df0cddab2f36 100644 +index ea45436e27f3d6c831d3e5fc11587e5e185304e0..88a6896afe118a7ea8092fac36e163b534715344 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -390,6 +390,8 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess @@ -96,7 +96,7 @@ index 39ce6a8cd2713379712a0795bb372c7be31c45c6..8d0aae7ae8abec5eac1357a1ea28df0c public void setOrigin(@javax.annotation.Nonnull Location location) { this.origin = location.toVector(); diff --git a/src/main/java/net/minecraft/world/entity/EntityType.java b/src/main/java/net/minecraft/world/entity/EntityType.java -index 0d18403c6c25555f78e2d6810520839f30258c8e..85865f13404c70fa44ee95968ec1511cba2e3efe 100644 +index 635c9c7a8c8307c2bc845a8e1f24aacb526a3c92..c824e8a540dccffd848ae0a0624ce034b78f7db6 100644 --- a/src/main/java/net/minecraft/world/entity/EntityType.java +++ b/src/main/java/net/minecraft/world/entity/EntityType.java @@ -385,6 +385,7 @@ public class EntityType implements FeatureElement, EntityTypeT @@ -108,10 +108,10 @@ index 0d18403c6c25555f78e2d6810520839f30258c8e..85865f13404c70fa44ee95968ec1511c private Component description; private final Optional> lootTable; diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java -index b136a3d32198cf0e3127966bffbac73315c78f8a..34500f330f51e4c2c7b2b99ba57b0574ee3b266d 100644 +index 4f5048b8b892fa5bd4132fbd74d3b404f2795ad6..d5a205ecb5bd52d37ba867d7542b53331623cb5a 100644 --- a/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java -@@ -247,10 +247,10 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab +@@ -235,10 +235,10 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab @Override public void inactiveTick() { super.inactiveTick(); @@ -124,7 +124,7 @@ index b136a3d32198cf0e3127966bffbac73315c78f8a..34500f330f51e4c2c7b2b99ba57b0574 this.targetSelector.tick(); } } -@@ -947,16 +947,20 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab +@@ -937,16 +937,20 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab if (i % 2 != 0 && this.tickCount > 1) { gameprofilerfiller.push("targetSelector"); @@ -165,10 +165,10 @@ index 29ae74339a4831ccef3d01e8054931715ba192ad..dd08eb5d44de5a482df538bca18a2255 public boolean hasTasks() { for (WrappedGoal task : this.availableGoals) { diff --git a/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java b/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java -index 05c3d43fafc781e2c2d762dd5f509753df8da3b3..94692082aa85d7e4e52a4e16bb5e49b0bf6eb93f 100644 +index b86f638390d386c838318a4d9b6571ac5514df8f..f4788104b1bb73810fdf0dc7f5311d5b078a81d5 100644 --- a/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java +++ b/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java -@@ -219,11 +219,13 @@ public class Allay extends PathfinderMob implements InventoryCarrier, VibrationS +@@ -223,11 +223,13 @@ public class Allay extends PathfinderMob implements InventoryCarrier, VibrationS return 0.4F; } @@ -201,7 +201,7 @@ index 31b10cd404b672d7ce21c2107d8f83e32de26ef4..cb47876a13cb1990bb0ab4cff1bbe57b gameprofilerfiller.pop(); gameprofilerfiller.push("axolotlActivityUpdate"); diff --git a/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java b/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java -index 36846ba6b6c7494c745ebd8b221479a9d02ff318..3461c7150fc44ee608169aa993f6ff44d4c978be 100644 +index ca04e5d829331551a2c2f44e223ff05c6ce04e76..db91b8018591fe248efda417fcde7fd2071c4cb6 100644 --- a/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java +++ b/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java @@ -184,10 +184,12 @@ public class Frog extends Animal implements VariantHolder> { @@ -254,27 +254,28 @@ index 76aca47d8638d5c37c57d3a59fa7f8ceaa5a53b4..fb92cd4b0c15b614c0c06d2867039aee gameprofilerfiller.pop(); gameprofilerfiller.push("goatActivityUpdate"); 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 6ea90e54759dbeab025e0a1896ee834ea9986427..3f625cb9b1237ca8f782bca2f182dfe72853bd96 100644 +index 92270912ef26924f611a1df7cb3d5b485b0a262d..9c20651b74157582e60793ceba8adde2c354f2a8 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 -@@ -156,10 +156,12 @@ public class Hoglin extends Animal implements Enemy, HoglinBase { - return (Brain)super.getBrain(); +@@ -138,11 +138,13 @@ public class Hoglin extends Animal implements Enemy, HoglinBase { + return (Brain) super.getBrain(); // CraftBukkit - decompile error } + private int behaviorTick; // Pufferfish @Override protected void customServerAiStep(ServerLevel world) { - ProfilerFiller profilerFiller = Profiler.get(); - profilerFiller.push("hoglinBrain"); + ProfilerFiller gameprofilerfiller = Profiler.get(); + + gameprofilerfiller.push("hoglinBrain"); + if (this.behaviorTick++ % this.activatedPriority == 0) // Pufferfish this.getBrain().tick(world, this); - profilerFiller.pop(); + gameprofilerfiller.pop(); HoglinAi.updateActivity(this); diff --git a/src/main/java/net/minecraft/world/entity/monster/piglin/Piglin.java b/src/main/java/net/minecraft/world/entity/monster/piglin/Piglin.java -index e04d2c5e75dc774fe893a552474fdb8045c32693..d1870bf4c01c846a721480eb6611a67db9b98d02 100644 +index 2121d2a2e1aa1d0f0390cc515317096431f6dcb0..74ab50723056fef2a96dcc9e2de0e58526738011 100644 --- a/src/main/java/net/minecraft/world/entity/monster/piglin/Piglin.java +++ b/src/main/java/net/minecraft/world/entity/monster/piglin/Piglin.java -@@ -304,11 +304,13 @@ public class Piglin extends AbstractPiglin implements CrossbowAttackMob, Invento +@@ -307,11 +307,13 @@ public class Piglin extends AbstractPiglin implements CrossbowAttackMob, Invento return !this.cannotHunt; } @@ -289,7 +290,7 @@ index e04d2c5e75dc774fe893a552474fdb8045c32693..d1870bf4c01c846a721480eb6611a67d gameprofilerfiller.pop(); PiglinAi.updateActivity(this); diff --git a/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java b/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java -index 6180019da58b19d2595da508aed3196af922d587..457f9f6bf6a8e8f2e0b4246a0589e344756370d2 100644 +index c47ed605f0822effd58df4f875297ed015e1e57e..4331ada8bed7ade7b53fd8ba000c1c1b34fa4331 100644 --- a/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java +++ b/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java @@ -275,11 +275,13 @@ public class Warden extends Monster implements VibrationSystem { @@ -307,7 +308,7 @@ index 6180019da58b19d2595da508aed3196af922d587..457f9f6bf6a8e8f2e0b4246a0589e344 gameprofilerfiller.pop(); super.customServerAiStep(world); diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java -index d33dc470850acdc0cecfbad7f7990a9deb57edaf..75d214a828d30fb7f81a510b115ca14071e6294a 100644 +index 07f50048e9748b28178847ad470b8b2ce37e0eea..8fbf0df15716940622144fb2d4423f74264580f7 100644 --- a/src/main/java/net/minecraft/world/entity/npc/Villager.java +++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java @@ -142,6 +142,8 @@ public class Villager extends AbstractVillager implements ReputationEventHandler diff --git a/patches/server/0032-Pufferfish-Simpler-ShapelessRecipes-comparison-for-V.patch b/patches/server/0032-Pufferfish-Simpler-ShapelessRecipes-comparison-for-V.patch deleted file mode 100644 index 9822bfd..0000000 --- a/patches/server/0032-Pufferfish-Simpler-ShapelessRecipes-comparison-for-V.patch +++ /dev/null @@ -1,65 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: MrHua269 -Date: Sat, 30 Nov 2024 11:59:52 +0800 -Subject: [PATCH] Pufferfish Simpler ShapelessRecipes comparison for Vanilla - - -diff --git a/src/main/java/net/minecraft/world/item/crafting/ShapelessRecipe.java b/src/main/java/net/minecraft/world/item/crafting/ShapelessRecipe.java -index 12f95bee2a69fd5df7c4a165537e01299e60c5f6..d7ce86752e4138cdd3844b3374609753aa20f9ea 100644 ---- a/src/main/java/net/minecraft/world/item/crafting/ShapelessRecipe.java -+++ b/src/main/java/net/minecraft/world/item/crafting/ShapelessRecipe.java -@@ -31,8 +31,13 @@ public class ShapelessRecipe implements CraftingRecipe { - final List ingredients; - @Nullable - private PlacementInfo placementInfo; -+ private final boolean isBukkit; // Pufferfish - -+ // Pufferfish start - public ShapelessRecipe(String group, CraftingBookCategory category, ItemStack result, List ingredients) { -+ this(group, category, result, ingredients, false); -+ } -+ public ShapelessRecipe(String group, CraftingBookCategory category, ItemStack result, List ingredients, boolean isBukkit) { this.isBukkit = isBukkit; // Pufferfish end - this.group = group; - this.category = category; - this.result = result; -@@ -80,6 +85,28 @@ public class ShapelessRecipe implements CraftingRecipe { - } - - public boolean matches(CraftingInput input, Level world) { -+ // Pufferfish start -+ if (!this.isBukkit) { -+ java.util.List ingredients = com.google.common.collect.Lists.newArrayList(this.ingredients.toArray(new Ingredient[0])); -+ -+ inventory: for (int index = 0; index < input.size(); index++) { -+ ItemStack itemStack = input.getItem(index); -+ -+ if (!itemStack.isEmpty()) { -+ for (int i = 0; i < ingredients.size(); i++) { -+ if (ingredients.get(i).test(itemStack)) { -+ ingredients.remove(i); -+ continue inventory; -+ } -+ } -+ return false; -+ } -+ } -+ -+ return ingredients.isEmpty(); -+ } -+ // Pufferfish end -+ - // Paper start - Improve exact choice recipe ingredients & unwrap ternary - if (input.ingredientCount() != this.ingredients.size()) { - return false; -diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftShapelessRecipe.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftShapelessRecipe.java -index 7c989318dc7ad89bb0d9143fcaac1e4bba6f5907..143a4d4efcc989ed4a4c73cc304e1978ad8f0699 100644 ---- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftShapelessRecipe.java -+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftShapelessRecipe.java -@@ -44,6 +44,6 @@ public class CraftShapelessRecipe extends ShapelessRecipe implements CraftRecipe - data.add(this.toNMS(i, true)); - } - -- MinecraftServer.getServer().getRecipeManager().addRecipe(new RecipeHolder<>(CraftRecipe.toMinecraft(this.getKey()), new net.minecraft.world.item.crafting.ShapelessRecipe(this.getGroup(), CraftRecipe.getCategory(this.getCategory()), CraftItemStack.asNMSCopy(this.getResult()), data))); -+ MinecraftServer.getServer().getRecipeManager().addRecipe(new RecipeHolder<>(CraftRecipe.toMinecraft(this.getKey()), new net.minecraft.world.item.crafting.ShapelessRecipe(this.getGroup(), CraftRecipe.getCategory(this.getCategory()), CraftItemStack.asNMSCopy(this.getResult()), data, true))); // Pufferfish - } - } diff --git a/patches/server/0033-Pufferfish-Throttle-goal-selector-during-inactive-ti.patch b/patches/server/0033-Pufferfish-Throttle-goal-selector-during-inactive-ti.patch index 49bc786..9e6c16a 100644 --- a/patches/server/0033-Pufferfish-Throttle-goal-selector-during-inactive-ti.patch +++ b/patches/server/0033-Pufferfish-Throttle-goal-selector-during-inactive-ti.patch @@ -1,6 +1,6 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: MrHua269 -Date: Sun, 4 Aug 2024 21:41:52 +0800 +Date: Wed, 4 Dec 2024 23:50:22 +0800 Subject: [PATCH] Pufferfish Throttle goal selector during inactive ticking @@ -31,10 +31,10 @@ index 0000000000000000000000000000000000000000..acc032f727e605e79b688efb4873ff47 + } +} diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java -index 34500f330f51e4c2c7b2b99ba57b0574ee3b266d..8082fb0d0793743ee6123f4bb5c6d79b078d5f86 100644 +index d5a205ecb5bd52d37ba867d7542b53331623cb5a..05d11b562e12c1d22df39856b32b3049c50d06b6 100644 --- a/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java -@@ -243,11 +243,13 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab +@@ -231,11 +231,13 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab return this.lookControl; } diff --git a/patches/server/0035-Pufferfish-SIMD-Utilities.patch b/patches/server/0034-Pufferfish-SIMD-Utilities.patch similarity index 93% rename from patches/server/0035-Pufferfish-SIMD-Utilities.patch rename to patches/server/0034-Pufferfish-SIMD-Utilities.patch index 799ce80..a559189 100644 --- a/patches/server/0035-Pufferfish-SIMD-Utilities.patch +++ b/patches/server/0034-Pufferfish-SIMD-Utilities.patch @@ -1,15 +1,15 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: MrHua269 -Date: Sat, 30 Nov 2024 12:06:01 +0800 +Date: Wed, 4 Dec 2024 23:51:17 +0800 Subject: [PATCH] Pufferfish SIMD Utilities diff --git a/build.gradle.kts b/build.gradle.kts -index bdff148efc08334708cd58f7af4b87d6a07ef69f..0345be6306b2d81987709c3feb31e2d7fb2f254f 100644 +index 021b59d19d1af866fbbe7d68c700365b098cabdf..97c1116fd2695cf4061f428910d4fcb4b605edcc 100644 --- a/build.gradle.kts +++ b/build.gradle.kts -@@ -88,6 +88,14 @@ paperweight { - craftBukkitPackageVersion.set("v1_21_R2") // also needs to be updated in MappingEnvironment +@@ -89,6 +89,14 @@ paperweight { + craftBukkitPackageVersion.set("v1_21_R3") // also needs to be updated in MappingEnvironment } + diff --git a/patches/server/0036-Gale-Variable-entity-wake-up-duration.patch b/patches/server/0035-Gale-Variable-entity-wake-up-duration.patch similarity index 100% rename from patches/server/0036-Gale-Variable-entity-wake-up-duration.patch rename to patches/server/0035-Gale-Variable-entity-wake-up-duration.patch diff --git a/patches/server/0037-Gale-Optimize-sun-burn-tick.patch b/patches/server/0036-Gale-Optimize-sun-burn-tick.patch similarity index 92% rename from patches/server/0037-Gale-Optimize-sun-burn-tick.patch rename to patches/server/0036-Gale-Optimize-sun-burn-tick.patch index a9a3119..772921d 100644 --- a/patches/server/0037-Gale-Optimize-sun-burn-tick.patch +++ b/patches/server/0036-Gale-Optimize-sun-burn-tick.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Gale Optimize sun burn tick diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 8d0aae7ae8abec5eac1357a1ea28df0cddab2f36..537187df8f400f8625216b0fc21cd19c3bf28e85 100644 +index 88a6896afe118a7ea8092fac36e163b534715344..020a4b644810b59b50fd41b5799c80b220157035 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -274,7 +274,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess @@ -17,7 +17,7 @@ index 8d0aae7ae8abec5eac1357a1ea28df0cddab2f36..537187df8f400f8625216b0fc21cd19c private BlockPos blockPosition; private ChunkPos chunkPosition; private Vec3 deltaMovement; -@@ -2204,9 +2204,19 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2227,9 +2227,19 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess /** @deprecated */ @Deprecated public float getLightLevelDependentMagicValue() { @@ -39,10 +39,10 @@ index 8d0aae7ae8abec5eac1357a1ea28df0cddab2f36..537187df8f400f8625216b0fc21cd19c this.absMoveTo(x, y, z); this.absRotateTo(yaw, pitch); diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java -index 8082fb0d0793743ee6123f4bb5c6d79b078d5f86..0e0b971c93cdfd8cfae8019c4710f72fdd096c6a 100644 +index 05d11b562e12c1d22df39856b32b3049c50d06b6..4f0bb37ac2c97c80bcd1f1a691dd7594c57aa7c4 100644 --- a/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java -@@ -1766,13 +1766,29 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab +@@ -1759,13 +1759,29 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab protected void playAttackSound() {} diff --git a/patches/server/0038-Gale-Use-platform-math-functions.patch b/patches/server/0037-Gale-Use-platform-math-functions.patch similarity index 100% rename from patches/server/0038-Gale-Use-platform-math-functions.patch rename to patches/server/0037-Gale-Use-platform-math-functions.patch diff --git a/patches/server/0039-Gale-Optimize-noise-generation.patch b/patches/server/0038-Gale-Optimize-noise-generation.patch similarity index 100% rename from patches/server/0039-Gale-Optimize-noise-generation.patch rename to patches/server/0038-Gale-Optimize-noise-generation.patch diff --git a/patches/server/0040-Gale-Reduce-lambda-and-Optional-allocation-in-Entity.patch b/patches/server/0039-Gale-Reduce-lambda-and-Optional-allocation-in-Entity.patch similarity index 100% rename from patches/server/0040-Gale-Reduce-lambda-and-Optional-allocation-in-Entity.patch rename to patches/server/0039-Gale-Reduce-lambda-and-Optional-allocation-in-Entity.patch diff --git a/patches/server/0041-Gale-Replace-throttle-tracker-map-with-optimized-col.patch b/patches/server/0040-Gale-Replace-throttle-tracker-map-with-optimized-col.patch similarity index 100% rename from patches/server/0041-Gale-Replace-throttle-tracker-map-with-optimized-col.patch rename to patches/server/0040-Gale-Replace-throttle-tracker-map-with-optimized-col.patch diff --git a/patches/server/0042-Gale-Skip-entity-move-if-movement-is-zero.patch b/patches/server/0041-Gale-Skip-entity-move-if-movement-is-zero.patch similarity index 89% rename from patches/server/0042-Gale-Skip-entity-move-if-movement-is-zero.patch rename to patches/server/0041-Gale-Skip-entity-move-if-movement-is-zero.patch index 58e4ce3..ed8c04d 100644 --- a/patches/server/0042-Gale-Skip-entity-move-if-movement-is-zero.patch +++ b/patches/server/0041-Gale-Skip-entity-move-if-movement-is-zero.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Gale Skip entity move if movement is zero diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 537187df8f400f8625216b0fc21cd19c3bf28e85..75182b1f12ed5ad0ff541aee28b40a72b783230d 100644 +index 020a4b644810b59b50fd41b5799c80b220157035..9a743649abad62d53c0edcf12ba1e431413b5363 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -283,6 +283,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess @@ -16,7 +16,7 @@ index 537187df8f400f8625216b0fc21cd19c3bf28e85..75182b1f12ed5ad0ff541aee28b40a72 public boolean onGround; public boolean horizontalCollision; public boolean verticalCollision; -@@ -1181,6 +1182,11 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -1189,6 +1190,11 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess //Luminol end public void move(MoverType type, Vec3 movement) { @@ -28,7 +28,7 @@ index 537187df8f400f8625216b0fc21cd19c3bf28e85..75182b1f12ed5ad0ff541aee28b40a72 final Vec3 originalMovement = movement; // Paper - Expose pre-collision velocity // Paper start - detailed watchdog information ca.spottedleaf.moonrise.common.util.TickThread.ensureTickThread("Cannot move an entity off-main"); -@@ -5245,6 +5251,11 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -5281,6 +5287,11 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } public final void setBoundingBox(AABB boundingBox) { diff --git a/patches/server/0043-Sparkly-Paper-Optimize-canSee-checks.patch b/patches/server/0042-Sparkly-Paper-Optimize-canSee-checks.patch similarity index 95% rename from patches/server/0043-Sparkly-Paper-Optimize-canSee-checks.patch rename to patches/server/0042-Sparkly-Paper-Optimize-canSee-checks.patch index 81f78d2..f6492c7 100644 --- a/patches/server/0043-Sparkly-Paper-Optimize-canSee-checks.patch +++ b/patches/server/0042-Sparkly-Paper-Optimize-canSee-checks.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Sparkly Paper Optimize canSee checks diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index ad6d635971d0f5d23c923b1dc83c0b18e8f4a94a..926e070e3b3f1a8ce8a9c668e39239a837b35b0e 100644 +index 74cd86aea1a82f169cb50dac14a8973c97cca88d..044d1787481eecdf41eaa932e418d748920ebef3 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java @@ -1256,7 +1256,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider @@ -18,7 +18,7 @@ index ad6d635971d0f5d23c923b1dc83c0b18e8f4a94a..926e070e3b3f1a8ce8a9c668e39239a8 } // CraftBukkit end diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 566c404acfced53414f3d0facd22d03b71841587..611caf02205a7a97aa1175ab6250124d547bd071 100644 +index c8bdb67cf7e94523a6e6942cb552221be37482d4..6f7c05d3104caf702d0b19103829aca4a74f7234 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -205,7 +205,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0044-SparklyPaper-Skip-MapItem-update-if-the-map-does-not.patch b/patches/server/0043-SparklyPaper-Skip-MapItem-update-if-the-map-does-not.patch similarity index 96% rename from patches/server/0044-SparklyPaper-Skip-MapItem-update-if-the-map-does-not.patch rename to patches/server/0043-SparklyPaper-Skip-MapItem-update-if-the-map-does-not.patch index 4f23b03..fb34492 100644 --- a/patches/server/0044-SparklyPaper-Skip-MapItem-update-if-the-map-does-not.patch +++ b/patches/server/0043-SparklyPaper-Skip-MapItem-update-if-the-map-does-not.patch @@ -31,7 +31,7 @@ index 0000000000000000000000000000000000000000..6235ff18455a21695bdc2d65367558d3 + } +} diff --git a/src/main/java/net/minecraft/world/item/MapItem.java b/src/main/java/net/minecraft/world/item/MapItem.java -index 58f3c9598301a5b34142ddf958aa7a4db634be3d..c002b449688981c192468fb210e8fd9ef3f91553 100644 +index 65d1af43b8bc740a9dc77dd8d5ba99de000fe57a..d2df220bb9d8b567314696582b71f86359e6ce6a 100644 --- a/src/main/java/net/minecraft/world/item/MapItem.java +++ b/src/main/java/net/minecraft/world/item/MapItem.java @@ -280,7 +280,7 @@ public class MapItem extends Item { diff --git a/patches/server/0045-SparklyPaper-Skip-distanceToSqr-call-in-ServerEntity.patch b/patches/server/0044-SparklyPaper-Skip-distanceToSqr-call-in.patch similarity index 77% rename from patches/server/0045-SparklyPaper-Skip-distanceToSqr-call-in-ServerEntity.patch rename to patches/server/0044-SparklyPaper-Skip-distanceToSqr-call-in.patch index 90f7a9d..2cdd17b 100644 --- a/patches/server/0045-SparklyPaper-Skip-distanceToSqr-call-in-ServerEntity.patch +++ b/patches/server/0044-SparklyPaper-Skip-distanceToSqr-call-in.patch @@ -1,17 +1,17 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: MrHua269 -Date: Sun, 4 Aug 2024 22:29:01 +0800 -Subject: [PATCH] SparklyPaper Skip "distanceToSqr" call in +Date: Wed, 4 Dec 2024 23:51:38 +0800 +Subject: [PATCH] SparklyPaper Skip "distanceToSqr" call in "ServerEntity#sendChanges" if the delta movement hasn't changed diff --git a/src/main/java/net/minecraft/server/level/ServerEntity.java b/src/main/java/net/minecraft/server/level/ServerEntity.java -index 90eb4927fa51ce3df86aa7b6c71f49150a03e337..f4590eb0eef02a425056e73e7dc71328b8a5f773 100644 +index 103e2c414780be66324bcb9cd4ea539bbdfe12ad..3ea1ae600a730b1bb3488b79d145c65419687947 100644 --- a/src/main/java/net/minecraft/server/level/ServerEntity.java +++ b/src/main/java/net/minecraft/server/level/ServerEntity.java @@ -230,6 +230,8 @@ public class ServerEntity { - if ((this.trackDelta || this.entity.hasImpulse || this.entity instanceof LivingEntity && ((LivingEntity) this.entity).isFallFlying()) && this.tickCount > 0) { + if (this.entity.hasImpulse || this.trackDelta || this.entity instanceof LivingEntity && ((LivingEntity) this.entity).isFallFlying()) { Vec3 vec3d1 = this.entity.getDeltaMovement(); + + if (vec3d1 != this.lastSentMovement) { // SparklyPaper start - skip distanceToSqr call in ServerEntity#sendChanges if the delta movement hasn't changed diff --git a/patches/server/0048-KioCG-Chunk-API-and-display-of-chunkhot-in-tpsbar.patch b/patches/server/0045-KioCG-Chunk-API-and-display-of-chunkhot-in-tpsbar.patch similarity index 90% rename from patches/server/0048-KioCG-Chunk-API-and-display-of-chunkhot-in-tpsbar.patch rename to patches/server/0045-KioCG-Chunk-API-and-display-of-chunkhot-in-tpsbar.patch index 935de2a..c86e346 100644 --- a/patches/server/0048-KioCG-Chunk-API-and-display-of-chunkhot-in-tpsbar.patch +++ b/patches/server/0045-KioCG-Chunk-API-and-display-of-chunkhot-in-tpsbar.patch @@ -1,11 +1,11 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: MrHua269 -Date: Sat, 30 Nov 2024 12:28:45 +0800 +Date: Wed, 4 Dec 2024 23:53:03 +0800 Subject: [PATCH] KioCG Chunk API and display of chunkhot in tpsbar diff --git a/src/main/java/ca/spottedleaf/moonrise/common/util/ChunkSystem.java b/src/main/java/ca/spottedleaf/moonrise/common/util/ChunkSystem.java -index e1aba122e1c3d8b28ca16137fb15bcee07cdf0e7..af4bb03fda9ee9a8081e2a6345ebe86d18cdaacc 100644 +index 30eb7fd0b83ad1626d337cb770fac3dda5202344..cbe8f1fce4327bcc2a677b3da268cf52fef90335 100644 --- a/src/main/java/ca/spottedleaf/moonrise/common/util/ChunkSystem.java +++ b/src/main/java/ca/spottedleaf/moonrise/common/util/ChunkSystem.java @@ -127,6 +127,7 @@ public final class ChunkSystem { @@ -179,10 +179,10 @@ index 026807e0851d67c6d57e81f573ac1bf8fedc6109..c45f6bd60d1cf7a915aa6ceea07c0929 if (mspt == -1){ return BossBar.Color.valueOf(TpsBarConfig.tpsColors.get(3)); diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index d54b5a0c4efd25d2792ab0ff69985eab663ab253..90f4e67daa58088d06f61f005acf2a67e8f41da3 100644 +index 67245811b15d6dfc0626e1d6ca874a901e565c3c..310c5f76e936d4af561f4effbaae47876197b15d 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java -@@ -1800,6 +1800,29 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop= MinecraftServer.STATUS_EXPIRE_TIME_NANOS) { // Folia - region threading -@@ -1808,6 +1831,20 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop blockTicks; private final LevelChunkTicks fluidTicks; private LevelChunk.UnsavedListener unsavedListener; @@ -453,7 +453,7 @@ index 4bccb94cf953ebd4dfd4f1620ad1784ef235356f..38308b3b25ef421d6379b18506764819 public LevelChunk(Level world, ChunkPos pos) { this(world, pos, UpgradeData.EMPTY, new LevelChunkTicks<>(), new LevelChunkTicks<>(), 0L, (LevelChunkSection[]) null, (LevelChunk.PostLoadProcessor) null, (BlendingData) null); -@@ -1080,6 +1081,7 @@ public class LevelChunk extends ChunkAccess implements ca.spottedleaf.moonrise.p +@@ -1085,6 +1086,7 @@ public class LevelChunk extends ChunkAccess implements ca.spottedleaf.moonrise.p ProfilerFiller gameprofilerfiller = Profiler.get(); gameprofilerfiller.push(this::getType); @@ -461,7 +461,7 @@ index 4bccb94cf953ebd4dfd4f1620ad1784ef235356f..38308b3b25ef421d6379b18506764819 profiler.startTimer(timerId); try { // Folia - profiler BlockState iblockdata = LevelChunk.this.getBlockState(blockposition); -@@ -1095,7 +1097,7 @@ public class LevelChunk extends ChunkAccess implements ca.spottedleaf.moonrise.p +@@ -1100,7 +1102,7 @@ public class LevelChunk extends ChunkAccess implements ca.spottedleaf.moonrise.p } // Paper end - Remove the Block Entity if it's invalid } @@ -486,7 +486,7 @@ index e414da8a51bb9b49c28a74eca166046cbee44835..ac22bb47836e97904729bad91ff75ce7 } catch (StackOverflowError ex) { world.lastPhysicsProblem = new BlockPos(pos); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftChunk.java b/src/main/java/org/bukkit/craftbukkit/CraftChunk.java -index 0074bc0e7147dc3a8c538e796f14ac9bf8725896..90b2bfd12236fce24ddcc48b00e0121f40676d88 100644 +index 2dd38f40c8c0b48b12ffe557ceeed69213066a6a..c37c5aa1c2498c098b8f8b668e4f8e11e2705574 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftChunk.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftChunk.java @@ -436,4 +436,12 @@ public class CraftChunk implements Chunk { @@ -503,10 +503,10 @@ index 0074bc0e7147dc3a8c538e796f14ac9bf8725896..90b2bfd12236fce24ddcc48b00e0121f + // KioCG end } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 611caf02205a7a97aa1175ab6250124d547bd071..f37d75af2f70727090d9efadbe3fd1108cd7e50f 100644 +index 6f7c05d3104caf702d0b19103829aca4a74f7234..239bafdfe2d16bf0f7a5f27ab0a050d29b10f3ae 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -3611,4 +3611,11 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -3596,4 +3596,11 @@ public class CraftPlayer extends CraftHumanEntity implements Player { this.getHandle().connection.send(new net.minecraft.network.protocol.game.ClientboundEntityEventPacket(((CraftEntity) target).getHandle(), effect.getData())); } // Paper end - entity effect API diff --git a/patches/server/0049-Threaded-region-start-tick-and-finished-tick-event.patch b/patches/server/0048-Threaded-region-start-tick-and-finished-tick-event.patch similarity index 100% rename from patches/server/0049-Threaded-region-start-tick-and-finished-tick-event.patch rename to patches/server/0048-Threaded-region-start-tick-and-finished-tick-event.patch diff --git a/patches/server/0050-Fix-MC-2025.patch b/patches/server/0049-Fix-MC-2025.patch similarity index 90% rename from patches/server/0050-Fix-MC-2025.patch rename to patches/server/0049-Fix-MC-2025.patch index 63bbbed..79dd2e5 100644 --- a/patches/server/0050-Fix-MC-2025.patch +++ b/patches/server/0049-Fix-MC-2025.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Fix-MC-2025 diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index e2b7daa6a9af849b49e75a4329b53cca559d1ea9..e560cf681642252e381a71f5abe8fd2572b163ed 100644 +index e5aab785087942a0e0356b9b9fa70613222810f0..35bc21ba9baf92b80cb67247908f4af8ff8d3aec 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2751,6 +2751,16 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2774,6 +2774,16 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess nbttagcompound.putBoolean("Paper.FreezeLock", true); } // Paper end @@ -25,7 +25,7 @@ index e2b7daa6a9af849b49e75a4329b53cca559d1ea9..e560cf681642252e381a71f5abe8fd25 return nbttagcompound; } catch (Throwable throwable) { CrashReport crashreport = CrashReport.forThrowable(throwable, "Saving entity NBT"); -@@ -2829,6 +2839,13 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2854,6 +2864,13 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess this.reapplyPosition(); } diff --git a/patches/server/0051-FoliaPR-Add-TPS-From-Region.patch b/patches/server/0050-FoliaPR-Add-TPS-From-Region.patch similarity index 100% rename from patches/server/0051-FoliaPR-Add-TPS-From-Region.patch rename to patches/server/0050-FoliaPR-Add-TPS-From-Region.patch