| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787 |
- #!/bin/bash
- # LGSM fn_details_config function
- # Author: Daniel Gibbs
- # Website: http://gameservermanagers.com
- lgsm_version="061115"
- # Description: Gets specific details from config files.
- ## Examples of filtering to get info from config files
- # sed 's/foo//g' - remove foo
- # tr -cd '[:digit:]' leave only digits
- # tr -d '=\"; ' remove selected charectors =\";
- # grep -v "foo" filter out lines that contain foo
- fn_servercfgfullpath(){
- if [ ! -f "${servercfgfullpath}" ]; then
- servercfgfullpath="\e[0;31mMISSING!\e[0m ${servercfgfullpath}"
- fi
- }
- ## Just Cause 2
- if [ "${engine}" == "avalanche" ]; then
- # server name
- if [ -f "${servercfgfullpath}" ]; then
- servername=$(grep "Name" "${servercfgfullpath}" | sed 's/Name//g' | tr -d '=", \n')
- if [ ! -n "${servername}" ]; then
- servername="NOT SET"
- fi
- else
- servername="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # ip
- if [ -f "${servercfgfullpath}" ]; then
- # check if the ip exists in the config file. Failing this will fall back to the default.
- configipcheck=$(grep "BindIP" "${servercfgfullpath}" | sed 's/BindIP//g' | tr -d '=", \n')
- fi
- if [ -n "${configipcheck}" ]; then
- ip=$(grep "BindIP" "${servercfgfullpath}" | sed 's/BindIP//g' | tr -d '=", \n')
- fi
- # server password
- if [ -f "${servercfgfullpath}" ]; then
- serverpassword=$(grep "Password" "${servercfgfullpath}" | sed 's/Password//g' | tr -d '=", \n')
- if [ ! -n "${serverpassword}" ]; then
- serverpassword="NOT SET"
- fi
- else
- serverpassword="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # slots
- if [ -f "${servercfgfullpath}" ]; then
- slots=$(grep "MaxPlayers" "${servercfgfullpath}" | tr -cd '[:digit:]')
- if [ ! -n "${slots}" ]; then
- slots="NOT SET"
- fi
- else
- slots="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # port
- if [ -f "${servercfgfullpath}" ]; then
- port=$(grep "BindPort" "${servercfgfullpath}" | tr -cd '[:digit:]')
- fi
- if [ ! -n "${port}" ]; then
- port="0"
- fi
- fn_servercfgfullpath
- ## Dont Starve Together
- elif [ "${engine}" == "dontstarve" ]; then
- # server name
- if [ -f "${servercfgfullpath}" ]; then
- servername=$(grep "default_server_name = " "${servercfgfullpath}" | sed 's/default_server_name = //g')
- if [ ! -n "${servername}" ]; then
- servername="NOT SET"
- fi
- else
- servername="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # server password
- if [ -f "${servercfgfullpath}" ]; then
- serverpassword=$(grep "server_password = " "${servercfgfullpath}" | grep -v "#" | sed 's/server_password = //g')
- if [ ! -n "${serverpassword}" ]; then
- serverpassword="NOT SET"
- fi
- else
- serverpassword="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # slots
- if [ -f "${servercfgfullpath}" ]; then
- slots=$(grep "max_players" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
- if [ ! -n "${slots}" ]; then
- slots="NOT SET"
- fi
- else
- slots="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # game mode
- if [ -f "${servercfgfullpath}" ]; then
- gamemode=$(grep "game_mode = " "${servercfgfullpath}" | grep -v "#" | sed 's/game_mode = //g')
- if [ ! -n "${gamemode}" ]; then
- gamemode="NOT SET"
- fi
- else
- gamemode="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # tickrate
- if [ -f "${servercfgfullpath}" ]; then
- tickrate=$(grep "tick_rate" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
- if [ ! -n "${tickrate}" ]; then
- tickrate="NOT SET"
- fi
- else
- tickrate="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # port
- if [ -f "${servercfgfullpath}" ]; then
- port=$(grep "server_port" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
- fi
- if [ ! -n "${port}" ]; then
- port="0"
- fi
- fn_servercfgfullpath
- ## Project Zomboid
- elif [ "${engine}" == "projectzomboid" ]; then
- # server name
- if [ -f "${servercfgfullpath}" ]; then
- servername=$(grep "PublicName=" "${servercfgfullpath}" | sed 's/PublicName=//g' | tr -d '=", \n')
- if [ ! -n "${servername}" ]; then
- servername="NOT SET"
- fi
- else
- servername="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # slots
- if [ -f "${servercfgfullpath}" ]; then
- slots=$(grep "MaxPlayers=" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
- if [ ! -n "${slots}" ]; then
- slots="NOT SET"
- fi
- else
- slots="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # port
- if [ -f "${servercfgfullpath}" ]; then
- port=$(grep "DefaultPort=" "${servercfgfullpath}" | tr -cd '[:digit:]')
- fi
- if [ ! -n "${port}" ]; then
- port="0"
- fi
- fn_servercfgfullpath
- # ARMA 3
- elif [ "${engine}" == "realvirtuality" ]; then
- # server name
- if [ -f "${servercfgfullpath}" ]; then
- servername=$(grep "hostname" "${servercfgfullpath}" | grep -v "//" | sed -e 's/\<hostname\>//g' | tr -d '=\"; ')
- if [ ! -n "${servername}" ]; then
- servername="NOT SET"
- fi
- else
- servername="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # admin password
- if [ -f "${servercfgfullpath}" ]; then
- adminpassword=$(grep "passwordAdmin" "${servercfgfullpath}" | grep -v "//" | sed -e 's/\passwordAdmin//g' | tr -d '=\"; ')
- if [ ! -n "${adminpassword}" ]; then
- adminpassword="NOT SET"
- fi
- else
- adminpassword="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # server password
- if [ -f "${servercfgfullpath}" ]; then
- serverpassword=$(grep "password =" "${servercfgfullpath}" | grep -v "//" | sed -e 's/\password//g' | tr -d '=\"; ')
- if [ ! -n "${serverpassword}" ]; then
- serverpassword="NOT SET"
- fi
- else
- serverpassword="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # slots
- if [ -f "${servercfgfullpath}" ]; then
- slots=$(grep "maxPlayers" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
- if [ ! -n "${slots}" ]; then
- slots="NOT SET"
- fi
- else
- slots="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # port
- if [ -f "${servercfgfullpath}" ]; then
- port=$(grep "serverport=" "${servercfgfullpath}" | grep -v // | tr -d '\r' | tr -cd '[:digit:]')
- fi
- if [ ! -n "${port}" ]; then
- port="0"
- fi
- # query port
- if [ -f "${servercfgfullpath}" ]; then
- queryport=$(grep "steamqueryport=" "${servercfgfullpath}" | grep -v // | tr -d '\r' | tr -cd '[:digit:]')
- fi
- if [ ! -n "${queryport}" ]; then
- queryport="0"
- fi
- # master port
- if [ -f "${servercfgfullpath}" ]; then
- masterport=$(grep "steamport=" "${servercfgfullpath}" | grep -v // | tr -d '\r' | tr -cd '[:digit:]')
- fi
- if [ ! -n "${masterport}" ]; then
- masterport="0"
- fi
- fn_servercfgfullpath
- elif [ "${engine}" == "seriousengine35" ]; then
- # server name
- if [ -f "${servercfgfullpath}" ]; then
- servername=$(grep "prj_strMultiplayerSessionName" "${servercfgfullpath}" | sed 's/prj_strMultiplayerSessionName = //g' | tr -d '=\"; ')
- if [ ! -n "${servername}" ]; then
- servername="NOT SET"
- fi
- else
- servername="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # rcon password
- if [ -f "${servercfgfullpath}" ]; then
- rconpassword=$(grep "rcts_strAdminPassword" "${servercfgfullpath}" | sed 's/rcts_strAdminPassword = //g' | tr -d '=\"; ')
- if [ ! -n "${rconpassword}" ]; then
- rconpassword="NOT SET"
- fi
- else
- rconpassword="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # slots
- if [ -f "${servercfgfullpath}" ]; then
- slots=$(grep "gam_ctMaxPlayers" "${servercfgfullpath}" | grep -v "#" | tr -cd '[:digit:]')
- if [ ! -n "${slots}" ]; then
- slots="NOT SET"
- fi
- else
- slots="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # game mode
- if [ -f "${servercfgfullpath}" ]; then
- gamemode=$(grep "gam_idGameMode" "${servercfgfullpath}" | grep -v "#" | sed 's/gam_idGameMode//g' | tr -d '=\"; ')
- if [ ! -n "${gamemode}" ]; then
- gamemode="NOT SET"
- fi
- else
- gamemode="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # port
- if [ -f "${servercfgfullpath}" ]; then
- port=$(grep "prj_uwPort" "${servercfgfullpath}" | tr -d '\r' | tr -cd '[:digit:]')
- fi
- if [ ! -n "${port}" ]; then
- port="0"
- fi
- # query port
- if [ -f "${servercfgfullpath}" ]; then
- queryport=$((${port} + 1))
- fi
- if [ ! -n "${queryport}" ]; then
- queryport="0"
- fi
- fn_servercfgfullpath
- elif [ "${engine}" == "source" ] || [ "${engine}" == "goldsource" ]; then
- # server name
- if [ -f "${servercfgfullpath}" ]; then
- servername=$(grep "hostname" "${servercfgfullpath}" | sed 's/hostname //g' | sed 's/"//g')
- if [ ! -n "${servername}" ]; then
- servername="NOT SET"
- fi
- else
- servername="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # server password
- if [ -f "${servercfgfullpath}" ]; then
- serverpassword=$(grep "sv_password" "${servercfgfullpath}" | sed 's/sv_password //g' | sed 's/"//g')
- if [ ! -n "${serverpassword}" ]; then
- serverpassword="NOT SET"
- fi
- else
- serverpassword="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # rcon password
- if [ -f "${servercfgfullpath}" ]; then
- rconpassword=$(grep "rcon_password" "${servercfgfullpath}" | sed 's/rcon_password //g' | sed 's/"//g')
- if [ ! -n "${rconpassword}" ]; then
- rconpassword="NOT SET"
- fi
- else
- rconpassword="\e[0;31mUNAVAILABLE\e[0m"
- fi
- fn_servercfgfullpath
- elif [ "${engine}" == "spark" ]; then
- # query port
- if [ -f "${servercfgfullpath}" ]; then
- queryport=$((port + 1))
- fi
- if [ ! -n "${queryport}" ]; then
- queryport="0"
- fi
- fn_servercfgfullpath
- elif [ "${gamename}" == "Teamspeak 3" ]; then
- # ip
- if [ -f "${servercfgfullpath}" ]; then
- # check if the ip exists in the config file. Failing this will fall back to the default.
- configipcheck=$(grep "voice_ip=" "${servercfgfullpath}" | sed 's/\voice_ip=//g')
- fi
- if [ -n "${configipcheck}" ]; then
- ip=$(grep "voice_ip=" "${servercfgfullpath}" | sed 's/\voice_ip=//g')
- fi
- # dbplugin
- if [ -f "${servercfgfullpath}" ]; then
- dbplugin=$(grep "dbplugin=" "${servercfgfullpath}" | sed 's/\dbplugin=//g')
- if [ ! -n "${dbplugin}" ]; then
- dbplugin="NOT SET"
- fi
- else
- dbplugin="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # port
- if [ -f "${servercfgfullpath}" ]; then
- port=$(grep "default_voice_port=" "${servercfgfullpath}" | tr -cd '[:digit:]')
- fi
- if [ ! -n "${port}" ]; then
- port="9987"
- fi
- # query port
- if [ -f "${servercfgfullpath}" ]; then
- queryport=$(grep "query_port=" "${servercfgfullpath}" | tr -cd '[:digit:]')
- fi
- if [ ! -n "${queryport}" ]; then
- queryport="10011"
- fi
- # file port
- if [ -f "${servercfgfullpath}" ]; then
- fileport=$(grep "filetransfer_port=" "${servercfgfullpath}" | tr -cd '[:digit:]')
- fi
- if [ ! -n "${fileport}" ]; then
- fileport="30033"
- fi
- fn_servercfgfullpath
- elif [ "${engine}" == "teeworlds" ]; then
- # server name
- if [ -f "${servercfgfullpath}" ]; then
- servername=$(grep "sv_name" "${servercfgfullpath}" | sed 's/sv_name //g' | sed 's/"//g')
- if [ ! -n "${servername}" ]; then
- servername="unnamed server"
- fi
- else
- servername="unnamed server"
- fi
- # server password
- if [ -f "${servercfgfullpath}" ]; then
- serverpassword=$(grep "password " "${servercfgfullpath}" | awk '!/sv_rcon_password/'| sed 's/password //g' | tr -d '=\"; ')
- if [ ! -n "${serverpassword}" ]; then
- serverpassword="NOT SET"
- fi
- else
- serverpassword="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # rcon password
- if [ -f "${servercfgfullpath}" ]; then
- rconpassword=$(grep "sv_rcon_password" "${servercfgfullpath}" | sed 's/sv_rcon_password //g' | tr -d '=\"; ')
- if [ ! -n "${rconpassword}" ]; then
- rconpassword="NOT SET"
- fi
- else
- rconpassword="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # port
- if [ -f "${servercfgfullpath}" ]; then
- port=$(grep "sv_port" "${servercfgfullpath}" | tr -cd '[:digit:]')
- fi
- if [ ! -n "${port}" ]; then
- port="8303"
- fi
- # slots
- if [ -f "${servercfgfullpath}" ]; then
- slots=$(grep "sv_max_clients" "${servercfgfullpath}" | tr -cd '[:digit:]')
- if [ ! -n "${slots}" ]; then
- slots="12"
- fi
- else
- slots="12"
- fi
- fn_servercfgfullpath
- elif [ "${engine}" == "terraria" ]; then
- # port
- if [ -f "${servercfgfullpath}" ]; then
- port=$(grep "port=" "${servercfgfullpath}" | tr -cd '[:digit:]')
- fi
- if [ ! -n "${port}" ]; then
- port="0"
- fi
- elif [ "${engine}" == "unity3d" ]; then
- # server name
- if [ -f "${servercfgfullpath}" ]; then
- servername=$(grep "ServerName" "${servercfgfullpath}" | sed 's/^.*value="//' | cut -f1 -d"\"")
- if [ ! -n "${servername}" ]; then
- servername="NOT SET"
- fi
- else
- servername="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # server password
- if [ -f "${servercfgfullpath}" ]; then
- serverpassword=$(grep "ServerPassword" "${servercfgfullpath}" | sed 's/^.*value="//' | cut -f1 -d"\"")
- if [ ! -n "${serverpassword}" ]; then
- serverpassword="NOT SET"
- fi
- else
- serverpassword="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # webadmin enabled
- if [ -f "${servercfgfullpath}" ]; then
- webadminenabled=$(grep "ControlPanelEnabled" "${servercfgfullpath}" | sed 's/^.*value="//' | cut -f1 -d"\"")
- if [ ! -n "${webadminenabled}" ]; then
- webadminenabled="NOT SET"
- fi
- else
- webadminenabled="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # webadmin port
- if [ -f "${servercfgfullpath}" ]; then
- webadminport=$(grep "ControlPanelPort" "${servercfgfullpath}" | tr -cd '[:digit:]')
- fi
- if [ ! -n "${webadminport}" ]; then
- webadminport="0"
- fi
- # webadmin enabled
- if [ -f "${servercfgfullpath}" ]; then
- webadminenabled=$(grep "ControlPanelEnabled" "${servercfgfullpath}" | sed 's/^.*value="//' | cut -f1 -d"\"")
- if [ ! -n "${webadminenabled}" ]; then
- webadminenabled="NOT SET"
- fi
- else
- webadminenabled="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # webadmin password
- if [ -f "${servercfgfullpath}" ]; then
- webadminpass=$(grep "ControlPanelPassword" "${servercfgfullpath}" | sed 's/^.*value="//' | cut -f1 -d"\"")
- if [ ! -n "${webadminpass}" ]; then
- webadminpass="NOT SET"
- fi
- else
- webadminpass="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # telnet enabled
- if [ -f "${servercfgfullpath}" ]; then
- telnetenabled=$(grep "TelnetEnabled" "${servercfgfullpath}" | sed 's/^.*value="//' | cut -f1 -d"\"")
- if [ ! -n "${telnetenabled}" ]; then
- telnetenabled="NOT SET"
- fi
- else
- telnetenabled="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # telnet port
- if [ -f "${servercfgfullpath}" ]; then
- telnetport=$(grep "TelnetPort" "${servercfgfullpath}" | tr -cd '[:digit:]')
- fi
- if [ ! -n "${telnetport}" ]; then
- telnetport="0"
- fi
- # telnet password
- if [ -f "${servercfgfullpath}" ]; then
- telnetpass=$(grep "TelnetEnabled" "${servercfgfullpath}" | sed 's/^.*value="//' | cut -f1 -d"\"")
- if [ ! -n "${telnetpass}" ]; then
- telnetpass="NOT SET"
- fi
- else
- telnetpass="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # slots
- if [ -f "${servercfgfullpath}" ]; then
- slots=$(grep "ServerMaxPlayerCount" "${servercfgfullpath}" | tr -cd '[:digit:]')
- if [ ! -n "${slots}" ]; then
- slots="NOT SET"
- fi
- else
- slots="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # game mode
- if [ -f "${servercfgfullpath}" ]; then
- gamemode=$(grep "GameMode" "${servercfgfullpath}" | sed 's/^.*value="//' | cut -f1 -d"\"")
- if [ ! -n "${gamemode}" ]; then
- gamemode="NOT SET"
- fi
- else
- gamemode="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # game world
- if [ -f "${servercfgfullpath}" ]; then
- gameworld=$(grep "GameWorld" "${servercfgfullpath}" | sed 's/^.*value="//' | cut -f1 -d"\"")
- if [ ! -n "${gameworld}" ]; then
- gameworld="NOT SET"
- fi
- else
- gameworld="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # port
- if [ -f "${servercfgfullpath}" ]; then
- port=$(grep "sv_port" "${servercfgfullpath}" | tr -cd '[:digit:]')
- fi
- if [ ! -n "${port}" ]; then
- port="0"
- fi
- # query port
- if [ -f "${servercfgfullpath}" ]; then
- queryport=$((port + 1))
- fi
- if [ ! -n "${queryport}" ]; then
- queryport="0"
- fi
- fn_servercfgfullpath
- elif [ "${engine}" == "unreal" ] || [ "${engine}" == "unreal2" ]; then
- # server name
- if [ -f "${servercfgfullpath}" ]; then
- servername=$(grep "ServerName=" "${servercfgfullpath}" | sed 's/ServerName=//g')
- if [ ! -n "${servername}" ]; then
- servername="NOT SET"
- fi
- else
- servername="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # server password
- if [ -f "${servercfgfullpath}" ]; then
- serverpassword=$(grep "GamePassword=" "${servercfgfullpath}" | sed 's/GamePassword=//g')
- if [ ! -n "${serverpassword}" ]; then
- serverpassword="NOT SET"
- fi
- else
- serverpassword="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # admin password
- if [ -f "${servercfgfullpath}" ]; then
- adminpassword=$(grep "AdminPassword=" "${servercfgfullpath}" | sed 's/AdminPassword=//g')
- if [ ! -n "${adminpassword}" ]; then
- adminpassword="NOT SET"
- fi
- else
- adminpassword="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # port
- if [ -f "${servercfgfullpath}" ]; then
- port=$(grep "Port=" "${servercfgfullpath}" | grep -v "Master" | grep -v "LAN" | grep -v "Proxy" | grep -v "Listen" | tr -d '\r' | tr -cd '[:digit:]')
- fi
- if [ ! -n "${port}" ]; then
- port="0"
- fi
- # query port
- if [ -f "${servercfgfullpath}" ]; then
- queryport=$((port + 1))
- fi
- if [ ! -n "${queryport}" ]; then
- queryport="0"
- fi
- # gamespy query port
- if [ -f "${servercfgfullpath}" ]; then
- gsqueryport=$(grep "OldQueryPortNumber=" "${servercfgfullpath}" | tr -d '\r' | tr -cd '[:digit:]')
- fi
- if [ ! -n "${gsqueryport}" ]; then
- gsqueryport="0"
- fi
- # query port
- if [ -f "${servercfgfullpath}" ]; then
- udplinkport=$((port + 2))
- fi
- if [ ! -n "${udplinkport}" ]; then
- udplinkport="0"
- fi
- # webadmin enabled
- if [ -f "${servercfgfullpath}" ]; then
- webadminenabled=$(grep "bEnabled=" "${servercfgfullpath}" | sed 's/bEnabled=//g' | tr -d '\r')
- if [ ! -n "${webadminenabled}" ]; then
- webadminenabled="NOT SET"
- fi
- else
- webadminenabled="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # webadmin port
- if [ -f "${servercfgfullpath}" ]; then
- webadminport=$(grep "ListenPort=" "${servercfgfullpath}" | tr -d '\r' | tr -cd '[:digit:]')
- fi
- if [ ! -n "${webadminport}" ]; then
- webadminport="0"
- fi
- if [ "${engine}" == "unreal" ]; then
- # webadmin user
- if [ -f "${servercfgfullpath}" ]; then
- webadminuser=$(grep "AdminUsername=" "${servercfgfullpath}" | sed 's/\AdminUsername=//g')
- if [ ! -n "${webadminuser}" ]; then
- webadminuser="NOT SET"
- fi
- else
- webadminuser="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # webadmin password
- if [ -f "${servercfgfullpath}" ]; then
- webadminpass=$(grep "UTServerAdmin.UTServerAdmin" "${servercfgfullpath}" -A 2 | grep "AdminPassword=" | sed 's/\AdminPassword=//g')
- if [ ! -n "${webadminpass}" ]; then
- webadminpass="NOT SET"
- fi
- else
- webadminpass="\e[0;31mUNAVAILABLE\e[0m"
- fi
- else
- # webadmin user
- if [ -f "${servercfgfullpath}" ]; then
- webadminuser=$(grep "AdminName=" "${servercfgfullpath}" | sed 's/\AdminName=//g')
- if [ ! -n "${webadminuser}" ]; then
- webadminuser="NOT SET"
- fi
- else
- webadminuser="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # webadmin password
- if [ -f "${servercfgfullpath}" ]; then
- webadminpass=$(grep "AdminPassword=" "${servercfgfullpath}" | sed 's/\AdminPassword=//g')
- if [ ! -n "${webadminpass}" ]; then
- webadminpass="NOT SET"
- fi
- else
- webadminpass="\e[0;31mUNAVAILABLE\e[0m"
- fi
- fi
- fn_servercfgfullpath
- elif [ "${gamename}" == "ARK: Survivial Evolved" ]; then
- # server name
- if [ -f "${servercfgfullpath}" ]; then
- servername=$(grep "SessionName=" "${servercfgfullpath}" | sed 's/SessionName=//g')
- if [ ! -n "${servername}" ]; then
- servername="NOT SET"
- fi
- else
- servername="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # server password
- if [ -f "${servercfgfullpath}" ]; then
- serverpassword=$(grep "ServerPassword=" "${servercfgfullpath}" | sed 's/ServerPassword=//g')
- if [ ! -n "${serverpassword}" ]; then
- serverpassword="NOT SET"
- fi
- else
- serverpassword="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # admin password
- if [ -f "${servercfgfullpath}" ]; then
- adminpassword=$(grep "ServerAdminPassword=" "${servercfgfullpath}" | sed 's/ServerAdminPassword=//g')
- if [ ! -n "${adminpassword}" ]; then
- adminpassword="NOT SET"
- fi
- else
- adminpassword="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # slots
- if [ -f "${servercfgfullpath}" ]; then
- slots=$(grep "MaxPlayers=" "${servercfgfullpath}" | tr -cd '[:digit:]')
- if [ ! -n "${slots}" ]; then
- slots="NOT SET"
- fi
- else
- slots="\e[0;31mUNAVAILABLE\e[0m"
- fi
- # port
- if [ -f "${servercfgfullpath}" ]; then
- port=$(grep "Port=" "${servercfgfullpath}" | grep -v "RCONPort=" | grep -v "QueryPort=" | tr -cd '[:digit:]')
- fi
- if [ ! -n "${port}" ]; then
- port="0"
- fi
- # rcon port
- if [ -f "${servercfgfullpath}" ]; then
- rconport=$(grep "RCONPort=" "${servercfgfullpath}" | tr -cd '[:digit:]')
- fi
- if [ ! -n "${rconport}" ]; then
- rconport="0"
- fi
- # query port
- if [ -f "${servercfgfullpath}" ]; then
- queryport=$(grep "QueryPort=" "${servercfgfullpath}" | tr -cd '[:digit:]')
- fi
- if [ ! -n "${queryport}" ]; then
- queryport="0"
- fi
- fn_servercfgfullpath
- fi
|