-
-
Notifications
You must be signed in to change notification settings - Fork 831
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
168 changed files
with
683 additions
and
462 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.