#!/bin/bash # Starbound # Server Management Script # Author: Daniel Gibbs # Website: http://gameservermanagers.com version="010715" #### Variables #### # Notification Email # (on|off) emailnotification="off" email="email@example.com" # Steam login steamuser="username" steampass="password" # Start Variables ip="0.0.0.0" updateonstart="no" fn_parms(){ parms="" } #### Advanced Variables #### # Steam appid="211820" # Server Details servicename="sb-server" gamename="Starbound" engine="starbound" # Directories rootdir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" selfname="$(basename $0)" lockselfname=".${servicename}.lock" filesdir="${rootdir}/serverfiles" systemdir="${filesdir}" executabledir="${filesdir}/linux64" executable="./starbound_server" servercfg="sbboot.config" servercfgdir="${executabledir}" servercfgfullpath="${servercfgdir}/${servercfg}" backupdir="${rootdir}/backups" # Logging logdays="7" gamelogdir="${filesdir}/giraffe_storage" scriptlogdir="${rootdir}/log/script" consolelogdir="${rootdir}/log/console" scriptlog="${scriptlogdir}/${servicename}-script.log" consolelog="${consolelogdir}/${servicename}-console.log" emaillog="${scriptlogdir}/${servicename}-email.log" scriptlogdate="${scriptlogdir}/${servicename}-script-$(date '+%d-%m-%Y-%H-%M-%S').log" consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%d-%m-%Y-%H-%M-%S').log" ##### Script ##### # Do not edit fn_runfunction(){ # Functions are downloaded and run with this function if [ ! -f "${rootdir}/functions/${functionfile}" ]; then cd "${rootdir}" if [ ! -d "functions" ]; then mkdir functions fi cd functions echo -e "loading ${functionfile}...\c" wget -N /dev/null https://raw.githubusercontent.com/dgibbs64/linuxgsm/master/functions/${functionfile} 2>&1 | grep -F HTTP | cut -c45- chmod +x "${functionfile}" cd "${rootdir}" sleep 1 fi source "${rootdir}/functions/${functionfile}" } fn_functions(){ # Functions are defined in fn_functions. functionfile="${FUNCNAME}" fn_runfunction } fn_functions getopt=$1 fn_getopt