From 5d3efedfa099fb67ba5c1cca5dd57f52265ec2f2 Mon Sep 17 00:00:00 2001 From: TS3tools Date: Wed, 10 Aug 2016 09:49:07 +0200 Subject: [PATCH 1/4] Added IPv6 bindings for TeamSpeak 3 server 3.0.13 and newer IPv6 support was added to TeamSpeak 3 server version 3.0.13. It's also possible to use IPv6 addresses in the query_ip_whitelist.txt, query_ip_blacklist.txt and tsdns_settings.ini. Please note, that you need to set the IPv6 inside square brackets in the tsdns_settings.ini (and only there) like this: ipv6-ts3.example.com=[2606:2800:220:1:248:1893:25c8:1946]:9987 --- TeamSpeak3/cfg/lgsm-default.ini | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/TeamSpeak3/cfg/lgsm-default.ini b/TeamSpeak3/cfg/lgsm-default.ini index 71000a42e..0fca88d4d 100644 --- a/TeamSpeak3/cfg/lgsm-default.ini +++ b/TeamSpeak3/cfg/lgsm-default.ini @@ -1,11 +1,11 @@ machine_id= default_voice_port=9987 -voice_ip=0.0.0.0 +voice_ip=0.0.0.0, :: licensepath= filetransfer_port=30033 -filetransfer_ip=0.0.0.0 +filetransfer_ip=0.0.0.0, :: query_port=10011 -query_ip=0.0.0.0 +query_ip=0.0.0.0, :: query_ip_whitelist=query_ip_whitelist.txt query_ip_blacklist=query_ip_blacklist.txt dbplugin=ts3db_sqlite3 @@ -17,4 +17,4 @@ logpath=logs logquerycommands=0 dbclientkeepdays=30 logappend=0 -query_skipbruteforcecheck=0 \ No newline at end of file +query_skipbruteforcecheck=0 From 68cfb0526506b9ad0f29cd76eb3a9862fed3f92d Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Wed, 10 Aug 2016 17:57:35 +0100 Subject: [PATCH 2/4] added empires mod config --- lgsm/functions/install_config.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lgsm/functions/install_config.sh b/lgsm/functions/install_config.sh index 281ddb87f..76e08b3d2 100644 --- a/lgsm/functions/install_config.sh +++ b/lgsm/functions/install_config.sh @@ -255,6 +255,8 @@ elif [ "${gamename}" == "Double Action: Boogaloo" ]; then wget -N /dev/null ${githuburl}/DoubleActionBoogaloo/cfg/lgsm-default.cfg 2>&1 | grep -F HTTP | cut -c45- | uniq sleep 1 fn_sourceconfig +elif [ "${gamename}" == "Empires Mod" ]; then + fn_defaultconfig elif [ "${gamename}" == "Fistful of Frags" ]; then echo -e "downloading lgsm-default.cfg...\c" wget -N /dev/null ${githuburl}/FistfulOfFrags/cfg/lgsm-default.cfg 2>&1 | grep -F HTTP | cut -c45- | uniq From e462de3ce5dab2eb43f699e0df09b14bccddef25 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Wed, 10 Aug 2016 17:57:47 +0100 Subject: [PATCH 3/4] Added emserver --- EmpiresMod/emserver | 156 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 156 insertions(+) create mode 100644 EmpiresMod/emserver diff --git a/EmpiresMod/emserver b/EmpiresMod/emserver new file mode 100644 index 000000000..c78f1833d --- /dev/null +++ b/EmpiresMod/emserver @@ -0,0 +1,156 @@ +#!/bin/bash +# Empires Mod +# Server Management Script +# Author: Daniel Gibbs +# Website: https://gameservermanagers.com +if [ -f ".dev-debug" ]; then + exec 5>dev-debug.log + BASH_XTRACEFD="5" + set -x +fi + +version="210516" + +#### Variables #### + +# Notification Alerts +# (on|off) + +# Email +emailalert="off" +email="email@example.com" + +# Pushbullet +# https://www.pushbullet.com/#settings +pushbulletalert="off" +pushbullettoken="accesstoken" + +# Steam login +steamuser="anonymous" +steampass="" + +# Start Variables +defaultmap="emp_district" +maxplayers="62" +port="27015" +sourcetvport="27020" +clientport="27005" +ip="0.0.0.0" +updateonstart="off" + +# https://developer.valvesoftware.com/wiki/Command_Line_Options#Source_Dedicated_Server +fn_parms(){ +parms="-game empires -strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +tv_port ${sourcetvport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}" +} + +#### Advanced Variables #### + +# Github Branch Select +# Allows for the use of different function files +# from a different repo and/or branch. +githubuser="dgibbs64" +githubrepo="linuxgsm" +githubbranch="master" + +# Steam +appid="460040" + +# Server Details +servicename="em-server" +gamename="Empires Mod" +engine="source" + +# 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" +filesdir="${rootdir}/serverfiles" +systemdir="${filesdir}/empires" +executabledir="${filesdir}" +executable="./srcds_run" +servercfg="${servicename}.cfg" +servercfgdir="${systemdir}/cfg" +servercfgfullpath="${servercfgdir}/${servercfg}" +servercfgdefault="${servercfgdir}/server.cfg" +backupdir="${rootdir}/backups" + +# Logging +logdays="7" +gamelogdir="${systemdir}/logs" +scriptlogdir="${rootdir}/log/script" +consolelogdir="${rootdir}/log/console" +consolelogging="on" + +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 + +# 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 +} + +core_dl.sh +core_functions.sh + +getopt=$1 +core_getopt.sh From 70ae137aa14bb409bd263b68dd9b24e13779f125 Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Wed, 10 Aug 2016 18:18:57 +0100 Subject: [PATCH 4/4] Added GSLT --- EmpiresMod/emserver | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/EmpiresMod/emserver b/EmpiresMod/emserver index c78f1833d..40ec7116c 100644 --- a/EmpiresMod/emserver +++ b/EmpiresMod/emserver @@ -38,6 +38,11 @@ clientport="27005" ip="0.0.0.0" updateonstart="off" +# Optional: Game Server Login Token +# GSLT can be used for running a public server. +# More info: https://gameservermanagers.com/gslt +gslt="" + # https://developer.valvesoftware.com/wiki/Command_Line_Options#Source_Dedicated_Server fn_parms(){ parms="-game empires -strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +tv_port ${sourcetvport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}"