fn_details_config 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. #!/bin/bash
  2. # LGSM fn_details_config function
  3. # Author: Daniel Gibbs
  4. # Website: http://gameservermanagers.com
  5. # Version: 160715
  6. # Description: Gets specific details from config files.
  7. if [ -e "${servercfgfullpath}" ]||[ "${engine}" == "spark" ]||[ "${gamename}" == "Teamspeak 3" ]; then
  8. if [ "${engine}" == "avalanche" ]; then
  9. servername=$(grep -s Name "${servercfgfullpath}"|sed 's/Name//g'|tr -d '=\"; '|sed 's/,//g')
  10. # check if the ip exists in the config file. Failing this will fall back to the default.
  11. configipcheck=$(grep BindIP "${servercfgfullpath}"|sed 's/BindIP//g'|tr -d '=\"; '|sed 's/,//g')
  12. if [ -n "${configipcheck}" ]; then
  13. ip=$(grep BindIP "${servercfgfullpath}"|sed 's/BindIP//g'|tr -d '=\"; '|sed 's/,//g')
  14. fi
  15. port=$(grep BindPort "${servercfgfullpath}"|sed 's/BindPort//g'|tr -d '=\"; '|sed 's/,//g')
  16. serverpassword=$(grep -s Password "${servercfgfullpath}"|sed 's/Password//g'|tr -d '=\"; '|sed 's/,//g')
  17. slots=$(grep -s MaxPlayers "${servercfgfullpath}"|sed 's/MaxPlayers//g'|tr -d '=\"; '|sed 's/,//g')
  18. elif [ "${engine}" == "dontstarve" ]; then
  19. servername=$(grep -s "default_server_name = " "${servercfgfullpath}"|sed 's/default_server_name = //g'|tr -d '=\";'|sed 's/,//g')
  20. port=$(grep -s "server_port = " "${servercfgfullpath}"|sed 's/server_port = //g'|tr -cd [:digit:])
  21. elif [ "${engine}" == "projectzomboid" ]; then
  22. servername=$(grep -s PublicName= "${servercfgfullpath}"|sed 's/PublicName=//g'|tr -d '=\";'|sed 's/,//g')
  23. port=$(grep -s DefaultPort= "${servercfgfullpath}"|sed 's/DefaultPort=//g'|tr -cd [:digit:])
  24. elif [ "${engine}" == "realvirtuality" ]; then
  25. servername=$(grep -s hostname "${servercfgfullpath}"| grep -v //|sed -e 's/\<hostname\>//g'| tr -d '=\"; ')
  26. port=$(grep -s serverport= "${servercfgfullpath}"|grep -v //|tr -d '\r'|tr -cd [:digit:])
  27. queryport=$(grep -s steamqueryport= "${servercfgfullpath}"|grep -v //|tr -d '\r'|tr -cd [:digit:])
  28. masterport=$(grep -s steamport= "${servercfgfullpath}"|grep -v //|tr -d '\r'|tr -cd [:digit:])
  29. elif [ "${engine}" == "seriousengine35" ]; then
  30. servername=$(grep -s prj_strMultiplayerSessionName "${servercfgfullpath}"|sed 's/prj_strMultiplayerSessionName = //g'|sed 's/"//g'|sed 's/;//g')
  31. rcon=$(grep -s rcts_strAdminPassword "${servercfgfullpath}"|sed 's/rcts_strAdminPassword = //g'|sed 's/"//g'|sed 's/;//g')
  32. port=$(grep -s prj_uwPort "${servercfgfullpath}"|tr -d '\r'|tr -cd [:digit:])
  33. queryport=$((${port} + 1))
  34. elif [ "${engine}" == "source" ]||[ "${engine}" == "goldsource" ]; then
  35. servername=$(grep -s hostname "${servercfgfullpath}"|sed 's/hostname //g'|sed 's/"//g')
  36. rcon=$(grep -s rcon_password "${servercfgfullpath}"|sed 's/rcon_password //g'|sed 's/"//g')
  37. elif [ "${engine}" == "spark" ]; then
  38. queryport=$((${port} + 1))
  39. elif [ "${gamename}" == "Teamspeak 3" ]; then
  40. if [ -s "${servercfgfullpath}" ]; then
  41. port=$(grep default_voice_port= "${servercfgfullpath}"|tr -cd [:digit:])
  42. queryport=$(grep query_port= "${servercfgfullpath}"|tr -cd [:digit:])
  43. fileport=$(grep filetransfer_port= "${servercfgfullpath}"|tr -cd [:digit:])
  44. ip=$(grep voice_ip= "${servercfgfullpath}"|sed 's/\voice_ip=//g')
  45. dbplugin=$(grep dbplugin= "${servercfgfullpath}"|sed 's/\dbplugin=//g')
  46. else
  47. port="9987"
  48. queryport="10011"
  49. fileport="30033"
  50. fi
  51. elif [ "${engine}" == "unity3d" ]; then
  52. servername=$(grep ServerName "${servercfgfullpath}"|sed 's/^.*value="//'|cut -f1 -d"\"")
  53. port=$(grep ServerPort "${servercfgfullpath}"|tr -cd [:digit:])
  54. queryport=$((${port} + 1))
  55. webadminenabled=$(grep ControlPanelEnabled "${servercfgfullpath}"|sed 's/^.*value="//'|cut -f1 -d"\"")
  56. webadminport=$(grep ControlPanelPort "${servercfgfullpath}"|tr -cd [:digit:])
  57. webadminpass=$(grep ControlPanelPassword "${servercfgfullpath}"|sed 's/^.*value="//'|cut -f1 -d"\"")
  58. telnetenabled=$(grep TelnetEnabled "${servercfgfullpath}"|sed 's/^.*value="//'|cut -f1 -d"\"")
  59. telnetport=$(grep TelnetPort "${servercfgfullpath}"|tr -cd [:digit:])
  60. telnetpass=$(grep TelnetPassword "${servercfgfullpath}"|sed 's/^.*value="//'|cut -f1 -d"\"")
  61. if [ -z "${telnetpass}" ]; then
  62. telnetpass="\e[0;31mno password set\e[0m"
  63. fi
  64. elif [ "${engine}" == "unreal" ]||[ "${engine}" == "unreal2" ]; then
  65. servername=$(grep -s ServerName= ${servercfgfullpath}|sed 's/ServerName=//g')
  66. port=$(grep Port= "${servercfgfullpath}"|grep -v Master|grep -v LAN|grep -v Proxy|grep -v Listen|tr -d '\r'|tr -cd [:digit:])
  67. queryport=$((${port} + 1))
  68. gsqueryport=$(grep OldQueryPortNumber= "${servercfgfullpath}"|tr -d '\r'|tr -cd [:digit:])
  69. udplinkport=$((${port} + 2))
  70. webadminenabled=$(grep bEnabled= "${servercfgfullpath}"|sed 's/bEnabled=//g'|tr -d '\r')
  71. webadminport=$(grep ListenPort= "${servercfgfullpath}"|tr -d '\r'|tr -cd [:digit:])
  72. if [ "${engine}" == "unreal" ]; then
  73. webadminuser=$(grep AdminUsername= "${servercfgfullpath}"|sed 's/\AdminUsername=//g')
  74. webadminpass=$(grep UTServerAdmin.UTServerAdmin "${servercfgfullpath}" -A 2| grep AdminPassword=|sed 's/\AdminPassword=//g')
  75. else
  76. webadminuser=$(grep AdminName= "${servercfgfullpath}"|sed 's/\AdminName=//g')
  77. webadminpass=$(grep AdminPassword= "${servercfgfullpath}"|sed 's/\AdminPassword=//g')
  78. fi
  79. fi
  80. else
  81. servername="\e[0;31mSERVER NAME MISSING!\e[0m"
  82. port="0"
  83. queryport="0"
  84. webadminenabled="\e[0;31mCONFIG FILE MISSING!\e[0m"
  85. webadminport="0"
  86. webadminpass="\e[0;31mCONFIG FILE MISSING!\e[0m"
  87. telnetenabled="\e[0;31mCONFIG FILE MISSING!\e[0m"
  88. telnetport="0"
  89. telnetpass="\e[0;31mCONFIG FILE MISSING!\e[0m"
  90. rcon="\e[0;31mCONFIG FILE MISSING!\e[0m"
  91. servercfgfullpath="${servercfgfullpath} \e[0;31mCONFIG FILE MISSING!!\e[0m"
  92. fi