Skip to content

Commit 9249a2c

Browse files
committed
Updated Upstream (Paper)
Upstream has released updates that appear to apply and compile correctly Paper Changes: PaperMC/Paper@9b1798d6 Simplify custom payload handling (#12347)
1 parent 75efb97 commit 9249a2c

File tree

4 files changed

+24
-20
lines changed

4 files changed

+24
-20
lines changed

gradle.properties

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ group = org.purpurmc.purpur
22
version = 1.21.4-R0.1-SNAPSHOT
33

44
mcVersion = 1.21.4
5-
paperCommit = c467df95a29e6c3d42b7e6f49513e924f9ba2ece
5+
paperCommit = 9b1798d6438107fdf0d5939b79a8cf71f4d16e2c
66

77
org.gradle.configuration-cache = true
88
org.gradle.caching = true

purpur-server/minecraft-patches/sources/net/minecraft/server/network/ServerCommonPacketListenerImpl.java.patch

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

purpur-server/paper-patches/features/0005-Add-EntityTeleportHinderedEvent.patch

+3-3
Original file line numberDiff line numberDiff line change
@@ -29,18 +29,18 @@ index 71cc3b64ee27118badcdd6214cb1c6a120202f44..623e4c9985e04edeeac1cdf1d8f89be4
2929
}
3030

3131
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
32-
index 4dd2c2c824ffc7c6da02a3e740b4025459073295..db2cd4603c26bca59654f0a5225b18c446a7f612 100644
32+
index 5bdfbb14db9f84647ae9b46b036e819ab0c334e2..d2010fc46215c37c3ef1d8a75cc39bce655d2c3f 100644
3333
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
3434
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
35-
@@ -1441,6 +1441,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
35+
@@ -1436,6 +1436,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
3636
// Paper start - Teleport passenger API
3737
// Don't allow teleporting between worlds while keeping passengers
3838
if (ignorePassengers && entity.isVehicle() && location.getWorld() != this.getWorld()) {
3939
+ if (!new org.purpurmc.purpur.event.entity.EntityTeleportHinderedEvent(entity.getBukkitEntity(), org.purpurmc.purpur.event.entity.EntityTeleportHinderedEvent.Reason.IS_VEHICLE, cause).callEvent()) // Purpur - Add EntityTeleportHinderedEvent
4040
return false;
4141
}
4242

43-
@@ -1462,6 +1463,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
43+
@@ -1457,6 +1458,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
4444
}
4545

4646
if (entity.isVehicle() && !ignorePassengers) { // Paper - Teleport API

purpur-server/paper-patches/files/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java.patch

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
22
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
3-
@@ -594,10 +_,15 @@
3+
@@ -589,10 +_,15 @@
44

55
@Override
66
public void setPlayerListName(String name) {
@@ -17,7 +17,7 @@
1717
if (this.getHandle().connection == null) return; // Paper - Updates are possible before the player has fully joined
1818
for (ServerPlayer player : (List<ServerPlayer>) this.server.getHandle().players) {
1919
if (player.getBukkitEntity().canSee(this)) {
20-
@@ -2755,6 +_,28 @@
20+
@@ -2750,6 +_,28 @@
2121
return this.getHandle().getAbilities().walkingSpeed * 2f;
2222
}
2323

@@ -46,7 +46,7 @@
4646
private void validateSpeed(float value) {
4747
Preconditions.checkArgument(value <= 1f && value >= -1f, "Speed value (%s) need to be between -1f and 1f", value);
4848
}
49-
@@ -3624,4 +_,76 @@
49+
@@ -3619,4 +_,76 @@
5050
public void setSimplifyContainerDesyncCheck(final boolean simplifyContainerDesyncCheck) {
5151
this.simplifyContainerDesyncCheck = simplifyContainerDesyncCheck;
5252
}

0 commit comments

Comments
 (0)