diff --git a/gradle.properties b/gradle.properties index 5c4df39..da47431 100644 --- a/gradle.properties +++ b/gradle.properties @@ -20,5 +20,5 @@ purpurBranch = ver/1.20.6 pufferfishBranch = ver/1.20 usePufferfish = false -paperCommit = 0db72ac19e735d398e85b2152d5a32317bb03dc8 -purpurCommit = 1ddead8ef8f0d1e2fcfb32e30c8dbe18792a53d7 +paperCommit = ac3a5471c8dcdc1d0431025781da1d524895c47a +purpurCommit = d3971ad0ae3a36eaeded6969b034f81eb1a13d25 diff --git a/patches/api/0001-Purpur-API-Changes.patch b/patches/api/0001-Purpur-API-Changes.patch index 294f1a0..63fd863 100644 --- a/patches/api/0001-Purpur-API-Changes.patch +++ b/patches/api/0001-Purpur-API-Changes.patch @@ -1,6 +1,6 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: granny -Date: Sat, 4 May 2024 18:10:29 +0900 +Date: Mon, 6 May 2024 15:08:02 +0900 Subject: [PATCH] Purpur API Changes PurpurMC @@ -186,10 +186,10 @@ index a736d7bcdc5861a01b66ba36158db1c716339346..22fc165fd9c95f0f3ae1be7a0857e48c @Override diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java -index 687bd8f54c9bfb5f5ab1f7ad9d232daf2433cc76..60de2456d00e85ac5ec5c4549198429aea87bc6d 100644 +index 5d1b55fdbcbe63f6b42b694d05211a3cc691a09d..70ef8f63ab79e102cb4326c21cc344488f4fbdd3 100644 --- a/src/main/java/org/bukkit/Bukkit.java +++ b/src/main/java/org/bukkit/Bukkit.java -@@ -2907,4 +2907,127 @@ public final class Bukkit { +@@ -2910,4 +2910,127 @@ public final class Bukkit { public static Server.Spigot spigot() { return server.spigot(); } @@ -408,10 +408,10 @@ index 918a045165cdcde264bc24082b7afebb407271de..687d11619379aead7f665d4a5f8f8bcc + // Purpur end } diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java -index 82d009c0bbe4b3026a535e02d6e0ed20c7bd525d..0366400fe6dea7af40badaa3335b49ff5992a516 100644 +index 7a337fe908915f8ea487a0b9236c511cb07d5e66..1dd02e2782364bf25521088cf8858d3443643447 100644 --- a/src/main/java/org/bukkit/Material.java +++ b/src/main/java/org/bukkit/Material.java -@@ -11653,4 +11653,40 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla +@@ -11657,4 +11657,40 @@ public enum Material implements Keyed, Translatable, net.kyori.adventure.transla public boolean isEnabledByFeature(@NotNull World world) { return Bukkit.getDataPackManager().isEnabledByFeature(this, world); } @@ -564,10 +564,10 @@ index 30298a629b39bd43ce14b414fc697b2dfcbea89c..ce00af9121de7a910aaea4e0685a06d4 + // Purpur end - OfflinePlayer API } diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java -index 27084402cf0e46dcd171074629b7c4156e48aa44..a15d0ed710ff261f203d7e355e7d532f2e68abc9 100644 +index 30cbe3bdc7142769019765b03cc4fe1f9ba1ddb4..320422ff95773efa01e8205edcc5c6c9a84d5ecd 100644 --- a/src/main/java/org/bukkit/Server.java +++ b/src/main/java/org/bukkit/Server.java -@@ -2254,6 +2254,18 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi +@@ -2257,6 +2257,18 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi } // Paper end @@ -586,7 +586,7 @@ index 27084402cf0e46dcd171074629b7c4156e48aa44..a15d0ed710ff261f203d7e355e7d532f /** * Sends the component to the player * -@@ -2537,4 +2549,105 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi +@@ -2540,4 +2552,105 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi */ boolean isOwnedByCurrentRegion(@NotNull Entity entity); // Paper end - Folia region threading API @@ -1155,10 +1155,10 @@ index bc84b892cae5fe7019a3ad481e9da79956efa1fe..48eb5b00c460cccde29d327cef1d63fc + // Purpur end } diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index 8a1e39474af88188f2e1765731b57d349f0ee645..b76adf4370555b02b891a49f8019b4e152c002c2 100644 +index 6c327a07bf8a6aa11a2d7dad12b2830acc539484..d057743b8f6a463434c1f76398c7a98614b19d47 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java -@@ -3796,4 +3796,123 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM +@@ -3806,4 +3806,123 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM @Override Spigot spigot(); // Spigot end diff --git a/patches/api/0003-Plazma-Configurations.patch b/patches/api/0003-Plazma-Configurations.patch index 87bc6b6..f24fb4a 100644 --- a/patches/api/0003-Plazma-Configurations.patch +++ b/patches/api/0003-Plazma-Configurations.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Plazma Configurations diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java -index a15d0ed710ff261f203d7e355e7d532f2e68abc9..a1d870c6523b0b382d01ca27501a4c091eb795af 100644 +index 320422ff95773efa01e8205edcc5c6c9a84d5ecd..f1b39968788f90ffc785b9dd434b2a3671553a14 100644 --- a/src/main/java/org/bukkit/Server.java +++ b/src/main/java/org/bukkit/Server.java -@@ -2266,6 +2266,13 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi +@@ -2269,6 +2269,13 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi } // Purpur end diff --git a/patches/server/0001-Purpur-Server-Changes.patch b/patches/server/0001-Purpur-Server-Changes.patch index 71593f2..20479ee 100644 --- a/patches/server/0001-Purpur-Server-Changes.patch +++ b/patches/server/0001-Purpur-Server-Changes.patch @@ -1,6 +1,6 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: granny -Date: Sat, 4 May 2024 18:10:28 +0900 +Date: Mon, 6 May 2024 15:08:02 +0900 Subject: [PATCH] Purpur Server Changes PurpurMC @@ -982,10 +982,10 @@ index a024c697a65bbab27408da1d6a75e531d9719b47..e4fab82b369f2c2ea0d8c8acd814d061 // Paper end - Add drops to shear events continue; diff --git a/src/main/java/net/minecraft/network/Connection.java b/src/main/java/net/minecraft/network/Connection.java -index 58d28b6c1cc7da7d786f78308db971f7502ad844..9f274048be29ed54dd91983447beadf076cf7438 100644 +index 02833deaa2bb7e5abc655bc1bdbe15c4b3ac7119..71b021513f30376c7b09d83059deea89cc92385f 100644 --- a/src/main/java/net/minecraft/network/Connection.java +++ b/src/main/java/net/minecraft/network/Connection.java -@@ -607,11 +607,20 @@ public class Connection extends SimpleChannelInboundHandler> { +@@ -608,11 +608,20 @@ public class Connection extends SimpleChannelInboundHandler> { private static final int MAX_PER_TICK = io.papermc.paper.configuration.GlobalConfiguration.get().misc.maxJoinsPerTick; // Paper - Buffer joins to world private static int joinAttemptsThisTick; // Paper - Buffer joins to world private static int currTick; // Paper - Buffer joins to world @@ -3178,7 +3178,7 @@ index 8ac5d8ccf731100a1be690cb2ed1be82cadba8ed..8368c5ff929df9d32cdb95cc2da0e9f7 private boolean checkIfClosed(long time) { diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 8e67853a7a93fa736c147e8b2df537746dc8e94f..6d9242bc79526ebe4fdfe1f5d0ded429da2a9f95 100644 +index 5e9202bc7fc649764568b55d66ba0d684118c00c..cd6fe5e2dd8217708e27a8f2eed9c055f2707031 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -332,6 +332,20 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl @@ -3339,7 +3339,7 @@ index 8e67853a7a93fa736c147e8b2df537746dc8e94f..6d9242bc79526ebe4fdfe1f5d0ded429 org.bukkit.event.player.PlayerInteractEvent event = CraftEventFactory.callPlayerInteractEvent(this.player, Action.RIGHT_CLICK_AIR, itemstack, enumhand); cancelled = event.useItemInHand() == Event.Result.DENY; } else { -@@ -2464,7 +2520,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2466,7 +2522,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl public void handleCommand(String s) { // Paper - private -> public org.spigotmc.AsyncCatcher.catchOp("Command Dispatched Async: " + s); // Paper - Add async catcher @@ -3348,7 +3348,7 @@ index 8e67853a7a93fa736c147e8b2df537746dc8e94f..6d9242bc79526ebe4fdfe1f5d0ded429 if ( org.spigotmc.SpigotConfig.logCommands ) // Spigot this.LOGGER.info(this.player.getScoreboardName() + " issued server command: " + s); -@@ -2474,7 +2530,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2476,7 +2532,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl this.cserver.getPluginManager().callEvent(event); if (event.isCancelled()) { @@ -3357,7 +3357,7 @@ index 8e67853a7a93fa736c147e8b2df537746dc8e94f..6d9242bc79526ebe4fdfe1f5d0ded429 return; } -@@ -2487,7 +2543,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2489,7 +2545,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl java.util.logging.Logger.getLogger(ServerGamePacketListenerImpl.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); return; } finally { @@ -3366,7 +3366,7 @@ index 8e67853a7a93fa736c147e8b2df537746dc8e94f..6d9242bc79526ebe4fdfe1f5d0ded429 } } // CraftBukkit end -@@ -2774,6 +2830,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2776,6 +2832,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl AABB axisalignedbb = entity.getBoundingBox(); if (this.player.canInteractWithEntity(axisalignedbb, 1.0D)) { @@ -3374,7 +3374,7 @@ index 8e67853a7a93fa736c147e8b2df537746dc8e94f..6d9242bc79526ebe4fdfe1f5d0ded429 packet.dispatch(new ServerboundInteractPacket.Handler() { private void performInteraction(InteractionHand enumhand, ServerGamePacketListenerImpl.EntityInteraction playerconnection_a, PlayerInteractEntityEvent event) { // CraftBukkit ItemStack itemstack = ServerGamePacketListenerImpl.this.player.getItemInHand(enumhand); -@@ -2787,6 +2844,8 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2789,6 +2846,8 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl ServerGamePacketListenerImpl.this.cserver.getPluginManager().callEvent(event); @@ -8647,7 +8647,7 @@ index 6f22705072fecbe91196e4966fca2eeec060f120..ed2ae44f7cef5aed17d10cc8a7df0a22 } } diff --git a/src/main/java/net/minecraft/world/entity/animal/Wolf.java b/src/main/java/net/minecraft/world/entity/animal/Wolf.java -index b5ee82e5abfecc59e2362628f288b76881855f36..b12544d1280f39b6c365317a0f4965c8d65b6497 100644 +index cebbb7341f86b13dcbfc3a41cbe264e9d4b68d60..e1f6202df983be2510436538904a45beedbdc9c2 100644 --- a/src/main/java/net/minecraft/world/entity/animal/Wolf.java +++ b/src/main/java/net/minecraft/world/entity/animal/Wolf.java @@ -30,6 +30,8 @@ import net.minecraft.world.DifficultyInstance; @@ -8842,7 +8842,7 @@ index b5ee82e5abfecc59e2362628f288b76881855f36..b12544d1280f39b6c365317a0f4965c8 this.interestedAngleO = this.interestedAngle; if (this.isInterested()) { this.interestedAngle += (1.0F - this.interestedAngle) * 0.4F; -@@ -505,6 +629,19 @@ public class Wolf extends TamableAnimal implements NeutralMob, VariantHolder implements } - private static boolean isBlockedChestByBlock(BlockGetter world, BlockPos pos) { + public static boolean isBlockedChestByBlock(BlockGetter world, BlockPos pos) { + if (world instanceof Level && ((Level) world).purpurConfig.chestOpenWithBlockOnTop) return false; // Purpur BlockPos blockposition1 = pos.above(); @@ -17716,7 +17716,7 @@ index 7272d70c672b54dcf595beafd7a2ed33c96e35cb..d7f33c676bba279661583d908d3a58c8 ServerLevel worldserver = ((ServerLevel) world).getServer().getLevel(resourcekey); diff --git a/src/main/java/net/minecraft/world/level/block/EnderChestBlock.java b/src/main/java/net/minecraft/world/level/block/EnderChestBlock.java -index 5f9858ef8d0ec1a74d469ab4426eb1db068873fd..d7ef772444b301d0a3f167679027195e4150b064 100644 +index ca92d49ef2010ba00c623491671dcde8ebe697c1..bd65df4588584b8bb001e9dc3656a14e381a0b6d 100644 --- a/src/main/java/net/minecraft/world/level/block/EnderChestBlock.java +++ b/src/main/java/net/minecraft/world/level/block/EnderChestBlock.java @@ -91,7 +91,7 @@ public class EnderChestBlock extends AbstractChestBlock i @@ -18695,7 +18695,7 @@ index 7b263fab4f0014400b3b8e7e33db32f9a125f6ba..f7a6ab35c95ffda73f17843916ddb624 private int ticksInHive; diff --git a/src/main/java/net/minecraft/world/level/block/entity/BlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/BlockEntity.java -index 7963afff4b32a0e46be9bdeb413657718cfc14f5..5168e8e9ebb54b6c00acb7f2939262eb06a7426d 100644 +index 6349f2e0a5ba30d250f5ffe43771f325c0999a76..8dc1436fe78759cee5247cc28e8a18999e738a1b 100644 --- a/src/main/java/net/minecraft/world/level/block/entity/BlockEntity.java +++ b/src/main/java/net/minecraft/world/level/block/entity/BlockEntity.java @@ -87,6 +87,12 @@ public abstract class BlockEntity { @@ -18727,7 +18727,7 @@ index 7963afff4b32a0e46be9bdeb413657718cfc14f5..5168e8e9ebb54b6c00acb7f2939262eb protected void saveAdditional(CompoundTag nbt, HolderLookup.Provider registryLookup) {} public final CompoundTag saveWithFullMetadata(HolderLookup.Provider registryLookup) { -@@ -397,4 +412,16 @@ public abstract class BlockEntity { +@@ -407,4 +422,16 @@ public abstract class BlockEntity { T getOrDefault(DataComponentType type, T fallback); } @@ -19502,7 +19502,7 @@ index 9d93130f23addb18b97d7f5ec013faef17a74529..29d2fb87a65778926aea2cfc7a5b486c + // Purpur end - OfflinePlayer API } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 05e304f9fc8d0291fa779da589bd060ef4165b49..8d754bf77cb88d8ddf964f3221183e4097f06d13 100644 +index 57db399bc1d3b6b015740b059987bc8d9bcc3101..19937ffa2c93cb75ea8dba58dd5a8214adc035fa 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -268,7 +268,7 @@ import javax.annotation.Nullable; // Paper @@ -20097,10 +20097,10 @@ index 0ad16ee7b33582d214dab41eeee378d52c8e38ed..16bd1294c219f15ada653ef810bc2d74 + // Purpur end } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 0ff9bb5f5d312503ec4b3cf3bf8c532b09a8f08b..1c1159867c78a54984219a9d56a3838c630c58d8 100644 +index 5f896948d158651cd9837364759dbfbcce6b7d21..88948526f9acf4bb2157484b80891902fd843b02 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -565,10 +565,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -574,10 +574,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @Override public void setPlayerListName(String name) { @@ -20117,7 +20117,7 @@ index 0ff9bb5f5d312503ec4b3cf3bf8c532b09a8f08b..1c1159867c78a54984219a9d56a3838c if (this.getHandle().connection == null) return; // Paper - Updates are possible before the player has fully joined for (ServerPlayer player : (List) this.server.getHandle().players) { if (player.getBukkitEntity().canSee(this)) { -@@ -1429,6 +1434,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1438,6 +1443,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player { } if (entity.isVehicle() && !ignorePassengers) { // Paper - Teleport API @@ -20128,7 +20128,7 @@ index 0ff9bb5f5d312503ec4b3cf3bf8c532b09a8f08b..1c1159867c78a54984219a9d56a3838c return false; } -@@ -2727,6 +2736,28 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -2736,6 +2745,28 @@ public class CraftPlayer extends CraftHumanEntity implements Player { return this.getHandle().getAbilities().walkingSpeed * 2f; } @@ -20157,7 +20157,7 @@ index 0ff9bb5f5d312503ec4b3cf3bf8c532b09a8f08b..1c1159867c78a54984219a9d56a3838c private void validateSpeed(float value) { Preconditions.checkArgument(value <= 1f && value >= -1f, "Speed value (%s) need to be between -1f and 1f", value); } -@@ -3513,4 +3544,70 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -3522,4 +3553,70 @@ public class CraftPlayer extends CraftHumanEntity implements Player { public void setSendViewDistance(final int viewDistance) { this.getHandle().setSendViewDistance(viewDistance); } diff --git a/patches/server/0009-Port-SparklyPaper-patches.patch b/patches/server/0009-Port-SparklyPaper-patches.patch index bdf0fc2..3685265 100644 --- a/patches/server/0009-Port-SparklyPaper-patches.patch +++ b/patches/server/0009-Port-SparklyPaper-patches.patch @@ -826,10 +826,10 @@ index 0000000000000000000000000000000000000000..f8c26e26025d7a7b5489ed5b3274ba73 + +} diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 1c1159867c78a54984219a9d56a3838c630c58d8..1ef3c086ea3a8d45d51575b77bf9863b4b4cc191 100644 +index 88948526f9acf4bb2157484b80891902fd843b02..20acef32cabdb8f860088341248fe9960f04fbfd 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -967,7 +967,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -976,7 +976,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { public void sendMultiBlockChange(final Map blockChanges) { if (this.getHandle().connection == null) return; @@ -838,7 +838,7 @@ index 1c1159867c78a54984219a9d56a3838c630c58d8..1ef3c086ea3a8d45d51575b77bf9863b for (Map.Entry entry : blockChanges.entrySet()) { BlockData blockData = entry.getValue(); -@@ -2231,6 +2231,12 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -2240,6 +2240,12 @@ public class CraftPlayer extends CraftHumanEntity implements Player { return this.equals(entity) || entity.isVisibleByDefault() ^ this.invertedVisibilityEntities.containsKey(entity.getUniqueId()); // SPIGOT-7312: Can always see self }