Browse Source

Merged release/170219 into master

pull/1329/head 170219
Daniel Gibbs 8 years ago
parent
commit
5cccd70741
  1. 2
      7DaysToDie/sdtdserver
  2. 2
      ARKSurvivalEvolved/arkserver
  3. 2
      Arma3/arma3server
  4. 198
      BallisticOverkill/boserver
  5. 2
      Battlefield1942/bf1942server
  6. 2
      BlackMesa/bmdmserver
  7. 2
      BladeSymphony/bsserver
  8. 2
      BrainBread2/bb2server
  9. 8
      CONTRIBUTING.md
  10. 2
      CallOfDuty/codserver
  11. 2
      CallOfDuty2/cod2server
  12. 2
      CallOfDuty4/cod4server
  13. 2
      CallOfDutyUnitedOffensive/coduoserver
  14. 2
      CallOfDutyWorldAtWar/codwawserver
  15. 2
      CodenameCURE/ccserver
  16. 2
      CounterStrike/csserver
  17. 2
      CounterStrikeConditionZero/csczserver
  18. 2
      CounterStrikeGlobalOffensive/csgoserver
  19. 2
      CounterStrikeSource/cssserver
  20. 2
      DayOfDefeat/dodserver
  21. 2
      DayOfDefeatSource/dodsserver
  22. 2
      DayOfInfamy/doiserver
  23. 2
      DeathmatchClassic/dmcserver
  24. 2
      DontStarveTogether/dstserver
  25. 2
      DoubleActionBoogaloo/dabserver
  26. 2
      EmpiresMod/emserver
  27. 2
      Factorio/fctrserver
  28. 2
      FistfulOfFrags/fofserver
  29. 2
      GarrysMod/gmodserver
  30. 2
      GoldenEyeSource/gesserver
  31. 2
      HalfLife2Deathmatch/hl2dmserver
  32. 2
      HalfLifeDeathmatch/hldmserver
  33. 2
      HalfLifeDeathmatchSource/hldmsserver
  34. 4
      Hurtworld/hwserver
  35. 2
      Insurgency/insserver
  36. 2
      JustCause2/jc2server
  37. 2
      KillingFloor/kfserver
  38. 2
      Left4Dead/l4dserver
  39. 2
      Left4Dead2/l4d2server
  40. 2
      Minecraft/mcserver
  41. 2
      MultiTheftAuto/mtaserver
  42. 2
      Mumble/mumbleserver
  43. 2
      NS2Combat/ns2cserver
  44. 2
      NaturalSelection2/ns2server
  45. 2
      NoMoreRoomInHell/nmrihserver
  46. 2
      OpposingForce/opforserver
  47. 2
      PiratesVikingandKnightsII/pvkiiserver
  48. 2
      ProjectZomboid/pzserver
  49. 2
      Quake2/q2server
  50. 2
      Quake3/q3server
  51. 11
      QuakeLive/qlserver
  52. 2
      QuakeWorld/qwserver
  53. 2
      RedOrchestra/roserver
  54. 2
      Ricochet/ricochetserver
  55. 7
      Rust/rustserver
  56. 2
      SeriousSam3BFE/ss3sserver
  57. 2
      Starbound/sbserver
  58. 2
      SvenCoop/svenserver
  59. 2
      TeamFortress2/tf2server
  60. 2
      TeamFortressClassic/tfcserver
  61. 2
      TeamSpeak3/ts3server
  62. 6
      Teeworlds/twserver
  63. 2
      Terraria/terrariaserver
  64. 4
      TowerUnite/tuserver
  65. 2
      UnrealTournament/utserver
  66. 2
      UnrealTournament2004/ut2k4server
  67. 2
      UnrealTournament3/ut3server
  68. 2
      UnrealTournament99/ut99server
  69. 2
      WolfensteinEnemyTerritory/wetserver
  70. 2
      images/logo/README.md
  71. 26
      lgsm/functions/alert.sh
  72. 2
      lgsm/functions/alert_email.sh
  73. 2
      lgsm/functions/alert_pushbullet.sh
  74. 11
      lgsm/functions/check.sh
  75. 2
      lgsm/functions/check_config.sh
  76. 8
      lgsm/functions/check_deps.sh
  77. 7
      lgsm/functions/check_executable.sh
  78. 2
      lgsm/functions/check_glibc.sh
  79. 2
      lgsm/functions/check_ip.sh
  80. 15
      lgsm/functions/check_logs.sh
  81. 29
      lgsm/functions/check_permissions.sh
  82. 2
      lgsm/functions/check_root.sh
  83. 4
      lgsm/functions/check_status.sh
  84. 8
      lgsm/functions/check_steamcmd.sh
  85. 2
      lgsm/functions/check_system_dir.sh
  86. 2
      lgsm/functions/check_system_requirements.sh
  87. 6
      lgsm/functions/check_tmuxception.sh
  88. 2
      lgsm/functions/command_backup.sh
  89. 23
      lgsm/functions/command_console.sh
  90. 13
      lgsm/functions/command_debug.sh
  91. 30
      lgsm/functions/command_details.sh
  92. 2
      lgsm/functions/command_dev_debug.sh
  93. 2
      lgsm/functions/command_dev_detect_deps.sh
  94. 52
      lgsm/functions/command_fastdl.sh
  95. 2
      lgsm/functions/command_install.sh
  96. 13
      lgsm/functions/command_install_resources_mta.sh
  97. 13
      lgsm/functions/command_mods_install.sh
  98. 13
      lgsm/functions/command_mods_remove.sh
  99. 2
      lgsm/functions/command_mods_update.sh
  100. 3
      lgsm/functions/command_monitor.sh

2
7DaysToDie/sdtdserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
ARKSurvivalEvolved/arkserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
Arma3/arma3server

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

198
BallisticOverkill/boserver

@ -0,0 +1,198 @@
#!/bin/bash
# Project: Game Server Managers - LinuxGSM
# Author: Daniel Gibbs
# License: MIT License, Copyright (c) 2017 Daniel Gibbs
# Purpose: Ballistic Overkill | Server Management Script
# Contributors: https://github.com/GameServerManagers/LinuxGSM/graphs/contributors
# Documentation: https://github.com/GameServerManagers/LinuxGSM/wiki
# Website: https://gameservermanagers.com
# Debugging
if [ -f ".dev-debug" ]; then
exec 5>dev-debug.log
BASH_XTRACEFD="5"
set -x
fi
version="170219"
##########################
######## Settings ########
##########################
#### Server Settings ####
## Optional: Game Server Login Token
# GSLT can be used for running a public server.
# More info: https://gameservermanagers.com/gslt
gslt=""
## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
fn_parms(){
parms=" -batchmode -nographics -logFile output.txt"
}
#### LinuxGSM Settings ####
## Notification Alerts
# (on|off)
# Email Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Email
emailalert="off"
email="[email protected]"
emailfrom=""
# Pushbullet Alerts | https://github.com/GameServerManagers/LinuxGSM/wiki/Pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
## Updating | https://github.com/GameServerManagers/LinuxGSM/wiki/Update
updateonstart="off"
## Backup | https://github.com/GameServerManagers/LinuxGSM/wiki/Backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
## Logging | https://github.com/GameServerManagers/LinuxGSM/wiki/Logging
consolelogging="on"
logdays="7"
#### LinuxGSM Advanced Settings ####
## Github Branch Select
# Allows for the use of different function files
# from a different repo and/or branch.
githubuser="GameServerManagers"
githubrepo="LinuxGSM"
githubbranch="master"
## SteamCMD Settings
# Server appid
appid="416880"
# Steam App Branch Select
# Allows to opt into the various Steam app branches. Default branch is "".
# Example: "-beta latest_experimental"
branch=""
## LinuxGSM Server Details
# Do not edit
gamename="Ballistic Overkill"
engine="unity"
## Service Name | https://github.com/GameServerManagers/LinuxGSM/wiki/Multiple-Servers
servicename="bo-server"
#### Directories ####
# Edit with care
## Work Directories
rootdir="$(dirname $(readlink -f "${BASH_SOURCE[0]}"))"
selfname="$(basename $(readlink -f "${BASH_SOURCE[0]}"))"
lockselfname=".${servicename}.lock"
lgsmdir="${rootdir}/lgsm"
functionsdir="${lgsmdir}/functions"
libdir="${lgsmdir}/lib"
tmpdir="${lgsmdir}/tmp"
filesdir="${rootdir}/serverfiles"
## Server Specific Directories
systemdir="${filesdir}"
executabledir="${filesdir}"
executable="./BODS.x86"
servercfg="${servicename}.txt"
servercfgdefault="config.txt"
servercfgdir="${systemdir}"
servercfgfullpath="${servercfgdir}/${servercfg}"
## Backup Directory
backupdir="${rootdir}/backups"
## Logging Directorie
gamelogdir="${systemdir}/logs"
scriptlogdir="${rootdir}/log/script"
consolelogdir="${rootdir}/log/console"
scriptlog="${scriptlogdir}/${servicename}-script.log"
consolelog="${consolelogdir}/${servicename}-console.log"
emaillog="${scriptlogdir}/${servicename}-email.log"
## Logs Naming
scriptlogdate="${scriptlogdir}/${servicename}-script-$(date '+%Y-%m-%d-%H:%M:%S').log"
consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
########################
######## Script ########
###### Do not edit #####
########################
# Fetches core_dl for file downloads
fn_fetch_core_dl(){
github_file_url_dir="lgsm/functions"
github_file_url_name="${functionfile}"
filedir="${functionsdir}"
filename="${github_file_url_name}"
githuburl="https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${githubbranch}/${github_file_url_dir}/${github_file_url_name}"
# If the file is missing, then download
if [ ! -f "${filedir}/${filename}" ]; then
if [ ! -d "${filedir}" ]; then
mkdir -p "${filedir}"
fi
echo -e " fetching ${filename}...\c"
# Check curl exists and use available path
curlpaths="$(command -v curl 2>/dev/null) $(which curl >/dev/null 2>&1) /usr/bin/curl /bin/curl /usr/sbin/curl /sbin/curl)"
for curlcmd in ${curlpaths}
do
if [ -x "${curlcmd}" ]; then
break
fi
done
# If curl exists download file
if [ "$(basename ${curlcmd})" == "curl" ]; then
curlfetch=$(${curlcmd} -s --fail -o "${filedir}/${filename}" "${githuburl}" 2>&1)
if [ $? -ne 0 ]; then
echo -e "\e[0;31mFAIL\e[0m\n"
echo "${curlfetch}"
echo -e "${githuburl}\n"
exit 1
else
echo -e "\e[0;32mOK\e[0m"
fi
else
echo -e "\e[0;31mFAIL\e[0m\n"
echo "Curl is not installed!"
echo -e ""
exit 1
fi
chmod +x "${filedir}/${filename}"
fi
source "${filedir}/${filename}"
}
core_dl.sh(){
# Functions are defined in core_functions.sh.
functionfile="${FUNCNAME}"
fn_fetch_core_dl
}
core_functions.sh(){
# Functions are defined in core_functions.sh.
functionfile="${FUNCNAME}"
fn_fetch_core_dl
}
# Prevent from running this script as root.
if [ "$(whoami)" = "root" ]; then
if [ ! -f "${functionsdir}/core_functions.sh" ]||[ ! -f "${functionsdir}/check_root.sh" ]||[ ! -f "${functionsdir}/core_messages.sh" ]||[ ! -f "${functionsdir}/core_exit.sh" ]; then
echo "[ FAIL ] Do NOT run this script as root!"
exit 1
else
core_functions.sh
check_root.sh
fi
fi
core_dl.sh
core_functions.sh
getopt=$1
core_getopt.sh

2
Battlefield1942/bf1942server

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
BlackMesa/bmdmserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
BladeSymphony/bsserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
BrainBread2/bb2server

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

8
CONTRIBUTING.md

@ -9,11 +9,11 @@ Before working on a project we recommend that you create a issue in regards to t
Here are some important resources: Here are some important resources:
* [Issues Page](https://github.com/GameServerManagers/LinuxGSM/issues) provides a list of areas that could use some work, * [Issues Page](https://github.com/GameServerManagers/LinuxGSM/issues) provides a list of areas that could use some work,
* [Developing LGSM](https://github.com/GameServerManagers/LinuxGSM/wiki/Developing-LGSM) gives a detailed guide on developing LGSM, * [Developing LinuxGSM](https://github.com/GameServerManagers/LinuxGSM/wiki/Developing-LGSM) gives a detailed guide on developing LGSM,
* [LGSM Exit Codes](https://github.com/GameServerManagers/LinuxGSM/wiki/LGSM-Exit-Codes) describes and gives an explanation for exit codes, * [LinuxGSM Exit Codes](https://github.com/GameServerManagers/LinuxGSM/wiki/LGSM-Exit-Codes) describes and gives an explanation for exit codes,
* [gsquery](https://github.com/GameServerManagers/LinuxGSM/wiki/gsquery.py) describes the uses of the gsquery.py file, and * [gsquery](https://github.com/GameServerManagers/LinuxGSM/wiki/gsquery.py) describes the uses of the gsquery.py file, and
* [Branching](https://github.com/GameServerManagers/LinuxGSM/wiki/Branching) is our final guide to submitting changes. * [Branching](https://github.com/GameServerManagers/LinuxGSM/wiki/Branching) is our final guide to submitting changes.
## Testing ## Testing
Please make sure all the code you write is working properly **before** you create a pull request. Information on debugging can be found in the following document: Please make sure all the code you write is working properly **before** you create a pull request. Information on debugging can be found in the following document:
@ -27,7 +27,7 @@ Please send a [GitHub Pull Request to LinuxGSM](https://github.com/GameServerMan
Always write a clear log message for your commits. One-line messages are fine for small changes, but bigger changes should look like this: Always write a clear log message for your commits. One-line messages are fine for small changes, but bigger changes should look like this:
$ git commit -m "A brief summary of the commit $ git commit -m "A brief summary of the commit
> >
> A paragraph describing what changed and its impact." > A paragraph describing what changed and its impact."
This will help us in understanding your code and determining where problems may arise. This will help us in understanding your code and determining where problems may arise.

2
CallOfDuty/codserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
CallOfDuty2/cod2server

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
CallOfDuty4/cod4server

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
CallOfDutyUnitedOffensive/coduoserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
CallOfDutyWorldAtWar/codwawserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
CodenameCURE/ccserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
CounterStrike/csserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
CounterStrikeConditionZero/csczserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
CounterStrikeGlobalOffensive/csgoserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
CounterStrikeSource/cssserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
DayOfDefeat/dodserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
DayOfDefeatSource/dodsserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
DayOfInfamy/doiserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
DeathmatchClassic/dmcserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
DontStarveTogether/dstserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
DoubleActionBoogaloo/dabserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
EmpiresMod/emserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
Factorio/fctrserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
FistfulOfFrags/fofserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
GarrysMod/gmodserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
GoldenEyeSource/gesserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
HalfLife2Deathmatch/hl2dmserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
HalfLifeDeathmatch/hldmserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
HalfLifeDeathmatchSource/hldmsserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

4
Hurtworld/hwserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########
@ -23,7 +23,7 @@ version="170212"
#### Server Settings #### #### Server Settings ####
## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters ## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
servername="Hurtworld LGSM Server" servername="Hurtworld LinuxGSM Server"
ip="0.0.0.0" ip="0.0.0.0"
port="12871" port="12871"
queryport="12881" queryport="12881"

2
Insurgency/insserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
JustCause2/jc2server

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
KillingFloor/kfserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
Left4Dead/l4dserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
Left4Dead2/l4d2server

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
Minecraft/mcserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
MultiTheftAuto/mtaserver

@ -12,7 +12,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
Mumble/mumbleserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
NS2Combat/ns2cserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
NaturalSelection2/ns2server

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
NoMoreRoomInHell/nmrihserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
OpposingForce/opforserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
PiratesVikingandKnightsII/pvkiiserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
ProjectZomboid/pzserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
Quake2/q2server

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
Quake3/q3server

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

11
QuakeLive/qlserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########
@ -24,19 +24,12 @@ version="170212"
## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters ## Server Start Settings | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters
arch="x64" # x64 or x86 arch="x64" # x64 or x86
port="27960"
rconport="28960"
rconpassword="CHANGE_ME"
statsport="${port}"
statspassword="CHANGE_ME"
mappool='mappool.txt'
ip="0.0.0.0"
## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters ## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
# Edit with care | Install/Config Guide : https://steamcommunity.com/sharedfiles/filedetails/?id=542966946 # Edit with care | Install/Config Guide : https://steamcommunity.com/sharedfiles/filedetails/?id=542966946
# Console Commands : http://www.regurge.at/ql/ # Console Commands : http://www.regurge.at/ql/
fn_parms(){ fn_parms(){
parms="+set net_strict 1 +set net_ip ${ip} +set net_port ${port} +set fs_homepath ${filesdir}/${port} +set zmq_rcon_enable 1 +set zmq_rcon_port ${rconport} +set zmq_rcon_password ${rconpassword} +set zmq_stats_enable 1 +set zmq_stats_password ${statspassword} +set zmq_stats_port ${statsport} +set sv_mapPoolFile ${mappool} +exec ${servercfg}" parms="+exec ${servercfg}"
} }
#### LinuxGSM Settings #### #### LinuxGSM Settings ####

2
QuakeWorld/qwserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
RedOrchestra/roserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
Ricochet/ricochetserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

7
Rust/rustserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########
@ -39,7 +39,7 @@ tickrate="30" # default 30; range : 15 to 100
## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters ## Server Start Command | https://github.com/GameServerManagers/LinuxGSM/wiki/Start-Parameters#additional-parameters
fn_parms(){ fn_parms(){
parms="-batchmode +server.ip ${ip} +server.port ${port} +server.tickrate ${tickrate} +server.hostname \"${servername}\" +server.identity \"${servicename}\" ${conditionalseed} +server.maxplayers ${maxplayers} +server.worldsize ${worldsize} +server.saveinterval ${saveinterval} +rcon.web ${rconweb} +rcon.ip ${ip} +rcon.port ${rconport} +rcon.password \"${rconpassword}\" -logfile ${gamelogfile}" parms="-batchmode +server.ip ${ip} +server.port ${port} +server.tickrate ${tickrate} +server.hostname \"${servername}\" +server.identity \"${servicename}\" ${conditionalseed} +server.maxplayers ${maxplayers} +server.worldsize ${worldsize} +server.saveinterval ${saveinterval} +rcon.web ${rconweb} +rcon.ip ${ip} +rcon.port ${rconport} +rcon.password \"${rconpassword}\" -logfile \"${gamelogdate}\""
} }
# Specific to Rust # Specific to Rust
@ -132,7 +132,6 @@ backupdir="${rootdir}/backups"
gamelogdir="${rootdir}/log/server" gamelogdir="${rootdir}/log/server"
scriptlogdir="${rootdir}/log/script" scriptlogdir="${rootdir}/log/script"
consolelogdir="${rootdir}/log/console" consolelogdir="${rootdir}/log/console"
gamelog="${gamelogdir}/${servicename}-game.log"
scriptlog="${scriptlogdir}/${servicename}-script.log" scriptlog="${scriptlogdir}/${servicename}-script.log"
consolelog="${consolelogdir}/${servicename}-console.log" consolelog="${consolelogdir}/${servicename}-console.log"
emaillog="${scriptlogdir}/${servicename}-email.log" emaillog="${scriptlogdir}/${servicename}-email.log"
@ -140,7 +139,7 @@ emaillog="${scriptlogdir}/${servicename}-email.log"
## Logs Naming ## Logs Naming
scriptlogdate="${scriptlogdir}/${servicename}-script-$(date '+%Y-%m-%d-%H:%M:%S').log" scriptlogdate="${scriptlogdir}/${servicename}-script-$(date '+%Y-%m-%d-%H:%M:%S').log"
consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log" consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
gamelogfile="\"gamelog-$(date '+%Y-%m-%d-%H-%M-%S').log\"" gamelogdate="${gamelogdir}/${servicename}-game-$(date '+%Y-%m-%d-%H:%M:%S').log"
######################## ########################
######## Script ######## ######## Script ########

2
SeriousSam3BFE/ss3sserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
Starbound/sbserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
SvenCoop/svenserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
TeamFortress2/tf2server

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
TeamFortressClassic/tfcserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
TeamSpeak3/ts3server

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

6
Teeworlds/twserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########
@ -99,8 +99,8 @@ tmpdir="${lgsmdir}/tmp"
filesdir="${rootdir}/serverfiles" filesdir="${rootdir}/serverfiles"
## Server Specific Directories ## Server Specific Directories
systemdir="${filesdir}" systemdir="${filesdir}/tw"
executabledir="${filesdir}" executabledir="${systemdir}"
executable="./teeworlds_srv" executable="./teeworlds_srv"
servercfg="${servicename}.cfg" # Teeworlds can also auto load any config if an autoexec.cfg file is present in the server dir servercfg="${servicename}.cfg" # Teeworlds can also auto load any config if an autoexec.cfg file is present in the server dir
servercfgdefault="server.cfg" servercfgdefault="server.cfg"

2
Terraria/terrariaserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

4
TowerUnite/tuserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########
@ -194,4 +194,4 @@ fi
core_dl.sh core_dl.sh
core_functions.sh core_functions.sh
getopt=$1 getopt=$1
core_getopt.sh core_getopt.sh

2
UnrealTournament/utserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
UnrealTournament2004/ut2k4server

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
UnrealTournament3/ut3server

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
UnrealTournament99/ut99server

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
WolfensteinEnemyTerritory/wetserver

@ -14,7 +14,7 @@ if [ -f ".dev-debug" ]; then
set -x set -x
fi fi
version="170212" version="170219"
########################## ##########################
######## Settings ######## ######## Settings ########

2
images/logo/README.md

@ -1,3 +1,3 @@
# LGSM - Official Logos # LinuxGSM - Official Logos
For Reference the original design can be found here. For Reference the original design can be found here.
http://twolofbees.com/artwork.php?iid=870 http://twolofbees.com/artwork.php?iid=870

26
lgsm/functions/alert.sh

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
# LGSM alert.sh function # LinuxGSM alert.sh function
# Author: Daniel Gibbs # Author: Daniel Gibbs
# Website: https://gameservermanagers.com # Website: https://gameservermanagers.com
# Description: Overall function for managing alerts. # Description: Overall function for managing alerts.
@ -9,36 +9,44 @@ local commandaction="Alert"
fn_alert_test(){ fn_alert_test(){
fn_script_log_info "Sending test alert" fn_script_log_info "Sending test alert"
alertsubject="LGSM - Test Alert - ${servername}" alertsubject="LinuxGSM - Test Alert - ${servername}"
alertbody="LGSM test alert, how you read?" alertbody="LinuxGSM test alert, how you read?"
} }
fn_alert_restart(){ fn_alert_restart(){
fn_script_log_info "Sending restart alert: ${executable} process not running" fn_script_log_info "Sending restart alert: ${executable} process not running"
alertsubject="LGSM - Restarted - ${servername}" alertsubject="LinuxGSM - Restarted - ${servername}"
alertbody="${servicename} ${executable} process not running" alertbody="${servicename} ${executable} process not running"
} }
fn_alert_restart_query(){ fn_alert_restart_query(){
fn_script_log_info "Sending restart alert: ${gsquerycmd}" fn_script_log_info "Sending restart alert: ${gsquerycmd}"
alertsubject="LGSM - Restarted - ${servername}" alertsubject="LinuxGSM - Restarted - ${servername}"
alertbody="gsquery.py failed to query: ${gsquerycmd}" alertbody="gsquery.py failed to query: ${gsquerycmd}"
} }
fn_alert_update(){ fn_alert_update(){
fn_script_log_info "Sending update alert" fn_script_log_info "Sending update alert"
alertsubject="LGSM - Updated - ${servername}" alertsubject="LinuxGSM - Updated - ${servername}"
alertbody="${servicename} received update" alertbody="${servicename} received update"
} }
if [ "${alert}" == "restart" ]; then fn_alert_permissions(){
fn_script_log_info "Sending permissions error alert"
alertsubject="LinuxGSM - Error - ${servername}"
alertbody="${servicename} has permissions issues."
}
if [ "${alert}" == "permissions" ]; then
fn_alert_permissions
elif [ "${alert}" == "restart" ]; then
fn_alert_restart fn_alert_restart
elif [ "${alert}" == "restartquery" ]; then elif [ "${alert}" == "restartquery" ]; then
fn_alert_restart_query fn_alert_restart_query
elif [ "${alert}" == "update" ]; then
fn_alert_update
elif [ "${alert}" == "test" ]; then elif [ "${alert}" == "test" ]; then
fn_alert_test fn_alert_test
elif [ "${alert}" == "update" ]; then
fn_alert_update
fi fi
if [ "${emailalert}" == "on" ]&&[ -n "${email}" ]; then if [ "${emailalert}" == "on" ]&&[ -n "${email}" ]; then

2
lgsm/functions/alert_email.sh

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
# LGSM alert_email.sh function # LinuxGSM alert_email.sh function
# Author: Daniel Gibbs # Author: Daniel Gibbs
# Website: https://gameservermanagers.com # Website: https://gameservermanagers.com
# Description: Sends email alert including server details and logs. # Description: Sends email alert including server details and logs.

2
lgsm/functions/alert_pushbullet.sh

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
# LGSM alert_pushbullet.sh function # LinuxGSM alert_pushbullet.sh function
# Author: Daniel Gibbs # Author: Daniel Gibbs
# Website: https://gameservermanagers.com # Website: https://gameservermanagers.com
# Description: Sends Pushbullet alert including the server status. # Description: Sends Pushbullet alert including the server status.

11
lgsm/functions/check.sh

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
# LGSM check.sh function # LinuxGSM check.sh function
# Author: Daniel Gibbs # Author: Daniel Gibbs
# Website: https://gameservermanagers.com # Website: https://gameservermanagers.com
# Description: Overall function for managing checks. # Description: Overall function for managing checks.
@ -12,9 +12,12 @@ local commandname="CHECK"
check_root.sh check_root.sh
check_tmuxception.sh check_tmuxception.sh
check_permissions.sh
if [ "${function_selfname}" != "command_install.sh" ]&&[ "${function_selfname}" != "command_update_functions.sh" ]; then if [ "${function_selfname}" != "command_monitor.sh" ];then
check_permissions.sh
fi
if [ "${function_selfname}" != "command_install.sh" ]&&[ "${function_selfname}" != "command_update_functions.sh" ]&&[ "${function_selfname}" != "command_details.sh" ]&&[ "${function_selfname}" != "command_postdetails.sh" ]; then
check_system_dir.sh check_system_dir.sh
fi fi
@ -50,7 +53,7 @@ do
fi fi
done done
local allowed_commands_array=( command_console.sh command_debug.sh command_details.sh command_monitor.sh command_start.sh command_stop.sh ) local allowed_commands_array=( command_console.sh command_debug.sh command_monitor.sh command_start.sh command_stop.sh )
for allowed_command in "${allowed_commands_array[@]}" for allowed_command in "${allowed_commands_array[@]}"
do do
if [ "${allowed_command}" == "${function_selfname}" ]; then if [ "${allowed_command}" == "${function_selfname}" ]; then

2
lgsm/functions/check_config.sh

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
# LGSM check_config.sh function # LinuxGSM check_config.sh function
# Author: Daniel Gibbs # Author: Daniel Gibbs
# Website: https://gameservermanagers.com # Website: https://gameservermanagers.com
# Description: Checks if the server config is missing and warns the user if needed. # Description: Checks if the server config is missing and warns the user if needed.

8
lgsm/functions/check_deps.sh

@ -1,8 +1,8 @@
#!/bin/bash #!/bin/bash
# LGSM check_deps.sh function # LinuxGSM check_deps.sh function
# Author: Daniel Gibbs # Author: Daniel Gibbs
# Website: https://gameservermanagers.com # Website: https://gameservermanagers.com
# Description: Checks if required dependencies are installed for LGSM. # Description: Checks if required dependencies are installed for LinuxGSM.
local commandname="CHECK" local commandname="CHECK"
@ -144,7 +144,7 @@ if [ -n "$(command -v dpkg-query)" ]; then
# Generate array of missing deps # Generate array of missing deps
array_deps_missing=() array_deps_missing=()
# LGSM requirements # LinuxGSM requirements
array_deps_required=( curl wget ca-certificates file bsdmainutils util-linux python bzip2 gzip unzip ) array_deps_required=( curl wget ca-certificates file bsdmainutils util-linux python bzip2 gzip unzip )
# All servers except ts3 require tmux # All servers except ts3 require tmux
@ -223,7 +223,7 @@ elif [ -n "$(command -v yum)" ]; then
# Generate array of missing deps # Generate array of missing deps
array_deps_missing=() array_deps_missing=()
# LGSM requirements # LinuxGSM requirements
if [ "${distroversion}" == "6" ]; then if [ "${distroversion}" == "6" ]; then
array_deps_required=( curl wget util-linux-ng python file gzip bzip2 unzip ) array_deps_required=( curl wget util-linux-ng python file gzip bzip2 unzip )
else else

7
lgsm/functions/check_executable.sh

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
# LGSM check_executable.sh function # LinuxGSM check_executable.sh function
# Author: Daniel Gibbs # Author: Daniel Gibbs
# Website: https://gameservermanagers.com # Website: https://gameservermanagers.com
# Description: Checks if executable exists. # Description: Checks if executable exists.
@ -9,9 +9,10 @@ local function_selfname="$(basename $(readlink -f "${BASH_SOURCE[0]}"))"
# Check if executable exists # Check if executable exists
if [ ! -f "${executabledir}/${execname}" ]; then if [ ! -f "${executabledir}/${execname}" ]; then
fn_script_log_warn "Expected executable not found: ${executabledir}/${execname}" fn_script_log_warn "Executable was not found: ${executabledir}/${execname}"
if [ -d "${scriptlogdir}" ]; then if [ -d "${scriptlogdir}" ]; then
fn_print_fail_nl "Executable ${execname} was not found" fn_print_fail_nl "Executable was not found:"
echo " * ${executabledir}/${execname}"
fi fi
exitcode="1" exitcode="1"
core_exit.sh core_exit.sh

2
lgsm/functions/check_glibc.sh

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
# LGSM check_glibc.sh function # LinuxGSM check_glibc.sh function
# Author: Daniel Gibbs # Author: Daniel Gibbs
# Website: https://gameservermanagers.com # Website: https://gameservermanagers.com
# Description: Checks if the server has the correct Glibc version or a fix available. # Description: Checks if the server has the correct Glibc version or a fix available.

2
lgsm/functions/check_ip.sh

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
# LGSM check_ip.sh function # LinuxGSM check_ip.sh function
# Author: Daniel Gibbs # Author: Daniel Gibbs
# Website: https://gameservermanagers.com # Website: https://gameservermanagers.com
# Description: Automatically identifies the server interface IP. # Description: Automatically identifies the server interface IP.

15
lgsm/functions/check_logs.sh

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
# LGSM check_logs.sh function # LinuxGSM check_logs.sh function
# Author: Daniel Gibbs # Author: Daniel Gibbs
# Website: https://gameservermanagers.com # Website: https://gameservermanagers.com
# Description: Checks if log files exist. # Description: Checks if log files exist.
@ -7,11 +7,20 @@
local commandname="CHECK" local commandname="CHECK"
local function_selfname="$(basename $(readlink -f "${BASH_SOURCE[0]}"))" local function_selfname="$(basename $(readlink -f "${BASH_SOURCE[0]}"))"
# Create directories for the script and console logs fn_check_logs(){
if [ ! -d "${scriptlogdir}" ]||[ ! -d "${consolelogdir}" ]&&[ "${gamename}" != "TeamSpeak 3" ]; then
fn_print_dots "Checking for log files" fn_print_dots "Checking for log files"
sleep 0.5 sleep 0.5
fn_print_info_nl "Checking for log files: Creating log files" fn_print_info_nl "Checking for log files: Creating log files"
checklogs=1 checklogs=1
install_logs.sh install_logs.sh
}
# Create directories for the script and console logs
if [ ! -d "${scriptlogdir}" ]||[ ! -d "${consolelogdir}" ]&&[ "${gamename}" != "TeamSpeak 3" ]; then
fn_check_logs
fi
# Create gamelogdir if variable exist but dir does not exist
if [ -n "${gamelogdir}" ]&&[ ! -d "${gamelogdir}" ]; then
fn_check_logs
fi fi

29
lgsm/functions/check_permissions.sh

@ -1,12 +1,11 @@
#!/bin/bash #!/bin/bash
# LGSM check_permissions.sh # LinuxGSM check_permissions.sh
# Author: Daniel Gibbs # Author: Daniel Gibbs
# Contributor: UltimateByte # Contributor: UltimateByte
# Website: https://gameservermanagers.com # Website: https://gameservermanagers.com
# Description: Checks ownership & permissions of scripts, files and directories. # Description: Checks ownership & permissions of scripts, files and directories.
local commandname="CHECK" local commandname="CHECK"
local function_selfname="$(basename $(readlink -f "${BASH_SOURCE[0]}"))"
fn_check_ownership(){ fn_check_ownership(){
if [ -f "${rootdir}/${selfname}" ]; then if [ -f "${rootdir}/${selfname}" ]; then
@ -43,8 +42,12 @@ fn_check_ownership(){
} | column -s $'\t' -t | tee -a "${scriptlog}" } | column -s $'\t' -t | tee -a "${scriptlog}"
echo "" echo ""
fn_print_information_nl "For more information, please see https://github.com/GameServerManagers/LinuxGSM/wiki/FAQ#-fail--starting-game-server-ownership-issues-found" fn_print_information_nl "please see https://github.com/GameServerManagers/LinuxGSM/wiki/FAQ#-fail--starting-game-server-ownership-issues-found"
fn_script_log "For more information, please see https://github.com/GameServerManagers/LinuxGSM/wiki/FAQ#-fail--starting-game-server-ownership-issues-found" fn_script_log "For more information, please see https://github.com/GameServerManagers/LinuxGSM/wiki/FAQ#-fail--starting-game-server-ownership-issues-found"
if [ "${monitorflag}" == 1 ]; then
alert="permissions"
alert.sh
fi
core_exit.sh core_exit.sh
fi fi
} }
@ -60,6 +63,10 @@ fn_check_permissions(){
echo -e "File\n" echo -e "File\n"
find "${functionsdir}" -type f -not -executable -printf "%p\n" find "${functionsdir}" -type f -not -executable -printf "%p\n"
} | column -s $'\t' -t | tee -a "${scriptlog}" } | column -s $'\t' -t | tee -a "${scriptlog}"
if [ "${monitorflag}" == 1 ]; then
alert="permissions"
alert.sh
fi
core_exit.sh core_exit.sh
fi fi
fi fi
@ -78,6 +85,10 @@ fn_check_permissions(){
fn_script_log_info "The following directory does not have the correct permissions:" fn_script_log_info "The following directory does not have the correct permissions:"
fn_script_log_info "${rootdir}" fn_script_log_info "${rootdir}"
ls -l "${rootdir}" ls -l "${rootdir}"
if [ "${monitorflag}" == 1 ]; then
alert="permissions"
alert.sh
fi
core_exit.sh core_exit.sh
fi fi
fi fi
@ -118,6 +129,10 @@ fn_check_permissions(){
ls -l "${executabledir}/${execname}" ls -l "${executabledir}/${execname}"
fn_script_log_warn "The following file could not be set executable:" fn_script_log_warn "The following file could not be set executable:"
fn_script_log_info "${executabledir}/${execname}" fn_script_log_info "${executabledir}/${execname}"
if [ "${monitorflag}" == 1 ]; then
alert="permissions"
alert.sh
fi
core_exit.sh core_exit.sh
fi fi
fi fi
@ -157,6 +172,10 @@ fn_sys_perm_fix_manually_msg(){
echo " chmod a+rx /sys /sys/class /sys/class/net" echo " chmod a+rx /sys /sys/class /sys/class/net"
fn_script_log "chmod a+rx /sys /sys/class /sys/class/net" fn_script_log "chmod a+rx /sys /sys/class /sys/class/net"
sleep 1 sleep 1
if [ "${monitorflag}" == 1 ]; then
alert="permissions"
alert.sh
fi
core_exit.sh core_exit.sh
} }
@ -213,4 +232,6 @@ fn_sys_perm_error_process(){
## Run checks ## Run checks
fn_check_ownership fn_check_ownership
fn_check_permissions fn_check_permissions
fn_sys_perm_error_process if [ "${function_selfname}" == "command_start.sh" ]; then
fn_sys_perm_error_process
fi

2
lgsm/functions/check_root.sh

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
# LGSM check_root.sh function # LinuxGSM check_root.sh function
# Author: Daniel Gibbs # Author: Daniel Gibbs
# Website: https://gameservermanagers.com # Website: https://gameservermanagers.com
# Description: Checks if the user tried to run the script as root. # Description: Checks if the user tried to run the script as root.

4
lgsm/functions/check_status.sh

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
# LGSM check_status.sh function # LinuxGSM check_status.sh function
# Author: Daniel Gibbs # Author: Daniel Gibbs
# Contributor: UltimateByte # Contributor: UltimateByte
# Website: https://gameservermanagers.com # Website: https://gameservermanagers.com
@ -19,7 +19,7 @@ if [ "${gamename}" == "TeamSpeak 3" ]; then
ts3error="${status}" ts3error="${status}"
status=0 status=0
fi fi
elif [ "${gamename}" == "Mumble" ]; then elif [ "${gamename}" == "Mumble" ]; then
# Get config info # Get config info
info_config.sh info_config.sh

8
lgsm/functions/check_steamcmd.sh

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
# LGSM check_steamcmd.sh function # LinuxGSM check_steamcmd.sh function
# Author: Daniel Gibbs # Author: Daniel Gibbs
# Website: https://gameservermanagers.com # Website: https://gameservermanagers.com
# Description: Checks if SteamCMD is installed correctly. # Description: Checks if SteamCMD is installed correctly.
@ -18,17 +18,17 @@ fn_install_steamcmd(){
fn_check_steamcmd_user(){ fn_check_steamcmd_user(){
# Checks if steamuser is setup. # Checks if steamuser is setup.
if [ "${steamuser}" == "username" ]; then if [ "${steamuser}" == "username" ]; then
fn_print_fail_nl "Steam login not set. Update steamuser in ${selfname}." fn_print_fail_nl "Steam login not set. Update steamuser in ${selfname}"
echo " * Change steamuser=\"username\" to a valid steam login." echo " * Change steamuser=\"username\" to a valid steam login."
if [ -d "${scriptlogdir}" ]; then if [ -d "${scriptlogdir}" ]; then
fn_script_log_fatal "Steam login not set. Update steamuser in ${selfname}." fn_script_log_fatal "Steam login not set. Update steamuser in ${selfname}"
fi fi
core_exit.sh core_exit.sh
fi fi
# Anonymous user is set if steamuser is missing # Anonymous user is set if steamuser is missing
if [ -z "${steamuser}" ]; then if [ -z "${steamuser}" ]; then
if [ -d "${scriptlogdir}" ]; then if [ -d "${scriptlogdir}" ]; then
fn_script_log_info "Using anonymous Steam login." fn_script_log_info "Using anonymous Steam login"
fi fi
steamuser="anonymous" steamuser="anonymous"
steampass='' steampass=''

2
lgsm/functions/check_system_dir.sh

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
# LGSM check_system_dir.sh function # LinuxGSM check_system_dir.sh function
# Author: Daniel Gibbs # Author: Daniel Gibbs
# Website: https://gameservermanagers.com # Website: https://gameservermanagers.com
# Description: Checks if systemdir is accessible. # Description: Checks if systemdir is accessible.

2
lgsm/functions/check_system_requirements.sh

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
# LGSM check_system_requirements.sh # LinuxGSM check_system_requirements.sh
# Author: Daniel Gibbs # Author: Daniel Gibbs
# Contributor: UltimateByte # Contributor: UltimateByte
# Website: https://gameservermanagers.com # Website: https://gameservermanagers.com

6
lgsm/functions/check_tmuxception.sh

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
# LGSM check_config.sh function # LinuxGSM check_config.sh function
# Author: Daniel Gibbs # Author: Daniel Gibbs
# Contributor: UltimateByte # Contributor: UltimateByte
# Website: https://gameservermanagers.com # Website: https://gameservermanagers.com
@ -11,7 +11,7 @@ fn_check_is_in_tmux(){
if [ -n "${TMUX}" ];then if [ -n "${TMUX}" ];then
fn_print_fail_nl "tmuxception error: Sorry Cobb you cannot start a tmux session inside of a tmux session." fn_print_fail_nl "tmuxception error: Sorry Cobb you cannot start a tmux session inside of a tmux session."
fn_script_log_fatal "Tmuxception error: Attempted to start a tmux session inside of a tmux session." fn_script_log_fatal "Tmuxception error: Attempted to start a tmux session inside of a tmux session."
fn_print_information_nl "LGSM creates a tmux session when starting the server." fn_print_information_nl "LinuxGSM creates a tmux session when starting the server."
echo "It is not possible to run a tmux session inside another tmux session" echo "It is not possible to run a tmux session inside another tmux session"
echo "https://github.com/GameServerManagers/LinuxGSM/wiki/Tmux#tmuxception" echo "https://github.com/GameServerManagers/LinuxGSM/wiki/Tmux#tmuxception"
core_exit.sh core_exit.sh
@ -21,7 +21,7 @@ fn_check_is_in_screen(){
if [ -n "${STY}" ];then if [ -n "${STY}" ];then
fn_print_fail_nl "tmuxception error: Sorry Cobb you cannot start a tmux session inside of a screen session." fn_print_fail_nl "tmuxception error: Sorry Cobb you cannot start a tmux session inside of a screen session."
fn_script_log_fatal "Tmuxception error: Attempted to start a tmux session inside of a screen session." fn_script_log_fatal "Tmuxception error: Attempted to start a tmux session inside of a screen session."
fn_print_information_nl "LGSM creates a tmux session when starting the server." fn_print_information_nl "LinuxGSM creates a tmux session when starting the server."
echo "It is not possible to run a tmux session inside screen session" echo "It is not possible to run a tmux session inside screen session"
echo "https://github.com/GameServerManagers/LinuxGSM/wiki/Tmux#tmuxception" echo "https://github.com/GameServerManagers/LinuxGSM/wiki/Tmux#tmuxception"
core_exit.sh core_exit.sh

2
lgsm/functions/command_backup.sh

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
# LGSM command_backup.sh function # LinuxGSM command_backup.sh function
# Author: Daniel Gibbs # Author: Daniel Gibbs
# Contributor: UltimateByte # Contributor: UltimateByte
# Website: https://gameservermanagers.com # Website: https://gameservermanagers.com

23
lgsm/functions/command_console.sh

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
# LGSM command_console.sh function # LinuxGSM command_console.sh function
# Author: Daniel Gibbs # Author: Daniel Gibbs
# Website: https://gameservermanagers.com # Website: https://gameservermanagers.com
# Description: Gives access to the server tmux console. # Description: Gives access to the server tmux console.
@ -13,13 +13,9 @@ fn_print_header
fn_print_information_nl "Press \"CTRL+b\" then \"d\" to exit console." fn_print_information_nl "Press \"CTRL+b\" then \"d\" to exit console."
fn_print_warning_nl "Do NOT press CTRL+c to exit." fn_print_warning_nl "Do NOT press CTRL+c to exit."
echo "" echo ""
while true; do if ! fn_prompt_yn "Continue?" Y; then
read -e -i "y" -p "Continue? [Y/n]" yn echo Exiting; return
case $yn in fi
[Yy]* ) break;;
[Nn]* ) echo Exiting; return;;
* ) echo "Please answer yes or no.";;
esac
done done
fn_print_dots "Accessing console" fn_print_dots "Accessing console"
sleep 1 sleep 1
@ -35,14 +31,9 @@ else
fn_print_error_nl "Server not running" fn_print_error_nl "Server not running"
fn_script_log_error "Failed to access: Server not running" fn_script_log_error "Failed to access: Server not running"
sleep 1 sleep 1
while true; do if fn_prompt_yn "Do you want to start the server?" Y; then
read -e -i "y" -p "Do you want to start the server? [Y/n]" yn exitbypass=1; command_start.sh
case $yn in fi
[Yy]* ) exitbypass=1; command_start.sh; break;;
[Nn]* ) break;;
* ) echo "Please answer yes or no.";;
esac
done
fi fi
core_exit.sh core_exit.sh

13
lgsm/functions/command_debug.sh

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
# LGSM command_debug.sh function # LinuxGSM command_debug.sh function
# Author: Daniel Gibbs # Author: Daniel Gibbs
# Website: https://gameservermanagers.com # Website: https://gameservermanagers.com
# Description: Runs the server without tmux and directly from the terminal. # Description: Runs the server without tmux and directly from the terminal.
@ -68,14 +68,9 @@ echo -e "Use for identifying server issues only!"
echo -e "Press CTRL+c to drop out of debug mode." echo -e "Press CTRL+c to drop out of debug mode."
fn_print_warning_nl "If ${servicename} is already running it will be stopped." fn_print_warning_nl "If ${servicename} is already running it will be stopped."
echo "" echo ""
while true; do if ! fn_prompt_yn "Continue?" Y; then
read -e -i "y" -p "Continue? [Y/n]" yn echo Exiting; return
case $yn in fi
[Yy]* ) break;;
[Nn]* ) echo Exiting; return;;
* ) echo "Please answer yes or no.";;
esac
done
fn_print_info_nl "Stopping any running servers" fn_print_info_nl "Stopping any running servers"
fn_script_log_info "Stopping any running servers" fn_script_log_info "Stopping any running servers"

30
lgsm/functions/command_details.sh

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
# LGSM command_details.sh function # LinuxGSM command_details.sh function
# Author: Daniel Gibbs # Author: Daniel Gibbs
# Contributor: UltimateByte # Contributor: UltimateByte
# Website: https://gameservermanagers.com # Website: https://gameservermanagers.com
@ -70,7 +70,7 @@ fn_details_disk(){
# Total: 15G # Total: 15G
# Used: 8.4G # Used: 8.4G
# Available: 5.7G # Available: 5.7G
# LGSM Total: 1G # LinuxGSM Total: 1G
# Serverfiles: 961M # Serverfiles: 961M
# Backups: 2G # Backups: 2G
@ -82,7 +82,7 @@ fn_details_disk(){
echo -e "${blue}Total:\t${default}${totalspace}" echo -e "${blue}Total:\t${default}${totalspace}"
echo -e "${blue}Used:\t${default}${usedspace}" echo -e "${blue}Used:\t${default}${usedspace}"
echo -e "${blue}Available:\t${default}${availspace}" echo -e "${blue}Available:\t${default}${availspace}"
echo -e "${blue}LGSM Total:\t${default}${rootdirdu}" echo -e "${blue}LinuxGSM Total:\t${default}${rootdirdu}"
echo -e "${blue}Serverfiles:\t${default}${filesdirdu}" echo -e "${blue}Serverfiles:\t${default}${filesdirdu}"
if [ -d "${backupdir}" ]; then if [ -d "${backupdir}" ]; then
echo -e "${blue}Backups:\t${default}${backupdirdu}" echo -e "${blue}Backups:\t${default}${backupdirdu}"
@ -315,7 +315,7 @@ fn_details_ports(){
parmslocation="${red}UNKNOWN${default}" parmslocation="${red}UNKNOWN${default}"
# engines/games that require editing in the config file # engines/games that require editing in the config file
local ports_edit_array=( "avalanche" "dontstarve" "idtech2" "idtech3" "idtech3_ql" "lwjgl2" "projectzomboid" "quake" "refractor" "realvirtuality" "renderware" "seriousengine35" "teeworlds" "terraria" "unreal" "unreal2" "unreal3" "TeamSpeak 3" "Mumble" "7 Days To Die" ) local ports_edit_array=( "avalanche" "Ballistic Overkill" "dontstarve" "idtech2" "idtech3" "idtech3_ql" "lwjgl2" "projectzomboid" "quake" "refractor" "realvirtuality" "renderware" "seriousengine35" "teeworlds" "terraria" "unreal" "unreal2" "unreal3" "TeamSpeak 3" "Mumble" "7 Days To Die" )
for port_edit in "${ports_edit_array[@]}" for port_edit in "${ports_edit_array[@]}"
do do
if [ "${engine}" == "${port_edit}" ]||[ "${gamename}" == "${port_edit}" ]; then if [ "${engine}" == "${port_edit}" ]||[ "${gamename}" == "${port_edit}" ]; then
@ -355,7 +355,7 @@ fn_details_ark(){
echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL" echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
echo -e "> Game\tINBOUND\t${port}\tudp" echo -e "> Game\tINBOUND\t${port}\tudp"
# Don't do arithmetics if ever the port wasn't a numeric value # Don't do arithmetics if ever the port wasn't a numeric value
if [ "${port}" -eq "${port}" ]; then if [ "${port}" -eq "${port}" ]; then
echo -e "> RAW\tINBOUND\t$((port+1))\tudp" echo -e "> RAW\tINBOUND\t$((port+1))\tudp"
fi fi
echo -e "> Query\tINBOUND\t${queryport}\tudp" echo -e "> Query\tINBOUND\t${queryport}\tudp"
@ -363,6 +363,16 @@ fn_details_ark(){
} | column -s $'\t' -t } | column -s $'\t' -t
} }
fn_details_ballisticoverkill(){
echo -e "netstat -atunp | grep BODS.x86"
echo -e ""
{
echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
echo -e "> Game/RCON\tINBOUND\t${port}\tudp"
echo -e "> Query\tINBOUND\t${queryport}\tudp"
} | column -s $'\t' -t
}
fn_details_avalanche(){ fn_details_avalanche(){
echo -e "netstat -atunp | grep Jcmp-Server" echo -e "netstat -atunp | grep Jcmp-Server"
echo -e "" echo -e ""
@ -539,7 +549,7 @@ fn_details_realvirtuality(){
echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL" echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
echo -e "> Game\tINBOUND\t${port}\tudp" echo -e "> Game\tINBOUND\t${port}\tudp"
# Don't do arithmetics if ever the port wasn't a numeric value # Don't do arithmetics if ever the port wasn't a numeric value
if [ "${port}" -eq "${port}" ]; then if [ "${port}" -eq "${port}" ]; then
echo -e "> Steam: Query\tINBOUND\t$((port+1))\tudp" echo -e "> Steam: Query\tINBOUND\t$((port+1))\tudp"
echo -e "> Steam: Master traffic\tINBOUND\t$((port+2))\tudp" echo -e "> Steam: Master traffic\tINBOUND\t$((port+2))\tudp"
echo -e "> Undocumented Port\tINBOUND\t$((port+3))\tudp" echo -e "> Undocumented Port\tINBOUND\t$((port+3))\tudp"
@ -682,7 +692,7 @@ fn_details_towerunite(){
echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL" echo -e "DESCRIPTION\tDIRECTION\tPORT\tPROTOCOL"
echo -e "> Game\tINBOUND\t${port}\ttcp" echo -e "> Game\tINBOUND\t${port}\ttcp"
# Don't do arithmetics if ever the port wasn't a numeric value # Don't do arithmetics if ever the port wasn't a numeric value
if [ "${port}" -eq "${port}" ]; then if [ "${port}" -eq "${port}" ]; then
echo -e "> Steam\tINBOUND\t$((port+1))\tudp" echo -e "> Steam\tINBOUND\t$((port+1))\tudp"
fi fi
echo -e "> Query\tINBOUND\t${queryport}\tudp" echo -e "> Query\tINBOUND\t${queryport}\tudp"
@ -814,6 +824,8 @@ fn_display_details() {
fn_details_sdtd fn_details_sdtd
elif [ "${gamename}" == "ARK: Survival Evolved" ]; then elif [ "${gamename}" == "ARK: Survival Evolved" ]; then
fn_details_ark fn_details_ark
elif [ "${gamename}" == "Ballistic Overkill" ]; then
fn_details_ballisticoverkill
elif [ "${gamename}" == "Call of Duty" ]; then elif [ "${gamename}" == "Call of Duty" ]; then
fn_details_cod fn_details_cod
elif [ "${gamename}" == "Call of Duty: United Offensive" ]; then elif [ "${gamename}" == "Call of Duty: United Offensive" ]; then
@ -825,7 +837,7 @@ fn_display_details() {
elif [ "${gamename}" == "Call of Duty: World at War" ]; then elif [ "${gamename}" == "Call of Duty: World at War" ]; then
fn_details_codwaw fn_details_codwaw
elif [ "${gamename}" == "Factorio" ]; then elif [ "${gamename}" == "Factorio" ]; then
fn_details_factorio fn_details_factorio
elif [ "${gamename}" == "Hurtworld" ]; then elif [ "${gamename}" == "Hurtworld" ]; then
fn_details_hurtworld fn_details_hurtworld
elif [ "${gamename}" == "QuakeWorld" ]; then elif [ "${gamename}" == "QuakeWorld" ]; then
@ -841,7 +853,7 @@ fn_display_details() {
elif [ "${gamename}" == "Tower Unite" ]; then elif [ "${gamename}" == "Tower Unite" ]; then
fn_details_towerunite fn_details_towerunite
elif [ "${gamename}" == "Multi Theft Auto" ]; then elif [ "${gamename}" == "Multi Theft Auto" ]; then
fn_details_mta fn_details_mta
elif [ "${gamename}" == "Mumble" ]; then elif [ "${gamename}" == "Mumble" ]; then
fn_details_mumble fn_details_mumble
elif [ "${gamename}" == "Rust" ]; then elif [ "${gamename}" == "Rust" ]; then

2
lgsm/functions/command_dev_debug.sh

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
# LGSM command_dev_debug.sh function # LinuxGSM command_dev_debug.sh function
# Author: Daniel Gibbs # Author: Daniel Gibbs
# Website: https://gameservermanagers.com # Website: https://gameservermanagers.com
# Description: Dev only: Enables debugging log to be saved to dev-debug.log. # Description: Dev only: Enables debugging log to be saved to dev-debug.log.

2
lgsm/functions/command_dev_detect_deps.sh

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
# LGSM command_dev_detect_deps.sh function # LinuxGSM command_dev_detect_deps.sh function
# Author: Daniel Gibbs # Author: Daniel Gibbs
# Website: https://gameservermanagers.com # Website: https://gameservermanagers.com
# Description: Detects dependencies the server binary requires. # Description: Detects dependencies the server binary requires.

52
lgsm/functions/command_fastdl.sh

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
# LGSM command_fastdl.sh function # LinuxGSM command_fastdl.sh function
# Author: Daniel Gibbs # Author: Daniel Gibbs
# Contributor: UltimateByte # Contributor: UltimateByte
# Website: https://gameservermanagers.com # Website: https://gameservermanagers.com
@ -42,14 +42,9 @@ fn_fastdl_init(){
sleep 1 sleep 1
echo -en "\n" echo -en "\n"
fn_script_log "Started FastDL creation" fn_script_log "Started FastDL creation"
while true; do if ! fn_prompt_yn "Continue?" Y; then
read -e -i "y" -p "Continue? [Y/n]" yn exit
case $yn in fi
[Yy]* ) break;;
[Nn]* ) exit;;
* ) echo "Please answer yes or no.";;
esac
done
fn_script_log "Initiating FastDL creation" fn_script_log "Initiating FastDL creation"
# Check and create directories # Check and create directories
@ -91,27 +86,21 @@ fn_fastdl_config(){
# Prompt for clearing old files if directory was already here # Prompt for clearing old files if directory was already here
if [ -n "${newfastdl}" ] && [ "${newfastdl}" == "0" ]; then if [ -n "${newfastdl}" ] && [ "${newfastdl}" == "0" ]; then
fn_print_dots fn_print_dots
while true; do if fn_prompt_yn "Clear old FastDL files?" Y; then
read -e -i "y" -p "Clear old FastDL files? [Y/n]" yn clearoldfastdl="on"; fn_script_log "clearoldfastdl enabled"; fn_print_ok "Clearing Enabled"
case $yn in else
[Yy]* ) clearoldfastdl="on"; fn_script_log "clearoldfastdl enabled"; fn_print_ok "Clearing Enabled"; break;; clearoldfastdl="off"; fn_script_log "clearoldfastdl disabled"; fn_print_ok "Clearing Disabled"
[Nn]* ) clearoldfastdl="off"; fn_script_log "clearoldfastdl disabled"; fn_print_ok "Clearing Disabled"; break;; fi
* ) echo "Please answer yes or no.";;
esac
done
echo -en "\n" echo -en "\n"
fi fi
# Prompt for using bzip2 if it's installed # Prompt for using bzip2 if it's installed
if [ ${bzip2installed} == 1 ]; then if [ ${bzip2installed} == 1 ]; then
fn_print_dots fn_print_dots
while true; do if fn_prompt_yn "Enable file compression using bzip2?" Y; then
read -e -i "y" -p "Enable file compression using bzip2? [Y/n]" yn bzip2enable="on"; fn_script_log "bzip2 enabled"; fn_print_ok "bzip2 Enabled"
case $yn in else
[Yy]* ) bzip2enable="on"; fn_script_log "bzip2 enabled"; fn_print_ok "bzip2 Enabled"; break;; bzip2enable="off"; fn_script_log "bzip2 disabled"; fn_print_ok "bzip2 Disabled"
[Nn]* ) bzip2enable="off"; fn_script_log "bzip2 disabled"; fn_print_ok "bzip2 Disabled"; break;; fi
* ) echo "Please answer yes or no.";;
esac
done
echo -en "\n" echo -en "\n"
fi fi
} }
@ -119,14 +108,11 @@ fn_fastdl_config(){
fn_fastdl_gmod_config(){ fn_fastdl_gmod_config(){
# Prompt for download enforcer, that is using a .lua addfile resource generator # Prompt for download enforcer, that is using a .lua addfile resource generator
fn_print_dots fn_print_dots
while true; do if fn_prompt_yn "Use client download enforcer?" Y; then
read -e -i "y" -p "Use client download enforcer? [Y/n]" yn luaressource="on"; fn_script_log "DL enforcer Enabled"; fn_print_ok "Enforcer Enabled"
case $yn in else
[Yy]* ) luaressource="on"; fn_script_log "DL enforcer Enabled"; fn_print_ok "Enforcer Enabled"; break;; luaressource="off"; fn_script_log "DL enforcer Disabled"; fn_print_ok "Enforcer Disabled"
[Nn]* ) luaressource="off"; fn_script_log "DL enforcer Disabled"; fn_print_ok "Enforcer Disabled"; break;; fi
* ) echo "Please answer yes or no.";;
esac
done
echo -en "\n" echo -en "\n"
} }

2
lgsm/functions/command_install.sh

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
# LGSM command_install.sh function # LinuxGSM command_install.sh function
# Author: Daniel Gibbs # Author: Daniel Gibbs
# Contributor: UltimateByte # Contributor: UltimateByte
# Website: https://gameservermanagers.com # Website: https://gameservermanagers.com

13
lgsm/functions/command_install_resources_mta.sh

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
# LGSM command_install_resources_mta.sh function # LinuxGSM command_install_resources_mta.sh function
# Author: Daniel Gibbs # Author: Daniel Gibbs
# Website: https://gameservermanagers.com # Website: https://gameservermanagers.com
# Description: Installs the default resources for Multi Theft Auto. # Description: Installs the default resources for Multi Theft Auto.
@ -21,11 +21,6 @@ fn_install_resources(){
fn_print_header fn_print_header
fn_print_warning_nl "Installing the default resources with existing resources may cause issues." fn_print_warning_nl "Installing the default resources with existing resources may cause issues."
while true; do if fn_prompt_yn "Do you want to install MTA default resources?" Y; then
read -e -i "y" -p "Do you want to install MTA default resources? [Y/n]" yn fn_install_resources
case $yn in fi
[Yy]* ) fn_install_resources && break;;
[Nn]* ) break;;
* ) echo "Please answer yes or no.";;
esac
done

13
lgsm/functions/command_mods_install.sh

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
# LGSM command_mods_install.sh function # LinuxGSM command_mods_install.sh function
# Author: Daniel Gibbs # Author: Daniel Gibbs
# Contributor: UltimateByte # Contributor: UltimateByte
# Website: https://gameservermanagers.com # Website: https://gameservermanagers.com
@ -87,14 +87,9 @@ if [ -f "${modsinstalledlistfullpath}" ]; then
fn_script_log_warn "${modprettyname} is already installed" fn_script_log_warn "${modprettyname} is already installed"
sleep 1 sleep 1
echo " * Any configs may be overwritten." echo " * Any configs may be overwritten."
while true; do if ! fn_prompt_yn "Continue?" Y; then
read -e -i "y" -p "Continue? [Y/n]" yn echo Exiting; core_exit.sh
case $yn in fi
[Yy]* ) break;;
[Nn]* ) echo Exiting; core_exit.sh;;
* ) echo "Please answer yes or no.";;
esac
done
fn_script_log_info "User selected to continue" fn_script_log_info "User selected to continue"
fi fi
fi fi

13
lgsm/functions/command_mods_remove.sh

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
# LGSM command_mods_uninstall.sh function # LinuxGSM command_mods_uninstall.sh function
# Author: Daniel Gibbs # Author: Daniel Gibbs
# Contributor: UltimateByte # Contributor: UltimateByte
# Website: https://gameservermanagers.com # Website: https://gameservermanagers.com
@ -45,14 +45,9 @@ done
fn_print_warning_nl "You are about to remove ${cyan}${usermodselect}${default}." fn_print_warning_nl "You are about to remove ${cyan}${usermodselect}${default}."
echo " * Any custom files/configuration will be removed." echo " * Any custom files/configuration will be removed."
while true; do if ! fn_prompt_yn "Continue?" Y; then
read -e -i "y" -p "Continue? [Y/n]" yn echo Exiting; exit
case $yn in fi
[Yy]* ) break;;
[Nn]* ) echo Exiting; exit;;
* ) echo "Please answer yes or no.";;
esac
done
currentmod="${usermodselect}" currentmod="${usermodselect}"
fn_mod_get_info fn_mod_get_info

2
lgsm/functions/command_mods_update.sh

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
# LGSM command_mods_update.sh function # LinuxGSM command_mods_update.sh function
# Author: Daniel Gibbs # Author: Daniel Gibbs
# Contributor: UltimateByte # Contributor: UltimateByte
# Website: https://gameservermanagers.com # Website: https://gameservermanagers.com

3
lgsm/functions/command_monitor.sh

@ -1,5 +1,5 @@
#!/bin/bash #!/bin/bash
# LGSM command_monitor.sh function # LinuxGSM command_monitor.sh function
# Author: Daniel Gibbs # Author: Daniel Gibbs
# Contributor: UltimateByte # Contributor: UltimateByte
# Website: https://gameservermanagers.com # Website: https://gameservermanagers.com
@ -98,6 +98,7 @@ fn_monitor_tmux(){
fi fi
} }
monitorflag=1
fn_print_dots "${servername}" fn_print_dots "${servername}"
sleep 1 sleep 1
check.sh check.sh

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save