From 688fbeadd1e5f25e0d8ab85c71d5827bcd5112a3 Mon Sep 17 00:00:00 2001 From: booky10 Date: Thu, 19 Oct 2023 20:30:38 +0200 Subject: [PATCH] Updated Upstream (Paper) Upstream has released updates that appear to apply and compile correctly Paper Changes: PaperMC/Paper@99b735c Make EntityLookup#get use read lock for entity maps PaperMC/Paper@a2ba452 Update paperweight to 1.5.8 (#9814) PaperMC/Paper@e87240b Fixes for loot tables (#9818) PaperMC/Paper@72f7945 Fix painting loosing art on face change (#9798) PaperMC/Paper@69ce927 Make setVelocity method of Fireballs change the travel direction to an arbitrary vector (#9815) PaperMC/Paper@7e5dd92 fix flat bedrock world config (#9728) PaperMC/Paper@5509610 Fix UnsafeValues#loadAdvancement (#9753) PaperMC/Paper@1a4778d Fix PlayerSwapHandItemsEvent NPE when a hand set to null (#9763) PaperMC/Paper@2f5bb7e add predicate recipe choice only for potion mixes (#9486) PaperMC/Paper@f613437 Fix CraftPlayerProfile#setId regression (#9822) PaperMC/Paper@3e9d2ac Don't call options events on login (#9834) PaperMC/Paper@e4d184f Replace bukkit Consumers with java consumers (#9836) PaperMC/Paper@3e1c5e3 Add BlockData setter for FallingBlock (#9829) PaperMC/Paper@852c1c2 Add additional tags to ItemMeta obfuscation filtering (#9665) PaperMC/Paper@44ee1cd fix recipe packet limiter (#9841) PaperMC/Paper@e57af7d sync netty version with vanilla (#9842) PaperMC/Paper@2f4281e Remove unused skyLightSources PaperMC/Paper@00331d9 Fix mushrooms not generating in swamps PaperMC/Paper@4b0bc74 Initialise default nibble arrays in ChunkAccess directly --- build-data/dev-imports.txt | 4 ++++ build.gradle.kts | 2 +- gradle.properties | 2 +- .../0001-Pufferfish-Server-Patches.patch | 19 +++++++++---------- patches/server/0002-Change-branding.patch | 6 +++--- ...adcast-item-pickup-to-picker-viewers.patch | 4 ++-- ...ng-spectate-event-not-doing-anything.patch | 4 ++-- ...15-Resend-more-data-on-locale-change.patch | 8 ++++++-- 8 files changed, 28 insertions(+), 21 deletions(-) diff --git a/build-data/dev-imports.txt b/build-data/dev-imports.txt index b818b96..1d9862a 100644 --- a/build-data/dev-imports.txt +++ b/build-data/dev-imports.txt @@ -8,3 +8,7 @@ # To import classes from the vanilla Minecraft jar use `minecraft` as the artifactId: # minecraft net.minecraft.world.level.entity.LevelEntityGetterAdapter # minecraft net/minecraft/world/level/entity/LevelEntityGetter.java +# To import minecraft data files, like the default chat type, use `mc_data` as the prefix: +# mc_data chat_type/chat.json +# mc_data dimension_type/overworld.json +# diff --git a/build.gradle.kts b/build.gradle.kts index 6e4e3c6..9d9f7af 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,7 +1,7 @@ plugins { id("java-library") id("com.github.johnrengelman.shadow") version "8.1.1" apply false - id("io.papermc.paperweight.patcher") version "1.5.7" + id("io.papermc.paperweight.patcher") version "1.5.8" } repositories { diff --git a/gradle.properties b/gradle.properties index 1e72baa..a33ecc3 100644 --- a/gradle.properties +++ b/gradle.properties @@ -3,7 +3,7 @@ version = 1.20.2-R0.1-SNAPSHOT mcVersion = 1.20.2 packageVersion = 1_20_R2 -paperRef = a702a083cdab79992a0117fecd3bc64d7d61f7fe +paperRef = 4b0bc74c90582f2d52d720c795228130545cd103 org.gradle.jvmargs = -Xmx2G diff --git a/patches/server/0001-Pufferfish-Server-Patches.patch b/patches/server/0001-Pufferfish-Server-Patches.patch index f609e90..0f21d88 100644 --- a/patches/server/0001-Pufferfish-Server-Patches.patch +++ b/patches/server/0001-Pufferfish-Server-Patches.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Pufferfish Server Patches diff --git a/build.gradle.kts b/build.gradle.kts -index c187641f0ec6444a10e0e1583e1697d07e8f0267..f0c14c8f2ce32c336672bac9503c479083b36c66 100644 +index a79461457ea19339f47572c70705d655ebc55276..0418b768e1a0012e34573dd0b16b8296d7a84f74 100644 --- a/build.gradle.kts +++ b/build.gradle.kts -@@ -52,6 +52,14 @@ dependencies { +@@ -52,12 +52,28 @@ dependencies { runtimeOnly("org.apache.maven.resolver:maven-resolver-connector-basic:1.7.3") runtimeOnly("org.apache.maven.resolver:maven-resolver-transport-http:1.7.3") @@ -23,7 +23,6 @@ index c187641f0ec6444a10e0e1583e1697d07e8f0267..f0c14c8f2ce32c336672bac9503c4790 testImplementation("io.github.classgraph:classgraph:4.8.47") // Paper - mob goal test testImplementation("org.junit.jupiter:junit-jupiter:5.10.0") testImplementation("org.hamcrest:hamcrest:2.2") -@@ -60,6 +68,14 @@ dependencies { } val craftbukkitPackageVersion = "1_20_R2" // Paper @@ -2308,7 +2307,7 @@ index 17610196db7a1c6feb2cf74a02479a8691aa323f..4cee5916ffff4add33cfd90c1957b70c this.tickIceAndSnow(flag, blockposition, chunk); } diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 76157319b79d7fefe38cb2cc10b2d79c12667e3d..f4f8e0c0ffb7c54ccdca06f3a6c2508a094c691f 100644 +index ba972d1661426d7e30f6f61bad3b9608e66ea721..912f5e102e69301135ea4196acdf7f0a3300c9de 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -1250,6 +1250,7 @@ public class ServerPlayer extends Player { @@ -2327,7 +2326,7 @@ index 76157319b79d7fefe38cb2cc10b2d79c12667e3d..f4f8e0c0ffb7c54ccdca06f3a6c2508a } @Override -@@ -2156,6 +2158,7 @@ public class ServerPlayer extends Player { +@@ -2161,6 +2163,7 @@ public class ServerPlayer extends Player { this.connection.send(new ClientboundSetCameraPacket(this.camera)); this.connection.resetPosition(); @@ -2335,7 +2334,7 @@ index 76157319b79d7fefe38cb2cc10b2d79c12667e3d..f4f8e0c0ffb7c54ccdca06f3a6c2508a } } -@@ -2594,6 +2597,7 @@ public class ServerPlayer extends Player { +@@ -2599,6 +2602,7 @@ public class ServerPlayer extends Player { public void forceSetPositionRotation(double x, double y, double z, float yaw, float pitch) { this.moveTo(x, y, z, yaw, pitch); this.connection.resetPosition(); @@ -2344,7 +2343,7 @@ index 76157319b79d7fefe38cb2cc10b2d79c12667e3d..f4f8e0c0ffb7c54ccdca06f3a6c2508a @Override diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 8bd243a8d5a4be54f907af2b02e96ea833cee62f..501cb7450cd28ca487c1522ada4a571e74d3258c 100644 +index 34fcdeb0f4039f1fc6c4c8c593cc615560af1ba2..ef6d8f787cba0db53270adedd923f9a47d435852 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -1118,6 +1118,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl @@ -2630,7 +2629,7 @@ index 73871f456a85bda1e51f54986d0e61fb629822e8..ce61b4e067c94742043bef71a252a15d return (EntityType) Registry.register(BuiltInRegistries.ENTITY_TYPE, id, (EntityType) type.build(id)); // CraftBukkit - decompile error } diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 77a1c7dfbaccc2e74da5c78ce4dfcd1717a7ac65..418296b14835cf48137b175790c5e62847364a63 100644 +index b95f88d5e5b4785ee063695fd81935636a0588d1..4535a37661743ede3bdca71fe6e66336028b3342 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -414,7 +414,7 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -3676,7 +3675,7 @@ index 081691f9710ff1115e4308f79ed49fbc38941193..6985e2a1ac1c56387c1ea6dfc0d27c08 @Override 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 4abec88caab4116cfa318f7b66c6b1a8346a7401..7edc6f1e642d01299117680edc79c67225c2053c 100644 +index 3e9758fa40bf93fe3d315cc66389193bd57bc393..b78476223637722efe12520d3c2e301603abd8a1 100644 --- a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java +++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java @@ -86,6 +86,18 @@ public class LevelChunk extends ChunkAccess { @@ -3698,7 +3697,7 @@ index 4abec88caab4116cfa318f7b66c6b1a8346a7401..7edc6f1e642d01299117680edc79c672 public LevelChunk(Level world, ChunkPos pos) { this(world, pos, UpgradeData.EMPTY, new LevelChunkTicks<>(), new LevelChunkTicks<>(), 0L, (LevelChunkSection[]) null, (LevelChunk.PostLoadProcessor) null, (BlendingData) null); } -@@ -113,6 +125,8 @@ public class LevelChunk extends ChunkAccess { +@@ -109,6 +121,8 @@ public class LevelChunk extends ChunkAccess { this.postLoad = entityLoader; this.blockTicks = blockTickScheduler; this.fluidTicks = fluidTickScheduler; diff --git a/patches/server/0002-Change-branding.patch b/patches/server/0002-Change-branding.patch index c658998..29889ce 100644 --- a/patches/server/0002-Change-branding.patch +++ b/patches/server/0002-Change-branding.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Change branding diff --git a/build.gradle.kts b/build.gradle.kts -index d95a1764475e320c2af7238d50d3b07ecb204f18..b279cb774d96aaf256f248d16828259dc7c67a83 100644 +index 0418b768e1a0012e34573dd0b16b8296d7a84f74..52e19808c3ec89bb8305409daf8f2d3f091e14e0 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -13,8 +13,10 @@ configurations.named(log4jPlugins.compileClasspathConfigurationName) { @@ -21,7 +21,7 @@ index d95a1764475e320c2af7238d50d3b07ecb204f18..b279cb774d96aaf256f248d16828259d // Paper start implementation("org.jline:jline-terminal-jansi:3.21.0") implementation("net.minecrell:terminalconsoleappender:1.3.0") -@@ -88,7 +90,7 @@ tasks.jar { +@@ -86,7 +88,7 @@ tasks.jar { attributes( "Main-Class" to "org.bukkit.craftbukkit.Main", "Implementation-Title" to "CraftBukkit", @@ -118,7 +118,7 @@ index 0c6785debb6da2d3bbc52780e835d79b3a98cccc..8a78276d990d78c9c4915fe21ea71b7a public SystemReport fillSystemReport(SystemReport details) { diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 0af1ffbc2f19c9b56dbef6c90c475b661fbca5a2..5f416c2205bec32561a4a8487a97045d6367307e 100644 +index d315b26b0350076cad1d9265f94d1d4712ac60a2..9bf15693c7e697913a3f0898d1332158dc552707 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -267,7 +267,7 @@ import javax.annotation.Nullable; // Paper diff --git a/patches/server/0008-Only-broadcast-item-pickup-to-picker-viewers.patch b/patches/server/0008-Only-broadcast-item-pickup-to-picker-viewers.patch index d38728c..47d8042 100644 --- a/patches/server/0008-Only-broadcast-item-pickup-to-picker-viewers.patch +++ b/patches/server/0008-Only-broadcast-item-pickup-to-picker-viewers.patch @@ -19,10 +19,10 @@ index 7eaee0d0dcbb420abb5c49ba0a465d90fe513551..641d652527025a4705c27300fc4e9960 if (playerchunkmap_entitytracker != null) { diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 418296b14835cf48137b175790c5e62847364a63..17a22b58c7968ce2c1f65ba5d82d0d3321ca9799 100644 +index 4535a37661743ede3bdca71fe6e66336028b3342..58a5f3f249836e4dab4de7ae1f4a16d173f28f46 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -3721,7 +3721,7 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3728,7 +3728,7 @@ public abstract class LivingEntity extends Entity implements Attackable { public void take(Entity item, int count) { if (!item.isRemoved() && !this.level().isClientSide && (item instanceof ItemEntity || item instanceof AbstractArrow || item instanceof ExperienceOrb)) { diff --git a/patches/server/0014-Fix-cancelling-spectate-event-not-doing-anything.patch b/patches/server/0014-Fix-cancelling-spectate-event-not-doing-anything.patch index 94096bb..55251c4 100644 --- a/patches/server/0014-Fix-cancelling-spectate-event-not-doing-anything.patch +++ b/patches/server/0014-Fix-cancelling-spectate-event-not-doing-anything.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Fix cancelling spectate event not doing anything diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 0b807c4de22bb2320ea9767d2accd7fb0bf80820..ea42ab876921255021430534fd8bf57a0931ba8c 100644 +index 9b1bd5eec8836cd90da6cfaff981197d042443ad..962e6d780d917b2e78d86f28034b7f348235737c 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -2135,11 +2135,13 @@ public class ServerPlayer extends Player { +@@ -2140,11 +2140,13 @@ public class ServerPlayer extends Player { if (this.camera == this) { com.destroystokyo.paper.event.player.PlayerStopSpectatingEntityEvent playerStopSpectatingEntityEvent = new com.destroystokyo.paper.event.player.PlayerStopSpectatingEntityEvent(this.getBukkitEntity(), entity1.getBukkitEntity()); if (!playerStopSpectatingEntityEvent.callEvent()) { diff --git a/patches/server/0015-Resend-more-data-on-locale-change.patch b/patches/server/0015-Resend-more-data-on-locale-change.patch index 411cc66..e2cda76 100644 --- a/patches/server/0015-Resend-more-data-on-locale-change.patch +++ b/patches/server/0015-Resend-more-data-on-locale-change.patch @@ -27,7 +27,7 @@ index e38e2e5a7ddba9c140f362021b6be0b0974f7cd1..44140141b3e727131cfdc9fae2d84732 this.player = owner; } diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index ea42ab876921255021430534fd8bf57a0931ba8c..5ff1dfd9e4e7559346da0cf22124778aa67641ee 100644 +index 962e6d780d917b2e78d86f28034b7f348235737c..4671abde1a64b84ff2564f4d6a228dac1de73412 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -322,6 +322,10 @@ public class ServerPlayer extends Player { @@ -41,7 +41,7 @@ index ea42ab876921255021430534fd8bf57a0931ba8c..5ff1dfd9e4e7559346da0cf22124778a public ServerPlayer(MinecraftServer server, ServerLevel world, GameProfile profile, ClientInformation clientOptions) { super(world, world.getSharedSpawnPos(), world.getSharedSpawnAngle(), profile); this.chatVisibility = ChatVisiblity.FULL; -@@ -2046,14 +2050,43 @@ public class ServerPlayer extends Player { +@@ -2046,10 +2050,39 @@ public class ServerPlayer extends Player { PlayerChangedMainHandEvent event = new PlayerChangedMainHandEvent(this.getBukkitEntity(), getMainArm() == HumanoidArm.LEFT ? MainHand.LEFT : MainHand.RIGHT); this.server.server.getPluginManager().callEvent(event); } @@ -80,6 +80,10 @@ index ea42ab876921255021430534fd8bf57a0931ba8c..5ff1dfd9e4e7559346da0cf22124778a + // CloudPlane end } // CraftBukkit end + // Paper start - don't call options events on login +@@ -2058,7 +2091,7 @@ public class ServerPlayer extends Player { + public void updateOptionsNoEvents(ClientInformation clientOptions) { + // Paper end this.language = clientOptions.language(); - this.adventure$locale = net.kyori.adventure.translation.Translator.parseLocale(this.language); // Paper + this.adventure$locale = adventure$locale; // Paper // CloudPlane - parsing moved up