Waterfall/BungeeCord-Patches/0039-Configurable-server-version-in-ping-response.patch

77 lines
2.9 KiB
Diff

From 6d435eb0afdd47cf90abb505cf4bf0a943ec73bd Mon Sep 17 00:00:00 2001
From: Troy Frew <fuzzy_bot@arenaga.me>
Date: Wed, 29 Jun 2016 13:56:57 -0500
Subject: [PATCH] Configurable server version in ping response
diff --git a/api/src/main/java/net/md_5/bungee/api/ProxyConfig.java b/api/src/main/java/net/md_5/bungee/api/ProxyConfig.java
index f04e2bf..a443614 100644
--- a/api/src/main/java/net/md_5/bungee/api/ProxyConfig.java
+++ b/api/src/main/java/net/md_5/bungee/api/ProxyConfig.java
@@ -168,6 +168,11 @@ public interface ProxyConfig
*/
boolean isLogServerListPing();
+ /**
+ * The supported versions
+ */
+ String getGameVersion();
+
// Throttling options
/**
diff --git a/proxy/src/main/java/io/github/waterfallmc/waterfall/conf/WaterfallConfiguration.java b/proxy/src/main/java/io/github/waterfallmc/waterfall/conf/WaterfallConfiguration.java
index 114961d..32f7b99 100644
--- a/proxy/src/main/java/io/github/waterfallmc/waterfall/conf/WaterfallConfiguration.java
+++ b/proxy/src/main/java/io/github/waterfallmc/waterfall/conf/WaterfallConfiguration.java
@@ -5,8 +5,11 @@ import lombok.*;
import java.io.File;
+import com.google.common.base.Joiner;
+
import net.md_5.bungee.conf.Configuration;
import net.md_5.bungee.conf.YamlConfig;
+import net.md_5.bungee.protocol.ProtocolConstants;
public class WaterfallConfiguration extends Configuration {
@@ -24,6 +27,13 @@ public class WaterfallConfiguration extends Configuration {
*/
private boolean logServerListPing = false;
+ /**
+ * The supported versions displayed to the client
+ * <p>Default is a comma seperated list of supported versions. For example 1.8.x, 1.9.x, 1.10.x</p>
+ */
+ @Getter
+ private String gameVersion;
+
/*
* Throttling options
* Helps prevent players from overloading the servers behind us
@@ -46,6 +56,7 @@ public class WaterfallConfiguration extends Configuration {
logServerListPing = config.getBoolean( "log_server_list_ping", logServerListPing );
// Throttling options
tabThrottle = config.getInt("throttling.tab_complete", tabThrottle);
+ gameVersion = config.getString("game_version", "").isEmpty() ? Joiner.on(", ").join(ProtocolConstants.SUPPORTED_VERSIONS) : config.getString("game_version", "");
}
@Override
diff --git a/proxy/src/main/java/net/md_5/bungee/BungeeCord.java b/proxy/src/main/java/net/md_5/bungee/BungeeCord.java
index 92ea9b5..b1b959d 100644
--- a/proxy/src/main/java/net/md_5/bungee/BungeeCord.java
+++ b/proxy/src/main/java/net/md_5/bungee/BungeeCord.java
@@ -608,7 +608,7 @@ public class BungeeCord extends ProxyServer
@Override
public String getGameVersion()
{
- return Joiner.on( ", " ).join( ProtocolConstants.SUPPORTED_VERSIONS );
+ return getConfig().getGameVersion(); // Waterfall
}
@Override
--
2.7.4 (Apple Git-66)