From ab8264ec2181dd70490cb6f8fc1bfb1f6ec5f97d Mon Sep 17 00:00:00 2001 From: granny Date: Sat, 26 Oct 2024 02:15:43 -0700 Subject: [PATCH] Updated Upstream (Paper) Upstream has released updates that appear to apply and compile correctly Paper Changes: PaperMC/Paper@b14d336 Apply watchdoge patches --- gradle.properties | 2 +- patches/server/0001-Rebrand.patch | 14 ++-- patches/server/0002-Purpur-config-files.patch | 10 +-- .../0006-Component-related-conveniences.patch | 6 +- patches/server/0007-Ridables.patch | 14 ++-- .../0013-Configurable-server-mod-name.patch | 4 +- patches/server/0014-Lagging-threshold.patch | 8 +- ...option-to-set-armorstand-step-height.patch | 4 +- .../0043-Configurable-TPS-Catchup.patch | 4 +- .../0047-Allow-leashing-villagers.patch | 4 +- ...urable-void-damage-height-and-damage.patch | 6 +- ...0056-Add-5-second-tps-average-in-tps.patch | 6 +- ...-Add-allow-water-in-end-world-option.patch | 4 +- ...Stop-squids-floating-on-top-of-water.patch | 4 +- .../0083-Entities-can-use-portals.patch | 6 +- .../0090-Configurable-daylight-cycle.patch | 6 +- patches/server/0110-Implement-TPSBar.patch | 8 +- ...18-Movement-options-for-armor-stands.patch | 4 +- .../server/0119-Fix-stuck-in-portals.patch | 4 +- patches/server/0138-Drowning-Settings.patch | 4 +- .../server/0207-UPnP-Port-Forwarding.patch | 10 +-- ...counts-in-beehives-to-Purpur-clients.patch | 6 +- patches/server/0224-Allow-void-trading.patch | 4 +- ...dd-toggle-for-enchant-level-clamping.patch | 4 +- patches/server/0247-Remove-Timings.patch | 50 ++++++------ .../server/0248-Remove-Mojang-Profiler.patch | 80 +++++++++---------- patches/server/0264-Fire-Immunity-API.patch | 8 +- .../server/0275-Make-GUI-Great-Again.patch | 6 +- ...84-register-minecraft-debug-commands.patch | 4 +- .../0287-config-for-startup-commands.patch | 4 +- 30 files changed, 149 insertions(+), 149 deletions(-) diff --git a/gradle.properties b/gradle.properties index dbf03b722..c3c138109 100644 --- a/gradle.properties +++ b/gradle.properties @@ -2,7 +2,7 @@ group = org.purpurmc.purpur version = 1.21.3-R0.1-SNAPSHOT mcVersion = 1.21.3 -paperCommit = be2edeac2b42ab3d76d9462cd7fab584e13dee9c +paperCommit = b14d336442a1928e21ad2eb28768bd0632961682 org.gradle.caching = true org.gradle.parallel = true diff --git a/patches/server/0001-Rebrand.patch b/patches/server/0001-Rebrand.patch index 1e5a2c788..d36f72e68 100644 --- a/patches/server/0001-Rebrand.patch +++ b/patches/server/0001-Rebrand.patch @@ -184,7 +184,7 @@ index 790bad0494454ca12ee152e3de6da3da634d9b20..a6e5950b5875cafd734300cdfbf58f5d @Override diff --git a/src/main/java/net/minecraft/CrashReport.java b/src/main/java/net/minecraft/CrashReport.java -index 589a8bf75be6ccc59f1e5dd5d8d9afed41c4772d..7eabcb453ef655741c4802d2f574932d6d741631 100644 +index b24265573fdef5d9a964bcd76146f34542c420cf..710477ae27ebc5afdf0012ef0867d05efd293c24 100644 --- a/src/main/java/net/minecraft/CrashReport.java +++ b/src/main/java/net/minecraft/CrashReport.java @@ -32,6 +32,7 @@ public class CrashReport { @@ -293,10 +293,10 @@ index 774556a62eb240da42e84db4502e2ed43495be17..99597258e8e88cd9e2c901c4ac3ff7fa if (stream != null) { diff --git a/src/main/java/org/spigotmc/WatchdogThread.java b/src/main/java/org/spigotmc/WatchdogThread.java -index 529df2a41dd93d6e1505053bd04032dbf0cdaa31..c0aa9f4bfaa1d6fb81823363e3ac3f1ff06efc3d 100644 +index f7a4fee9bb25ff256dc2e5ea26bfbceca6a49167..f51cc3de3ca935ef90f7f0e9dd0506b856fc55f3 100644 --- a/src/main/java/org/spigotmc/WatchdogThread.java +++ b/src/main/java/org/spigotmc/WatchdogThread.java -@@ -23,7 +23,7 @@ public class WatchdogThread extends ca.spottedleaf.moonrise.common.util.TickThre +@@ -96,7 +96,7 @@ public class WatchdogThread extends ca.spottedleaf.moonrise.common.util.TickThre private WatchdogThread(long timeoutTime, boolean restart) { @@ -305,7 +305,7 @@ index 529df2a41dd93d6e1505053bd04032dbf0cdaa31..c0aa9f4bfaa1d6fb81823363e3ac3f1f this.timeoutTime = timeoutTime; this.restart = restart; earlyWarningEvery = Math.min(io.papermc.paper.configuration.GlobalConfiguration.get().watchdog.earlyWarningEvery, timeoutTime); // Paper -@@ -80,14 +80,14 @@ public class WatchdogThread extends ca.spottedleaf.moonrise.common.util.TickThre +@@ -155,14 +155,14 @@ public class WatchdogThread extends ca.spottedleaf.moonrise.common.util.TickThre if (isLongTimeout) { // Paper end log.log( Level.SEVERE, "------------------------------" ); @@ -323,7 +323,7 @@ index 529df2a41dd93d6e1505053bd04032dbf0cdaa31..c0aa9f4bfaa1d6fb81823363e3ac3f1f // if ( net.minecraft.world.level.Level.lastPhysicsProblem != null ) { -@@ -109,12 +109,12 @@ public class WatchdogThread extends ca.spottedleaf.moonrise.common.util.TickThre +@@ -184,12 +184,12 @@ public class WatchdogThread extends ca.spottedleaf.moonrise.common.util.TickThre // Paper end } else { @@ -336,9 +336,9 @@ index 529df2a41dd93d6e1505053bd04032dbf0cdaa31..c0aa9f4bfaa1d6fb81823363e3ac3f1f - log.log( Level.SEVERE, "Server thread dump (Look for plugins here before reporting to Paper!):" ); // Paper + log.log( Level.SEVERE, "Server thread dump (Look for plugins here before reporting to Purpur!):" ); // Paper // Purpur ca.spottedleaf.moonrise.patches.chunk_system.scheduling.ChunkTaskScheduler.dumpAllChunkLoadInfo(MinecraftServer.getServer(), isLongTimeout); // Paper - rewrite chunk system + this.dumpTickingInfo(); // Paper - log detailed tick information WatchdogThread.dumpThread( ManagementFactory.getThreadMXBean().getThreadInfo( MinecraftServer.getServer().serverThread.getId(), Integer.MAX_VALUE ), log ); - log.log( Level.SEVERE, "------------------------------" ); -@@ -129,7 +129,7 @@ public class WatchdogThread extends ca.spottedleaf.moonrise.common.util.TickThre +@@ -205,7 +205,7 @@ public class WatchdogThread extends ca.spottedleaf.moonrise.common.util.TickThre WatchdogThread.dumpThread( thread, log ); } } else { diff --git a/patches/server/0002-Purpur-config-files.patch b/patches/server/0002-Purpur-config-files.patch index 7aa8db475..a49591d05 100644 --- a/patches/server/0002-Purpur-config-files.patch +++ b/patches/server/0002-Purpur-config-files.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Purpur config files diff --git a/src/main/java/com/destroystokyo/paper/Metrics.java b/src/main/java/com/destroystokyo/paper/Metrics.java -index 6aaed8e8bf8c721fc834da5c76ac72a4c3e92458..308d80ca27aa0edd63fba87343b12b39675462bc 100644 +index 4b002e8b75d117b726b0de274a76d3596fce015b..8cde30544e14f8fc2dac32966ae3c21f8cf3a551 100644 --- a/src/main/java/com/destroystokyo/paper/Metrics.java +++ b/src/main/java/com/destroystokyo/paper/Metrics.java -@@ -588,7 +588,7 @@ public class Metrics { +@@ -593,7 +593,7 @@ public class Metrics { boolean logFailedRequests = config.getBoolean("logFailedRequests", false); // Only start Metrics, if it's enabled in the config if (config.getBoolean("enabled", true)) { @@ -17,7 +17,7 @@ index 6aaed8e8bf8c721fc834da5c76ac72a4c3e92458..308d80ca27aa0edd63fba87343b12b39 metrics.addCustomChart(new Metrics.SimplePie("minecraft_version", () -> { String minecraftVersion = Bukkit.getVersion(); -@@ -597,16 +597,8 @@ public class Metrics { +@@ -602,16 +602,8 @@ public class Metrics { })); metrics.addCustomChart(new Metrics.SingleLineChart("players", () -> Bukkit.getOnlinePlayers().size())); @@ -72,7 +72,7 @@ index 13bd145b1e8006a53c22f5dc0c78f29b540c7663..ae2d9c91afe13d07fd0de6d455b90a2a boolean flag1 = this.source.acceptsSuccess() && !this.silent; boolean flag2 = broadcastToOps && this.source.shouldInformAdmins() && !this.silent; diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java -index 3ed19896a0e06fe834953e6450f23abdc805a6cc..11f708ec623bba462fce8bc9c4483f855fe48366 100644 +index 7a79541db29cc47c844d617fc8a4360f61c73372..3267240e8be56a6dc152805c23269f47ab0f54df 100644 --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java @@ -235,6 +235,15 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface @@ -92,7 +92,7 @@ index 3ed19896a0e06fe834953e6450f23abdc805a6cc..11f708ec623bba462fce8bc9c4483f85 this.setPvpAllowed(dedicatedserverproperties.pvp); diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index bb2d3ba2065b6bf67af24a8630ac2d58169fe783..caa01dd419da2e18ad027e5eab828d8bcaca0279 100644 +index 044985030607bc20a61666dee7dd2659ae4553b5..580ddacce37e50e392999d45fdfa9f42f555aa6a 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -174,6 +174,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl diff --git a/patches/server/0006-Component-related-conveniences.patch b/patches/server/0006-Component-related-conveniences.patch index 22de066d2..8910028b6 100644 --- a/patches/server/0006-Component-related-conveniences.patch +++ b/patches/server/0006-Component-related-conveniences.patch @@ -36,7 +36,7 @@ index eb6f95a37b26ac077423accc93492d9957456a1a..f00e708fe38454e228cf126199651b81 public void displayClientMessage(Component message, boolean overlay) { this.sendSystemMessage(message, overlay); diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index bbefb529607d1cffe8917b883389494a8fa126c0..a4454289fb92cf7b97ee77db422c328f008521f1 100644 +index 511e7254d938733aca508efd5de82e61678c7620..75e5e540f03d28b64fa5fef1f342a157598c3fa7 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -985,6 +985,20 @@ public abstract class PlayerList { @@ -81,10 +81,10 @@ index bb1a60180e58c1333e7bb33e8acf1b0225eda8a8..c83e80ebdbbfb2d0e08561a44486a308 return this.type().msgId(); } diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index b36a915e6d337d7ec3f797bf1773b14c5b231d76..3ca09f9ac97ad835feae8800a72d882af2192077 100644 +index 6817015f0cf39df03029e36cd845d590618031dc..62af796b2b883856a904647f504ff064a5fed463 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -4426,6 +4426,20 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4468,6 +4468,20 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess return SlotAccess.NULL; } diff --git a/patches/server/0007-Ridables.patch b/patches/server/0007-Ridables.patch index 55ae28a11..06a105064 100644 --- a/patches/server/0007-Ridables.patch +++ b/patches/server/0007-Ridables.patch @@ -22,10 +22,10 @@ index f58a94efafbc01d402cd03a108bb90f60930a316..21ea63da99c5b3e2e1ab9cc1049c903b super(x, y, z); } diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 38060a14181f6bcbd36ee4c91fdb20fae30c534a..000a765c2e62d7e1921b2f4b4de77fc1a56ca02b 100644 +index 79f3dc4f53dce892c4756b0850352e0ca2eb95a6..dc9e3f798bc8a9a6968a588a09122a08dc9b9774 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java -@@ -1805,6 +1805,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop 0; // Paper - BlockPhysicsEvent worldserver.hasEntityMoveEvent = io.papermc.paper.event.entity.EntityMoveEvent.getHandlerList().getRegisteredListeners().length > 0; // Paper - Add EntityMoveEvent net.minecraft.world.level.block.entity.HopperBlockEntity.skipHopperEvents = worldserver.paperConfig().hopper.disableMoveEvent || org.bukkit.event.inventory.InventoryMoveItemEvent.getHandlerList().getRegisteredListeners().length == 0; // Paper - Perf: Optimize Hoppers @@ -34,7 +34,7 @@ index 38060a14181f6bcbd36ee4c91fdb20fae30c534a..000a765c2e62d7e1921b2f4b4de77fc1 gameprofilerfiller.push(() -> { String s = String.valueOf(worldserver); diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 3b55367865b3583e11ef886678114d4d4b294e8c..fc400624a9896f8fd29984c21df70e67b0c32c1d 100644 +index a7420e4522e0dff72ce7f8a791b9cd4bfa270106..0fa5e0c80ad09e03452c4d412390cb8f52060c01 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -231,6 +231,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe @@ -79,7 +79,7 @@ index eef96e946b80064fe211039a65db4192ea7a52d3..352ade7acc9052e4d74ef840e085a86f if ((entity instanceof Bucketable && entity instanceof LivingEntity && origItem != null && origItem.asItem() == Items.WATER_BUCKET) && (event.isCancelled() || ServerGamePacketListenerImpl.this.player.getInventory().getSelected() == null || ServerGamePacketListenerImpl.this.player.getInventory().getSelected().getItem() != origItem)) { entity.resendPossiblyDesyncedEntityData(ServerGamePacketListenerImpl.this.player); // Paper - The entire mob gets deleted, so resend it diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 3ca09f9ac97ad835feae8800a72d882af2192077..a897a9f371d44cc6d1fcc19f2da5450e61858527 100644 +index 62af796b2b883856a904647f504ff064a5fed463..49a8b0d4f4a18c91a48291c316c420bd78428ca5 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -383,7 +383,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess @@ -91,7 +91,7 @@ index 3ca09f9ac97ad835feae8800a72d882af2192077..a897a9f371d44cc6d1fcc19f2da5450e private float eyeHeight; public boolean isInPowderSnow; public boolean wasInPowderSnow; -@@ -3287,6 +3287,13 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -3329,6 +3329,13 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess this.passengers = ImmutableList.copyOf(list); } @@ -105,7 +105,7 @@ index 3ca09f9ac97ad835feae8800a72d882af2192077..a897a9f371d44cc6d1fcc19f2da5450e this.gameEvent(GameEvent.ENTITY_MOUNT, passenger); } } -@@ -3326,6 +3333,14 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -3368,6 +3375,14 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess return false; } // CraftBukkit end @@ -120,7 +120,7 @@ index 3ca09f9ac97ad835feae8800a72d882af2192077..a897a9f371d44cc6d1fcc19f2da5450e if (this.passengers.size() == 1 && this.passengers.get(0) == entity) { this.passengers = ImmutableList.of(); } else { -@@ -5297,4 +5312,44 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -5343,4 +5358,44 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess return ((net.minecraft.server.level.ServerChunkCache) level.getChunkSource()).isPositionTicking(this); } // Paper end - Expose entity id counter diff --git a/patches/server/0013-Configurable-server-mod-name.patch b/patches/server/0013-Configurable-server-mod-name.patch index 204fd9e5a..b2235b71f 100644 --- a/patches/server/0013-Configurable-server-mod-name.patch +++ b/patches/server/0013-Configurable-server-mod-name.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Configurable server mod name diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 000a765c2e62d7e1921b2f4b4de77fc1a56ca02b..a95f3032d498c9f71aa89fcfdda1081ae6fca3bd 100644 +index dc9e3f798bc8a9a6968a588a09122a08dc9b9774..99b1c6f239a85eb82019a1bae9e91391fcb55519 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java -@@ -1968,7 +1968,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop S spin(Function serverFactory) { - AtomicReference atomicreference = new AtomicReference(); -@@ -1269,6 +1270,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop. diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 4b516fcc23c692ec2c9847bee45484d747981410..49af66a9f5e0fcc0993fdfb8095645e48c17bd68 100644 +index f326f3a0a5b218addbf9d41837f5653248a39a1d..89d4d749336b2947b0ac12d7df140c0240f67636 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2007,7 +2007,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2049,7 +2049,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess return this.isInWater() || flag; } diff --git a/patches/server/0119-Fix-stuck-in-portals.patch b/patches/server/0119-Fix-stuck-in-portals.patch index 66d7ab4cb..77d7801d1 100644 --- a/patches/server/0119-Fix-stuck-in-portals.patch +++ b/patches/server/0119-Fix-stuck-in-portals.patch @@ -17,10 +17,10 @@ index d1a4eca112ad8698aa9025cec1b38bca01805e3f..c64b2386f35c55e3484df2d193f712a1 this.connection.internalTeleport(PositionMoveRotation.of(teleportTarget), teleportTarget.relatives()); // CraftBukkit - use internal teleport without event this.connection.resetPosition(); diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 49af66a9f5e0fcc0993fdfb8095645e48c17bd68..0b936bcf09bb12b0a29a1ef755df1a24604f0904 100644 +index 89d4d749336b2947b0ac12d7df140c0240f67636..a942f6b9404f72c1c0af1bfc2325ddbfd5e6f255 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -3428,14 +3428,17 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -3470,14 +3470,17 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess return Vec3.directionFromRotation(this.getRotationVector()); } diff --git a/patches/server/0138-Drowning-Settings.patch b/patches/server/0138-Drowning-Settings.patch index e7b09146c..50bb62067 100644 --- a/patches/server/0138-Drowning-Settings.patch +++ b/patches/server/0138-Drowning-Settings.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Drowning Settings diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 0b936bcf09bb12b0a29a1ef755df1a24604f0904..f3769da2422d98dec32ba252bde5d9467f1bd84f 100644 +index a942f6b9404f72c1c0af1bfc2325ddbfd5e6f255..58d9ad22790664d425d26b53f70fbc19e3963f65 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -3655,7 +3655,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -3697,7 +3697,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } public int getMaxAirSupply() { diff --git a/patches/server/0207-UPnP-Port-Forwarding.patch b/patches/server/0207-UPnP-Port-Forwarding.patch index f99b53900..c4366707c 100644 --- a/patches/server/0207-UPnP-Port-Forwarding.patch +++ b/patches/server/0207-UPnP-Port-Forwarding.patch @@ -5,7 +5,7 @@ Subject: [PATCH] UPnP Port Forwarding diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 76f31bf31f77c8347b9436779c3701f8a87045e6..781eb66ada5fd2bf821453be3b14c59026217999 100644 +index e1cabc6af43e4342e8215a774483d5cd0db0aba8..2cbd4a0d12a643f1f7446d005433580fb1a81a42 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -331,6 +331,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop S spin(Function serverFactory) { - AtomicReference atomicreference = new AtomicReference(); -@@ -1045,6 +1046,15 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop { entityplayer.connection.suspendFlushing(); }); @@ -101,7 +101,7 @@ index c3c5d392f1295e7edc0e96881f90f96cace5486f..9ab3a164c079721d2c4650ff0cf5aec8 // Paper start - Folia scheduler API ((io.papermc.paper.threadedregions.scheduler.FoliaGlobalRegionScheduler) Bukkit.getGlobalRegionScheduler()).tick(); getAllLevels().forEach(level -> { -@@ -1794,21 +1794,21 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop { return false; -@@ -1332,7 +1332,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop 0; // Purpur @@ -258,7 +258,7 @@ index 9ab3a164c079721d2c4650ff0cf5aec82ada09bc..195f5fa4f01a3c835bbb98e8aaf3d566 try { //worldserver.timings.doTick.startTiming(); // Spigot // Purpur -@@ -1865,16 +1865,16 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop { this.executeBlocking(() -> { this.saveDebugReport(path.resolve("server")); -@@ -2878,37 +2878,38 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop 1.0E-7D) { movement = movement.multiply(this.stuckSpeedMultiplier); this.stuckSpeedMultiplier = Vec3.ZERO; -@@ -1219,7 +1219,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -1254,7 +1254,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess // Paper start - ignore movement changes while inactive. if (isTemporarilyActive && !(this instanceof ItemEntity) && movement == getDeltaMovement() && type == MoverType.SELF) { setDeltaMovement(Vec3.ZERO); @@ -1225,7 +1225,7 @@ index aa0771c7ab8302c03d7a54c6c1282e21defc4de7..1bab4593cfb738ed6253482d36dc99b7 return; } // Paper end -@@ -1240,8 +1240,8 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -1275,8 +1275,8 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess this.setPos(this.getX() + vec3d1.x, this.getY() + vec3d1.y, this.getZ() + vec3d1.z); } @@ -1236,7 +1236,7 @@ index aa0771c7ab8302c03d7a54c6c1282e21defc4de7..1bab4593cfb738ed6253482d36dc99b7 boolean flag = !Mth.equal(movement.x, vec3d1.x); boolean flag1 = !Mth.equal(movement.z, vec3d1.z); -@@ -1263,7 +1263,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -1298,7 +1298,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } if (this.isRemoved()) { @@ -1245,7 +1245,7 @@ index aa0771c7ab8302c03d7a54c6c1282e21defc4de7..1bab4593cfb738ed6253482d36dc99b7 } else { if (this.horizontalCollision) { Vec3 vec3d2 = this.getDeltaMovement(); -@@ -3470,9 +3470,9 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -3512,9 +3512,9 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess this.processPortalCooldown(); if (this.portalProcess != null) { if (this.portalProcess.processPortalTeleportation(worldserver, this, this.canUsePortal(false))) { @@ -1257,7 +1257,7 @@ index aa0771c7ab8302c03d7a54c6c1282e21defc4de7..1bab4593cfb738ed6253482d36dc99b7 this.setPortalCooldown(); TeleportTransition teleporttransition = this.portalProcess.getPortalDestination(worldserver, this); -@@ -3484,7 +3484,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -3526,7 +3526,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } } @@ -1266,7 +1266,7 @@ index aa0771c7ab8302c03d7a54c6c1282e21defc4de7..1bab4593cfb738ed6253482d36dc99b7 } else if (this.portalProcess.hasExpired()) { this.portalProcess = null; } -@@ -4035,12 +4035,12 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4077,12 +4077,12 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } } @@ -1939,7 +1939,7 @@ index c885b214f4d7d91627e98d8779aab8515f205636..b4ffad429ace965f16ebf47119c880b7 this.assignProfessionWhenSpawned = false; } diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 5a8b02d93f3d7eb882e93c9698858e7ae55c79e6..28350e63cb6718af521eda3b6814418957028620 100644 +index e14e9ae4f16dff8486c98f391c27ead816c2a080..224ad8e6553f019d5717d3bf70d11b034147fbdc 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -271,7 +271,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl @@ -1981,7 +1981,7 @@ index 5a8b02d93f3d7eb882e93c9698858e7ae55c79e6..28350e63cb6718af521eda3b68144189 this.spigotConfig.currentPrimedTnt = 0; // Spigot } -@@ -1702,7 +1702,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl +@@ -1703,7 +1703,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl @Override public List getEntities(@Nullable Entity except, AABB box, Predicate predicate) { @@ -1990,7 +1990,7 @@ index 5a8b02d93f3d7eb882e93c9698858e7ae55c79e6..28350e63cb6718af521eda3b68144189 List list = Lists.newArrayList(); // Paper start - rewrite chunk system -@@ -1732,7 +1732,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl +@@ -1733,7 +1733,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable, ca.spottedl public void getEntities(final EntityTypeTest entityTypeTest, final AABB boundingBox, final Predicate predicate, final List into, final int maxCount) { @@ -2013,7 +2013,7 @@ index f6fb4892c95f9716628ed8a90d1560b7c0a2e032..4bdfba6dbe88dbc7ce901b235a524ba2 // Paper start - Add mobcaps commands diff --git a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java -index a1a5b34b059d3beaa042f8f2d0ba509191df6f15..a6b6bdbdd245e864bd7b8622c4d391c85bfeb8e9 100644 +index c1ce5a43b5759f204c432cbfbcdcb14b5ef43dc0..b525ab58998f4ead44f8a2b37ac2391c7de81df4 100644 --- a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java +++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java @@ -407,11 +407,11 @@ public class LevelChunk extends ChunkAccess implements ca.spottedleaf.moonrise.p @@ -2050,8 +2050,8 @@ index a1a5b34b059d3beaa042f8f2d0ba509191df6f15..a6b6bdbdd245e864bd7b8622c4d391c8 - gameprofilerfiller.pop(); + //gameprofilerfiller.pop(); } catch (Throwable throwable) { + if (throwable instanceof ThreadDeath) throw throwable; // Paper // Paper start - Prevent block entity and entity crashes - final String msg = String.format("BlockEntity threw exception at %s:%s,%s,%s", LevelChunk.this.getLevel().getWorld().getName(), this.getPos().getX(), this.getPos().getY(), this.getPos().getZ()); diff --git a/src/main/java/net/minecraft/world/level/pathfinder/PathFinder.java b/src/main/java/net/minecraft/world/level/pathfinder/PathFinder.java index cc7d94144e39f7dace7b569b4567def98396e8f9..91abbda59446d462979dddc4b380c6f24d0b4c92 100644 --- a/src/main/java/net/minecraft/world/level/pathfinder/PathFinder.java diff --git a/patches/server/0264-Fire-Immunity-API.patch b/patches/server/0264-Fire-Immunity-API.patch index fd84b135e..2d0420a44 100644 --- a/patches/server/0264-Fire-Immunity-API.patch +++ b/patches/server/0264-Fire-Immunity-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fire Immunity API diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 1bab4593cfb738ed6253482d36dc99b755d4e55f..285ef87b7088f905bb77c408465ccbca6644454f 100644 +index e5eadc68c1e1b0fe2b7d638d2630ab22c332b381..7976a517f56b8af3a7c2aab5a4fc829acd87fa64 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -432,6 +432,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess @@ -16,7 +16,7 @@ index 1bab4593cfb738ed6253482d36dc99b755d4e55f..285ef87b7088f905bb77c408465ccbca public void setOrigin(@javax.annotation.Nonnull Location location) { this.origin = location.toVector(); -@@ -1950,7 +1951,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -1992,7 +1993,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } public boolean fireImmune() { @@ -25,7 +25,7 @@ index 1bab4593cfb738ed6253482d36dc99b755d4e55f..285ef87b7088f905bb77c408465ccbca } public boolean causeFallDamage(float fallDistance, float damageMultiplier, DamageSource damageSource) { -@@ -2705,6 +2706,11 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2747,6 +2748,11 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess nbttagcompound.putBoolean("Paper.FreezeLock", true); } // Paper end @@ -37,7 +37,7 @@ index 1bab4593cfb738ed6253482d36dc99b755d4e55f..285ef87b7088f905bb77c408465ccbca return nbttagcompound; } catch (Throwable throwable) { CrashReport crashreport = CrashReport.forThrowable(throwable, "Saving entity NBT"); -@@ -2853,6 +2859,11 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2895,6 +2901,11 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess freezeLocked = nbt.getBoolean("Paper.FreezeLock"); } // Paper end diff --git a/patches/server/0275-Make-GUI-Great-Again.patch b/patches/server/0275-Make-GUI-Great-Again.patch index 58c76fab2..d87d272a1 100644 --- a/patches/server/0275-Make-GUI-Great-Again.patch +++ b/patches/server/0275-Make-GUI-Great-Again.patch @@ -96,7 +96,7 @@ index 0000000000000000000000000000000000000000..15a226e3854d731f7724025ea3459c8a + } +} diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java -index 51abda23e30e56d79b3e020d0407c1cfe25d8ab9..73216c774f2ee5455c4b118180b2dcc2e3a24f0d 100644 +index 71420de8a37b004dfa3940abb537321cc82e1993..b96c331ec8c196b2a08dc2b04db475426805ba6a 100644 --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java @@ -113,6 +113,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface @@ -398,11 +398,11 @@ index 0000000000000000000000000000000000000000..d75fb5e77eff27d86135ed7d605dbc25 + } +} diff --git a/src/main/resources/log4j2.xml b/src/main/resources/log4j2.xml -index 637d64da9938e51a97338b9253b43889585c67bb..f9313059b4e3b2d100e66ed8a70d4811dc394031 100644 +index d2a75850af9c6ad2aca66a5f994f1b587d73eac4..a056aa167887abef9e6d531a9edd2cda433567d2 100644 --- a/src/main/resources/log4j2.xml +++ b/src/main/resources/log4j2.xml @@ -2,7 +2,16 @@ - + - diff --git a/patches/server/0284-register-minecraft-debug-commands.patch b/patches/server/0284-register-minecraft-debug-commands.patch index c6210344d..99199f12a 100644 --- a/patches/server/0284-register-minecraft-debug-commands.patch +++ b/patches/server/0284-register-minecraft-debug-commands.patch @@ -20,10 +20,10 @@ index cbbddb924f46203bd600b838fc22902cbcb2124b..647a3ac2aea4dadd638836f831cc3768 DebugPathCommand.register(this.dispatcher); DebugMobSpawningCommand.register(this.dispatcher); diff --git a/src/main/java/net/minecraft/server/Main.java b/src/main/java/net/minecraft/server/Main.java -index cccdf61ff0b08531ec0f2165588abe5dd4d488eb..5af4bed9602fb3bb2e5c92f97e95b97294ee6123 100644 +index 5e9a2838335179566bdcd79bca0cb849c725b73b..f0d762bd140fad27ae73bcf3e61b640b9e3f2592 100644 --- a/src/main/java/net/minecraft/server/Main.java +++ b/src/main/java/net/minecraft/server/Main.java -@@ -122,6 +122,7 @@ public class Main { +@@ -123,6 +123,7 @@ public class Main { // Purpur start - load config files early org.bukkit.configuration.file.YamlConfiguration purpurConfiguration = io.papermc.paper.configuration.PaperConfigurations.loadLegacyConfigFile((File) optionset.valueOf("purpur-settings")); org.purpurmc.purpur.PurpurConfig.clampEnchantLevels = purpurConfiguration.getBoolean("settings.enchantment.clamp-levels"); diff --git a/patches/server/0287-config-for-startup-commands.patch b/patches/server/0287-config-for-startup-commands.patch index 868336a30..6c9b842be 100644 --- a/patches/server/0287-config-for-startup-commands.patch +++ b/patches/server/0287-config-for-startup-commands.patch @@ -5,10 +5,10 @@ Subject: [PATCH] config for startup commands diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 195f5fa4f01a3c835bbb98e8aaf3d5666118daf5..c069393863937cbd37718ab5a93c97a63acd79dd 100644 +index 13f29051f55b5628d91b4dca06051e41097badcd..f6b6231c32afb4e1838deec5b2f861300152ee8b 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java -@@ -1258,6 +1258,17 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop