From 7c2f3037e79f0554831491854d2316b0f2eda5dd Mon Sep 17 00:00:00 2001 From: etil2jz Date: Sat, 19 Feb 2022 13:54:03 +0100 Subject: [PATCH] Update Upstream (Pufferfish) --- gradle.properties | 2 +- patches/api/0001-Mirai-Configuration.patch | 4 +- patches/api/0006-Add-last-tick-time-API.patch | 8 +-- .../api/0007-Optimize-Spigot-event-bus.patch | 4 +- .../api/0009-Skip-event-if-no-listeners.patch | 8 +-- .../server/0001-Mirai-Branding-Changes.patch | 8 +-- patches/server/0002-Mirai-Configuration.patch | 6 +- patches/server/0004-reduce-allocs.patch | 30 +++++----- patches/server/0006-lithium-HashedList.patch | 4 +- patches/server/0012-Use-XoRoShiRoRandom.patch | 10 ++-- ...018-Don-t-create-new-random-instance.patch | 4 +- .../0021-Better-handling-of-async-tasks.patch | 6 +- .../0024-Remove-Spigot-tick-limiter.patch | 6 +- .../server/0027-Add-last-tick-time-API.patch | 6 +- .../0028-Configurable-flight-checks.patch | 6 +- .../0031-Don-t-load-chunks-for-physics.patch | 4 +- ...hat-commands-before-player-has-joine.patch | 4 +- ...ptimise-player-list-ticksSpread-out-.patch | 6 +- ...x-vanilla-command-permission-handler.patch | 4 +- ...0048-Fix-the-dead-lagging-the-server.patch | 6 +- .../0049-Alternative-Keepalive-Handling.patch | 8 +-- ...0051-Add-5-second-tps-average-in-tps.patch | 6 +- ...tities-can-use-portals-configuration.patch | 4 +- .../server/0055-Signs-allow-color-codes.patch | 4 +- ...ment-updates-if-only-durability-chan.patch | 4 +- ...064-Packet-obfuscation-and-reduction.patch | 8 +-- ...-spawning-outside-hard-despawn-range.patch | 4 +- .../0080-Configurable-FastMath.round.patch | 16 +++--- ...rnate-Current-redstone-implementatio.patch | 56 +++++++++++-------- ...085-lithium-entity.fast_elytra_check.patch | 4 +- .../0087-lithium-entity.fast_hand_swing.patch | 4 +- .../server/0102-some-entity-micro-opts.patch | 8 +-- ...ge-look-changes-from-crashing-the-se.patch | 4 +- 33 files changed, 137 insertions(+), 129 deletions(-) diff --git a/gradle.properties b/gradle.properties index 2de70bd..4329a0c 100644 --- a/gradle.properties +++ b/gradle.properties @@ -2,7 +2,7 @@ group=wtf.etil.mirai version=1.18.1-R0.1-SNAPSHOT mcVersion=1.18.1 packageVersion=1_18_R1 -pufferfishRef=81f546b0c2ba37b780edc2090d5fcba85d244ccf +pufferfishRef=a786526baaf6b52a42f3c46cebb1e0c1d37dc7b8 org.gradle.caching=true org.gradle.caching.debug=false diff --git a/patches/api/0001-Mirai-Configuration.patch b/patches/api/0001-Mirai-Configuration.patch index f888a88..83ef127 100644 --- a/patches/api/0001-Mirai-Configuration.patch +++ b/patches/api/0001-Mirai-Configuration.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Mirai Configuration diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java -index e48af3822e9f118399c3a1c9358c56efae12e0da..b65f95c1027ef7dbd37d2c622fedafd54de21c77 100644 +index a62c27777672eff1c488517b37876e3a44a2d57d..b8cd9ea1a40bce2edc2e32f696368ebe4e17a799 100644 --- a/src/main/java/org/bukkit/Server.java +++ b/src/main/java/org/bukkit/Server.java -@@ -1778,6 +1778,18 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi +@@ -1886,6 +1886,18 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi } // Paper end diff --git a/patches/api/0006-Add-last-tick-time-API.patch b/patches/api/0006-Add-last-tick-time-API.patch index f6dd480..ebd51be 100644 --- a/patches/api/0006-Add-last-tick-time-API.patch +++ b/patches/api/0006-Add-last-tick-time-API.patch @@ -7,10 +7,10 @@ Original code by YatopiaMC, licensed under MIT You can find the original code on https://github.com/YatopiaMC/Yatopia diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java -index 53c4e5ca208ee17c7c244e416c537c7b63edf194..60e1989a4992ed46baa95ca7ece915e0a2bfbd6c 100644 +index 795f8c0aa3929f6de4b4ea4b139bef8b672ab97a..765650b45c91ba2b7a7db31930f9e0b343248dfd 100644 --- a/src/main/java/org/bukkit/Bukkit.java +++ b/src/main/java/org/bukkit/Bukkit.java -@@ -2158,6 +2158,16 @@ public final class Bukkit { +@@ -2280,6 +2280,16 @@ public final class Bukkit { return server.isStopping(); } @@ -28,10 +28,10 @@ index 53c4e5ca208ee17c7c244e416c537c7b63edf194..60e1989a4992ed46baa95ca7ece915e0 * Returns the {@link com.destroystokyo.paper.entity.ai.MobGoals} manager * diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java -index b65f95c1027ef7dbd37d2c622fedafd54de21c77..b399f27a2db96d1ce6529f0125823ebe6387456b 100644 +index b8cd9ea1a40bce2edc2e32f696368ebe4e17a799..1e2f87f117fe093ccbd5c37f213faa2ff7d1efd3 100644 --- a/src/main/java/org/bukkit/Server.java +++ b/src/main/java/org/bukkit/Server.java -@@ -1886,6 +1886,26 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi +@@ -1994,6 +1994,26 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi */ boolean isStopping(); diff --git a/patches/api/0007-Optimize-Spigot-event-bus.patch b/patches/api/0007-Optimize-Spigot-event-bus.patch index c4432eb..ec60a08 100644 --- a/patches/api/0007-Optimize-Spigot-event-bus.patch +++ b/patches/api/0007-Optimize-Spigot-event-bus.patch @@ -24,10 +24,10 @@ index 419aec56b0e3fa8bcec2ea7f340caa3456b57d00..8530d926931a54ed1300c40cd1e0908b } } diff --git a/src/main/java/org/bukkit/plugin/SimplePluginManager.java b/src/main/java/org/bukkit/plugin/SimplePluginManager.java -index 05bb388407b5bd8a942478237580a38ffaa388c8..bb60356395ef81bd3bbc51ea1e4ca2faaca2bd1b 100644 +index 16d0e517afd3fae21f2666c6b4e1e38dcf5ea64b..9bb5be67a850bb7ff9de798dc7450f0bfdea4c01 100644 --- a/src/main/java/org/bukkit/plugin/SimplePluginManager.java +++ b/src/main/java/org/bukkit/plugin/SimplePluginManager.java -@@ -612,11 +612,15 @@ public final class SimplePluginManager implements PluginManager { +@@ -613,11 +613,15 @@ public final class SimplePluginManager implements PluginManager { @Override public void callEvent(@NotNull Event event) { // Paper - replace callEvent by merging to below method diff --git a/patches/api/0009-Skip-event-if-no-listeners.patch b/patches/api/0009-Skip-event-if-no-listeners.patch index 5c94787..d2b24e4 100644 --- a/patches/api/0009-Skip-event-if-no-listeners.patch +++ b/patches/api/0009-Skip-event-if-no-listeners.patch @@ -7,7 +7,7 @@ Original code by Titaniumtown, licensed under GNU General Public License v3.0 You can find the original code on https://gitlab.com/Titaniumtown/JettPack diff --git a/build.gradle.kts b/build.gradle.kts -index 62e071edc3128b128c5ff631606eb1466ae34ef2..31346c12d1c72cdec89dffbe07106e37c47fbb4c 100644 +index 8cb674bc4219e7c212a0a342a949062a45632602..fc44980b81187ada230512822641904f689f9102 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -26,7 +26,7 @@ dependencies { @@ -20,10 +20,10 @@ index 62e071edc3128b128c5ff631606eb1466ae34ef2..31346c12d1c72cdec89dffbe07106e37 api("org.yaml:snakeyaml:1.30") // Paper start diff --git a/src/main/java/org/bukkit/plugin/SimplePluginManager.java b/src/main/java/org/bukkit/plugin/SimplePluginManager.java -index bb60356395ef81bd3bbc51ea1e4ca2faaca2bd1b..9813932164ecadbb5889d5d26bdd3a9947436f48 100644 +index 9bb5be67a850bb7ff9de798dc7450f0bfdea4c01..f10274303d62979cf4c79a112046b223426d09e5 100644 --- a/src/main/java/org/bukkit/plugin/SimplePluginManager.java +++ b/src/main/java/org/bukkit/plugin/SimplePluginManager.java -@@ -611,6 +611,13 @@ public final class SimplePluginManager implements PluginManager { +@@ -612,6 +612,13 @@ public final class SimplePluginManager implements PluginManager { */ @Override public void callEvent(@NotNull Event event) { @@ -37,7 +37,7 @@ index bb60356395ef81bd3bbc51ea1e4ca2faaca2bd1b..9813932164ecadbb5889d5d26bdd3a99 // Paper - replace callEvent by merging to below method // KTP start - optimize spigot event bus final boolean isAsync = event.isAsynchronous(); -@@ -622,8 +629,8 @@ public final class SimplePluginManager implements PluginManager { +@@ -623,8 +630,8 @@ public final class SimplePluginManager implements PluginManager { } // KTP end - optimize spigot event bus diff --git a/patches/server/0001-Mirai-Branding-Changes.patch b/patches/server/0001-Mirai-Branding-Changes.patch index 562ef8c..2b7546f 100644 --- a/patches/server/0001-Mirai-Branding-Changes.patch +++ b/patches/server/0001-Mirai-Branding-Changes.patch @@ -205,10 +205,10 @@ index adafc4fd661cf080b004b86c3eaed231a0133101..00000000000000000000000000000000 -} \ No newline at end of file diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 3ec35d19f63832ee465a54518219184a14bb08e2..1d5cee5cae732fbe9181cb3cecc68ec980257248 100644 +index a31f8bf3f4183a7a02f58f2321dbeaf427017b1c..4c5ee8ab215e8fedf65d2e28ac8dd5621a860385 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java -@@ -1715,7 +1715,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop optionspec11 = optionparser.accepts("port").withRequiredArg().ofType(Integer.class).defaultsTo(-1, new Integer[0]); OptionSpec optionspec12 = optionparser.accepts("serverId").withRequiredArg(); diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 1d5cee5cae732fbe9181cb3cecc68ec980257248..69fc41704e503f1a96ddbc64df13c350417f89a6 100644 +index 4c5ee8ab215e8fedf65d2e28ac8dd5621a860385..f499eb2d3d3982dbcb9ff54896f91e2b556f087a 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -1427,8 +1427,8 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop= KEEPALIVE_LIMIT) { // check keepalive limit, don't fire if already disconnected ServerGamePacketListenerImpl.LOGGER.warn("{} was kicked due to keepalive timeout!", this.player.getScoreboardName()); // more info @@ -280,7 +280,7 @@ index cb35f2f1f2f4d568bc59ce5c08ab3b908533264c..0948716d05b4ab4fdbd58c3083ec88b7 } } else { if (elapsedTime >= 15000L) { // 15 seconds -@@ -799,13 +799,13 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -796,13 +796,13 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser // PlayerConnectionUtils.ensureMainThread(packetplayintabcomplete, this, this.player.getWorldServer()); // Paper - run this async // CraftBukkit start if (this.chatSpamTickCount.addAndGet(com.destroystokyo.paper.PaperConfig.tabSpamIncrement) > com.destroystokyo.paper.PaperConfig.tabSpamLimit && !this.server.getPlayerList().isOp(this.player.getGameProfile())) { // Paper start - split and make configurable @@ -296,7 +296,7 @@ index cb35f2f1f2f4d568bc59ce5c08ab3b908533264c..0948716d05b4ab4fdbd58c3083ec88b7 return; } // Paper end -@@ -2932,7 +2932,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -2928,7 +2928,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser // Paper start if (!org.bukkit.Bukkit.isPrimaryThread()) { if (recipeSpamPackets.addAndGet(com.destroystokyo.paper.PaperConfig.autoRecipeIncrement) > com.destroystokyo.paper.PaperConfig.autoRecipeLimit) { @@ -389,10 +389,10 @@ index c82bb38b5b1c9204daef21455723d21509ad1c44..47425ce7091ed8afaa2573901225c92d this.type = type; this.index = entityId; diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 3236a1dc51c394b784d3f42b78e76bf7c2f69c37..60d103b7430d52cefed700690107a1f7ae83b1c3 100644 +index 6f98681ac54f575be047867a8c0b58e1dbd2a37d..157b3c1f034166833c1c0393cdcdf2a89432ecd1 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -3020,7 +3020,7 @@ public abstract class LivingEntity extends Entity { +@@ -3029,7 +3029,7 @@ public abstract class LivingEntity extends Entity { @Nullable private Map collectEquipmentChanges() { Map map = null; @@ -402,7 +402,7 @@ index 3236a1dc51c394b784d3f42b78e76bf7c2f69c37..60d103b7430d52cefed700690107a1f7 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 35ff7abd8251b0af6c23fbb63804db632ec5b85d..68af6ab855ffbab888333c9c0224dafdc7e304d7 100644 +index 73af374f4aa9e3e8f188434c21a5f1433cffc637..7ee01ebedfb20354359d23168d7a69f4ad7f83c0 100644 --- a/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java @@ -1011,7 +1011,7 @@ public abstract class Mob extends LivingEntity { @@ -414,7 +414,7 @@ index 35ff7abd8251b0af6c23fbb63804db632ec5b85d..68af6ab855ffbab888333c9c0224dafd int j = aenumitemslot.length; for (int k = 0; k < j; ++k) { -@@ -1069,7 +1069,7 @@ public abstract class Mob extends LivingEntity { +@@ -1073,7 +1073,7 @@ public abstract class Mob extends LivingEntity { } boolean flag = true; @@ -423,7 +423,7 @@ index 35ff7abd8251b0af6c23fbb63804db632ec5b85d..68af6ab855ffbab888333c9c0224dafd int j = aenumitemslot.length; for (int k = 0; k < j; ++k) { -@@ -1156,7 +1156,7 @@ public abstract class Mob extends LivingEntity { +@@ -1160,7 +1160,7 @@ public abstract class Mob extends LivingEntity { float f = difficulty.getSpecialMultiplier(); this.enchantSpawnedWeapon(f); @@ -432,7 +432,7 @@ index 35ff7abd8251b0af6c23fbb63804db632ec5b85d..68af6ab855ffbab888333c9c0224dafd int i = aenumitemslot.length; for (int j = 0; j < i; ++j) { -@@ -1367,7 +1367,7 @@ public abstract class Mob extends LivingEntity { +@@ -1371,7 +1371,7 @@ public abstract class Mob extends LivingEntity { t0.setInvulnerable(this.isInvulnerable()); if (flag) { t0.setCanPickUpLoot(this.canPickUpLoot()); @@ -508,10 +508,10 @@ index 2f9f15d99f8b31e9f13f7f32378b2a9e09bcb5e5..aa565ab33700c92ca607463bdc0dcaef @Override diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index a98d115b7dccd836fa2c0f50333730db6f388aff..154c8cf5a74278f349ec4c969254b62b3c48106b 100644 +index 4f8b2617adc0013035cc0ca72bf1b83eb5c18c6c..38511f90af47885aac6b29130d8ce5846accbf61 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java -@@ -209,7 +209,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -206,7 +206,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { public org.bukkit.entity.Entity[] getChunkEntities(int chunkX, int chunkZ) { io.papermc.paper.world.ChunkEntitySlices slices = this.entitySliceManager.getChunk(chunkX, chunkZ); if (slices == null) { diff --git a/patches/server/0006-lithium-HashedList.patch b/patches/server/0006-lithium-HashedList.patch index d064f53..5a42de2 100644 --- a/patches/server/0006-lithium-HashedList.patch +++ b/patches/server/0006-lithium-HashedList.patch @@ -293,10 +293,10 @@ index 0000000000000000000000000000000000000000..2d79932dbd1fc386a94b8d6ea3526934 + } +} diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 154c8cf5a74278f349ec4c969254b62b3c48106b..c055903ada18a95b6cd1d37c546a0157744d3b8c 100644 +index 38511f90af47885aac6b29130d8ce5846accbf61..5ff2865317ab85071fa66d5af56364e70a1b25b0 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java -@@ -116,8 +116,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -118,8 +118,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable { public static final int TICKS_PER_DAY = 24000; public static final int MAX_ENTITY_SPAWN_Y = 20000000; public static final int MIN_ENTITY_SPAWN_Y = -20000000; diff --git a/patches/server/0012-Use-XoRoShiRoRandom.patch b/patches/server/0012-Use-XoRoShiRoRandom.patch index fffc67f..d876488 100644 --- a/patches/server/0012-Use-XoRoShiRoRandom.patch +++ b/patches/server/0012-Use-XoRoShiRoRandom.patch @@ -20,7 +20,7 @@ index 20cfe7b9b7127ddeb97aa91d759fc17b4a548eaf..34665a768285fd99e49d57d3879deb1f private long lastFill = -1; private long nextRefill = -1; diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 69fc41704e503f1a96ddbc64df13c350417f89a6..072c1f7e3cbcf77e40c843e6c40df0b5d782e99f 100644 +index f499eb2d3d3982dbcb9ff54896f91e2b556f087a..607b8c18c90f4b7c61981638cd5d897488c4f520 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -415,7 +415,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop explosionDensityCache = new HashMap<>(); // Paper - Optimize explosions public java.util.ArrayDeque redstoneUpdateInfos; // Paper - Move from Map in BlockRedstoneTorch to here -@@ -399,8 +399,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -398,8 +398,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable { // CraftBukkit end timings = new co.aikar.timings.WorldTimingsHandler(this); // Paper - code below can generate new world and access timings this.keepSpawnInMemory = this.paperConfig.keepSpawnInMemory; // Paper diff --git a/patches/server/0027-Add-last-tick-time-API.patch b/patches/server/0027-Add-last-tick-time-API.patch index ed87843..55e6607 100644 --- a/patches/server/0027-Add-last-tick-time-API.patch +++ b/patches/server/0027-Add-last-tick-time-API.patch @@ -7,7 +7,7 @@ Original code by YatopiaMC, licensed under MIT You can find the original code on https://github.com/YatopiaMC/Yatopia diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 19fb9fe02ef029aecec00dc02f72a2b4a2cda48b..e945a82a23e16820866b899d1b79b4fafe6945dc 100644 +index 5a9554596a4ec3e1d8435692e9dd25d6bc4fba5e..a7a4a5ade1bf66754aa461e52d67dd5e37d33407 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -1200,6 +1200,8 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop packet) { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index a5ccc1b3c7cef43527556c33d846cc9904e3ab8b..60dbed75f29777f8ffcd1349549be75729d48be1 100644 +index ef841a5ea1f634e87e5437faf83dc00efd590106..f6893b0ef990d76fed9e634a2c946e1b4281d482 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -1626,7 +1626,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1649,7 +1649,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @Override public boolean canSee(org.bukkit.entity.Entity entity) { diff --git a/patches/server/0041-Fix-vanilla-command-permission-handler.patch b/patches/server/0041-Fix-vanilla-command-permission-handler.patch index ccbf492..d1a6fb8 100644 --- a/patches/server/0041-Fix-vanilla-command-permission-handler.patch +++ b/patches/server/0041-Fix-vanilla-command-permission-handler.patch @@ -19,10 +19,10 @@ index f64aa22ed6fcb4af67317b99f459ee5296392548..36c91793e0aa4895193623cf8cba7820 public void removeCommand(String name) { this.children.remove(name); diff --git a/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java b/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java -index 4aa1dc543950b5de64345b3403a6d0bc41c521df..1c19a64da230268ceb9124bb7e1a141d78ac3393 100644 +index 4525fb3bc9b137bce3b59310a8aecca96d6ad5ba..75aeceb76b15a4c9cc7cffc35d15d76509c5620a 100644 --- a/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java +++ b/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java -@@ -89,6 +89,7 @@ public final class VanillaCommandWrapper extends BukkitCommand { +@@ -94,6 +94,7 @@ public final class VanillaCommandWrapper extends BukkitCommand { } public static String getPermission(CommandNode vanillaCommand) { diff --git a/patches/server/0048-Fix-the-dead-lagging-the-server.patch b/patches/server/0048-Fix-the-dead-lagging-the-server.patch index dc772d0..d7450bd 100644 --- a/patches/server/0048-Fix-the-dead-lagging-the-server.patch +++ b/patches/server/0048-Fix-the-dead-lagging-the-server.patch @@ -7,7 +7,7 @@ Original code by PurpurMC, licensed under MIT You can find the original code on https://github.com/PurpurMC/Purpur diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 5209e0d076099516525f578ddbfe14064e67f235..789652eb317f6359358b3e8c9a6818e416ed20c2 100644 +index 4f796acbd9d24f7559b0fa9246e34cea8bdbcf09..9d86abdcaad113af61282e49066b82cea38e4cc2 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -1770,6 +1770,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, i @@ -19,10 +19,10 @@ index 5209e0d076099516525f578ddbfe14064e67f235..789652eb317f6359358b3e8c9a6818e4 public void absMoveTo(double x, double y, double z) { diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 3236a1dc51c394b784d3f42b78e76bf7c2f69c37..5e0dec96d04c925108210a470a2c2671470de897 100644 +index 157b3c1f034166833c1c0393cdcdf2a89432ecd1..190b582a7e92bec6f676ec967df5f6530141efde 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -2923,7 +2923,7 @@ public abstract class LivingEntity extends Entity { +@@ -2932,7 +2932,7 @@ public abstract class LivingEntity extends Entity { } } diff --git a/patches/server/0049-Alternative-Keepalive-Handling.patch b/patches/server/0049-Alternative-Keepalive-Handling.patch index afd4d06..50d0b36 100644 --- a/patches/server/0049-Alternative-Keepalive-Handling.patch +++ b/patches/server/0049-Alternative-Keepalive-Handling.patch @@ -7,10 +7,10 @@ Original code by PurpurMC, licensed under MIT You can find the original code on https://github.com/PurpurMC/Purpur diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 65833c8f66858b7f98ffbd06f097e50169d5a300..022b2bb3f13b45618889e7b09e4499ee79331118 100644 +index ad773412b61c9773f88f493788287d51dd803ce0..efc56b8871b657fb57672bd77f17fa7e27fab0f0 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -228,6 +228,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -227,6 +227,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser private long keepAliveTime = Util.getMillis(); private boolean keepAlivePending; private long keepAliveChallenge; @@ -18,7 +18,7 @@ index 65833c8f66858b7f98ffbd06f097e50169d5a300..022b2bb3f13b45618889e7b09e4499ee // CraftBukkit start - multithreaded fields private final AtomicInteger chatSpamTickCount = new AtomicInteger(); private final java.util.concurrent.atomic.AtomicInteger tabSpamLimiter = new java.util.concurrent.atomic.AtomicInteger(); // Paper - configurable tab spam limits -@@ -359,6 +360,21 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -356,6 +357,21 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser long currentTime = Util.getMillis(); long elapsedTime = currentTime - this.keepAliveTime; @@ -40,7 +40,7 @@ index 65833c8f66858b7f98ffbd06f097e50169d5a300..022b2bb3f13b45618889e7b09e4499ee if (this.keepAlivePending) { if (!this.processedDisconnect && elapsedTime >= KEEPALIVE_LIMIT) { // check keepalive limit, don't fire if already disconnected ServerGamePacketListenerImpl.LOGGER.warn("{} was kicked due to keepalive timeout!", this.player.getScoreboardName()); // more info -@@ -3109,6 +3125,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser +@@ -3105,6 +3121,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser @Override public void handleKeepAlive(ServerboundKeepAlivePacket packet) { diff --git a/patches/server/0051-Add-5-second-tps-average-in-tps.patch b/patches/server/0051-Add-5-second-tps-average-in-tps.patch index 8d695d9..c51baf7 100644 --- a/patches/server/0051-Add-5-second-tps-average-in-tps.patch +++ b/patches/server/0051-Add-5-second-tps-average-in-tps.patch @@ -29,7 +29,7 @@ index fa56cd09102a89692b42f1d14257990508c5c720..f9251183df72ddc56662fd3f02acf216 setListData(vector); } diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index e945a82a23e16820866b899d1b79b4fafe6945dc..eaf775072e4782db6f05d12b7c8e4184d13c661e 100644 +index a7a4a5ade1bf66754aa461e52d67dd5e37d33407..15ce977427705e765f14b2df3cfcecbd0a4029c5 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -303,7 +303,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop 0.0F && f3 < 3.4028235E37F) { if (this instanceof ServerPlayer) { @@ -150,7 +150,7 @@ index ce1872b69ed6162f4bbab6c839fa8b9cd1d2aa9a..05490f66d645a61e74c3fda6c757ed03 } } } -@@ -2095,9 +2095,9 @@ public abstract class LivingEntity extends Entity { +@@ -2104,9 +2104,9 @@ public abstract class LivingEntity extends Entity { float f3 = (float) -event.getDamage(DamageModifier.RESISTANCE); if (f3 > 0.0F && f3 < 3.4028235E37F) { if (this instanceof ServerPlayer) { @@ -162,7 +162,7 @@ index ce1872b69ed6162f4bbab6c839fa8b9cd1d2aa9a..05490f66d645a61e74c3fda6c757ed03 } } } -@@ -2129,10 +2129,10 @@ public abstract class LivingEntity extends Entity { +@@ -2138,10 +2138,10 @@ public abstract class LivingEntity extends Entity { float f2 = absorptionModifier; if (f2 > 0.0F && f2 < 3.4028235E37F && this instanceof net.minecraft.world.entity.player.Player) { @@ -175,7 +175,7 @@ index ce1872b69ed6162f4bbab6c839fa8b9cd1d2aa9a..05490f66d645a61e74c3fda6c757ed03 } if (f > 0 || !human) { -@@ -2140,7 +2140,7 @@ public abstract class LivingEntity extends Entity { +@@ -2149,7 +2149,7 @@ public abstract class LivingEntity extends Entity { // PAIL: Be sure to drag all this code from the EntityHuman subclass each update. ((net.minecraft.world.entity.player.Player) this).causeFoodExhaustion(damagesource.getFoodExhaustion(), org.bukkit.event.entity.EntityExhaustionEvent.ExhaustionReason.DAMAGED); // CraftBukkit - EntityExhaustionEvent if (f < 3.4028235E37F) { @@ -184,7 +184,7 @@ index ce1872b69ed6162f4bbab6c839fa8b9cd1d2aa9a..05490f66d645a61e74c3fda6c757ed03 } } // CraftBukkit end -@@ -2162,7 +2162,7 @@ public abstract class LivingEntity extends Entity { +@@ -2171,7 +2171,7 @@ public abstract class LivingEntity extends Entity { CriteriaTriggers.ENTITY_HURT_PLAYER.trigger((ServerPlayer) this, damagesource, f, originalDamage, true); f2 = (float) -event.getDamage(DamageModifier.BLOCKING); if (f2 > 0.0F && f2 < 3.4028235E37F) { diff --git a/patches/server/0084-PaperPR-Add-Alternate-Current-redstone-implementatio.patch b/patches/server/0084-PaperPR-Add-Alternate-Current-redstone-implementatio.patch index 90e92cd..9dfe85b 100644 --- a/patches/server/0084-PaperPR-Add-Alternate-Current-redstone-implementatio.patch +++ b/patches/server/0084-PaperPR-Add-Alternate-Current-redstone-implementatio.patch @@ -11,7 +11,7 @@ This patch implements SpaceWalkerRS's optimized redstone algorithm as an alterna diff --git a/src/main/java/alternate/current/redstone/Node.java b/src/main/java/alternate/current/redstone/Node.java new file mode 100644 -index 0000000000000000000000000000000000000000..28af1c501da4c7fbfa943a008b5450d16b757423 +index 0000000000000000000000000000000000000000..3c139f67beaac9402a6add5b19613c4d40863f54 --- /dev/null +++ b/src/main/java/alternate/current/redstone/Node.java @@ -0,0 +1,98 @@ @@ -113,9 +113,10 @@ index 0000000000000000000000000000000000000000..28af1c501da4c7fbfa943a008b5450d1 + throw new UnsupportedOperationException("Not a WireNode!"); + } +} +\ No newline at end of file diff --git a/src/main/java/alternate/current/redstone/PowerQueue.java b/src/main/java/alternate/current/redstone/PowerQueue.java new file mode 100644 -index 0000000000000000000000000000000000000000..070973f35bbb07b974f638754547b821143b4c6b +index 0000000000000000000000000000000000000000..c519125dc8e5f30cef7f88dc26980e8586980c5a --- /dev/null +++ b/src/main/java/alternate/current/redstone/PowerQueue.java @@ -0,0 +1,91 @@ @@ -210,9 +211,10 @@ index 0000000000000000000000000000000000000000..070973f35bbb07b974f638754547b821 + return size; + } +} +\ No newline at end of file diff --git a/src/main/java/alternate/current/redstone/WireBlock.java b/src/main/java/alternate/current/redstone/WireBlock.java new file mode 100644 -index 0000000000000000000000000000000000000000..3b3ba9325717a4bd9399537fd15746ae2fc731b2 +index 0000000000000000000000000000000000000000..768408de7c9aff7c1842e15855dcf2209d405550 --- /dev/null +++ b/src/main/java/alternate/current/redstone/WireBlock.java @@ -0,0 +1,64 @@ @@ -280,9 +282,10 @@ index 0000000000000000000000000000000000000000..3b3ba9325717a4bd9399537fd15746ae + public void findWireConnections(WireNode wire, WireHandler.NodeProvider nodeProvider); + +} +\ No newline at end of file diff --git a/src/main/java/alternate/current/redstone/WireConnection.java b/src/main/java/alternate/current/redstone/WireConnection.java new file mode 100644 -index 0000000000000000000000000000000000000000..fccf3d6b86fd4948c2f7dd7ef30a5f8d407f7444 +index 0000000000000000000000000000000000000000..03944c984072338093c46ea77abae1971414bf7c --- /dev/null +++ b/src/main/java/alternate/current/redstone/WireConnection.java @@ -0,0 +1,28 @@ @@ -314,9 +317,10 @@ index 0000000000000000000000000000000000000000..fccf3d6b86fd4948c2f7dd7ef30a5f8d + this.out = out; + } +} +\ No newline at end of file diff --git a/src/main/java/alternate/current/redstone/WireConnectionManager.java b/src/main/java/alternate/current/redstone/WireConnectionManager.java new file mode 100644 -index 0000000000000000000000000000000000000000..4db24a54d1e5c577755a966e88651014192fb454 +index 0000000000000000000000000000000000000000..621cf923eb14cca047ae9219a7946e9b66f9641f --- /dev/null +++ b/src/main/java/alternate/current/redstone/WireConnectionManager.java @@ -0,0 +1,123 @@ @@ -443,6 +447,7 @@ index 0000000000000000000000000000000000000000..4db24a54d1e5c577755a966e88651014 + + } +} +\ No newline at end of file diff --git a/src/main/java/alternate/current/redstone/WireHandler.java b/src/main/java/alternate/current/redstone/WireHandler.java new file mode 100644 index 0000000000000000000000000000000000000000..1f71f1d511d8078d8efce9732e48154f99c8ff2e @@ -1610,7 +1615,7 @@ index 0000000000000000000000000000000000000000..1f71f1d511d8078d8efce9732e48154f \ No newline at end of file diff --git a/src/main/java/alternate/current/redstone/WireNode.java b/src/main/java/alternate/current/redstone/WireNode.java new file mode 100644 -index 0000000000000000000000000000000000000000..ed4f071245ae94d4ced5476ef88def48e9768ca7 +index 0000000000000000000000000000000000000000..15db3329181a2677478e1841a7746be058e67285 --- /dev/null +++ b/src/main/java/alternate/current/redstone/WireNode.java @@ -0,0 +1,103 @@ @@ -1717,9 +1722,10 @@ index 0000000000000000000000000000000000000000..ed4f071245ae94d4ced5476ef88def48 + return world.setWireState(pos, state); + } +} +\ No newline at end of file diff --git a/src/main/java/alternate/current/redstone/WorldAccess.java b/src/main/java/alternate/current/redstone/WorldAccess.java new file mode 100644 -index 0000000000000000000000000000000000000000..4f1ac60f3070412f9c9286624f76ad39154e28ec +index 0000000000000000000000000000000000000000..9bfccaeb0991800e12f1a21cb8126dfda71b1175 --- /dev/null +++ b/src/main/java/alternate/current/redstone/WorldAccess.java @@ -0,0 +1,139 @@ @@ -1862,9 +1868,10 @@ index 0000000000000000000000000000000000000000..4f1ac60f3070412f9c9286624f76ad39 + return !state.canSurvive(world, pos); + } +} +\ No newline at end of file diff --git a/src/main/java/alternate/current/util/BlockUtil.java b/src/main/java/alternate/current/util/BlockUtil.java new file mode 100644 -index 0000000000000000000000000000000000000000..b605c78c20912794a23cc7dbf07bdff12116b666 +index 0000000000000000000000000000000000000000..1fa03724ac39cb131a2261e97c98a5961d8cf7c0 --- /dev/null +++ b/src/main/java/alternate/current/util/BlockUtil.java @@ -0,0 +1,14 @@ @@ -1882,9 +1889,10 @@ index 0000000000000000000000000000000000000000..b605c78c20912794a23cc7dbf07bdff1 + super(settings); + } +} +\ No newline at end of file diff --git a/src/main/java/alternate/current/util/collection/SimpleQueue.java b/src/main/java/alternate/current/util/collection/SimpleQueue.java new file mode 100644 -index 0000000000000000000000000000000000000000..6d6c1b81b696187add53e744aaffa54df7193864 +index 0000000000000000000000000000000000000000..5d58615073c2b2018a3625544e7e702cdf0db8fe --- /dev/null +++ b/src/main/java/alternate/current/util/collection/SimpleQueue.java @@ -0,0 +1,105 @@ @@ -1993,23 +2001,24 @@ index 0000000000000000000000000000000000000000..6d6c1b81b696187add53e744aaffa54d + return ++i < queue.length ? i : 0; + } +} +\ No newline at end of file diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java -index b1589f65b6a4464c2c5dc450693505673fc89077..354e764de71b95a6287f5d50c9d2a2b21dd548ac 100644 +index 0deeaa36e95648344809f798a36f4ee9f4fb5a25..89458725aa9a1b5ea9996586b811a1cf80f4f84b 100644 --- a/src/main/java/com/destroystokyo/paper/PaperConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java @@ -71,8 +71,8 @@ public class PaperConfig { commands.put("paper", new PaperCommand("paper")); commands.put("mspt", new MSPTCommand("mspt")); -- version = getInt("config-version", 24); -- set("config-version", 24); -+ version = getInt("config-version", 25); -+ set("config-version", 25); +- version = getInt("config-version", 25); +- set("config-version", 25); ++ version = getInt("config-version", 26); ++ set("config-version", 26); readConfig(PaperConfig.class, null); } diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index d7dcf36c8c972e30320c56e447822cf26f6d5fb3..e1ce4e48ecb8e200c5236bfd34423bac4bd005d3 100644 +index d7dcf36c8c972e30320c56e447822cf26f6d5fb3..f457b86debff0f7db3e54c7cdc5df02475c30f07 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -77,13 +77,37 @@ public class PaperWorldConfig { @@ -2030,7 +2039,7 @@ index d7dcf36c8c972e30320c56e447822cf26f6d5fb3..e1ce4e48ecb8e200c5236bfd34423bac + public RedstoneAlgo redstoneAlgo = RedstoneAlgo.ALTERNATE_CURRENT; + private void redstoneAlgo() { + String redstoneAlgoString = getString("redstone-algo", "alternate-current").toLowerCase().trim(); -+ if (PaperConfig.version < 25) { ++ if (PaperConfig.version < 26) { + boolean oldUseEigenCraft = getBoolean("use-faster-eigencraft-redstone", false); + if (!oldUseEigenCraft) { + redstoneAlgoString = "vanilla"; @@ -2051,14 +2060,14 @@ index d7dcf36c8c972e30320c56e447822cf26f6d5fb3..e1ce4e48ecb8e200c5236bfd34423bac + redstoneAlgo = RedstoneAlgo.ALTERNATE_CURRENT; + break; + default: -+ logError("Warning: redstone-algo set to an invalid value of " + redstoneAlgoString + " must be one of: vanilla, eigencraft, alternate-current. Defaulting to eigencraft."); -+ redstoneAlgo = RedstoneAlgo.EIGENCRAFT; ++ logError("Warning: redstone-algo set to an invalid value of " + redstoneAlgoString + " must be one of: vanilla, eigencraft, alternate-current. Defaulting to alternate-current."); ++ redstoneAlgo = RedstoneAlgo.ALTERNATE_CURRENT; + break; } } diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index b836f61a7b5490dea6a531a7e7342ff986194485..fd50a81c6cce512e5c7fa47f5e6ab7ab131c575c 100644 +index f772923a1728d4c6c774481a703f441b2614c071..b9982480834c299cf866731b5357352f86e0666f 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -161,9 +161,14 @@ import org.bukkit.event.weather.LightningStrikeEvent; @@ -2308,7 +2317,7 @@ index 0afffc33f3be221a28c62115f493808aeffb1bd8..eb792a5d16826bbed2c9b4d306b9eed0 public boolean isSignalSource(BlockState state) { return true; diff --git a/src/main/java/net/minecraft/world/level/block/RedStoneWireBlock.java b/src/main/java/net/minecraft/world/level/block/RedStoneWireBlock.java -index 037330bcb10039c013b2ed5fd68dee16ede20fbe..9e3e65ac4e21a44d4cf563e11453b38f8b68c93d 100644 +index 037330bcb10039c013b2ed5fd68dee16ede20fbe..c1716f8b3a8fee8a030142ae503e2ceab95d1938 100644 --- a/src/main/java/net/minecraft/world/level/block/RedStoneWireBlock.java +++ b/src/main/java/net/minecraft/world/level/block/RedStoneWireBlock.java @@ -39,8 +39,82 @@ import net.minecraft.world.phys.shapes.CollisionContext; @@ -2475,7 +2484,7 @@ index 037330bcb10039c013b2ed5fd68dee16ede20fbe..9e3e65ac4e21a44d4cf563e11453b38f this.updateNeighborsOfNeighboringWires(world, pos); } } -@@ -524,15 +617,18 @@ public class RedStoneWireBlock extends Block { +@@ -524,7 +617,10 @@ public class RedStoneWireBlock extends Block { @Override public void neighborChanged(BlockState state, Level world, BlockPos pos, Block block, BlockPos fromPos, boolean notify) { @@ -2487,10 +2496,9 @@ index 037330bcb10039c013b2ed5fd68dee16ede20fbe..9e3e65ac4e21a44d4cf563e11453b38f if (state.canSurvive(world, pos)) { this.updateSurroundingRedstone(world, pos, state, fromPos); // Paper - Optimize redstone } else { - dropResources(state, world, pos); - world.removeBlock(pos, false); +@@ -533,6 +629,7 @@ public class RedStoneWireBlock extends Block { } -- + } + // Paper end } diff --git a/patches/server/0085-lithium-entity.fast_elytra_check.patch b/patches/server/0085-lithium-entity.fast_elytra_check.patch index 5915a3f..e936d8f 100644 --- a/patches/server/0085-lithium-entity.fast_elytra_check.patch +++ b/patches/server/0085-lithium-entity.fast_elytra_check.patch @@ -7,10 +7,10 @@ Original code by CaffeineMC, licensed under GNU Lesser General Public License v3 You can find the original code on https://github.com/CaffeineMC/lithium-fabric (Yarn mappings) diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 05490f66d645a61e74c3fda6c757ed03803dbd1d..bb033fa7fa99b3c1d47d5e48ba361d9bf69bfb48 100644 +index dfdbec2e0a873a11e6363f55027d4a8f97576f92..22bb6a335930550a16b885c5a8065180104e3e40 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -3370,6 +3370,8 @@ public abstract class LivingEntity extends Entity { +@@ -3379,6 +3379,8 @@ public abstract class LivingEntity extends Entity { } private void updateFallFlying() { diff --git a/patches/server/0087-lithium-entity.fast_hand_swing.patch b/patches/server/0087-lithium-entity.fast_hand_swing.patch index f750e66..f468b8c 100644 --- a/patches/server/0087-lithium-entity.fast_hand_swing.patch +++ b/patches/server/0087-lithium-entity.fast_hand_swing.patch @@ -7,10 +7,10 @@ Original code by CaffeineMC, licensed under GNU Lesser General Public License v3 You can find the original code on https://github.com/CaffeineMC/lithium-fabric (Yarn mappings) diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index bb033fa7fa99b3c1d47d5e48ba361d9bf69bfb48..60384a8ff1d60be7a02dfb5d81864085a554ee3c 100644 +index 22bb6a335930550a16b885c5a8065180104e3e40..83b76ce13e7987184e0efec3556b97fe5418debd 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -2419,6 +2419,8 @@ public abstract class LivingEntity extends Entity { +@@ -2428,6 +2428,8 @@ public abstract class LivingEntity extends Entity { } protected void updateSwingTime() { diff --git a/patches/server/0102-some-entity-micro-opts.patch b/patches/server/0102-some-entity-micro-opts.patch index fb0d16d..c47ed34 100644 --- a/patches/server/0102-some-entity-micro-opts.patch +++ b/patches/server/0102-some-entity-micro-opts.patch @@ -7,7 +7,7 @@ Original code by Titaniumtown, licensed under GNU General Public License v3.0 You can find the original code on https://gitlab.com/Titaniumtown/JettPack diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index e43127f6325e4de9971b01fbeda03dcbc578a2f0..72e39b9c7344e89bb9919b882002b4ebbd2d464d 100644 +index 252302e97fc426e91b2f191d275d7b28e089418d..b6c0c874de47210345caaaac2919f9a150de920e 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -1784,10 +1784,16 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, i @@ -28,7 +28,7 @@ index e43127f6325e4de9971b01fbeda03dcbc578a2f0..72e39b9c7344e89bb9919b882002b4eb public void absMoveTo(double x, double y, double z, float yaw, float pitch) { this.absMoveTo(x, y, z); this.setYRot(yaw % 360.0F); -@@ -4172,6 +4178,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, i +@@ -4176,6 +4182,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, i return this.getZ((2.0D * this.random.nextDouble() - 1.0D) * widthScale); } @@ -42,10 +42,10 @@ index e43127f6325e4de9971b01fbeda03dcbc578a2f0..72e39b9c7344e89bb9919b882002b4eb // Paper start this.setPosRaw(x, y, z, false); diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java -index b101e0b234c9cef315f871b880c1dcb3647d5ff6..f7fc3fdac2ed7a67f5db5fb4f7718275bb97b341 100644 +index 4375d11e674ff9c713e9c4d407c7abc0bdbb1719..70dc15729ad9988cebc58e0b14dbcf4a76d31ca0 100644 --- a/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java -@@ -1617,15 +1617,31 @@ public abstract class Mob extends LivingEntity { +@@ -1621,15 +1621,31 @@ public abstract class Mob extends LivingEntity { } diff --git a/patches/server/0112-PaperPR-Stop-large-look-changes-from-crashing-the-se.patch b/patches/server/0112-PaperPR-Stop-large-look-changes-from-crashing-the-se.patch index 852e63b..1bfecf7 100644 --- a/patches/server/0112-PaperPR-Stop-large-look-changes-from-crashing-the-se.patch +++ b/patches/server/0112-PaperPR-Stop-large-look-changes-from-crashing-the-se.patch @@ -6,10 +6,10 @@ Subject: [PATCH] PaperPR Stop large look changes from crashing the server Taken from https://github.com/PaperMC/Paper/pull/7459 diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index bbc27000f6510209806f3f95925c11ed51f80806..1627e8dbee031c946ff59b6456748492d9822a9f 100644 +index 28703da87b1f0118c4b5c5fc13145d80e3aced12..5caf84d010e82bfd3e4faebc710ddd841abe744e 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -2962,37 +2962,12 @@ public abstract class LivingEntity extends Entity { +@@ -2971,37 +2971,12 @@ public abstract class LivingEntity extends Entity { this.level.getProfiler().pop(); this.level.getProfiler().push("rangeChecks");