Updated Upstream (Paper)

Upstream has released updates that appear to apply and compile correctly

Paper Changes:
PaperMC/Paper@9b1798d6 Simplify custom payload handling (#12347)
This commit is contained in:
granny
2025-03-27 17:01:24 -07:00
parent 75efb975ce
commit 9249a2ca46
4 changed files with 24 additions and 20 deletions

View File

@@ -2,7 +2,7 @@ group = org.purpurmc.purpur
version = 1.21.4-R0.1-SNAPSHOT
mcVersion = 1.21.4
paperCommit = c467df95a29e6c3d42b7e6f49513e924f9ba2ece
paperCommit = 9b1798d6438107fdf0d5939b79a8cf71f4d16e2c
org.gradle.configuration-cache = true
org.gradle.caching = true

View File

@@ -33,21 +33,25 @@
if (this.keepAlivePending && packet.getId() == this.keepAliveChallenge) {
int i = (int)(Util.getMillis() - this.keepAliveTime);
this.latency = (this.latency * 3 + i) / 4;
@@ -159,6 +_,13 @@
ServerGamePacketListenerImpl.LOGGER.error("Couldn't register custom payload", ex);
this.disconnect(Component.literal("Invalid payload REGISTER!"), org.bukkit.event.player.PlayerKickEvent.Cause.INVALID_PAYLOAD); // Paper - kick event cause
@@ -169,10 +_,17 @@
return;
}
+ // Purpur start - Purpur client support
+ } else if (identifier.equals(PURPUR_CLIENT)) {
+ try {
+ player.purpurClient = true;
+ } catch (Exception ignore) {
+ if (identifier.equals(PURPUR_CLIENT)) {
+ this.player.purpurClient = true;
+ }
+ // Purpur end - Purpur client support
} else if (identifier.equals(ServerCommonPacketListenerImpl.CUSTOM_UNREGISTER)) {
try {
String channels = payload.toString(com.google.common.base.Charsets.UTF_8);
@@ -238,6 +_,22 @@
+
if (identifier.equals(MINECRAFT_BRAND)) {
this.player.clientBrandName = new net.minecraft.network.FriendlyByteBuf(io.netty.buffer.Unpooled.wrappedBuffer(data)).readUtf(256);
}
+
this.cserver.getMessenger().dispatchIncomingMessage(this.player.getBukkitEntity(), identifier.toString(), data);
} catch (final Exception e) {
ServerGamePacketListenerImpl.LOGGER.error("Couldn't handle custom payload on channel {}", identifier, e);
@@ -242,6 +_,22 @@
// Paper start - give clients a longer time to respond to pings as per pre 1.12.2 timings
// This should effectively place the keepalive handling back to "as it was" before 1.12.2
final long elapsedTime = millis - this.keepAliveTime;

View File

@@ -29,10 +29,10 @@ index 71cc3b64ee27118badcdd6214cb1c6a120202f44..623e4c9985e04edeeac1cdf1d8f89be4
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 4dd2c2c824ffc7c6da02a3e740b4025459073295..db2cd4603c26bca59654f0a5225b18c446a7f612 100644
index 5bdfbb14db9f84647ae9b46b036e819ab0c334e2..d2010fc46215c37c3ef1d8a75cc39bce655d2c3f 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1441,6 +1441,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1436,6 +1436,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
// Paper start - Teleport passenger API
// Don't allow teleporting between worlds while keeping passengers
if (ignorePassengers && entity.isVehicle() && location.getWorld() != this.getWorld()) {
@@ -40,7 +40,7 @@ index 4dd2c2c824ffc7c6da02a3e740b4025459073295..db2cd4603c26bca59654f0a5225b18c4
return false;
}
@@ -1462,6 +1463,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1457,6 +1458,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
}
if (entity.isVehicle() && !ignorePassengers) { // Paper - Teleport API

View File

@@ -1,6 +1,6 @@
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -594,10 +_,15 @@
@@ -589,10 +_,15 @@
@Override
public void setPlayerListName(String name) {
@@ -17,7 +17,7 @@
if (this.getHandle().connection == null) return; // Paper - Updates are possible before the player has fully joined
for (ServerPlayer player : (List<ServerPlayer>) this.server.getHandle().players) {
if (player.getBukkitEntity().canSee(this)) {
@@ -2755,6 +_,28 @@
@@ -2750,6 +_,28 @@
return this.getHandle().getAbilities().walkingSpeed * 2f;
}
@@ -46,7 +46,7 @@
private void validateSpeed(float value) {
Preconditions.checkArgument(value <= 1f && value >= -1f, "Speed value (%s) need to be between -1f and 1f", value);
}
@@ -3624,4 +_,76 @@
@@ -3619,4 +_,76 @@
public void setSimplifyContainerDesyncCheck(final boolean simplifyContainerDesyncCheck) {
this.simplifyContainerDesyncCheck = simplifyContainerDesyncCheck;
}