forked from PaperMC/Waterfall
-
Notifications
You must be signed in to change notification settings - Fork 0
/
0028-Configurable-server-version-in-ping-response.patch
83 lines (72 loc) · 3.16 KB
/
0028-Configurable-server-version-in-ping-response.patch
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
From 412c2a4b879a3efbd8eab0cc66345f8a3146dcc0 Mon Sep 17 00:00:00 2001
From: Troy Frew <[email protected]>
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 edbae4ea..749059ab 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
@@ -214,6 +214,13 @@ public interface ProxyConfig
// Waterfall Options
//
+ /**
+ * The supported versions
+ *
+ * @return 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 91743f01..111404fb 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
@@ -1,12 +1,20 @@
package io.github.waterfallmc.waterfall.conf;
+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;
import java.io.File;
public class WaterfallConfiguration extends Configuration {
+ /**
+ * The supported versions displayed to the client
+ * <p>Default is a comma separated list of supported versions. For example 1.8.x, 1.9.x, 1.10.x</p>
+ */
+ private String gameVersion;
+
/*
* Throttling options
* Helps prevent players from overloading the servers behind us
@@ -26,11 +34,17 @@ public class WaterfallConfiguration extends Configuration {
super.load();
YamlConfig config = new YamlConfig(new File("waterfall.yml"));
config.load(false); // Load, but no permissions
+ gameVersion = config.getString("game_version", "").isEmpty() ? Joiner.on(", ").join(ProtocolConstants.SUPPORTED_VERSIONS) : config.getString("game_version", "");
// Throttling options
tabThrottle = config.getInt("throttling.tab_complete", tabThrottle);
disableModernTabLimiter = config.getBoolean("disable_modern_tab_limiter", disableModernTabLimiter);
}
+ @Override
+ public String getGameVersion() {
+ return gameVersion;
+ }
+
@Override
public int getTabThrottle() {
return tabThrottle;
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 99636fb4..1f6ba085 100644
--- a/proxy/src/main/java/net/md_5/bungee/BungeeCord.java
+++ b/proxy/src/main/java/net/md_5/bungee/BungeeCord.java
@@ -689,7 +689,7 @@ public class BungeeCord extends ProxyServer
@Override
public String getGameVersion()
{
- return ProtocolConstants.SUPPORTED_VERSIONS.get( 0 ) + "-" + ProtocolConstants.SUPPORTED_VERSIONS.get( ProtocolConstants.SUPPORTED_VERSIONS.size() - 1 );
+ return getConfig().getGameVersion(); // Waterfall
}
@Override
--
2.31.1