From cbd1bbdfd0c027e999dae7e2e2f18b4efaf382b4 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 31 Jan 2026 20:30:14 +0000 Subject: [PATCH 1/3] Initial plan From 1e94b0eb688cfc21101df6934fd356da30ad31b8 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 31 Jan 2026 20:33:42 +0000 Subject: [PATCH 2/3] Add support for servers configuration in ServerRegistrationListener Co-authored-by: RobotHanzo <36107150+RobotHanzo@users.noreply.github.com> --- .../listener/ServerRegistrationListener.java | 24 ++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/velocity/src/main/java/com/convallyria/forcepack/velocity/listener/ServerRegistrationListener.java b/velocity/src/main/java/com/convallyria/forcepack/velocity/listener/ServerRegistrationListener.java index 3610ec7..2c5d036 100644 --- a/velocity/src/main/java/com/convallyria/forcepack/velocity/listener/ServerRegistrationListener.java +++ b/velocity/src/main/java/com/convallyria/forcepack/velocity/listener/ServerRegistrationListener.java @@ -21,9 +21,6 @@ public ServerRegistrationListener(ForcePackVelocity plugin) { public void onServerRegistered(ServerRegisteredEvent event) { RegisteredServer registeredServer = event.registeredServer(); String serverName = registeredServer.getServerInfo().getName(); - VelocityConfig groups = plugin.getConfig().getConfig("groups"); - - if (groups == null) return; // Check if we already have packs for this server boolean hasPack = plugin.getResourcePacks().stream() @@ -31,6 +28,27 @@ public void onServerRegistered(ServerRegisteredEvent event) { if (hasPack) return; + // Check the "servers" configuration first + VelocityConfig servers = plugin.getConfig().getConfig("servers"); + if (servers != null) { + VelocityConfig serverConfig = servers.getConfig(serverName); + if (serverConfig != null) { + plugin.log("New server %s matches servers configuration, adding resource packs...", serverName); + + final Map configs = plugin.getPackConfigs(serverConfig, serverName); + + configs.forEach((id, config) -> { + if (config == null) return; + plugin.registerResourcePackForServer(config, id, serverName, "server", plugin.getConfig().getBoolean("verify-resource-packs"), serverName, null); + }); + return; + } + } + + // Check the "groups" configuration + VelocityConfig groups = plugin.getConfig().getConfig("groups"); + if (groups == null) return; + for (String groupName : groups.getKeys()) { VelocityConfig groupConfig = groups.getConfig(groupName); List servers = groupConfig.getStringList("servers"); From 0c44b63da5c02c23522d610600e79bbd572b81ee Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 31 Jan 2026 20:35:58 +0000 Subject: [PATCH 3/3] Add clarifying comment for duplicate serverName parameter Co-authored-by: RobotHanzo <36107150+RobotHanzo@users.noreply.github.com> --- .../forcepack/velocity/listener/ServerRegistrationListener.java | 1 + 1 file changed, 1 insertion(+) diff --git a/velocity/src/main/java/com/convallyria/forcepack/velocity/listener/ServerRegistrationListener.java b/velocity/src/main/java/com/convallyria/forcepack/velocity/listener/ServerRegistrationListener.java index 2c5d036..c55e573 100644 --- a/velocity/src/main/java/com/convallyria/forcepack/velocity/listener/ServerRegistrationListener.java +++ b/velocity/src/main/java/com/convallyria/forcepack/velocity/listener/ServerRegistrationListener.java @@ -39,6 +39,7 @@ public void onServerRegistered(ServerRegisteredEvent event) { configs.forEach((id, config) -> { if (config == null) return; + // serverName is used both as the config name and target server name plugin.registerResourcePackForServer(config, id, serverName, "server", plugin.getConfig().getBoolean("verify-resource-packs"), serverName, null); }); return;