Răsfoiți Sursa

fix(btserver): query public servers with gamedig (#5177)

Barotrauma answers Steam A2S queries on its queryport when the server is
public. monitor now queries it with protocol-valve. Private servers
(IsPublic or public="false" in serversettings.xml) keep session-only
monitoring so they are not restarted by failed queries.
Daniel Gibbs 2 zile în urmă
părinte
comite
c37014cf36

+ 2 - 2
lgsm/config-default/config-lgsm/btserver/_default.cfg

@@ -168,8 +168,8 @@ stopmode="7"
 # 3: gamedig
 # 4: gsquery
 # 5: tcp
-querymode="1"
-querytype=""
+querymode="2"
+querytype="protocol-valve"
 
 ## Console type
 consoleverbose="yes"

+ 7 - 0
lgsm/modules/info_game.sh

@@ -1043,9 +1043,16 @@ fn_info_game_bt() {
 		if [ -z "${tickrate}" ]; then
 			fn_info_game_xml "tickrate" "/serversettings/@tickrate"
 		fi
+		fn_info_game_xml "public" "/serversettings/@IsPublic"
+		if [ -z "${public}" ]; then
+			fn_info_game_xml "public" "/serversettings/@public"
+		fi
 	fi
 	maxplayers="${maxplayers:-"0"}"
 	port="${port:-"0"}"
+	if [ "${public,,}" != "true" ]; then
+		querymode="1"
+	fi
 	queryport="${queryport:-"0"}"
 	servername="${servername:-"NOT SET"}"
 	serverpassword="${serverpassword:-"NOT SET"}"