info_config.sh 67 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597
  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_assettocorsa(){
  15. if [ ! -f "${servercfgfullpath}" ]; then
  16. httpport="${zero}"
  17. port="${zero}"
  18. queryport="${zero}"
  19. servername="${unavailable}"
  20. adminpassword="${unavailable}"
  21. else
  22. httpport=$(grep "HTTP_PORT" "${servercfgfullpath}" | tr -cd '[:digit:]')
  23. port=$(grep "TCP_PORT" "${servercfgfullpath}" | tr -cd '[:digit:]')
  24. queryport="${port}"
  25. servername=$(grep "NAME" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/NAME//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//'| head -n 1)
  26. adminpassword=$(grep "ADMIN_PASSWORD" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/ADMIN_PASSWORD//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  27. # Not Set
  28. httpport=${httpport:-"0"}
  29. port=${port:-"0"}
  30. queryport=${queryport:-"0"}
  31. servername=${servername:-"NOT SET"}
  32. adminpassword=${adminpassword:-"NOT SET"}
  33. fi
  34. }
  35. fn_info_config_justcause2(){
  36. if [ ! -f "${servercfgfullpath}" ]; then
  37. servername="${unavailable}"
  38. serverpassword="${unavailable}"
  39. maxplayers="${zero}"
  40. port="${zero}"
  41. queryport="${zero}"
  42. else
  43. servername=$(grep "Name" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^--/d' -e 's/Name//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  44. serverdescription=$(grep "Description" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^--/d' -e 's/Description//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  45. serverpassword=$(grep "Password" "${servercfgfullpath}" | sed -e 's/^ *//g' -e '/^--/d' -e 's/Password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  46. maxplayers=$(grep "MaxPlayers" "${servercfgfullpath}" | grep -v "\--" | tr -cd '[:digit:]')
  47. port=$(grep "BindPort" "${servercfgfullpath}" | grep -v "\--" | tr -cd '[:digit:]')
  48. queryport="${port}"
  49. ip=$(grep "BindIP" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^--/d' -e 's/BindIP//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  50. ipsetinconfig=1
  51. ipinconfigvar="BindIP"
  52. # Not Set
  53. servername=${servername:-"NOT SET"}
  54. serverpassword=${serverpassword:-"NOT SET"}
  55. maxplayers=${maxplayers:-"0"}
  56. port=${port:-"0"}
  57. queryport=${queryport:-"0"}
  58. fi
  59. }
  60. fn_info_config_justcause3(){
  61. if [ ! -f "${servercfgfullpath}" ]; then
  62. servername="${unavailable}"
  63. serverdescription="${unavailable}"
  64. serverpassword="${unavailable}"
  65. maxplayers="${zero}"
  66. port="${zero}"
  67. queryPort="${zero}"
  68. steamport="${zero}"
  69. tickrate="${zero}"
  70. else
  71. servername=$(grep "name" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/name//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  72. serverdescription=$(grep "description" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/description//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  73. serverpassword=$(grep "password" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  74. maxplayers=$(grep "\"maxPlayers\"" "${servercfgfullpath}" | tr -cd '[:digit:]')
  75. port=$(grep "\"port\"" "${servercfgfullpath}" | tr -cd '[:digit:]')
  76. queryport=$(grep "\"queryPort\"" "${servercfgfullpath}" | tr -cd '[:digit:]')
  77. steamport=$(grep "\"steamPort\"" "${servercfgfullpath}" | tr -cd '[:digit:]')
  78. tickrate=$(grep "\"maxTickRate\"" "${servercfgfullpath}" | tr -cd '[:digit:]')
  79. ip=$(grep "host" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/host//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  80. ipsetinconfig=1
  81. ipinconfigvar="host"
  82. # Not Set
  83. servername=${servername:-"NOT SET"}
  84. serverdescription=${serverdescription:-"NOT SET"}
  85. serverpassword=${serverpassword:-"NOT SET"}
  86. maxplayers=${maxplayers=:-"0"}
  87. port=${port=:-"0"}
  88. queryport=${queryport=:-"0"}
  89. steamport=${steamport=:-"0"}
  90. tickrate=${tickrate=:-"0"}
  91. fi
  92. }
  93. fn_info_config_ark(){
  94. if [ ! -f "${servercfgfullpath}" ]; then
  95. servername="${unavailable}"
  96. else
  97. servername=$(grep "SessionName" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^--/d' -e 's/SessionName//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  98. # Not Set
  99. servername=${servername:-"NOT SET"}
  100. fi
  101. }
  102. fn_info_config_ballistic_overkill(){
  103. if [ ! -f "${servercfgfullpath}" ]; then
  104. servername="${unavailable}"
  105. serverpassword="${unavailable}"
  106. port="${zero}"
  107. queryport="${zero}"
  108. maxplayers="${unavailable}"
  109. else
  110. servername=$(grep "ServerName=" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/ServerName//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  111. serverpassword=$(grep "Password=" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/Password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  112. port=$(grep "ServerPort=" "${servercfgfullpath}" | tr -cd '[:digit:]')
  113. queryport=$((port + 1))
  114. maxplayers=$(grep "MaxPlayers=" "${servercfgfullpath}" | tr -cd '[:digit:]')
  115. # Not Set
  116. servername=${servername:-"NOT SET"}
  117. serverpassword=${serverpassword:-"NOT SET"}
  118. port=${port:-"0"}
  119. queryport=${queryport:-"0"}
  120. maxplayers=${maxplayers:-"NOT SET"}
  121. fi
  122. }
  123. fn_info_config_barotrauma(){
  124. if [ ! -f "${servercfgfullpath}" ]; then
  125. servername="${unavailable}"
  126. serverpassword="${unavailable}"
  127. port="${zero}"
  128. queryport="${zero}"
  129. maxplayers="${unavailable}"
  130. else
  131. servername=$(grep -Po 'name="\K.*(?=")' "${servercfgfullpath}") # Assuming GNU grep is used
  132. serverpassword=$(grep -Po 'password="\K.*(?=")' "${servercfgfullpath}") # Assuming GNU grep is used
  133. port=$(grep " port=" "${servercfgfullpath}" | tr -cd '[:digit:]')
  134. queryport=$(grep "queryport=" "${servercfgfullpath}" | tr -cd '[:digit:]')
  135. maxplayers=$(grep "maxplayers=" "${servercfgfullpath}" | tr -cd '[:digit:]')
  136. # Not set
  137. servername=${servername:-"NOT SET"}
  138. serverpassword=${serverpassword:-"NOT SET"}
  139. port=${port:-"0"}
  140. queryport=${queryport:-"0"}
  141. maxplayers=${maxplayers:-"0"}
  142. fi
  143. }
  144. fn_info_config_battalion1944(){
  145. if [ ! -f "${servercfgfullpath}" ]; then
  146. servername="${unavailable}"
  147. serverpassword="${unavailable}"
  148. else
  149. servername=$(grep "ServerName" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^--/d' -e 's/ServerName//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  150. serverpassword=$(grep "Password" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^--/d' -e 's/Password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  151. # Not Set
  152. servername=${servername:-"NOT SET"}
  153. serverpassword=${serverpassword:-"NOT SET"}
  154. fi
  155. }
  156. fn_info_config_bf1942(){
  157. if [ ! -f "${servercfgfullpath}" ]; then
  158. servername="${unavailable}"
  159. serverpassword="${unavailable}"
  160. maxplayers="${zero}"
  161. port="${zero}"
  162. queryport="${zero}"
  163. else
  164. servername=$(grep "game.serverName " "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^--/d' -e 's/game.serverName //g' | tr -d '=\";,:' | xargs)
  165. serverpassword=$(grep "game.serverPassword" "${servercfgfullpath}" | sed -e 's/^ *//g' -e '/^--/d' -e 's/game.serverPassword//g' | tr -d '=\";,:' | xargs)
  166. maxplayers=$(grep "game.serverMaxPlayers" "${servercfgfullpath}" | grep -v "\--" | tr -cd '[:digit:]')
  167. port=$(grep "game.serverPort" "${servercfgfullpath}" | grep -v "\--" | tr -cd '[:digit:]')
  168. queryport="22000"
  169. ip=$(grep "game.serverIP" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^--/d' -e 's/game.serverIP//g' | tr -d '=\";,:' | xargs)
  170. ipsetinconfig=1
  171. ipinconfigvar="game.serverIP"
  172. # Not Set
  173. servername=${servername:-"NOT SET"}
  174. serverpassword=${serverpassword:-"NOT SET"}
  175. maxplayers=${maxplayers:-"0"}
  176. port=${port:-"0"}
  177. fi
  178. }
  179. fn_info_config_cod(){
  180. if [ ! -f "${servercfgfullpath}" ]; then
  181. servername="${unavailable}"
  182. rconpassword="${unavailable}"
  183. else
  184. servername=$(grep "sv_hostname " "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/set sv_hostname //g' | tr -d '=\";,:' | xargs)
  185. 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]*$//')
  186. # Not Set
  187. servername=${servername:-"NOT SET"}
  188. rconpassword=${rconpassword=:-"NOT SET"}
  189. fi
  190. }
  191. fn_info_config_cod2(){
  192. if [ ! -f "${servercfgfullpath}" ]; then
  193. servername="${unavailable}"
  194. rconpassword="${unavailable}"
  195. else
  196. servername=$(grep "sv_hostname " "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/set sv_hostname //g' | tr -d '=\";,:' | xargs)
  197. 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]*$//')
  198. # Not Set
  199. servername=${servername:-"NOT SET"}
  200. rconpassword=${rconpassword=:-"NOT SET"}
  201. fi
  202. }
  203. fn_info_config_cod4(){
  204. if [ ! -f "${servercfgfullpath}" ]; then
  205. servername="${unavailable}"
  206. rconpassword="${unavailable}"
  207. else
  208. servername=$(grep "sv_hostname " "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/set sv_hostname //g' | tr -d '=\";,:' | xargs)
  209. 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]*$//')
  210. # Not Set
  211. servername=${servername:-"NOT SET"}
  212. rconpassword=${rconpassword=:-"NOT SET"}
  213. fi
  214. }
  215. fn_info_config_codwaw(){
  216. if [ ! -f "${servercfgfullpath}" ]; then
  217. servername="${unavailable}"
  218. rconpassword="${unavailable}"
  219. else
  220. servername=$(grep "sv_hostname " "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/set sv_hostname //g' | tr -d '=\";,:' | xargs)
  221. 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]*$//')
  222. # Not Set
  223. servername=${servername:-"NOT SET"}
  224. rconpassword=${rconpassword=:-"NOT SET"}
  225. fi
  226. }
  227. fn_info_config_dontstarve(){
  228. if [ ! -f "${clustercfgfullpath}" ]; then
  229. servername="${unavailable}"
  230. serverpassword="${unavailable}"
  231. maxplayers="${zero}"
  232. gamemode="${unavailable}"
  233. tickrate="${zero}"
  234. masterport="${zero}"
  235. else
  236. 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]*$//')
  237. 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]*$//')
  238. maxplayers=$(grep "max_players" "${clustercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  239. 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]*$//')
  240. tickrate=$(grep "tick_rate" "${clustercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  241. masterport=$(grep "master_port" "${clustercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  242. 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]*$//')
  243. ipsetinconfig=1
  244. ipinconfigvar="bind_ip"
  245. # Not Set
  246. servername=${servername:-"NOT SET"}
  247. serverpassword=${serverpassword:-"NOT SET"}
  248. maxplayers=${maxplayers:-"0"}
  249. gamemode=${gamemode:-"NOT SET"}
  250. tickrate=${tickrate:-"0"}
  251. masterport=${masterport:-"0"}
  252. fi
  253. if [ ! -f "${servercfgfullpath}" ]; then
  254. port="${zero}"
  255. steamauthenticationport="${zero}"
  256. steammasterserverport="${zero}"
  257. else
  258. port=$(grep "server_port" "${servercfgfullpath}" | grep "^server_port" | grep -v "#" | tr -cd '[:digit:]')
  259. steamauthenticationport=$(grep "authentication_port" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  260. steammasterserverport=$(grep "master_server_port" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  261. # Not Set
  262. port=${port:-"0"}
  263. steamauthenticationport=${steamauthenticationport:-"0"}
  264. steammasterserverport=${steammasterserverport:-"0"}
  265. fi
  266. }
  267. fn_info_config_eco(){
  268. if [ ! -f "${servercfgfullpath}" ]; then
  269. servername="${unavailable}"
  270. serverpassword="${unavailable}"
  271. maxplayers="${zero}"
  272. gamemode="${unavailable}"
  273. tickrate="${zero}"
  274. port="${zero}"
  275. webadminport="${zero}"
  276. public=""
  277. else
  278. 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]*$//')
  279. 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]*$//')
  280. 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]*$//')
  281. port=$(grep "\"GameServerPort\"" "${servercfgdir}/Network.eco" | tr -cd '[:digit:]')
  282. webadminport=$(grep "\"WebServerPort\"" "${servercfgdir}/Network.eco" | tr -cd '[:digit:]')
  283. 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]*$//')
  284. # Not Set
  285. servername=${servername:-"NOT SET"}
  286. serverpassword=${serverpassword:-"NOT SET"}
  287. maxplayers=${maxplayers=:-"0"}
  288. port=${port=:-"0"}
  289. webadminport=${webadminport=:-"0"}
  290. public=${public=:-"NOT SET"}
  291. fi
  292. }
  293. fn_info_config_factorio(){
  294. if [ ! -f "${servercfgfullpath}" ]; then
  295. servername="Factorio Server"
  296. serverpassword="${unavailable}"
  297. maxplayers="${zero}"
  298. else
  299. servername="Factorio Server"
  300. 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]*$//')
  301. maxplayers=$(grep "\"max_players\"" "${servercfgfullpath}" | tr -cd '[:digit:]')
  302. # Not Set
  303. servername=${servername:-"NOT SET"}
  304. serverpassword=${serverpassword:-"NOT SET"}
  305. maxplayers=${maxplayers=:-"0"}
  306. fi
  307. }
  308. fn_info_config_inss(){
  309. if [ ! -f "${servercfgfullpath}" ]; then
  310. rconenabled="${unavailable}"
  311. rconpassword="${unavailable}"
  312. rconport="${zero}"
  313. maxplayers="${zero}"
  314. port="${zero}"
  315. queryport="${zero}"
  316. queryenabled="${unavailable}"
  317. rconport="${zero}"
  318. gamemode="${unavailable}"
  319. gameworld="${unavailable}"
  320. else
  321. rconenabled=$(grep "bEnabled" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/bEnabled//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  322. rconpassword=$(grep "Password" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/Password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  323. rconport=$(grep "ListenPort" "${servercfgfullpath}" | tr -cd '[:digit:]')
  324. # Not Set
  325. rconenabled=${rconenabled:-"NOT SET"}
  326. rconpassword=${rconpassword:-"NOT SET"}
  327. rconport=${rconport:-"0"}
  328. fi
  329. }
  330. fn_info_config_minecraft(){
  331. if [ ! -f "${servercfgfullpath}" ]; then
  332. servername="${unavailable}"
  333. rconpassword="${unavailable}"
  334. rconport="${zero}"
  335. maxplayers="${zero}"
  336. port="${zero}"
  337. queryport="${zero}"
  338. queryenabled="${unavailable}"
  339. gamemode="${unavailable}"
  340. gameworld="${unavailable}"
  341. else
  342. servername=$(grep "motd" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/motd//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  343. 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]*$//')
  344. rconport=$(grep "rcon.port" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  345. maxplayers=$(grep "max-players" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  346. port=$(grep "server-port" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  347. queryport=$(grep "query.port" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  348. if [ -z "${queryport}" ]; then
  349. queryport=${port}
  350. fi
  351. 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]*$//')
  352. gamemode=$(grep "gamemode" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  353. 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]*$//')
  354. 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]*$//')
  355. ipsetinconfig=1
  356. ipinconfigvar="server-ip"
  357. # Not Set
  358. servername=${servername:-"NOT SET"}
  359. rconpassword=${rconpassword:-"NOT SET"}
  360. rconport=${rconport:-"NOT SET"}
  361. maxplayers=${maxplayers:-"NOT SET"}
  362. port=${port:-"NOT SET"}
  363. queryport=${queryport:-"NOT SET"}
  364. queryenabled="${queryenabled:-"NOT SET"}"
  365. gamemode=${gamemode:-"NOT SET"}
  366. gameworld=${gameworld:-"NOT SET"}
  367. fi
  368. }
  369. fn_info_config_minecraft_bedrock(){
  370. if [ ! -f "${servercfgfullpath}" ]; then
  371. servername="${unavailable}"
  372. maxplayers="${zero}"
  373. port="${zero}"
  374. port6="${zero}"
  375. queryport="${zero}"
  376. gamemode="${unavailable}"
  377. gameworld="${unavailable}"
  378. else
  379. 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]*$//')
  380. maxplayers=$(grep "max-players" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  381. port=$(grep "server-port\b" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  382. port6=$(grep "server-portv6\b" "${servercfgfullpath}" | sed 's/v6//g' | grep -v "#" | tr -cd '[:digit:]')
  383. queryport=${port}
  384. gamemode=$(grep "gamemode" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/gamemode//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  385. 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]*$//')
  386. # Not Set
  387. servername=${servername:-"NOT SET"}
  388. maxplayers=${maxplayers:-"NOT SET"}
  389. port=${port:-"NOT SET"}
  390. port6=${port6:-"NOT SET"}
  391. queryport=${queryport:-"NOT SET"}
  392. gamemode=${gamemode:-"NOT SET"}
  393. gameworld=${gameworld:-"NOT SET"}
  394. fi
  395. }
  396. fn_info_config_onset(){
  397. if [ ! -f "${servercfgfullpath}" ]; then
  398. servername="${unavailable}"
  399. maxplayers="${zero}"
  400. port="${zero}"
  401. httpport="${zero}"
  402. queryport="${zero}"
  403. else
  404. servername=$(grep -v "servername_short" "${servercfgfullpath}" | grep "servername" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/servername//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//' )
  405. maxplayers=$(grep "maxplayers" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  406. port=$(grep "port" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  407. httpport=$((port-2))
  408. queryport=$((port-1))
  409. # Not Set
  410. servername=${servername:-"NOT SET"}
  411. maxplayers=${maxplayers:-"NOT SET"}
  412. port=${port:-"NOT SET"}
  413. httpport=${httpport:-"NOT SET"}
  414. queryport=${queryport:-"NOT SET"}
  415. fi
  416. }
  417. fn_info_config_mohaa(){
  418. if [ ! -f "${servercfgfullpath}" ]; then
  419. rconpassword="${unavailable}"
  420. servername="${unavailable}"
  421. serverpassword="${unavailable}"
  422. maxplayers="${zero}"
  423. else
  424. rconpassword=$(grep "rconpassword" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/seta rconpassword//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  425. servername=$(grep "sv_hostname" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/seta sv_hostname//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  426. serverpassword=$(grep "g_password" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/seta g_password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  427. maxplayers=$(grep "sv_maxclients" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  428. # Not Set
  429. rconpassword=${rconpassword:-"NOT SET"}
  430. servername=${servername:-"NOT SET"}
  431. serverpassword=${serverpassword:-"NOT SET"}
  432. maxplayers=${maxplayers:-"0"}
  433. fi
  434. }
  435. #Post Scriptum: The bloody Seventh
  436. fn_info_config_pstbs(){
  437. if [ ! -f "${servercfgfullpath}" ]; then
  438. servername="${unavailable}"
  439. maxplayers="${unavailable}"
  440. reservedslots="${unavailable}"
  441. else
  442. servername=$(grep "ServerName=" "${servercfgfullpath}" | sed -e 's/^[ \t]//g' -e '/^#/d' -e 's/ServerName//g' | tr -d '=";,:' | sed -e 's/^[ \t]//' -e 's/[ \t]*$//')
  443. maxplayers=$(grep "MaxPlayers=" "${servercfgfullpath}" | tr -cd '[:digit:]')
  444. reservedslots=$(grep "NumReservedSlots=" "${servercfgfullpath}" | tr -cd '[:digit:]')
  445. fi
  446. if [ ! -f "${servercfgdir}/Rcon.cfg" ]; then
  447. rconport=${unavailable}
  448. rconpassword=${unavailable}
  449. else
  450. rconport=$(grep "Port=" "${servercfgdir}/Rcon.cfg" | tr -cd '[:digit:]')
  451. 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]*$//')
  452. fi
  453. rconport=${rconport:-"0"}
  454. if [ -z "${rconpassword}" ]||[ ${#rconpassword} == 1 ]; then
  455. rconpassword="NOT SET"
  456. fi
  457. servername=${servername:-"NOT SET"}
  458. serverpassword=${serverpassword:-"NOT SET"}
  459. maxplayers=${maxplayers:-"0"}
  460. numreservedslots=${numreservedslots:-"0"}
  461. }
  462. fn_info_config_projectcars(){
  463. if [ ! -f "${servercfgfullpath}" ]; then
  464. servername="${unavailable}"
  465. serverpassword="${unavailable}"
  466. maxplayers="${zero}"
  467. port="${zero}"
  468. queryport="${zero}"
  469. steamport="${zero}"
  470. else
  471. servername=$(grep "name" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/name//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  472. serverpassword=$(grep "password " "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  473. maxplayers=$(grep "MaxPlayers" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]')
  474. port=$(grep "hostPort" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]')
  475. queryport=$(grep "queryPort" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]')
  476. steamport=$(grep "steamPort" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]')
  477. # Not Set
  478. servername=${servername:-"NOT SET"}
  479. serverpassword=${serverpassword:-"NOT SET"}
  480. maxplayers=${maxplayers:-"NOT SET"}
  481. port=${port:-"NOT SET"}
  482. queryport=${queryport:-"NOT SET"}
  483. steamport=${steamport:-"NOT SET"}
  484. fi
  485. }
  486. fn_info_config_projectzomboid(){
  487. if [ ! -f "${servercfgfullpath}" ]; then
  488. servername="${unavailable}"
  489. serverpassword="${unavailable}"
  490. rconpassword="${unavailable}"
  491. maxplayers="${zero}"
  492. port="${zero}"
  493. gameworld="${unavailable}"
  494. else
  495. servername=$(grep "PublicName" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/PublicName//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  496. 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]*$//')
  497. rconpassword=$(grep "RCONPassword" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/RCONPassword//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  498. maxplayers=$(grep "MaxPlayers" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  499. port=$(grep "DefaultPort" "${servercfgfullpath}" | tr -cd '[:digit:]')
  500. 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]*$//')
  501. # Not Set
  502. servername=${servername:-"NOT SET"}
  503. serverpassword=${serverpassword:-"NOT SET"}
  504. rconpassword=${rconpassword:-"NOT SET"}
  505. maxplayers=${maxplayers:-"NOT SET"}
  506. port=${port:-"NOT SET"}
  507. gameworld=${gameworld:-"NOT SET"}
  508. fi
  509. }
  510. fn_info_config_quakeworld(){
  511. if [ ! -f "${servercfgfullpath}" ]; then
  512. rconpassword="${unavailable}"
  513. servername="${unavailable}"
  514. serverpassword="${unavailable}"
  515. maxplayers="${zero}"
  516. port="${zero}"
  517. else
  518. 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]*$//')
  519. 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]*$//')
  520. maxplayers=$(grep "maxclients" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  521. # Not Set
  522. rconpassword=${rconpassword:-"NOT SET"}
  523. servername=${servername:-"NOT SET"}
  524. maxplayers=${maxplayers:-"0"}
  525. fi
  526. }
  527. fn_info_config_quake2(){
  528. if [ ! -f "${servercfgfullpath}" ]; then
  529. rconpassword="${unavailable}"
  530. servername="${unavailable}"
  531. serverpassword="${unavailable}"
  532. maxplayers="${zero}"
  533. else
  534. 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]*$//')
  535. 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]*$//')
  536. maxplayers=$(grep "maxclients" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  537. # Not Set
  538. rconpassword=${rconpassword:-"NOT SET"}
  539. servername=${servername:-"NOT SET"}
  540. maxplayers=${maxplayers:-"0"}
  541. fi
  542. }
  543. fn_info_config_quake3(){
  544. if [ ! -f "${servercfgfullpath}" ]; then
  545. rconpassword="${unavailable}"
  546. servername="${unavailable}"
  547. serverpassword="${unavailable}"
  548. maxplayers="${zero}"
  549. else
  550. 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]*$//')
  551. 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]*$//')
  552. 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]*$//')
  553. maxplayers=$(grep "sv_maxclients" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  554. # Not Set
  555. rconpassword=${rconpassword:-"NOT SET"}
  556. servername=${servername:-"NOT SET"}
  557. serverpassword=${serverpassword:-"NOT SET"}
  558. maxplayers=${maxplayers:-"0"}
  559. fi
  560. }
  561. fn_info_config_quakelive(){
  562. if [ ! -f "${servercfgfullpath}" ]; then
  563. rconpassword="${unavailable}"
  564. servername="${unavailable}"
  565. serverpassword="${unavailable}"
  566. maxplayers="${zero}"
  567. port="${zero}"
  568. queryport="${zero}"
  569. rconport="${zero}"
  570. statsport="${zero}"
  571. else
  572. 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]*$//')
  573. 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]*$//')
  574. 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]*$//')
  575. maxplayers=$(grep "sv_maxClients" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]')
  576. port=$(grep "net_port" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]')
  577. queryport="${port}"
  578. rconport=$(grep "zmq_rcon_port" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]')
  579. statsport=$(grep "zmq_stats_port" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]')
  580. 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]*$//')
  581. ipsetinconfig=1
  582. ipinconfigvar="set net_ip"
  583. # Not Set
  584. rconpassword=${rconpassword:-"NOT SET"}
  585. servername=${servername:-"NOT SET"}
  586. serverpassword=${serverpassword:-"NOT SET"}
  587. maxplayers=${maxplayers:-"0"}
  588. port=${port:-"0"}
  589. queryport=${queryport:-"0"}
  590. rconport=${rconport:-"0"}
  591. statsport=${statsport:-"0"}
  592. fi
  593. }
  594. fn_info_config_realvirtuality(){
  595. if [ ! -f "${servercfgfullpath}" ]; then
  596. servername="${unavailable}"
  597. adminpassword="${unavailable}"
  598. serverpassword="${unavailable}"
  599. maxplayers="${zero}"
  600. else
  601. servername=$(grep "hostname" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/hostname//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  602. adminpassword=$(grep "passwordAdmin" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/passwordAdmin//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  603. serverpassword=$(grep "password" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/password//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  604. maxplayers=$(grep "maxPlayers" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]')
  605. # Not Set
  606. servername=${servername:-"NOT SET"}
  607. adminpassword=${adminpassword:-"NOT SET"}
  608. serverpassword=${serverpassword:-"NOT SET"}
  609. maxplayers=${maxplayers:-"0"}
  610. fi
  611. }
  612. fn_info_config_risingworld(){
  613. if [ ! -f "${servercfgfullpath}" ]; then
  614. servername="${unavailable}"
  615. rconpassword="${unavailable}"
  616. rconport="${zero}"
  617. maxplayers="${zero}"
  618. port="${zero}"
  619. gamemode="${unavailable}"
  620. gameworld="${unavailable}"
  621. else
  622. 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]*$//')
  623. 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]*$//')
  624. 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]*$//')
  625. rconport=$(grep "rcon_port" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  626. maxplayers=$(grep "settings_max_players" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  627. port=$(grep "server_port" "${servercfgfullpath}" | grep -v "database_mysql_server_port" | grep -v "#" | tr -cd '[:digit:]')
  628. gamemode=$(grep "gamemode" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  629. 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]*$//')
  630. 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]*$//')
  631. 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]*$//')
  632. ipsetinconfig=1
  633. ipinconfigvar="server-ip"
  634. # Not Set
  635. servername=${servername:-"NOT SET"}
  636. rconpassword=${rconpassword:-"NOT SET"}
  637. rconport=${rconport:-"NOT SET"}
  638. maxplayers=${maxplayers:-"NOT SET"}
  639. port=${port:-"NOT SET"}
  640. gamemode=${gamemode:-"NOT SET"}
  641. gameworld=${gameworld:-"NOT SET"}
  642. fi
  643. }
  644. fn_info_config_rtcw(){
  645. if [ ! -f "${servercfgfullpath}" ]; then
  646. rconpassword="${unavailable}"
  647. servername="${unavailable}"
  648. serverpassword="${unavailable}"
  649. maxplayers="${zero}"
  650. else
  651. 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]*$//')
  652. 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]*$//')
  653. 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]*$//')
  654. maxplayers=$(grep "sv_maxclients" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  655. # Not Set
  656. rconpassword=${rconpassword:-"NOT SET"}
  657. servername=${servername:-"NOT SET"}
  658. serverpassword=${serverpassword:-"NOT SET"}
  659. maxplayers=${maxplayers:-"0"}
  660. fi
  661. }
  662. fn_info_config_seriousengine35(){
  663. if [ ! -f "${servercfgfullpath}" ]; then
  664. servername="${unavailable}"
  665. rconpassword="${unavailable}"
  666. gamemode="${unavailable}"
  667. maxplayers="${zero}"
  668. port="${zero}"
  669. else
  670. 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]*$//')
  671. 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]*$//')
  672. 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]*$//')
  673. maxplayers=$(grep "gam_ctMaxPlayers" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]')
  674. port=$(grep "prj_uwPort" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]')
  675. # Not Set
  676. servername=${servername:-"NOT SET"}
  677. rconpassword=${rconpassword:-"NOT SET"}
  678. gamemode=${gamemode:-"NOT SET"}
  679. maxplayers=${maxplayers:-"0"}
  680. port=${port:-"0"}
  681. fi
  682. }
  683. #StickyBots
  684. fn_info_config_sbots(){
  685. if [ ! -f "${servercfgfullpath}" ]; then
  686. servername="${unavailable}"
  687. maxplayers="${unavailable}"
  688. else
  689. servername=$(grep "ServerName=" "${servercfgfullpath}" | sed -e 's/^[ \t]//g' -e '/^#/d' -e 's/ServerName//g' | tr -d '=";,:' | sed -e 's/^[ \t]//' -e 's/[ \t]*$//')
  690. maxplayers=$(grep "MaxPlayers=" "${servercfgfullpath}" | tr -cd '[:digit:]')
  691. fi
  692. servername=${servername:-"NOT SET"}
  693. serverpassword=${serverpassword:-"NOT SET"}
  694. maxplayers=${maxplayers:-"0"}
  695. }
  696. fn_info_config_sof2(){
  697. if [ ! -f "${servercfgfullpath}" ]; then
  698. rconpassword="${unavailable}"
  699. servername="${unavailable}"
  700. serverpassword="${unavailable}"
  701. maxplayers="${zero}"
  702. else
  703. 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]*$//')
  704. 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]*$//')
  705. 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]*$//')
  706. maxplayers=$(grep "sv_maxclients" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  707. # Not Set
  708. rconpassword=${rconpassword:-"NOT SET"}
  709. servername=${servername:-"NOT SET"}
  710. serverpassword=${serverpassword:-"NOT SET"}
  711. maxplayers=${maxplayers:-"0"}
  712. fi
  713. }
  714. fn_info_config_source(){
  715. if [ ! -f "${servercfgfullpath}" ]; then
  716. servername="${unavailable}"
  717. serverpassword="${unavailable}"
  718. rconpassword="${unavailable}"
  719. else
  720. servername=$(grep "hostname" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/hostname//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  721. 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]*$//')
  722. 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]*$//')
  723. # Not Set
  724. servername=${servername:-"NOT SET"}
  725. serverpassword=${serverpassword:-"NOT SET"}
  726. rconpassword=${rconpassword:-"NOT SET"}
  727. fi
  728. }
  729. fn_info_config_starbound(){
  730. if [ ! -f "${servercfgfullpath}" ]; then
  731. servername="${unavailable}"
  732. queryenabled="${unavailable}"
  733. rconenabled="${unavailable}"
  734. rconpassword="${unavailable}"
  735. port="21025"
  736. queryport="21025"
  737. rconport="21026"
  738. maxplayers="8"
  739. else
  740. servername=$(grep "serverName" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e 's/serverName//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  741. queryenabled=$(grep "runQueryServer" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e 's/runQueryServer//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  742. rconenabled=$(grep "runRconServer" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e 's/runRconServer//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  743. rconpassword=$(grep "rconServerPassword" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e 's/rconServerPassword//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  744. port=$(grep "gameServerPort" "${servercfgfullpath}" | tr -cd '[:digit:]')
  745. queryport=$(grep "queryServerPort" "${servercfgfullpath}" | tr -cd '[:digit:]')
  746. rconport=$(grep "rconServerPort" "${servercfgfullpath}" | tr -cd '[:digit:]')
  747. maxplayers=$(grep "maxPlayers" "${servercfgfullpath}" | tr -cd '[:digit:]')
  748. # Not Set
  749. servername=${servername:-"NOT SET"}
  750. queryenabled=${queryenabled:-"NOT SET"}
  751. rconenabled=${rconenabled:-"NOT SET"}
  752. rconpassword=${rconpassword:-"NOT SET"}
  753. port=${port:-"21025"}
  754. queryport=${queryport:-"21025"}
  755. rconport=${rconport:-"21026"}
  756. maxplayers=${maxplayers:-"8"}
  757. fi
  758. }
  759. fn_info_config_teamspeak3(){
  760. if [ ! -f "${servercfgfullpath}" ]; then
  761. dbplugin="${unavailable}"
  762. port="9987"
  763. queryport="10011"
  764. fileport="30033"
  765. else
  766. dbplugin=$(grep "dbplugin=" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/dbplugin=//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  767. port=$(grep "default_voice_port" "${servercfgfullpath}" | tr -cd '[:digit:]')
  768. queryport=$(grep "query_port" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  769. fileport=$(grep "filetransfer_port" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  770. ip=$(grep "voice_ip" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/voice_ip//g' | sed 's/,.*//' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  771. ipsetinconfig=1
  772. ipinconfigvar="voice_ip"
  773. # Not Set
  774. port=${port:-"9987"}
  775. queryport=${queryport:-"10011"}
  776. fileport=${fileport:-"30033"}
  777. fi
  778. }
  779. fn_info_config_mumble(){
  780. if [ ! -f "${servercfgfullpath}" ]; then
  781. port="64738"
  782. queryport="${port}"
  783. servername="Mumble"
  784. else
  785. port=$(grep "port" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^;/d' -e 's/port//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  786. queryport="${port}"
  787. ip=$(grep "host=" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^;/d' -e 's/host=//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  788. ipsetinconfig=1
  789. ipinconfigvar="voice_ip"
  790. # Not Set
  791. port=${port:-"64738"}
  792. queryport=${queryport:-"64738"}
  793. servername="Mumble Port ${port}"
  794. fi
  795. }
  796. fn_info_config_samp(){
  797. if [ ! -f "${servercfgfullpath}" ]; then
  798. servername="unnamed server"
  799. serverpassword="${unavailable}"
  800. rconpassword="${unavailable}"
  801. port="7777"
  802. maxplayers="50"
  803. else
  804. servername=$(grep "hostname" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/hostname//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  805. 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]*$//')
  806. port=$(grep "port" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  807. maxplayers=$(grep "maxplayers" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  808. # Not Set
  809. servername=${servername:-"NOT SET"}
  810. rconpassword=${rconpassword:-"NOT SET"}
  811. port=${port:-"8303"}
  812. maxplayers=${maxplayers:-"12"}
  813. fi
  814. }
  815. fn_info_config_teeworlds(){
  816. if [ ! -f "${servercfgfullpath}" ]; then
  817. servername="unnamed server"
  818. serverpassword="${unavailable}"
  819. rconpassword="${unavailable}"
  820. port="8303"
  821. queryport="8303"
  822. maxplayers="12"
  823. else
  824. 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]*$//')
  825. 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]*$//')
  826. 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]*$//')
  827. port=$(grep "sv_port" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  828. queryport="${port}"
  829. maxplayers=$(grep "sv_max_clients" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  830. # Not Set
  831. servername=${servername:-"NOT SET"}
  832. serverpassword=${serverpassword:-"NOT SET"}
  833. rconpassword=${rconpassword:-"NOT SET"}
  834. port=${port:-"8303"}
  835. queryport=${port:-"8303"}
  836. maxplayers=${maxplayers:-"12"}
  837. fi
  838. }
  839. fn_info_config_terraria(){
  840. if [ ! -f "${servercfgfullpath}" ]; then
  841. servername="${unavailable}"
  842. port="${zero}"
  843. gameworld="${unavailable}"
  844. maxplayers="${zero}"
  845. queryport="${zero}"
  846. else
  847. servername=$(grep "worldname" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/worldname//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  848. port=$(grep "port" "${servercfgfullpath}" | tr -cd '[:digit:]')
  849. queryport=${port:-"0"}
  850. 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]*$//')
  851. maxplayers=$(grep "maxplayers" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]')
  852. # Not Set
  853. servername=${servername:-"NOT SET"}
  854. port=${port:-"0"}
  855. queryport=${queryport:-"0"}
  856. gameworld=${gameworld:-"NOT SET"}
  857. maxplayers=${maxplayers:-"0"}
  858. fi
  859. }
  860. fn_info_config_towerunite(){
  861. if [ ! -f "${servercfgfullpath}" ]; then
  862. servername="${unavailable}"
  863. maxplayers="${zero}"
  864. else
  865. servername=$(grep "ServerTitle" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^--/d' -e 's/ServerTitle//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  866. maxplayers=$(grep "MaxPlayers" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  867. # Not Set
  868. servername=${servername:-"NOT SET"}
  869. maxplayers=${maxplayers:-"0"}
  870. fi
  871. }
  872. fn_info_config_unreal(){
  873. if [ ! -f "${servercfgfullpath}" ]; then
  874. servername="${unavailable}"
  875. serverpassword="${unavailable}"
  876. adminpassword="${unavailable}"
  877. port="${zero}"
  878. queryport="${zero}"
  879. queryportgs="${zero}"
  880. webadminenabled="${unavailable}"
  881. webadminport="${zero}"
  882. webadminuser="${unavailable}"
  883. webadminpass="${unavailable}"
  884. else
  885. 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$//')
  886. 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$//')
  887. 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$//')
  888. port=$(grep "Port" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' | grep "^Port" | grep -v "#" | tr -cd '[:digit:]')
  889. queryport=$((port + 1))
  890. queryportgs=$(grep "OldQueryPortNumber" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  891. 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$//')
  892. webadminport=$(grep "ListenPort" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  893. 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$//')
  894. 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$//')
  895. # Not Set
  896. servername=${servername:-"NOT SET"}
  897. serverpassword=${serverpassword:-"NOT SET"}
  898. adminpassword=${adminpassword:-"NOT SET"}
  899. port=${port:-"0"}
  900. queryport=${queryport:-"0"}
  901. queryportgs=${queryportgs:-"0"}
  902. webadminenabled=${webadminenabled:-"NOT SET"}
  903. webadminport=${webadminport:-"0"}
  904. webadminuser=${webadminuser:-"NOT SET"}
  905. webadminpass=${webadminpass:-"NOT SET"}
  906. fi
  907. }
  908. fn_info_config_unreal2(){
  909. if [ ! -f "${servercfgfullpath}" ]; then
  910. servername="${unavailable}"
  911. serverpassword="${unavailable}"
  912. adminpassword="${unavailable}"
  913. port="${zero}"
  914. queryport="${zero}"
  915. queryportgs="${zero}"
  916. webadminenabled="${unavailable}"
  917. webadminport="${zero}"
  918. webadminuser="${unavailable}"
  919. webadminpass="${unavailable}"
  920. else
  921. 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$//')
  922. 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$//')
  923. 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$//')
  924. port=$(grep "Port" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' | grep "^Port" | grep -v "#" | tr -cd '[:digit:]')
  925. queryport=$((port + 1))
  926. queryportgs=$(grep "OldQueryPortNumber" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  927. 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$//')
  928. webadminport=$(grep "ListenPort" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  929. 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$//')
  930. webadminpass="${adminpassword}"
  931. # Not Set
  932. servername=${servername:-"NOT SET"}
  933. serverpassword=${serverpassword:-"NOT SET"}
  934. adminpassword=${adminpassword:-"NOT SET"}
  935. port=${port:-"0"}
  936. queryport=${queryport:-"0"}
  937. queryportgs=${queryportgs:-"0"}
  938. webadminenabled=${webadminenabled:-"NOT SET"}
  939. webadminport=${webadminport:-"0"}
  940. webadminuser=${webadminuser:-"NOT SET"}
  941. webadminpass=${webadminpass:-"NOT SET"}
  942. fi
  943. }
  944. fn_info_config_unreal3(){
  945. if [ ! -f "${servercfgfullpath}" ]; then
  946. servername="${unavailable}"
  947. serverpassword="${unavailable}"
  948. adminpassword="${unavailable}"
  949. webadminenabled="${unavailable}"
  950. webadminport="${zero}"
  951. webadminuser="${unavailable}"
  952. webadminpass="${unavailable}"
  953. else
  954. servername=$(grep "ServerName" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/ServerName//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  955. adminpassword=$(grep "AdminPassword" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/AdminPassword//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  956. 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]*$//')
  957. webadminport=$(grep "ListenPort" "${servercfgdir}/UTWeb.ini" | grep -v "#" | tr -cd '[:digit:]')
  958. webadminuser="Admin"
  959. webadminpass=$(grep "AdminPassword" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/AdminPassword//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  960. # Not Set
  961. servername=${servername:-"NOT SET"}
  962. serverpassword=${serverpassword:-"NOT SET"}
  963. adminpassword=${adminpassword:-"NOT SET"}
  964. port=${port:-"0"}
  965. webadminenabled=${webadminenabled:-"NOT SET"}
  966. webadminport=${webadminport:-"0"}
  967. webadminuser=${webadminuser:-"NOT SET"}
  968. webadminpass=${webadminpass:-"NOT SET"}
  969. fi
  970. }
  971. fn_info_config_ut(){
  972. if [ ! -f "${servercfgfullpath}" ]; then
  973. servername="${unavailable}"
  974. else
  975. servername=$(grep "ServerName" "${servercfgfullpath}" | awk -F '=' '{print $2}')
  976. # Not set
  977. servername=${servername:-"NOT SET"}
  978. fi
  979. }
  980. fn_info_config_warfork(){
  981. if [ ! -f "${servercfgfullpath}" ]; then
  982. rconpassword="${unavailable}"
  983. servername="${unavailable}"
  984. maxplayers="${zero}"
  985. else
  986. 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]*$//')
  987. 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]*$//')
  988. maxplayers=$(grep "sv_maxclients" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  989. # Not Set
  990. rconpassword=${rconpassword:-"NOT SET"}
  991. servername=${servername:-"NOT SET"}
  992. maxplayers=${maxplayers:-"0"}
  993. fi
  994. }
  995. fn_info_config_kf2(){
  996. if [ ! -f "${servercfgfullpath}" ]; then
  997. servername="${unavailable}"
  998. serverpassword="${unavailable}"
  999. adminpassword="${unavailable}"
  1000. port="${unavailable}"
  1001. queryport="${unavailable}"
  1002. webadminenabled="${unavailable}"
  1003. webadminport="${zero}"
  1004. webadminuser="${unavailable}"
  1005. webadminpass="${unavailable}"
  1006. else
  1007. servername=$(grep "ServerName" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/ServerName//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  1008. serverpassword=$(grep "GamePassword" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/GamePassword//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  1009. adminpassword=$(grep "AdminPassword" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/AdminPassword//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  1010. port=$(grep "Port" "${servercfgdir}/LinuxServer-KFEngine.ini" | sed -e 's/^[ \t]*//g' | grep "^Port" | grep -v "#" | tr -cd '[:digit:]')
  1011. 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]*$//')
  1012. webadminport=$(grep "ListenPort" "${servercfgdir}/KFWeb.ini" | grep -v "#" | tr -cd '[:digit:]')
  1013. webadminuser="Admin"
  1014. webadminpass=$(grep "AdminPassword" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/AdminPassword//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  1015. # Not Set
  1016. servername=${servername:-"NOT SET"}
  1017. serverpassword=${serverpassword:-"NOT SET"}
  1018. adminpassword=${adminpassword:-"NOT SET"}
  1019. port=${port:-"0"}
  1020. webadminenabled=${webadminenabled:-"NOT SET"}
  1021. webadminport=${webadminport:-"0"}
  1022. webadminuser=${webadminuser:-"NOT SET"}
  1023. webadminpass=${webadminpass:-"NOT SET"}
  1024. fi
  1025. }
  1026. fn_info_config_sdtd(){
  1027. if [ ! -f "${servercfgfullpath}" ]; then
  1028. servername="${unavailable}"
  1029. serverpassword="${unavailable}"
  1030. port="${zero}"
  1031. queryport="${zero}"
  1032. webadminenabled="${unavailable}"
  1033. webadminport="${zero}"
  1034. webadminpass="${unavailable}"
  1035. telnetenabled="${unavailable}"
  1036. telnetport="${zero}"
  1037. telnetpass="${unavailable}"
  1038. maxplayers="${unavailable}"
  1039. gamemode="${unavailable}"
  1040. gameworld="${unavailable}"
  1041. else
  1042. servername=$(grep "ServerName" "${servercfgfullpath}" | sed 's/^.*value="//' | cut -f1 -d"\"")
  1043. serverpassword=$(grep "ServerPassword" "${servercfgfullpath}" | sed 's/^.*value="//' | cut -f1 -d"\"")
  1044. port=$(grep "ServerPort" "${servercfgfullpath}" | tr -cd '[:digit:]')
  1045. queryport=${port:-"0"}
  1046. webadminenabled=$(grep "ControlPanelEnabled" "${servercfgfullpath}" | sed 's/^.*value="//' | cut -f1 -d"\"")
  1047. webadminport=$(grep "ControlPanelPort" "${servercfgfullpath}" | tr -cd '[:digit:]')
  1048. webadminpass=$(grep "ControlPanelPassword" "${servercfgfullpath}" | sed 's/^.*value="//' | cut -f1 -d"\"")
  1049. telnetenabled=$(grep "TelnetEnabled" "${servercfgfullpath}" | sed 's/^.*value="//' | cut -f1 -d"\"")
  1050. telnetport=$(grep "TelnetPort" "${servercfgfullpath}" | tr -cd '[:digit:]')
  1051. telnetpass=$(grep "TelnetPassword" "${servercfgfullpath}" | sed 's/^.*value="//' | cut -f1 -d"\"")
  1052. maxplayers=$(grep "ServerMaxPlayerCount" "${servercfgfullpath}" | tr -cd '[:digit:]')
  1053. gamemode=$(grep "GameMode" "${servercfgfullpath}" | sed 's/^.*value="//' | cut -f1 -d"\"")
  1054. gameworld=$(grep "GameWorld" "${servercfgfullpath}" | sed 's/^.*value="//' | cut -f1 -d"\"")
  1055. # Not Set
  1056. servername=${servername:-"NOT SET"}
  1057. serverpassword=${serverpassword:-"NOT SET"}
  1058. port=${port:-"0"}
  1059. queryport=${queryport:-"0"}
  1060. webadminenabled=${webadminenabled:-"NOT SET"}
  1061. webadminport=${webadminport:-"0"}
  1062. webadminpass=${webadminpass:-"NOT SET"}
  1063. telnetenabled=${telnetenabled:-"NOT SET"}
  1064. telnetport=${telnetport:-"0"}
  1065. telnetpass=${telnetpass:-"NOT SET"}
  1066. maxplayers=${maxplayers:-"NOT SET"}
  1067. gamemode=${gamemode:-"NOT SET"}
  1068. gameworld=${gameworld:-"NOT SET"}
  1069. fi
  1070. }
  1071. fn_info_config_mta(){
  1072. if [ ! -f "${servercfgfullpath}" ]; then
  1073. ip="${zero}"
  1074. port="${unavailable}"
  1075. httpport="${unavailable}"
  1076. ase="${unavailable}"
  1077. servername="${unavailable}"
  1078. serverpassword="${unavailable}"
  1079. maxplayers="${zero}"
  1080. else
  1081. 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:]')
  1082. 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:]')
  1083. 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 "<")
  1084. 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 "<")
  1085. 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:]')
  1086. 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:]')
  1087. if [ "${ase}" == "1" ]; then
  1088. ase="Enabled"
  1089. else
  1090. ase="Disabled"
  1091. fi
  1092. # 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 "<")
  1093. # ipsetinconfig=1
  1094. # ipinconfigvar="serverip"
  1095. # Not Set
  1096. port=${port:-"22003"}
  1097. httpport=${httpport:-"22005"}
  1098. ase=${ase:-"Disabled"}
  1099. servername=${servername:-"NOT SET"}
  1100. serverpassword=${serverpassword:-"NOT SET"}
  1101. maxplayers=${maxplayers:-"0"}
  1102. fi
  1103. }
  1104. fn_info_config_wolfensteinenemyterritory(){
  1105. if [ ! -f "${servercfgfullpath}" ]; then
  1106. rconpassword="${unavailable}"
  1107. servername="${unavailable}"
  1108. serverpassword="${unavailable}"
  1109. maxplayers="${zero}"
  1110. port="${zero}"
  1111. queryport="${zero}"
  1112. else
  1113. port=$(grep "set net_port" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]')
  1114. queryport="${port}"
  1115. 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]*$//')
  1116. 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]*$//')
  1117. 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]*$//')
  1118. maxplayers=$(grep "set sv_maxclients" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]')
  1119. 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]*$//')
  1120. ipsetinconfig=1
  1121. ipinconfigvar="set net_ip"
  1122. # Not Set
  1123. rconpassword=${rconpassword:-"NOT SET"}
  1124. servername=${servername:-"NOT SET"}
  1125. serverpassword=${serverpassword:-"NOT SET"}
  1126. maxplayers=${maxplayers:-"0"}
  1127. port=${port:-"27960"}
  1128. queryport=${queryport:-"27960"}
  1129. fi
  1130. }
  1131. fn_info_config_etlegacy(){
  1132. if [ ! -f "${servercfgfullpath}" ]; then
  1133. rconpassword="${unavailable}"
  1134. servername="${unavailable}"
  1135. serverpassword="${unavailable}"
  1136. maxplayers="${zero}"
  1137. port="${zero}"
  1138. queryport="${zero}"
  1139. else
  1140. port=$(grep "set net_port" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]')
  1141. queryport="${port}"
  1142. 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]*$//')
  1143. 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]*$//')
  1144. 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]*$//')
  1145. maxplayers=$(grep "set sv_maxclients" "${servercfgfullpath}" | grep -v "//" | tr -cd '[:digit:]')
  1146. 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]*$//')
  1147. ipsetinconfig=1
  1148. ipinconfigvar="set net_ip"
  1149. # Not Set
  1150. rconpassword=${rconpassword:-"NOT SET"}
  1151. servername=${servername:-"NOT SET"}
  1152. serverpassword=${serverpassword:-"NOT SET"}
  1153. maxplayers=${maxplayers:-"0"}
  1154. port=${port:-"27960"}
  1155. queryport=${queryport:-"27960"}
  1156. fi
  1157. }
  1158. fn_info_config_wurmunlimited(){
  1159. if [ ! -f "${servercfgfullpath}" ]; then
  1160. port="${zero}"
  1161. queryport="${zero}"
  1162. rconpassword="${unavailable}"
  1163. servername="${unavailable}"
  1164. serverpassword="${unavailable}"
  1165. adminpassword="${unavailable}"
  1166. maxplayers="${zero}"
  1167. else
  1168. port=$(grep "EXTERNALPORT=" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  1169. queryport=$(grep "QUERYPORT=" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  1170. servername=$(grep "SERVERNAME=" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/SERVERNAME//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  1171. serverpassword=$(grep "SERVERPASSWORD=" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/SERVERPASSWORD//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  1172. adminpassword=$(grep "ADMINPWD=" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/ADMINPWD//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  1173. maxplayers=$(grep "MAXPLAYERS=" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
  1174. ip=$(grep "IP" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/IP//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  1175. ipsetinconfig=1
  1176. ipinconfigvar="IP"
  1177. # Not Set
  1178. port=${port:-"3724"}
  1179. queryport=${queryport:-"27017"}
  1180. servername=${servername:-"NOT SET"}
  1181. serverpassword=${serverpassword:-"NOT SET"}
  1182. adminpassword=${adminpassword:-"NOT SET"}
  1183. maxplayers=${maxplayers:-"0"}
  1184. fi
  1185. }
  1186. fn_info_config_squad(){
  1187. if [ ! -f "${servercfgfullpath}" ]; then
  1188. servername="${unavailable}"
  1189. maxplayers="${unavailable}"
  1190. else
  1191. servername=$(grep "ServerName=" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^#/d' -e 's/ServerName//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  1192. maxplayers=$(grep "MaxPlayers=" "${servercfgfullpath}" | tr -cd '[:digit:]')
  1193. fi
  1194. if [ ! -f "${servercfgdir}/Rcon.cfg" ]; then
  1195. rconport=${unavailable}
  1196. rconpassword=${unavailable}
  1197. else
  1198. rconport=$(grep "Port=" "${servercfgdir}/Rcon.cfg" | tr -cd '[:digit:]')
  1199. 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]*$//')
  1200. fi
  1201. rconport=${rconport:-"0"}
  1202. if [ -z "${rconpassword}" ]||[ ${#rconpassword} == 1 ]; then
  1203. rconpassword="NOT SET"
  1204. fi
  1205. servername=${servername:-"NOT SET"}
  1206. serverpassword=${serverpassword:-"NOT SET"}
  1207. maxplayers=${maxplayers:-"0"}
  1208. }
  1209. fn_info_config_stationeers(){
  1210. if [ ! -f "${servercfgfullpath}" ]; then
  1211. servername="${unavailable}"
  1212. serverpassword="${unavailable}"
  1213. rconpassword="${unavailable}"
  1214. maxplayers="${unavailable}"
  1215. else
  1216. servername=$(grep "SERVERNAME" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/SERVERNAME//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  1217. 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]*$//')
  1218. rconpassword=$(grep "RCONPASSWORD" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/RCONPASSWORD//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  1219. maxplayers=$(grep "MAXPLAYER" "${servercfgfullpath}" | sed -e 's/^[ \t]*//g' -e '/^\//d' -e 's/MAXPLAYER//g' | tr -d '=\";,:' | sed -e 's/^[ \t]*//' -e 's/[ \t]*$//')
  1220. # Not Set
  1221. servername=${servername:-"NOT SET"}
  1222. serverpassword=${serverpassword:-"NOT SET"}
  1223. rconpassword=${rconpassword:-"NOT SET"}
  1224. maxplayers=${maxplayers:-"0"}
  1225. fi
  1226. }
  1227. fn_info_config_mordhau(){
  1228. if [ ! -f "${servercfgfullpath}" ]; then
  1229. servername="${unavailable}"
  1230. serverpassword="${unavailable}"
  1231. rconpassword="${unavailable}"
  1232. maxplayers="${unavailable}"
  1233. else
  1234. servername=$(grep "ServerName" "${servercfgfullpath}" | awk -F '=' '{print $2}')
  1235. serverpassword=$(grep "ServerPassword" "${servercfgfullpath}" | awk -F '=' '{print $2}')
  1236. rconpassword=$(grep "AdminPassword" "${servercfgfullpath}" | awk -F '=' '{print $2}')
  1237. maxplayers=$(grep "MaxSlots" "${servercfgfullpath}" | awk -F '=' '{print $2}')
  1238. # Not set
  1239. servername=${servername:-"NOT SET"}
  1240. serverpassword=${serverpassword:-"NOT SET"}
  1241. rconpassword=${rconpassword:-"NOT SET"}
  1242. maxplayers=${maxplayers:-"0"}
  1243. fi
  1244. }
  1245. fn_info_config_avorion() {
  1246. if [ ! -f "${servercfgfullpath}" ]; then
  1247. maxplayers="${unavailable}"
  1248. servername="${unavailable}"
  1249. serverpassword="${unavailable}"
  1250. rconpassword="${unavailable}"
  1251. rconport="${unavailable}"
  1252. rconenabled="${unavailable}"
  1253. queryport="${unavailable}"
  1254. else
  1255. maxplayers=$(grep "maxPlayers=" "${servercfgfullpath}" | sed 's/maxPlayers=//')
  1256. servername=$(grep "name=" "${servercfgfullpath}" | sed 's/name=//')
  1257. serverpassword=$(grep "password=" "${servercfgfullpath}" | sed 's/password=//')
  1258. rconpassword=$(grep "rconPassword=" "${servercfgfullpath}" | sed 's/rconPassword=//')
  1259. rconport=$(grep "rconPort=" "${servercfgfullpath}" | sed 's/rconPort=//')
  1260. if [ -n "${rconpassword}" ]; then
  1261. rconenabled="true"
  1262. queryport="${rconport}"
  1263. fi
  1264. # Not set
  1265. maxplayers=${maxplayers:-"NOT SET"}
  1266. servername=${servername:-"NOT SET"}
  1267. serverpassword=${serverpassword:-"NOT SET"}
  1268. rconpassword=${rconpassword:-"NOT SET"}
  1269. rconport=${rconport:-"0"}
  1270. rconenabled=${rconenabled:-"false"}
  1271. queryport=${queryport:-"0"}
  1272. fi
  1273. }
  1274. fn_info_config_soldat(){
  1275. if [ ! -f "${servercfgfullpath}" ]; then
  1276. adminpassword="${unavailable}"
  1277. maxplayers="${unavailable}"
  1278. port="${zero}"
  1279. queryport="${zero}"
  1280. servername="${unavailable}"
  1281. serverpassword="${unavailable}"
  1282. else
  1283. adminpassword=$(grep "Admin_Password=" "${servercfgfullpath}" | awk -F '=' '{print $2}')
  1284. maxplayers=$(grep "Max_Players=" "${servercfgfullpath}" | tr -cd '[:digit:]')
  1285. port=$(grep "Port=" "${servercfgfullpath}" | tr -cd '[:digit:]')
  1286. queryport="${port}"
  1287. servername=$(grep "Server_Name=" "${servercfgfullpath}" | awk -F '=' '{print $2}')
  1288. serverpassword=$(grep "Game_Password=" "${servercfgfullpath}" | awk -F '=' '{print $2}')
  1289. # Not set
  1290. adminpassword=${adminpassword:-"NOT SET"}
  1291. maxplayers=${maxplayers:-"0"}
  1292. port=${port:-"23073"}
  1293. queryport=${queryport:-"23083"}
  1294. servername=${servername:-"NOT SET"}
  1295. serverpassword=${serverpassword:-"NOT SET"}
  1296. fi
  1297. }
  1298. # Assetto Corsa
  1299. if [ "${shortname}" == "ac" ]; then
  1300. fn_info_config_assettocorsa
  1301. # ARK: Survival Evolved
  1302. elif [ "${shortname}" == "ark" ]; then
  1303. fn_info_config_ark
  1304. # Avorion
  1305. elif [ "${shortname}" == "av" ]; then
  1306. fn_info_config_avorion
  1307. # Ballistic Overkill
  1308. elif [ "${shortname}" == "bo" ]; then
  1309. fn_info_config_ballistic_overkill
  1310. # Barotrauma
  1311. elif [ "${shortname}" == "bt" ]; then
  1312. fn_info_config_barotrauma
  1313. # Battalion 1944
  1314. elif [ "${shortname}" == "bt1944" ]; then
  1315. fn_info_config_battalion1944
  1316. # Battlefield: 1942
  1317. elif [ "${shortname}" == "bf1942" ]; then
  1318. fn_info_config_bf1942
  1319. # Call of Duty
  1320. elif [ "${shortname}" == "cod" ]||[ "${shortname}" == "coduo" ]; then
  1321. fn_info_config_cod
  1322. # Call of Duty 2
  1323. elif [ "${shortname}" == "cod2" ]; then
  1324. fn_info_config_cod2
  1325. # Call of Duty 4
  1326. elif [ "${shortname}" == "cod4" ]; then
  1327. fn_info_config_cod4
  1328. # Call of Duty: World at War
  1329. elif [ "${shortname}" == "codwaw" ]; then
  1330. fn_info_config_codwaw
  1331. # Dont Starve Together
  1332. elif [ "${shortname}" == "dst" ]; then
  1333. fn_info_config_dontstarve
  1334. # Eco
  1335. elif [ "${shortname}" == "eco" ]; then
  1336. fn_info_config_eco
  1337. # Factorio
  1338. elif [ "${shortname}" == "fctr" ]; then
  1339. fn_info_config_factorio
  1340. # Insurgency: Sandstorm
  1341. elif [ "${shortname}" == "inss" ]; then
  1342. fn_info_config_inss
  1343. # Just Cause 2
  1344. elif [ "${shortname}" == "jc2" ]; then
  1345. fn_info_config_justcause2
  1346. # Just Cause 3
  1347. elif [ "${shortname}" == "jc3" ]; then
  1348. fn_info_config_justcause3
  1349. # Killing Floor 2
  1350. elif [ "${shortname}" == "kf2" ]; then
  1351. fn_info_config_kf2
  1352. # Medal of Honor: Allied Assault
  1353. elif [ "${shortname}" == "mohaa" ]; then
  1354. fn_info_config_mohaa
  1355. # QuakeWorld
  1356. elif [ "${shortname}" == "qw" ]; then
  1357. fn_info_config_quakeworld
  1358. # Quake 2
  1359. elif [ "${shortname}" == "q2" ]; then
  1360. fn_info_config_quake2
  1361. # Quake 3
  1362. elif [ "${shortname}" == "q3" ]; then
  1363. fn_info_config_quake3
  1364. # Quake Live
  1365. elif [ "${shortname}" == "ql" ]; then
  1366. fn_info_config_quakelive
  1367. # Minecraft
  1368. elif [ "${shortname}" == "mc" ]; then
  1369. fn_info_config_minecraft
  1370. # Minecraft Bedrock
  1371. elif [ "${shortname}" == "mcb" ]; then
  1372. fn_info_config_minecraft_bedrock
  1373. # Onset
  1374. elif [ "${shortname}" == "onset" ]; then
  1375. fn_info_config_onset
  1376. # Post Scriptum: The Bloody Seventh
  1377. elif [ "${shortname}" == "pstbs" ]; then
  1378. fn_info_config_pstbs
  1379. # Project Cars
  1380. elif [ "${shortname}" == "pc" ]; then
  1381. fn_info_config_projectcars
  1382. # Project Zomboid
  1383. elif [ "${shortname}" == "pz" ]; then
  1384. fn_info_config_projectzomboid
  1385. # ARMA 3
  1386. elif [ "${shortname}" == "arma3" ]; then
  1387. fn_info_config_realvirtuality
  1388. # Return to Castle Wolfenstein
  1389. elif [ "${shortname}" == "rtcw" ]; then
  1390. fn_info_config_rtcw
  1391. # Rising World
  1392. elif [ "${shortname}" == "rw" ]; then
  1393. fn_info_config_risingworld
  1394. # Serious Sam
  1395. elif [ "${shortname}" == "ss3" ]; then
  1396. fn_info_config_seriousengine35
  1397. # Soldat
  1398. elif [ "${shortname}" == "sol" ]; then
  1399. fn_info_config_soldat
  1400. # Soldier Of Fortune 2: Gold Edition
  1401. elif [ "${shortname}" == "sof2" ]; then
  1402. fn_info_config_sof2
  1403. # Source Engine Games
  1404. elif [ "${engine}" == "source" ]||[ "${engine}" == "goldsrc" ]; then
  1405. fn_info_config_source
  1406. # Starbound
  1407. elif [ "${shortname}" == "sb" ]; then
  1408. fn_info_config_starbound
  1409. # Teamspeak 3
  1410. elif [ "${shortname}" == "ts3" ]; then
  1411. fn_info_config_teamspeak3
  1412. # Mumble
  1413. elif [ "${shortname}" == "mumble" ]; then
  1414. fn_info_config_mumble
  1415. # San Andreas Multiplayer
  1416. elif [ "${shortname}" == "samp" ]; then
  1417. fn_info_config_samp
  1418. # StickyBots
  1419. elif [ "${shortname}" == "pstbs" ]; then
  1420. fn_info_config_sbots
  1421. # Teeworlds
  1422. elif [ "${shortname}" == "tw" ]; then
  1423. fn_info_config_teeworlds
  1424. # Terraria
  1425. elif [ "${shortname}" == "terraria" ]; then
  1426. fn_info_config_terraria
  1427. # Tower Unite
  1428. elif [ "${shortname}" == "tu" ]; then
  1429. fn_info_config_towerunite
  1430. # Unreal engine
  1431. elif [ "${engine}" == "unreal" ]; then
  1432. fn_info_config_unreal
  1433. # Unreal 2 engine
  1434. elif [ "${engine}" == "unreal2" ]; then
  1435. fn_info_config_unreal2
  1436. # Unreal 3 engine
  1437. elif [ "${engine}" == "unreal3" ]; then
  1438. fn_info_config_unreal3
  1439. elif [ "${shortname}" == "ut" ]; then
  1440. fn_info_config_ut
  1441. # 7 Day To Die (unity3d)
  1442. elif [ "${shortname}" == "sdtd" ]; then
  1443. fn_info_config_sdtd
  1444. elif [ "${shortname}" == "wet" ]; then
  1445. fn_info_config_wolfensteinenemyterritory
  1446. elif [ "${shortname}" == "wf" ]; then
  1447. fn_info_config_warfork
  1448. elif [ "${shortname}" == "etl" ]; then
  1449. fn_info_config_etlegacy
  1450. elif [ "${shortname}" == "wurm" ]; then
  1451. fn_info_config_wurmunlimited
  1452. elif [ "${shortname}" == "mta" ]; then
  1453. fn_info_config_mta
  1454. elif [ "${shortname}" == "squad" ]; then
  1455. fn_info_config_squad
  1456. # Stationeers
  1457. elif [ "${shortname}" == "st" ]; then
  1458. fn_info_config_stationeers
  1459. elif [ "${shortname}" == "mh" ]; then
  1460. fn_info_config_mordhau
  1461. fi