From 8ef1580b1f5a1cd8dbd624b65fd4a8920ce52287 Mon Sep 17 00:00:00 2001 From: granny Date: Thu, 24 Aug 2023 12:27:22 -0700 Subject: [PATCH] Updated Upstream (Paper) Upstream has released updates that appear to apply and compile correctly Paper Changes: PaperMC/Paper@7a1863e Limit setBurnTime to valid short values (#9623) PaperMC/Paper@b8a0049 Fix exact choice recipe book clicks (#7822) PaperMC/Paper@b45ecc9 [ci skip] clear out test plugin PaperMC/Paper@0c8882f Add OfflinePlayer#isConnected (#9642) --- .../Upstream_Paper__build_.xml | 26 +++++++++++++++++++ ...stream_Paper__createReobfPaperclipJar_.xml | 6 ++--- gradle.properties | 2 +- .../api/0036-Extended-OfflinePlayer-API.patch | 4 +-- .../0001-Pufferfish-Server-Changes.patch | 8 +++--- .../server/0005-Purpur-client-support.patch | 4 +-- patches/server/0012-AFK-API.patch | 6 ++--- .../0018-Player-invulnerabilities.patch | 4 +-- ...0125-Add-EntityTeleportHinderedEvent.patch | 4 +-- .../0210-Extended-OfflinePlayer-API.patch | 8 +++--- ...-Fix-exact-choice-recipe-book-clicks.patch | 8 +++--- patches/server/0272-Debug-Marker-API.patch | 4 +-- .../server/0276-Add-death-screen-API.patch | 4 +-- 13 files changed, 57 insertions(+), 31 deletions(-) create mode 100644 .idea/runConfigurations/Upstream_Paper__build_.xml diff --git a/.idea/runConfigurations/Upstream_Paper__build_.xml b/.idea/runConfigurations/Upstream_Paper__build_.xml new file mode 100644 index 000000000..195cdef25 --- /dev/null +++ b/.idea/runConfigurations/Upstream_Paper__build_.xml @@ -0,0 +1,26 @@ + + + + + + + true + true + false + false + + + + diff --git a/.idea/runConfigurations/Upstream_Paper__createReobfPaperclipJar_.xml b/.idea/runConfigurations/Upstream_Paper__createReobfPaperclipJar_.xml index 3fdca7105..8911b6115 100644 --- a/.idea/runConfigurations/Upstream_Paper__createReobfPaperclipJar_.xml +++ b/.idea/runConfigurations/Upstream_Paper__createReobfPaperclipJar_.xml @@ -18,9 +18,9 @@ true true false - false + false - - \ No newline at end of file + diff --git a/gradle.properties b/gradle.properties index fb2bfd9ee..d90308912 100644 --- a/gradle.properties +++ b/gradle.properties @@ -2,7 +2,7 @@ group = org.purpurmc.purpur version = 1.20.1-R0.1-SNAPSHOT mcVersion = 1.20.1 -paperCommit = a751001ed1649860794a57ab818a5e51793aafe6 +paperCommit = 0c8882f7f9a39cadb6e3ca8b94bed7ab9b41c710 org.gradle.caching = true org.gradle.parallel = true diff --git a/patches/api/0036-Extended-OfflinePlayer-API.patch b/patches/api/0036-Extended-OfflinePlayer-API.patch index 5d7aeef21..467cdf300 100644 --- a/patches/api/0036-Extended-OfflinePlayer-API.patch +++ b/patches/api/0036-Extended-OfflinePlayer-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Extended OfflinePlayer API diff --git a/src/main/java/org/bukkit/OfflinePlayer.java b/src/main/java/org/bukkit/OfflinePlayer.java -index 9b84cb5abdf3db55cbc7ba19c8cd6955bf4fc5ec..5616d2acfa8180f71ae4123845fc126508f73b90 100644 +index bce07d84cafca677bb6fad78c21b82097f06430c..4ef0fa4f1ef72bb784674671473c6a322acadecc 100644 --- a/src/main/java/org/bukkit/OfflinePlayer.java +++ b/src/main/java/org/bukkit/OfflinePlayer.java -@@ -506,4 +506,114 @@ public interface OfflinePlayer extends ServerOperator, AnimalTamer, Configuratio +@@ -522,4 +522,114 @@ public interface OfflinePlayer extends ServerOperator, AnimalTamer, Configuratio */ @Nullable public Location getLastDeathLocation(); diff --git a/patches/server/0001-Pufferfish-Server-Changes.patch b/patches/server/0001-Pufferfish-Server-Changes.patch index e6f5854a4..7bc152f7e 100644 --- a/patches/server/0001-Pufferfish-Server-Changes.patch +++ b/patches/server/0001-Pufferfish-Server-Changes.patch @@ -2759,10 +2759,10 @@ index ca1edc083847b47bb450b291723aca778a5912dc..dc695c518beed770e787d61bcda7e1cd } } diff --git a/src/main/java/net/minecraft/world/item/crafting/ShapelessRecipe.java b/src/main/java/net/minecraft/world/item/crafting/ShapelessRecipe.java -index 7f174bb89bf4d700a5ae1b65d8abd4f5b1e7b5ed..e16bde81442e2bedeb2a5b1b77b008c418f05b1c 100644 +index 2e60bdc44c33d434bfd9ca5bf8f75de799c6768c..565318c2afaa1661ed9963453a6354dff499f47a 100644 --- a/src/main/java/net/minecraft/world/item/crafting/ShapelessRecipe.java +++ b/src/main/java/net/minecraft/world/item/crafting/ShapelessRecipe.java -@@ -27,8 +27,13 @@ public class ShapelessRecipe implements CraftingRecipe { +@@ -27,8 +27,13 @@ public class ShapelessRecipe extends io.papermc.paper.inventory.recipe.RecipeBoo final CraftingBookCategory category; final ItemStack result; final NonNullList ingredients; @@ -2776,7 +2776,7 @@ index 7f174bb89bf4d700a5ae1b65d8abd4f5b1e7b5ed..e16bde81442e2bedeb2a5b1b77b008c4 this.id = id; this.group = group; this.category = category; -@@ -82,6 +87,28 @@ public class ShapelessRecipe implements CraftingRecipe { +@@ -83,6 +88,28 @@ public class ShapelessRecipe extends io.papermc.paper.inventory.recipe.RecipeBoo } public boolean matches(CraftingContainer inventory, Level world) { @@ -2803,8 +2803,8 @@ index 7f174bb89bf4d700a5ae1b65d8abd4f5b1e7b5ed..e16bde81442e2bedeb2a5b1b77b008c4 + // Pufferfish end + StackedContents autorecipestackmanager = new StackedContents(); + autorecipestackmanager.initialize(this); // Paper - better exact choice recipes int i = 0; - diff --git a/src/main/java/net/minecraft/world/level/BlockGetter.java b/src/main/java/net/minecraft/world/level/BlockGetter.java index 0e8746759752b692668886370181aa5db1fd0bb0..58e5ce2afabf480f5dfd9adf43f8fc12666861c6 100644 --- a/src/main/java/net/minecraft/world/level/BlockGetter.java diff --git a/patches/server/0005-Purpur-client-support.patch b/patches/server/0005-Purpur-client-support.patch index 81625b5f4..5fe9d13fd 100644 --- a/patches/server/0005-Purpur-client-support.patch +++ b/patches/server/0005-Purpur-client-support.patch @@ -43,10 +43,10 @@ index 776c7df81d2b71a5610fe90475f4e8044850beab..63eac8b250b8bae40de432a0ffd47921 try { byte[] data = new byte[packet.data.readableBytes()]; diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 472705e92cef5802f377637d8ea5c8001d7a185c..b7b1f6822480edf37f954e0d1e8e8f97c165d9c6 100644 +index 4e6fea7cf11b1e29ae7c7098a6f5d06bb5f93cc2..7f7375c0a3e680ef60fb9fc6157b72bb0812d1c3 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -3260,4 +3260,11 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -3267,4 +3267,11 @@ public class CraftPlayer extends CraftHumanEntity implements Player { return this.spigot; } // Spigot end diff --git a/patches/server/0012-AFK-API.patch b/patches/server/0012-AFK-API.patch index ce6db9033..8f682c13a 100644 --- a/patches/server/0012-AFK-API.patch +++ b/patches/server/0012-AFK-API.patch @@ -224,10 +224,10 @@ index 3b959f42d958bf0f426853aee56753d6c455fcdb..d17abb283ea818244df0379d6b57fc63 if (range < 0.0D || d < range * range) { return true; diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index b7b1f6822480edf37f954e0d1e8e8f97c165d9c6..ec2d2a63c9534ae9c3275822906da3564290c262 100644 +index 7f7375c0a3e680ef60fb9fc6157b72bb0812d1c3..d0986b7b130f790c21d2324d0014d258bc36c527 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -510,10 +510,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -517,10 +517,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @Override public void setPlayerListName(String name) { @@ -244,7 +244,7 @@ index b7b1f6822480edf37f954e0d1e8e8f97c165d9c6..ec2d2a63c9534ae9c3275822906da356 for (ServerPlayer player : (List) server.getHandle().players) { if (player.getBukkitEntity().canSee(this)) { player.connection.send(new ClientboundPlayerInfoUpdatePacket(ClientboundPlayerInfoUpdatePacket.Action.UPDATE_DISPLAY_NAME, this.getHandle())); -@@ -3266,5 +3271,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -3273,5 +3278,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { public boolean usesPurpurClient() { return getHandle().purpurClient; } diff --git a/patches/server/0018-Player-invulnerabilities.patch b/patches/server/0018-Player-invulnerabilities.patch index 37e224caa..264908477 100644 --- a/patches/server/0018-Player-invulnerabilities.patch +++ b/patches/server/0018-Player-invulnerabilities.patch @@ -121,10 +121,10 @@ index 42801a26b9d5f8af2d0ce1fef864bb031cfa8965..2cac536ebbc21a23a2219c630fe477bf return entityplayer1; } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index ec2d2a63c9534ae9c3275822906da3564290c262..9fb883b77c65ecc967d7f04c3adbd2e6b4465e55 100644 +index d0986b7b130f790c21d2324d0014d258bc36c527..c6ede1fac5c68f2912a9c401765bd10b09afe7f9 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -3286,5 +3286,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -3293,5 +3293,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { public void resetIdleTimer() { getHandle().resetLastActionTime(); } diff --git a/patches/server/0125-Add-EntityTeleportHinderedEvent.patch b/patches/server/0125-Add-EntityTeleportHinderedEvent.patch index 1c5b200a1..73ec2dd3d 100644 --- a/patches/server/0125-Add-EntityTeleportHinderedEvent.patch +++ b/patches/server/0125-Add-EntityTeleportHinderedEvent.patch @@ -89,10 +89,10 @@ index 912d9e4b3168cf89bd263ba63e049a791beefc90..283836981f5ed94dfc8999c3c5450213 } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 9fb883b77c65ecc967d7f04c3adbd2e6b4465e55..a5b91ade9889ae8d90825c0ec1d3da085dfef966 100644 +index c6ede1fac5c68f2912a9c401765bd10b09afe7f9..5965b4e91e63a3d3b64e5193399ae3b6d774120b 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -1348,6 +1348,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1355,6 +1355,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player { } if (entity.isVehicle() && !ignorePassengers) { // Paper - Teleport API diff --git a/patches/server/0210-Extended-OfflinePlayer-API.patch b/patches/server/0210-Extended-OfflinePlayer-API.patch index 91e192648..97ca4ef26 100644 --- a/patches/server/0210-Extended-OfflinePlayer-API.patch +++ b/patches/server/0210-Extended-OfflinePlayer-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Extended OfflinePlayer API diff --git a/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java b/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java -index c6129dc565b8f874b73e2fefcabd4be1c221fd73..07050f97621c0cb68b48bf39fb9c90673f7caf64 100644 +index c1b874cd6e0498fce3cd53fdbaca30d290e004d7..23087d511b609693f0bb06cbaac8b6cf8d0defe2 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftOfflinePlayer.java -@@ -560,4 +560,213 @@ public class CraftOfflinePlayer implements OfflinePlayer, ConfigurationSerializa +@@ -567,4 +567,213 @@ public class CraftOfflinePlayer implements OfflinePlayer, ConfigurationSerializa manager.save(); } } @@ -223,10 +223,10 @@ index c6129dc565b8f874b73e2fefcabd4be1c221fd73..07050f97621c0cb68b48bf39fb9c9067 + // Purpur end - OfflinePlayer API } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index a5b91ade9889ae8d90825c0ec1d3da085dfef966..88ddea147bb9e0f5e3805dee8f3c112496328de1 100644 +index 5965b4e91e63a3d3b64e5193399ae3b6d774120b..5baf36d8d65574f3e57de0937a949cff03435d30 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -2498,6 +2498,28 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -2505,6 +2505,28 @@ public class CraftPlayer extends CraftHumanEntity implements Player { return this.getHandle().getAbilities().walkingSpeed * 2f; } diff --git a/patches/server/0266-PaperPR-7822-Fix-exact-choice-recipe-book-clicks.patch b/patches/server/0266-PaperPR-7822-Fix-exact-choice-recipe-book-clicks.patch index 35bc0a7a6..98df8a3c0 100644 --- a/patches/server/0266-PaperPR-7822-Fix-exact-choice-recipe-book-clicks.patch +++ b/patches/server/0266-PaperPR-7822-Fix-exact-choice-recipe-book-clicks.patch @@ -5,12 +5,12 @@ Subject: [PATCH] PaperPR #7822 Fix exact choice recipe book clicks diff --git a/src/main/java/net/minecraft/world/entity/player/StackedContents.java b/src/main/java/net/minecraft/world/entity/player/StackedContents.java -index 574ebb3a2fcd0e4e426a8a7ee88d722ed3b9c3f5..862972afa333422592a25b854cec191e02c10734 100644 +index 68d272e98f9e54c9b150c75c27a9ae545be842f6..63fc6074082b579c3f88316008cbeb2a2d7f5841 100644 --- a/src/main/java/net/minecraft/world/entity/player/StackedContents.java +++ b/src/main/java/net/minecraft/world/entity/player/StackedContents.java -@@ -37,8 +37,62 @@ public class StackedContents { - int i = getStackingIndex(stack); +@@ -40,8 +40,62 @@ public class StackedContents { int j = Math.min(maxCount, stack.getCount()); + if (this.extrasMap != null && stack.hasTag() && this.extrasMap.accountStack(stack, j)) return; // Paper - if an exact ingredient, don't include it this.put(i, j); + // PaperPR start + if (stack.hasTag()) { @@ -71,7 +71,7 @@ index 574ebb3a2fcd0e4e426a8a7ee88d722ed3b9c3f5..862972afa333422592a25b854cec191e } public static int getStackingIndex(ItemStack stack) { -@@ -80,6 +134,12 @@ public class StackedContents { +@@ -83,6 +137,12 @@ public class StackedContents { } public static ItemStack fromStackingIndex(int itemId) { diff --git a/patches/server/0272-Debug-Marker-API.patch b/patches/server/0272-Debug-Marker-API.patch index a9af6a943..5adeb3b9e 100644 --- a/patches/server/0272-Debug-Marker-API.patch +++ b/patches/server/0272-Debug-Marker-API.patch @@ -99,10 +99,10 @@ index a2e852adf47261b1b2eb9734cc90f4676ed58126..1392e483c363e25d1f16465d876cb7d7 @Override diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 88ddea147bb9e0f5e3805dee8f3c112496328de1..0e6218ae64d5fd1f185bcff4a21ebaadea9eb213 100644 +index 5baf36d8d65574f3e57de0937a949cff03435d30..beae58414b27d2a33bb6507ae8ab2104fde2cc0e 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -3327,5 +3327,48 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -3334,5 +3334,48 @@ public class CraftPlayer extends CraftHumanEntity implements Player { public void setSpawnInvulnerableTicks(int spawnInvulnerableTime) { getHandle().spawnInvulnerableTime = spawnInvulnerableTime; } diff --git a/patches/server/0276-Add-death-screen-API.patch b/patches/server/0276-Add-death-screen-API.patch index 150f93d91..3e78bfa92 100644 --- a/patches/server/0276-Add-death-screen-API.patch +++ b/patches/server/0276-Add-death-screen-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add death screen API diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 0e6218ae64d5fd1f185bcff4a21ebaadea9eb213..018cf3cd424ac85e8d84179bc05ab241f0a00827 100644 +index beae58414b27d2a33bb6507ae8ab2104fde2cc0e..668d825a2469706e4de11629a0b41877de700ca6 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -3370,5 +3370,11 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -3377,5 +3377,11 @@ public class CraftPlayer extends CraftHumanEntity implements Player { if (this.getHandle().connection == null) return; this.getHandle().connection.send(new net.minecraft.network.protocol.game.ClientboundCustomPayloadPacket(ClientboundCustomPayloadPacket.DEBUG_GAME_TEST_CLEAR, new FriendlyByteBuf(io.netty.buffer.Unpooled.buffer()))); }