info_config.sh 53 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212
  1. #!/bin/bash
  2. # LinuxGSM info_config.sh function
  3. # Author: Daniel Gibbs
  4. # Contributor: UltimateByte
  5. # Website: https://linuxgsm.com
  6. # Description: Gets specific details from config files.
  7. local function_selfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
  8. ## Examples of filtering to get info from config files
  9. # sed 's/foo//g' - remove foo
  10. # tr -cd '[:digit:]' leave only digits
  11. # tr -d '=\"; ' remove selected characters =\";
  12. # grep -v "foo" filter out lines that contain foo
  13. # cut -f1 -d "/" remove everything after /
  14. fn_info_config_justcause2(){
  15. if [ ! -f "${servercfgfullpath}" ]; then
  16. servername="${unavailable}"
  17. serverpassword="${unavailable}"
  18. maxplayers="${zero}"
  19. port="${zero}"
  20. queryport="${zero}"
  21. else
  22. servername=$(grep "Name" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^--/d' -e 's/Name//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  23. serverdescription=$(grep "Description" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^--/d' -e 's/Description//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  24. serverpassword=$(grep "Password" "${servercfgfullpath}" | sed -e 's/^ *//g' -e '/^--/d' -e 's/Password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  25. maxplayers=$(grep "MaxPlayers" "${servercfgfullpath}" | grep -v "\--" | tr -cd '[:digit:]')
  26. port=$(grep "BindPort" "${servercfgfullpath}" | grep -v "\--" | tr -cd '[:digit:]')
  27. queryport="${port}"
  28. ip=$(grep "BindIP" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^--/d' -e 's/BindIP//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  29. ipsetinconfig=1
  30. ipinconfigvar="BindIP"
  31. # Not Set
  32. servername=${servername:-"NOT SET"}
  33. serverpassword=${serverpassword:-"NOT SET"}
  34. maxplayers=${maxplayers:-"0"}
  35. port=${port:-"0"}
  36. queryport=${queryport:-"0"}
  37. fi
  38. }
  39. fn_info_config_justcause3(){
  40. if [ ! -f "${servercfgfullpath}" ]; then
  41. servername="${unavailable}"
  42. serverdescription="${unavailable}"
  43. serverpassword="${unavailable}"
  44. maxplayers="${zero}"
  45. port="${zero}"
  46. queryPort="${zero}"
  47. steamport="${zero}"
  48. tickrate="${zero}"
  49. else
  50. servername=$(grep "name" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/name//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  51. serverdescription=$(grep "description" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/description//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  52. serverpassword=$(grep "password" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  53. maxplayers=$(grep "\"maxPlayers\"" "${servercfgfullpath}" | tr -cd '[:digit:]')
  54. port=$(grep "\"port\"" "${servercfgfullpath}" | tr -cd '[:digit:]')
  55. queryport=$(grep "\"queryPort\"" "${servercfgfullpath}" | tr -cd '[:digit:]')
  56. steamport=$(grep "\"steamPort\"" "${servercfgfullpath}" | tr -cd '[:digit:]')
  57. tickrate=$(grep "\"maxTickRate\"" "${servercfgfullpath}" | tr -cd '[:digit:]')
  58. ip=$(grep "host" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/host//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  59. ipsetinconfig=1
  60. ipinconfigvar="host"
  61. # Not Set
  62. servername=${servername:-"NOT SET"}
  63. serverdescription=${serverdescription:-"NOT SET"}
  64. serverpassword=${serverpassword:-"NOT SET"}
  65. maxplayers=${maxplayers=:-"0"}
  66. port=${port=:-"0"}
  67. queryport=${queryport=:-"0"}
  68. steamport=${steamport=:-"0"}
  69. tickrate=${tickrate=:-"0"}
  70. fi
  71. }
  72. fn_info_config_ark(){
  73. if [ ! -f "${servercfgfullpath}" ]; then
  74. servername="${unavailable}"
  75. else
  76. servername=$(grep "SessionName" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^--/d' -e 's/SessionName//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  77. # Not Set
  78. servername=${servername:-"NOT SET"}
  79. fi
  80. }
  81. fn_info_config_ballistic_overkill(){
  82. if [ ! -f "${servercfgfullpath}" ]; then
  83. servername="${unavailable}"
  84. serverpassword="${unavailable}"
  85. port="${zero}"
  86. queryport="${zero}"
  87. maxplayers="${unavailable}"
  88. else
  89. servername=$(grep "ServerName=" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/ServerName//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  90. serverpassword=$(grep "Password=" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/Password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  91. port=$(grep "ServerPort=" "${servercfgfullpath}" | tr -cd '[:digit:]')
  92. queryport=$((port + 1))
  93. maxplayers=$(grep "MaxPlayers=" "${servercfgfullpath}" | tr -cd '[:digit:]')
  94. # Not Set
  95. servername=${servername:-"NOT SET"}
  96. serverpassword=${serverpassword:-"NOT SET"}
  97. port=${port:-"0"}
  98. queryport=${queryport:-"0"}
  99. maxplayers=${maxplayers:-"NOT SET"}
  100. fi
  101. }
  102. fn_info_config_battalion1944(){
  103. if [ ! -f "${servercfgfullpath}" ]; then
  104. servername="${unavailable}"
  105. serverpassword="${unavailable}"
  106. else
  107. servername=$(grep "ServerName" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^--/d' -e 's/ServerName//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  108. serverpassword=$(grep "Password" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^--/d' -e 's/Password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  109. # Not Set
  110. servername=${servername:-"NOT SET"}
  111. serverpassword=${serverpassword:-"NOT SET"}
  112. fi
  113. }
  114. fn_info_config_bf1942(){
  115. if [ ! -f "${servercfgfullpath}" ]; then
  116. servername="${unavailable}"
  117. serverpassword="${unavailable}"
  118. maxplayers="${zero}"
  119. port="${zero}"
  120. queryport="${zero}"
  121. else
  122. servername=$(grep "game.serverName " "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^--/d' -e 's/game.serverName //g' | tr -d '=\";,:' | xargs)
  123. serverpassword=$(grep "game.serverPassword" "${servercfgfullpath}" | sed -e 's/^ *//g' -e '/^--/d' -e 's/game.serverPassword//g' | tr -d '=\";,:' | xargs)
  124. maxplayers=$(grep "game.serverMaxPlayers" "${servercfgfullpath}" | grep -v "\--" | tr -cd '[:digit:]')
  125. port=$(grep "game.serverPort" "${servercfgfullpath}" | grep -v "\--" | tr -cd '[:digit:]')
  126. queryport="22000"
  127. ip=$(grep "game.serverIP" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^--/d' -e 's/game.serverIP//g' | tr -d '=\";,:' | xargs)
  128. ipsetinconfig=1
  129. ipinconfigvar="game.serverIP"
  130. # Not Set
  131. servername=${servername:-"NOT SET"}
  132. serverpassword=${serverpassword:-"NOT SET"}
  133. maxplayers=${maxplayers:-"0"}
  134. port=${port:-"0"}
  135. fi
  136. }
  137. fn_info_config_cod(){
  138. if [ ! -f "${servercfgfullpath}" ]; then
  139. servername="${unavailable}"
  140. rconpassword="${unavailable}"
  141. else
  142. servername=$(grep "sv_hostname " "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/set sv_hostname //g' | tr -d '=\";,:' | xargs)
  143. rconpassword=$(grep "rconpassword" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/set rconpassword //g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  144. # Not Set
  145. servername=${servername:-"NOT SET"}
  146. rconpassword=${rconpassword=:-"NOT SET"}
  147. fi
  148. }
  149. fn_info_config_cod2(){
  150. if [ ! -f "${servercfgfullpath}" ]; then
  151. servername="${unavailable}"
  152. rconpassword="${unavailable}"
  153. else
  154. servername=$(grep "sv_hostname " "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/set sv_hostname //g' | tr -d '=\";,:' | xargs)
  155. rconpassword=$(grep "rconpassword" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/set rconpassword //g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  156. # Not Set
  157. servername=${servername:-"NOT SET"}
  158. rconpassword=${rconpassword=:-"NOT SET"}
  159. fi
  160. }
  161. fn_info_config_cod4(){
  162. if [ ! -f "${servercfgfullpath}" ]; then
  163. servername="${unavailable}"
  164. rconpassword="${unavailable}"
  165. else
  166. servername=$(grep "sv_hostname " "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/set sv_hostname //g' | tr -d '=\";,:' | xargs)
  167. rconpassword=$(grep "rconpassword" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/set rconpassword //g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  168. # Not Set
  169. servername=${servername:-"NOT SET"}
  170. rconpassword=${rconpassword=:-"NOT SET"}
  171. fi
  172. }
  173. fn_info_config_codwaw(){
  174. if [ ! -f "${servercfgfullpath}" ]; then
  175. servername="${unavailable}"
  176. rconpassword="${unavailable}"
  177. else
  178. servername=$(grep "sv_hostname " "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/set sv_hostname //g' | tr -d '=\";,:' | xargs)
  179. rconpassword=$(grep "rconpassword" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/set rconpassword //g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  180. # Not Set
  181. servername=${servername:-"NOT SET"}
  182. rconpassword=${rconpassword=:-"NOT SET"}
  183. fi
  184. }
  185. fn_info_config_dontstarve(){
  186. if [ ! -f "${clustercfgfullpath}" ]; then
  187. servername="${unavailable}"
  188. serverpassword="${unavailable}"
  189. maxplayers="${zero}"
  190. gamemode="${unavailable}"
  191. tickrate="${zero}"
  192. masterport="${zero}"
  193. else
  194. servername=$(grep "cluster_name" "${clustercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/cluster_name//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  195. serverpassword=$(grep "cluster_password" "${clustercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/cluster_password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  196. maxplayers=$(grep "max_players" "${clustercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  197. gamemode=$(grep "game_mode" "${clustercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/game_mode//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  198. tickrate=$(grep "tick_rate" "${clustercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  199. masterport=$(grep "master_port" "${clustercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  200. ip=$(grep "bind_ip" "${clustercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/bind_ip//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  201. ipsetinconfig=1
  202. ipinconfigvar="bind_ip"
  203. # Not Set
  204. servername=${servername:-"NOT SET"}
  205. serverpassword=${serverpassword:-"NOT SET"}
  206. maxplayers=${maxplayers:-"0"}
  207. gamemode=${gamemode:-"NOT SET"}
  208. tickrate=${tickrate:-"0"}
  209. masterport=${masterport:-"0"}
  210. fi
  211. if [ ! -f "${servercfgfullpath}" ]; then
  212. port="${zero}"
  213. steamauthenticationport="${zero}"
  214. steammasterserverport="${zero}"
  215. else
  216. port=$(grep "server_port" "${servercfgfullpath}" | grep "^server_port" | grep -v "#" | tr -cd '[:digit:]')
  217. steamauthenticationport=$(grep "authentication_port" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  218. steammasterserverport=$(grep "master_server_port" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  219. # Not Set
  220. port=${port:-"0"}
  221. steamauthenticationport=${steamauthenticationport:-"0"}
  222. steammasterserverport=${steammasterserverport:-"0"}
  223. fi
  224. }
  225. fn_info_config_eco(){
  226. if [ ! -f "${servercfgfullpath}" ]; then
  227. servername="${unavailable}"
  228. serverpassword="${unavailable}"
  229. maxplayers="${zero}"
  230. gamemode="${unavailable}"
  231. tickrate="${zero}"
  232. port="${zero}"
  233. webadminport="${zero}"
  234. public=""
  235. else
  236. servername=$(grep "Description" "${servercfgdir}/Network.eco" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/Description//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  237. serverpassword=$(grep "Password" "${servercfgdir}/Network.eco" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/Password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  238. maxplayers=$(grep "MaxConnections" "${servercfgdir}/Network.eco" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/MaxConnections//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  239. port=$(grep "\"GameServerPort\"" "${servercfgdir}/Network.eco" | tr -cd '[:digit:]')
  240. webadminport=$(grep "\"WebServerPort\"" "${servercfgdir}/Network.eco" | tr -cd '[:digit:]')
  241. public=$(grep "PublicServer" "${servercfgdir}/Network.eco" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/PublicServer//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  242. # Not Set
  243. servername=${servername:-"NOT SET"}
  244. serverpassword=${serverpassword:-"NOT SET"}
  245. maxplayers=${maxplayers=:-"0"}
  246. port=${port=:-"0"}
  247. webadminport=${webadminport=:-"0"}
  248. public=${public=:-"NOT SET"}
  249. fi
  250. }
  251. fn_info_config_factorio(){
  252. if [ ! -f "${servercfgfullpath}" ]; then
  253. servername="Factorio Server"
  254. serverpassword="${unavailable}"
  255. maxplayers="${zero}"
  256. else
  257. servername="Factorio Server"
  258. serverpassword=$(grep "game_password" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/game_password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  259. maxplayers=$(grep "\"max_players\"" "${servercfgfullpath}" | tr -cd '[:digit:]')
  260. # Not Set
  261. servername=${servername:-"NOT SET"}
  262. serverpassword=${serverpassword:-"NOT SET"}
  263. maxplayers=${maxplayers=:-"0"}
  264. fi
  265. }
  266. fn_info_config_minecraft(){
  267. if [ ! -f "${servercfgfullpath}" ]; then
  268. servername="${unavailable}"
  269. rconpassword="${unavailable}"
  270. rconport="${zero}"
  271. maxplayers="${zero}"
  272. port="${zero}"
  273. queryport="${zero}"
  274. queryenabled="${unavailable}"
  275. rconport="${zero}"
  276. gamemode="${unavailable}"
  277. gameworld="${unavailable}"
  278. else
  279. servername=$(grep "motd" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/motd//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  280. rconpassword=$(grep "rcon.password" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/rcon.password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  281. rconport=$(grep "rcon.port" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  282. maxplayers=$(grep "max-players" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  283. port=$(grep "server-port" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  284. queryport=$(grep "query.port" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  285. queryenabled=$(grep "enable-query" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/enable-query//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  286. rconport=$(grep "rcon.port" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  287. gamemode=$(grep "gamemode" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  288. gameworld=$(grep "level-name" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/level-name//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  289. ip=$(grep "server-ip" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^--/d' -e 's/server-ip//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  290. ipsetinconfig=1
  291. ipinconfigvar="server-ip"
  292. # Not Set
  293. servername=${servername:-"NOT SET"}
  294. rconpassword=${rconpassword:-"NOT SET"}
  295. rconport=${rconport:-"NOT SET"}
  296. maxplayers=${maxplayers:-"NOT SET"}
  297. port=${port:-"NOT SET"}
  298. gamemode=${gamemode:-"NOT SET"}
  299. gameworld=${gameworld:-"NOT SET"}
  300. fi
  301. }
  302. #Post Scriptum: The bloody Seventh
  303. fn_info_config_pstbs(){
  304. if [ ! -f "${servercfgfullpath}" ]; then
  305. servername="${unavailable}"
  306. maxplayers="${unavailable}"
  307. numreservedslots="${unavailable}"
  308. else
  309. servername="$(grep "ServerName=" "${servercfgfullpath}" | sed -e 's/^[ \t]//g' -e '/^#/d' -e 's/ServerName//g' | tr -d '=";,:' | sed -e 's/^[ \t]//' -e 's/[ \t]*$//')"
  310. maxplayers="$(grep "MaxPlayers=" "${servercfgfullpath}" | tr -cd '[:digit:]')"
  311. numreservedslots="$(grep "NumReservedSlots=" "${servercfgfullpath}" | tr -cd '[:digit:]')"
  312. fi
  313. if [ ! -f "${servercfgdir}/Rcon.cfg" ]; then
  314. rconport=${unavailable}
  315. rconpassword=${unavailable}
  316. else
  317. rconport=$(grep "Port=" "${servercfgdir}/Rcon.cfg" | tr -cd '[:digit:]')
  318. rconpassword=$(grep "Password=" "${servercfgdir}/Rcon.cfg" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/Password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  319. fi
  320. rconport=${rconport:-"0"}
  321. if [ -z "${rconpassword}" ]||[ ${#rconpassword} == 1 ]; then
  322. rconpassword="NOT SET"
  323. fi
  324. servername=${servername:-"NOT SET"}
  325. serverpassword=${serverpassword:-"NOT SET"}
  326. maxplayers=${maxplayers:-"0"}
  327. numreservedslots=${maxplayers:-"0"}
  328. }
  329. fn_info_config_projectcars(){
  330. if [ ! -f "${servercfgfullpath}" ]; then
  331. servername="${unavailable}"
  332. serverpassword="${unavailable}"
  333. maxplayers="${zero}"
  334. port="${zero}"
  335. queryport="${zero}"
  336. steamport="${zero}"
  337. else
  338. servername=$(grep "name" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/name//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  339. serverpassword=$(grep "password " "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  340. maxplayers=$(grep "MaxPlayers" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]')
  341. port=$(grep "hostPort" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]')
  342. queryport=$(grep "queryPort" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]')
  343. steamport=$(grep "steamPort" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]')
  344. # Not Set
  345. servername=${servername:-"NOT SET"}
  346. serverpassword=${serverpassword:-"NOT SET"}
  347. maxplayers=${maxplayers:-"NOT SET"}
  348. port=${port:-"NOT SET"}
  349. queryport=${queryport:-"NOT SET"}
  350. steamport=${steamport:-"NOT SET"}
  351. fi
  352. }
  353. fn_info_config_projectzomboid(){
  354. if [ ! -f "${servercfgfullpath}" ]; then
  355. servername="${unavailable}"
  356. serverpassword="${unavailable}"
  357. rconpassword="${unavailable}"
  358. maxplayers="${zero}"
  359. port="${zero}"
  360. gameworld="${unavailable}"
  361. else
  362. servername=$(grep "PublicName" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/PublicName//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  363. serverpassword=$(grep "Password" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' | grep "^Password" | sed -e '/^#/d' -e 's/Password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  364. rconpassword=$(grep "RCONPassword" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/RCONPassword//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  365. maxplayers=$(grep "MaxPlayers" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  366. port=$(grep "DefaultPort" "${servercfgfullpath}" | tr -cd '[:digit:]')
  367. gameworld=$(grep "Map" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' | grep "^Map" | sed -e '/^#/d' -e 's/Map//g' | tr -d '=\";' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  368. # Not Set
  369. servername=${servername:-"NOT SET"}
  370. serverpassword=${serverpassword:-"NOT SET"}
  371. rconpassword=${rconpassword:-"NOT SET"}
  372. maxplayers=${maxplayers:-"NOT SET"}
  373. port=${port:-"NOT SET"}
  374. gameworld=${gameworld:-"NOT SET"}
  375. fi
  376. }
  377. fn_info_config_quakeworld(){
  378. if [ ! -f "${servercfgfullpath}" ]; then
  379. rconpassword="${unavailable}"
  380. servername="${unavailable}"
  381. serverpassword="${unavailable}"
  382. maxplayers="${zero}"
  383. port="${zero}"
  384. else
  385. rconpassword=$(grep "rcon_password" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/set rcon_password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  386. servername=$(grep "hostname" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/set hostname//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  387. maxplayers=$(grep "maxclients" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  388. # Not Set
  389. rconpassword=${rconpassword:-"NOT SET"}
  390. servername=${servername:-"NOT SET"}
  391. maxplayers=${maxplayers:-"0"}
  392. fi
  393. }
  394. fn_info_config_quake2(){
  395. if [ ! -f "${servercfgfullpath}" ]; then
  396. rconpassword="${unavailable}"
  397. servername="${unavailable}"
  398. serverpassword="${unavailable}"
  399. maxplayers="${zero}"
  400. else
  401. rconpassword=$(grep "rcon_password" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/set rcon_password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  402. servername=$(grep "hostname" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/set hostname//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  403. maxplayers=$(grep "maxclients" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  404. # Not Set
  405. rconpassword=${rconpassword:-"NOT SET"}
  406. servername=${servername:-"NOT SET"}
  407. maxplayers=${maxplayers:-"0"}
  408. fi
  409. }
  410. fn_info_config_quake3(){
  411. if [ ! -f "${servercfgfullpath}" ]; then
  412. rconpassword="${unavailable}"
  413. servername="${unavailable}"
  414. serverpassword="${unavailable}"
  415. maxplayers="${zero}"
  416. else
  417. rconpassword=$(grep "zmq_rcon_password" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/set zmq_rcon_password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  418. servername=$(grep "sv_hostname" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/set sv_hostname//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  419. serverpassword=$(grep "rconpassword" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/set rconpassword//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  420. maxplayers=$(grep "sv_maxclients" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  421. # Not Set
  422. rconpassword=${rconpassword:-"NOT SET"}
  423. servername=${servername:-"NOT SET"}
  424. serverpassword=${serverpassword:-"NOT SET"}
  425. maxplayers=${maxplayers:-"0"}
  426. fi
  427. }
  428. fn_info_config_quakelive(){
  429. if [ ! -f "${servercfgfullpath}" ]; then
  430. rconpassword="${unavailable}"
  431. servername="${unavailable}"
  432. serverpassword="${unavailable}"
  433. maxplayers="${zero}"
  434. port="${zero}"
  435. queryport="${zero}"
  436. rconport="${zero}"
  437. statsport="${zero}"
  438. else
  439. rconpassword=$(grep "zmq_rcon_password" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/set zmq_rcon_password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  440. servername=$(grep "sv_hostname" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/set sv_hostname//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  441. serverpassword=$(grep "g_password" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/set g_password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  442. maxplayers=$(grep "sv_maxClients" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]')
  443. port=$(grep "net_port" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]')
  444. queryport="${port}"
  445. rconport=$(grep "zmq_rcon_port" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]')
  446. statsport=$(grep "zmq_stats_port" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]')
  447. ip=$(grep "set net_ip" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/set net_ip//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  448. ipsetinconfig=1
  449. ipinconfigvar="set net_ip"
  450. # Not Set
  451. rconpassword=${rconpassword:-"NOT SET"}
  452. servername=${servername:-"NOT SET"}
  453. serverpassword=${serverpassword:-"NOT SET"}
  454. maxplayers=${maxplayers:-"0"}
  455. port=${port:-"0"}
  456. queryport=${queryport:-"0"}
  457. rconport=${rconport:-"0"}
  458. statsport=${statsport:-"0"}
  459. fi
  460. }
  461. fn_info_config_realvirtuality(){
  462. if [ ! -f "${servercfgfullpath}" ]; then
  463. servername="${unavailable}"
  464. adminpassword="${unavailable}"
  465. serverpassword="${unavailable}"
  466. maxplayers="${zero}"
  467. else
  468. servername=$(grep "hostname" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/hostname//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  469. adminpassword=$(grep "passwordAdmin" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/passwordAdmin//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  470. serverpassword=$(grep "password" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  471. maxplayers=$(grep "maxPlayers" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]')
  472. # Not Set
  473. servername=${servername:-"NOT SET"}
  474. adminpassword=${adminpassword:-"NOT SET"}
  475. serverpassword=${serverpassword:-"NOT SET"}
  476. maxplayers=${maxplayers:-"0"}
  477. fi
  478. }
  479. fn_info_config_risingworld(){
  480. if [ ! -f "${servercfgfullpath}" ]; then
  481. servername="${unavailable}"
  482. rconpassword="${unavailable}"
  483. rconport="${zero}"
  484. maxplayers="${zero}"
  485. port="${zero}"
  486. gamemode="${unavailable}"
  487. gameworld="${unavailable}"
  488. else
  489. servername=$(grep "server_name" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/server_name//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  490. serverpassword=$(grep "server_password" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/server_password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  491. rconpassword=$(grep "rcon_password" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/rcon_password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  492. rconport=$(grep "rcon_port" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  493. maxplayers=$(grep "settings_max_players" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  494. port=$(grep "server_port" "${servercfgfullpath}" | grep -v "database_mysql_server_port" | grep -v "#" | tr -cd '[:digit:]')
  495. gamemode=$(grep "gamemode" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  496. gameworld=$(grep "server_world_name" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/server_world_name//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  497. javaram=$(grep "server_memory" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/server_memory//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  498. ip=$(grep "server_ip" "${servercfgfullpath}" | grep -v "database_mysql_server_ip" | sed -e 's/^[ \t]*//g' -e '/^--/d' -e 's/server_ip//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  499. ipsetinconfig=1
  500. ipinconfigvar="server-ip"
  501. # Not Set
  502. servername=${servername:-"NOT SET"}
  503. rconpassword=${rconpassword:-"NOT SET"}
  504. rconport=${rconport:-"NOT SET"}
  505. maxplayers=${maxplayers:-"NOT SET"}
  506. port=${port:-"NOT SET"}
  507. gamemode=${gamemode:-"NOT SET"}
  508. gameworld=${gameworld:-"NOT SET"}
  509. fi
  510. }
  511. fn_info_config_seriousengine35(){
  512. if [ ! -f "${servercfgfullpath}" ]; then
  513. servername="${unavailable}"
  514. rconpassword="${unavailable}"
  515. gamemode="${unavailable}"
  516. maxplayers="${zero}"
  517. port="${zero}"
  518. else
  519. servername=$(grep "prj_strMultiplayerSessionName" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/prj_strMultiplayerSessionName//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  520. rconpassword=$(grep "rcts_strAdminPassword" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/rcts_strAdminPassword//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  521. gamemode=$(grep "gam_idGameMode" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/gam_idGameMode//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  522. maxplayers=$(grep "gam_ctMaxPlayers" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]')
  523. port=$(grep "prj_uwPort" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]')
  524. # Not Set
  525. servername=${servername:-"NOT SET"}
  526. rconpassword=${rconpassword:-"NOT SET"}
  527. gamemode=${gamemode:-"NOT SET"}
  528. maxplayers=${maxplayers:-"0"}
  529. port=${port:-"0"}
  530. fi
  531. }
  532. fn_info_config_source(){
  533. if [ ! -f "${servercfgfullpath}" ]; then
  534. servername="${unavailable}"
  535. serverpassword="${unavailable}"
  536. rconpassword="${unavailable}"
  537. else
  538. servername=$(grep "hostname" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/hostname//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  539. serverpassword=$(grep "sv_password" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/sv_password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  540. rconpassword=$(grep "rcon_password" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/rcon_password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  541. # Not Set
  542. servername=${servername:-"NOT SET"}
  543. serverpassword=${serverpassword:-"NOT SET"}
  544. rconpassword=${rconpassword:-"NOT SET"}
  545. fi
  546. }
  547. fn_info_config_starbound(){
  548. if [ ! -f "${servercfgfullpath}" ]; then
  549. servername="${unavailable}"
  550. queryenabled="${unavailable}"
  551. rconenabled="${unavailable}"
  552. rconpassword="${unavailable}"
  553. port="21025"
  554. queryport="21025"
  555. rconport="21026"
  556. maxplayers="8"
  557. else
  558. servername=$(grep "serverName" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e 's/serverName//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  559. queryenabled=$(grep "runQueryServer" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e 's/runQueryServer//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  560. rconenabled=$(grep "runRconServer" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e 's/runRconServer//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  561. rconpassword=$(grep "rconServerPassword" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e 's/rconServerPassword//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  562. port=$(grep "gameServerPort" "${servercfgfullpath}" | tr -cd '[:digit:]')
  563. queryport=$(grep "queryServerPort" "${servercfgfullpath}" | tr -cd '[:digit:]')
  564. rconport=$(grep "rconServerPort" "${servercfgfullpath}" | tr -cd '[:digit:]')
  565. maxplayers=$(grep "maxPlayers" "${servercfgfullpath}" | tr -cd '[:digit:]')
  566. # Not Set
  567. servername=${servername:-"NOT SET"}
  568. queryenabled=${queryenabled:-"NOT SET"}
  569. rconenabled=${rconenabled:-"NOT SET"}
  570. rconpassword=${rconpassword:-"NOT SET"}
  571. port=${port:-"21025"}
  572. queryport=${queryport:-"21025"}
  573. rconport=${rconport:-"21026"}
  574. maxplayers=${maxplayers:-"8"}
  575. fi
  576. }
  577. fn_info_config_teamspeak3(){
  578. if [ ! -f "${servercfgfullpath}" ]; then
  579. dbplugin="${unavailable}"
  580. port="9987"
  581. queryport="10011"
  582. fileport="30033"
  583. else
  584. dbplugin=$(grep "dbplugin=" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/dbplugin=//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  585. port=$(grep "default_voice_port" "${servercfgfullpath}" | tr -cd '[:digit:]')
  586. queryport=$(grep "query_port" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  587. fileport=$(grep "filetransfer_port" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  588. ip=$(grep "voice_ip" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/voice_ip//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  589. ipsetinconfig=1
  590. ipinconfigvar="voice_ip"
  591. # Not Set
  592. port=${port:-"9987"}
  593. queryport=${queryport:-"10011"}
  594. fileport=${fileport:-"30033"}
  595. fi
  596. }
  597. fn_info_config_mumble(){
  598. if [ ! -f "${servercfgfullpath}" ]; then
  599. port="64738"
  600. queryport="${port}"
  601. servername="Mumble"
  602. else
  603. port=$(grep "port" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^;/d' -e 's/port//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  604. queryport="${port}"
  605. ip=$(grep "host=" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^;/d' -e 's/host=//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  606. ipsetinconfig=1
  607. ipinconfigvar="voice_ip"
  608. # Not Set
  609. port=${port:-"64738"}
  610. queryport=${queryport:-"64738"}
  611. servername="Mumble Port ${port}"
  612. fi
  613. }
  614. fn_info_config_samp(){
  615. if [ ! -f "${servercfgfullpath}" ]; then
  616. servername="unnamed server"
  617. serverpassword="${unavailable}"
  618. rconpassword="${unavailable}"
  619. port="7777"
  620. maxplayers="50"
  621. else
  622. servername=$(grep "hostname" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/hostname//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  623. rconpassword=$(grep "rcon_password" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/^rcon_password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  624. port=$(grep "port" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  625. maxplayers=$(grep "maxplayers" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  626. # Not Set
  627. servername=${servername:-"NOT SET"}
  628. rconpassword=${rconpassword:-"NOT SET"}
  629. port=${port:-"8303"}
  630. maxplayers=${maxplayers:-"12"}
  631. fi
  632. }
  633. fn_info_config_teeworlds(){
  634. if [ ! -f "${servercfgfullpath}" ]; then
  635. servername="unnamed server"
  636. serverpassword="${unavailable}"
  637. rconpassword="${unavailable}"
  638. port="8303"
  639. maxplayers="12"
  640. else
  641. servername=$(grep "sv_name" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/^sv_name//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  642. serverpassword=$(grep "password" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' | grep "^password" | sed -e '/^#/d' -e 's/^password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  643. rconpassword=$(grep "sv_rcon_password" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/^sv_rcon_password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  644. port=$(grep "sv_port" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  645. maxplayers=$(grep "sv_max_clients" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  646. # Not Set
  647. servername=${servername:-"NOT SET"}
  648. serverpassword=${serverpassword:-"NOT SET"}
  649. rconpassword=${rconpassword:-"NOT SET"}
  650. port=${port:-"8303"}
  651. maxplayers=${maxplayers:-"12"}
  652. fi
  653. }
  654. fn_info_config_terraria(){
  655. if [ ! -f "${servercfgfullpath}" ]; then
  656. servername="${unavailable}"
  657. port="${zero}"
  658. gameworld="${unavailable}"
  659. maxplayers="${zero}"
  660. else
  661. servername=$(grep "worldname" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/worldname//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  662. port=$(grep "port" "${servercfgfullpath}" | tr -cd '[:digit:]')
  663. gameworld=$(grep "world=" "${servercfgfullpath}" | grep -v "//" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/world=//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  664. maxplayers=$(grep "maxplayers" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]')
  665. # Not Set
  666. servername=${servername:-"NOT SET"}
  667. port=${port:-"0"}
  668. gameworld=${gameworld:-"NOT SET"}
  669. maxplayers=${maxplayers:-"0"}
  670. fi
  671. }
  672. fn_info_config_towerunite(){
  673. if [ ! -f "${servercfgfullpath}" ]; then
  674. servername="${unavailable}"
  675. maxplayers="${zero}"
  676. else
  677. servername=$(grep "ServerTitle" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^--/d' -e 's/ServerTitle//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  678. maxplayers=$(grep "MaxPlayers" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  679. # Not Set
  680. servername=${servername:-"NOT SET"}
  681. maxplayers=${maxplayers:-"0"}
  682. fi
  683. }
  684. fn_info_config_unreal(){
  685. if [ ! -f "${servercfgfullpath}" ]; then
  686. servername="${unavailable}"
  687. serverpassword="${unavailable}"
  688. adminpassword="${unavailable}"
  689. port="${zero}"
  690. queryport="${zero}"
  691. gsqueryport="${zero}"
  692. webadminenabled="${unavailable}"
  693. webadminport="${zero}"
  694. webadminuser="${unavailable}"
  695. webadminpass="${unavailable}"
  696. else
  697. servername=$(grep "ServerName" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/ServerName//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//'| sed 's/\r$//')
  698. serverpassword=$(grep "GamePassword" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/GamePassword//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//'| sed 's/\r$//')
  699. adminpassword=$(grep "AdminPassword" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/AdminPassword//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//'| sed 's/\r$//')
  700. port=$(grep "Port" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' | grep "^Port" | grep -v "#" | tr -cd '[:digit:]')
  701. queryport=$((port + 1))
  702. gsqueryport=$(grep "OldQueryPortNumber" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  703. webadminenabled=$(grep "bEnabled" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/bEnabled//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//'| sed 's/\r$//')
  704. webadminport=$(grep "ListenPort" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  705. if [ "${engine}" == "unreal" ]; then
  706. webadminuser=$(grep "AdminUsername" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/AdminUsername//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//'| sed 's/\r$//')
  707. webadminpass=$(grep "UTServerAdmin.UTServerAdmin" "${servercfgfullpath}" -A 4 | grep "AdminPassword" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/AdminPassword//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//'| sed 's/\r$//')
  708. else
  709. webadminuser=$(grep "AdminName" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/AdminName//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//'| sed 's/\r$//')
  710. webadminpass="${adminpassword}"
  711. fi
  712. # Not Set
  713. servername=${servername:-"NOT SET"}
  714. serverpassword=${serverpassword:-"NOT SET"}
  715. adminpassword=${adminpassword:-"NOT SET"}
  716. port=${port:-"0"}
  717. queryport=${queryport:-"0"}
  718. gsqueryport=${gsqueryport:-"0"}
  719. webadminenabled=${webadminenabled:-"NOT SET"}
  720. webadminport=${webadminport:-"0"}
  721. webadminuser=${webadminuser:-"NOT SET"}
  722. webadminpass=${webadminpass:-"NOT SET"}
  723. fi
  724. }
  725. fn_info_config_unreal3(){
  726. if [ ! -f "${servercfgfullpath}" ]; then
  727. servername="${unavailable}"
  728. serverpassword="${unavailable}"
  729. adminpassword="${unavailable}"
  730. webadminenabled="${unavailable}"
  731. webadminport="${zero}"
  732. webadminuser="${unavailable}"
  733. webadminpass="${unavailable}"
  734. else
  735. servername=$(grep "ServerName" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/ServerName//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  736. adminpassword=$(grep "AdminPassword" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/AdminPassword//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  737. webadminenabled=$(grep "bEnabled" "${servercfgdir}/UTWeb.ini" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/bEnabled//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  738. webadminport=$(grep "ListenPort" "${servercfgdir}/UTWeb.ini" | grep -v "#" | tr -cd '[:digit:]')
  739. webadminuser="Admin"
  740. webadminpass=$(grep "AdminPassword" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/AdminPassword//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  741. # Not Set
  742. servername=${servername:-"NOT SET"}
  743. serverpassword=${serverpassword:-"NOT SET"}
  744. adminpassword=${adminpassword:-"NOT SET"}
  745. port=${port:-"0"}
  746. webadminenabled=${webadminenabled:-"NOT SET"}
  747. webadminport=${webadminport:-"0"}
  748. webadminuser=${webadminuser:-"NOT SET"}
  749. webadminpass=${webadminpass:-"NOT SET"}
  750. fi
  751. }
  752. fn_info_config_kf2(){
  753. if [ ! -f "${servercfgfullpath}" ]; then
  754. servername="${unavailable}"
  755. serverpassword="${unavailable}"
  756. adminpassword="${unavailable}"
  757. port="${unavailable}"
  758. queryport="${unavailable}"
  759. webadminenabled="${unavailable}"
  760. webadminport="${zero}"
  761. webadminuser="${unavailable}"
  762. webadminpass="${unavailable}"
  763. else
  764. servername=$(grep "ServerName" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/ServerName//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  765. serverpassword=$(grep "GamePassword" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/GamePassword//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  766. adminpassword=$(grep "AdminPassword" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/AdminPassword//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  767. port=$(grep "Port" "${servercfgdir}/LinuxServer-KFEngine.ini" | sed -e 's/^[ \t]*//g' | grep "^Port" | grep -v "#" | tr -cd '[:digit:]')
  768. webadminenabled=$(grep "bEnabled" "${servercfgdir}/KFWeb.ini" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/bEnabled//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  769. webadminport=$(grep "ListenPort" "${servercfgdir}/KFWeb.ini" | grep -v "#" | tr -cd '[:digit:]')
  770. webadminuser="Admin"
  771. webadminpass=$(grep "AdminPassword" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/AdminPassword//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  772. # Not Set
  773. servername=${servername:-"NOT SET"}
  774. serverpassword=${serverpassword:-"NOT SET"}
  775. adminpassword=${adminpassword:-"NOT SET"}
  776. port=${port:-"0"}
  777. webadminenabled=${webadminenabled:-"NOT SET"}
  778. webadminport=${webadminport:-"0"}
  779. webadminuser=${webadminuser:-"NOT SET"}
  780. webadminpass=${webadminpass:-"NOT SET"}
  781. fi
  782. }
  783. fn_info_config_sdtd(){
  784. if [ ! -f "${servercfgfullpath}" ]; then
  785. servername="${unavailable}"
  786. serverpassword="${unavailable}"
  787. port="${zero}"
  788. queryport="${zero}"
  789. webadminenabled="${unavailable}"
  790. webadminport="${zero}"
  791. webadminpass="${unavailable}"
  792. telnetenabled="${unavailable}"
  793. telnetport="${zero}"
  794. telnetpass="${unavailable}"
  795. maxplayers="${unavailable}"
  796. gamemode="${unavailable}"
  797. gameworld="${unavailable}"
  798. else
  799. servername=$(grep "ServerName" "${servercfgfullpath}" | sed 's/^.*value="//' | cut -f1 -d"\"")
  800. serverpassword=$(grep "ServerPassword" "${servercfgfullpath}" | sed 's/^.*value="//' | cut -f1 -d"\"")
  801. port=$(grep "ServerPort" "${servercfgfullpath}" | tr -cd '[:digit:]')
  802. queryport=$((port + 1))
  803. webadminenabled=$(grep "ControlPanelEnabled" "${servercfgfullpath}" | sed 's/^.*value="//' | cut -f1 -d"\"")
  804. webadminport=$(grep "ControlPanelPort" "${servercfgfullpath}" | tr -cd '[:digit:]')
  805. webadminpass=$(grep "ControlPanelPassword" "${servercfgfullpath}" | sed 's/^.*value="//' | cut -f1 -d"\"")
  806. telnetenabled=$(grep "TelnetEnabled" "${servercfgfullpath}" | sed 's/^.*value="//' | cut -f1 -d"\"")
  807. telnetport=$(grep "TelnetPort" "${servercfgfullpath}" | tr -cd '[:digit:]')
  808. telnetpass=$(grep "TelnetPassword" "${servercfgfullpath}" | sed 's/^.*value="//' | cut -f1 -d"\"")
  809. maxplayers=$(grep "ServerMaxPlayerCount" "${servercfgfullpath}" | tr -cd '[:digit:]')
  810. gamemode=$(grep "GameMode" "${servercfgfullpath}" | sed 's/^.*value="//' | cut -f1 -d"\"")
  811. gameworld=$(grep "GameWorld" "${servercfgfullpath}" | sed 's/^.*value="//' | cut -f1 -d"\"")
  812. # Not Set
  813. servername=${servername:-"NOT SET"}
  814. serverpassword=${serverpassword:-"NOT SET"}
  815. port=${port:-"0"}
  816. queryport=${queryport:-"0"}
  817. webadminenabled=${webadminenabled:-"NOT SET"}
  818. webadminport=${webadminport:-"0"}
  819. webadminpass=${webadminpass:-"NOT SET"}
  820. telnetenabled=${telnetenabled:-"NOT SET"}
  821. telnetport=${telnetport:-"0"}
  822. telnetpass=${telnetpass:-"NOT SET"}
  823. maxplayers=${maxplayers:-"NOT SET"}
  824. gamemode=${gamemode:-"NOT SET"}
  825. gameworld=${gameworld:-"NOT SET"}
  826. fi
  827. }
  828. fn_info_config_mta(){
  829. if [ ! -f "${servercfgfullpath}" ]; then
  830. ip="${zero}"
  831. port="${unavailable}"
  832. httpport="${unavailable}"
  833. ase="${unavailable}"
  834. servername="${unavailable}"
  835. serverpassword="${unavailable}"
  836. maxplayers="${zero}"
  837. else
  838. port=$(grep -m 1 "serverport" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/<serverport>//g' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//' | cut -f1 -d "<" | tr -cd '[:digit:]')
  839. httpport=$(grep -m 1 "httpport" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/<httpport>//g' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//' | cut -f1 -d "<" | tr -cd '[:digit:]')
  840. ase=$(grep -m 1 "ase" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/<ase>//g' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//' | cut -f1 -d "<" | tr -cd '[:digit:]')
  841. servername=$(grep -m 1 "servername" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/<servername>//g' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//' | cut -f1 -d "<")
  842. serverpassword=$(grep -m 1 "password" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/<password>//g' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//' | cut -f1 -d "<")
  843. maxplayers=$(grep -m 1 "maxplayers" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/<maxplayers>//g' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//' | cut -f1 -d "<" | tr -cd '[:digit:]')
  844. if [ "${ase}" == "1" ]; then
  845. ase="Enabled"
  846. else
  847. ase="Disabled"
  848. fi
  849. ip=$(grep -m 1 "serverip" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/<serverip>//g' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//' | cut -f1 -d "<")
  850. ipsetinconfig=1
  851. ipinconfigvar="serverip"
  852. # Not Set
  853. port=${port:-"22003"}
  854. httpport=${httpport:-"22005"}
  855. ase=${ase:-"Disabled"}
  856. servername=${servername:-"NOT SET"}
  857. serverpassword=${serverpassword:-"NOT SET"}
  858. maxplayers=${maxplayers:-"0"}
  859. fi
  860. }
  861. fn_info_config_wolfensteinenemyterritory(){
  862. if [ ! -f "${servercfgfullpath}" ]; then
  863. rconpassword="${unavailable}"
  864. servername="${unavailable}"
  865. serverpassword="${unavailable}"
  866. maxplayers="${zero}"
  867. port="${zero}"
  868. queryport="${zero}"
  869. else
  870. port=$(grep "set net_port" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]')
  871. queryport="${port}"
  872. rconpassword=$(grep "set zmq_rcon_password" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/set zmq_rcon_password //g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//g' -e '/^\//d' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  873. servername=$(grep "set sv_hostname" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/set sv_hostname //g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  874. serverpassword=$(grep "set g_password" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/set g_password //g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  875. maxplayers=$(grep "set sv_maxclients" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]')
  876. ip=$(grep "set net_ip" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/set net_ip//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  877. ipsetinconfig=1
  878. ipinconfigvar="set net_ip"
  879. # Not Set
  880. rconpassword=${rconpassword:-"NOT SET"}
  881. servername=${servername:-"NOT SET"}
  882. serverpassword=${serverpassword:-"NOT SET"}
  883. maxplayers=${maxplayers:-"0"}
  884. port=${port:-"27960"}
  885. queryport=${queryport:-"27960"}
  886. fi
  887. }
  888. fn_info_config_etlegacy(){
  889. if [ ! -f "${servercfgfullpath}" ]; then
  890. rconpassword="${unavailable}"
  891. servername="${unavailable}"
  892. serverpassword="${unavailable}"
  893. maxplayers="${zero}"
  894. port="${zero}"
  895. queryport="${zero}"
  896. else
  897. port=$(grep "set net_port" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]')
  898. queryport="${port}"
  899. rconpassword=$(grep "set rconpassword" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/set rconpassword //g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//g' -e '/^\//d' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  900. servername=$(grep "set sv_hostname" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/set sv_hostname //g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  901. serverpassword=$(grep "set g_password" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/set g_password //g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  902. maxplayers=$(grep "set sv_maxclients" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]')
  903. ip=$(grep "set net_ip" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/set net_ip//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  904. ipsetinconfig=1
  905. ipinconfigvar="set net_ip"
  906. # Not Set
  907. rconpassword=${rconpassword:-"NOT SET"}
  908. servername=${servername:-"NOT SET"}
  909. serverpassword=${serverpassword:-"NOT SET"}
  910. maxplayers=${maxplayers:-"0"}
  911. port=${port:-"27960"}
  912. queryport=${queryport:-"27960"}
  913. fi
  914. }
  915. fn_info_config_wurmunlimited(){
  916. if [ ! -f "${servercfgfullpath}" ]; then
  917. port="${zero}"
  918. queryport="${zero}"
  919. rconpassword="${unavailable}"
  920. servername="${unavailable}"
  921. serverpassword="${unavailable}"
  922. adminpassword="${unavailable}"
  923. maxplayers="${zero}"
  924. else
  925. port=$(grep "EXTERNALPORT=" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  926. queryport=$(grep "QUERYPORT=" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  927. servername=$(grep "SERVERNAME=" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/SERVERNAME//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  928. serverpassword=$(grep "SERVERPASSWORD=" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/SERVERPASSWORD//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  929. adminpassword=$(grep "ADMINPWD=" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/ADMINPWD//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  930. maxplayers=$(grep "MAXPLAYERS=" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  931. ip=$(grep "IP" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/IP//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  932. ipsetinconfig=1
  933. ipinconfigvar="IP"
  934. # Not Set
  935. port=${port:-"3724"}
  936. queryport=${queryport:-"27017"}
  937. servername=${servername:-"NOT SET"}
  938. serverpassword=${serverpassword:-"NOT SET"}
  939. adminpassword=${adminpassword:-"NOT SET"}
  940. maxplayers=${maxplayers:-"0"}
  941. fi
  942. }
  943. fn_info_config_squad(){
  944. if [ ! -f "${servercfgfullpath}" ]; then
  945. servername="${unavailable}"
  946. maxplayers="${unavailable}"
  947. else
  948. servername="$(grep "ServerName=" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/ServerName//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')"
  949. maxplayers="$(grep "MaxPlayers=" "${servercfgfullpath}" | tr -cd '[:digit:]')"
  950. fi
  951. if [ ! -f "${servercfgdir}/Rcon.cfg" ]; then
  952. rconport=${unavailable}
  953. rconpassword=${unavailable}
  954. else
  955. rconport=$(grep "Port=" "${servercfgdir}/Rcon.cfg" | tr -cd '[:digit:]')
  956. rconpassword=$(grep "Password=" "${servercfgdir}/Rcon.cfg" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/Password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  957. fi
  958. rconport=${rconport:-"0"}
  959. if [ -z "${rconpassword}" ]||[ ${#rconpassword} == 1 ]; then
  960. rconpassword="NOT SET"
  961. fi
  962. servername=${servername:-"NOT SET"}
  963. serverpassword=${serverpassword:-"NOT SET"}
  964. maxplayers=${maxplayers:-"0"}
  965. }
  966. fn_info_config_stationeers(){
  967. if [ ! -f "${servercfgfullpath}" ]; then
  968. servername="${unavailable}"
  969. serverpassword="${unavailable}"
  970. rconpassword="${unavailable}"
  971. maxplayers="${unavailable}"
  972. else
  973. servername=$(grep "SERVERNAME" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/SERVERNAME//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  974. serverpassword=$(grep "PASSWORD" "${servercfgfullpath}" | grep "^PASSWORD" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/PASSWORD//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  975. rconpassword=$(grep "RCONPASSWORD" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/RCONPASSWORD//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  976. maxplayers=$(grep "MAXPLAYER" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/MAXPLAYER//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  977. # Not Set
  978. servername=${servername:-"NOT SET"}
  979. serverpassword=${serverpassword:-"NOT SET"}
  980. rconpassword=${rconpassword:-"NOT SET"}
  981. maxplayers=${maxplayers:-"0"}
  982. fi
  983. }
  984. # ARK: Survival Evolved
  985. if [ "${gamename}" == "ARK: Survivial Evolved" ]; then
  986. fn_info_config_ark
  987. # Ballistic Overkill
  988. elif [ "${gamename}" == "Ballistic Overkill" ]; then
  989. fn_info_config_ballistic_overkill
  990. # Battalion 1944
  991. elif [ "${gamename}" == "Battalion 1944" ]; then
  992. fn_info_config_battalion1944
  993. # Battlefield: 1942
  994. elif [ "${gamename}" == "Battlefield: 1942" ]; then
  995. fn_info_config_bf1942
  996. # Call of Duty
  997. elif [ "${gamename}" == "Call of Duty" ]||[ "${gamename}" == "Call of Duty: United Offensive" ]; then
  998. fn_info_config_cod
  999. # Call of Duty 2
  1000. elif [ "${gamename}" == "Call of Duty 2" ]; then
  1001. fn_info_config_cod2
  1002. # Call of Duty 4
  1003. elif [ "${gamename}" == "Call of Duty 4" ]; then
  1004. fn_info_config_cod4
  1005. # Call of Duty: World at War
  1006. elif [ "${gamename}" == "Call of Duty: World at War" ]; then
  1007. fn_info_config_codwaw
  1008. # Dont Starve Together
  1009. elif [ "${engine}" == "dontstarve" ]; then
  1010. fn_info_config_dontstarve
  1011. # Eco
  1012. elif [ "${shortname}" == "eco" ]; then
  1013. fn_info_config_eco
  1014. # Factorio
  1015. elif [ "${gamename}" == "Factorio" ]; then
  1016. fn_info_config_factorio
  1017. # Just Cause 2
  1018. elif [ "${gamename}" == "Just Cause 2" ]; then
  1019. fn_info_config_justcause2
  1020. # Just Cause 3
  1021. elif [ "${gamename}" == "Just Cause 3" ]; then
  1022. fn_info_config_justcause3
  1023. # Killing Floor 2
  1024. elif [ "${shortname}" == "kf2" ]; then
  1025. fn_info_config_kf2
  1026. # QuakeWorld
  1027. elif [ "${gamename}" == "QuakeWorld" ]; then
  1028. fn_info_config_quakeworld
  1029. # Quake 2
  1030. elif [ "${gamename}" == "Quake 2" ]; then
  1031. fn_info_config_quake2
  1032. # Quake 3
  1033. elif [ "${gamename}" == "Quake 3: Arena" ]; then
  1034. fn_info_config_quake3
  1035. # Quake Live
  1036. elif [ "${gamename}" == "Quake Live" ]; then
  1037. fn_info_config_quakelive
  1038. # Minecraft
  1039. elif [ "${engine}" == "lwjgl2" ]; then
  1040. fn_info_config_minecraft
  1041. # Post Scriptum: The Bloody Seventh
  1042. elif [ "${shortname}" == "pstbs" ]; then
  1043. fn_info_config_pstbs
  1044. # Project Cars
  1045. elif [ "${gamename}" == "Project Cars" ]; then
  1046. fn_info_config_projectcars
  1047. # Project Zomboid
  1048. elif [ "${engine}" == "projectzomboid" ]; then
  1049. fn_info_config_projectzomboid
  1050. # ARMA 3
  1051. elif [ "${engine}" == "realvirtuality" ]; then
  1052. fn_info_config_realvirtuality
  1053. # Rising World
  1054. elif [ "${shortname}" == "rw" ]; then
  1055. fn_info_config_risingworld
  1056. # Serious Sam
  1057. elif [ "${engine}" == "seriousengine35" ]; then
  1058. fn_info_config_seriousengine35
  1059. # Source Engine Games
  1060. elif [ "${engine}" == "source" ]||[ "${engine}" == "goldsource" ]; then
  1061. fn_info_config_source
  1062. # Starbound
  1063. elif [ "${engine}" == "starbound" ]; then
  1064. fn_info_config_starbound
  1065. # TeamSpeak 3
  1066. elif [ "${gamename}" == "TeamSpeak 3" ]; then
  1067. fn_info_config_teamspeak3
  1068. # Mumble
  1069. elif [ "${gamename}" == "Mumble" ]; then
  1070. fn_info_config_mumble
  1071. # San Andreas Multiplayer
  1072. elif [ "${gamename}" == "San Andreas Multiplayer" ]; then
  1073. fn_info_config_samp
  1074. # Teeworlds
  1075. elif [ "${engine}" == "teeworlds" ]; then
  1076. fn_info_config_teeworlds
  1077. # Terraria
  1078. elif [ "${engine}" == "terraria" ]; then
  1079. fn_info_config_terraria
  1080. # Tower Unite
  1081. elif [ "${gamename}" == "Tower Unite" ]; then
  1082. fn_info_config_towerunite
  1083. # Unreal/Unreal 2 engine
  1084. elif [ "${engine}" == "unreal" ]||[ "${engine}" == "unreal2" ]; then
  1085. fn_info_config_unreal
  1086. # Unreal 3 engine
  1087. elif [ "${engine}" == "unreal3" ]; then
  1088. fn_info_config_unreal3
  1089. # 7 Day To Die (unity3d)
  1090. elif [ "${gamename}" == "7 Days To Die" ]; then
  1091. fn_info_config_sdtd
  1092. elif [ "${gamename}" == "Wolfenstein: Enemy Territory" ]; then
  1093. fn_info_config_wolfensteinenemyterritory
  1094. elif [ "${gamename}" == "ET: Legacy" ]; then
  1095. fn_info_config_etlegacy
  1096. elif [ "${gamename}" == "Wurm Unlimited" ]; then
  1097. fn_info_config_wurmunlimited
  1098. elif [ "${gamename}" == "Multi Theft Auto" ]; then
  1099. fn_info_config_mta
  1100. elif [ "${gamename}" == "Squad" ]; then
  1101. fn_info_config_squad
  1102. # Stationeers
  1103. elif [ "${gamename}" == "Stationeers" ]; then
  1104. fn_info_config_stationeers
  1105. fi