From ba74d31955a6c14d8d076c52696f1e5f91fc473d Mon Sep 17 00:00:00 2001 From: Noctiro <49872497+noctiro@users.noreply.github.com> Date: Fri, 3 Jul 2026 11:29:37 +0800 Subject: [PATCH 1/2] Always fire PlayerLinksSendEvent regardless of global links --- ...erverConfigurationPacketListenerImpl.java.patch | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/paper-server/patches/sources/net/minecraft/server/network/ServerConfigurationPacketListenerImpl.java.patch b/paper-server/patches/sources/net/minecraft/server/network/ServerConfigurationPacketListenerImpl.java.patch index cd94a1842b79..25ee21f07568 100644 --- a/paper-server/patches/sources/net/minecraft/server/network/ServerConfigurationPacketListenerImpl.java.patch +++ b/paper-server/patches/sources/net/minecraft/server/network/ServerConfigurationPacketListenerImpl.java.patch @@ -40,23 +40,25 @@ LOGGER.info("{} ({}) lost connection: {}", this.gameProfile.name(), this.gameProfile.id(), details.reason().getString()); if (this.prepareSpawnTask != null) { this.prepareSpawnTask.close(); -@@ -81,10 +_,15 @@ +@@ -81,11 +_,16 @@ } public void startConfiguration() { + new io.papermc.paper.event.connection.configuration.PlayerConnectionInitialConfigureEvent(this.paperConnection).callEvent(); // Paper this.send(new ClientboundCustomPayloadPacket(new BrandPayload(this.server.getServerModName()))); ServerLinks serverLinks = this.server.serverLinks(); - if (!serverLinks.isEmpty()) { +- if (!serverLinks.isEmpty()) { - this.send(new ClientboundServerLinksPacket(serverLinks.untrust())); -+ // Paper start -+ org.bukkit.craftbukkit.CraftServerLinks links = new org.bukkit.craftbukkit.CraftServerLinks(serverLinks); -+ new org.bukkit.event.player.PlayerLinksSendEvent(this.paperConnection, links).callEvent(); ++ // Paper start ++ org.bukkit.craftbukkit.CraftServerLinks links = new org.bukkit.craftbukkit.CraftServerLinks(serverLinks); ++ new org.bukkit.event.player.PlayerLinksSendEvent(this.paperConnection, links).callEvent(); ++ if (!links.getServerLinks().isEmpty()) { + this.send(new ClientboundServerLinksPacket(links.getServerLinks().untrust())); -+ // Paper end } ++ // Paper end LayeredRegistryAccess registries = this.server.registries(); + List knownPacks = this.server @@ -97,11 +_,12 @@ this.synchronizeRegistriesTask = new SynchronizeRegistriesTask(knownPacks, registries); this.configurationTasks.add(this.synchronizeRegistriesTask); From 499ba78c4a26fdc66fa09af5be3affe0a0d989a2 Mon Sep 17 00:00:00 2001 From: Warrior <50800980+Warriorrrr@users.noreply.github.com> Date: Sat, 11 Jul 2026 16:12:59 +0200 Subject: [PATCH 2/2] Move end comment one line up --- .../network/ServerConfigurationPacketListenerImpl.java.patch | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/paper-server/patches/sources/net/minecraft/server/network/ServerConfigurationPacketListenerImpl.java.patch b/paper-server/patches/sources/net/minecraft/server/network/ServerConfigurationPacketListenerImpl.java.patch index 25ee21f07568..6b52592305d4 100644 --- a/paper-server/patches/sources/net/minecraft/server/network/ServerConfigurationPacketListenerImpl.java.patch +++ b/paper-server/patches/sources/net/minecraft/server/network/ServerConfigurationPacketListenerImpl.java.patch @@ -40,7 +40,7 @@ LOGGER.info("{} ({}) lost connection: {}", this.gameProfile.name(), this.gameProfile.id(), details.reason().getString()); if (this.prepareSpawnTask != null) { this.prepareSpawnTask.close(); -@@ -81,11 +_,16 @@ +@@ -81,10 +_,15 @@ } public void startConfiguration() { @@ -54,11 +54,10 @@ + new org.bukkit.event.player.PlayerLinksSendEvent(this.paperConnection, links).callEvent(); + if (!links.getServerLinks().isEmpty()) { + this.send(new ClientboundServerLinksPacket(links.getServerLinks().untrust())); - } + // Paper end + } LayeredRegistryAccess registries = this.server.registries(); - List knownPacks = this.server @@ -97,11 +_,12 @@ this.synchronizeRegistriesTask = new SynchronizeRegistriesTask(knownPacks, registries); this.configurationTasks.add(this.synchronizeRegistriesTask);