From 840e8078e67bca696eecd417f8e5384edb0a245c Mon Sep 17 00:00:00 2001 From: Daniel Gibbs Date: Fri, 12 Jun 2015 22:07:17 +0100 Subject: [PATCH] Released Black Mesa: Deathmatch --- BlackMesa/bmdmserver | 99 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 99 insertions(+) create mode 100644 BlackMesa/bmdmserver diff --git a/BlackMesa/bmdmserver b/BlackMesa/bmdmserver new file mode 100644 index 000000000..fde45530d --- /dev/null +++ b/BlackMesa/bmdmserver @@ -0,0 +1,99 @@ +#!/bin/bash +# Black Mesa: Deathmatch +# Server Management Script +# Author: Daniel Gibbs +# Website: http://gameservermanagers.com +# Version: 120615 + +#### Variables #### + +# Notification Email +# (on|off) +emailnotification="off" +email="email@example.com" + +# Steam login +steamuser="anonymous" +steampass="" + +# Start Variables +defaultmap="dm_bounce" +maxplayers="16" +port="27015" +sourcetvport="27020" +clientport="27005" +ip="0.0.0.0" +updateonstart="no" + +# https://developer.valvesoftware.com/wiki/Command_Line_Options#Source_Dedicated_Server +fn_parms(){ +parms="-game bms -strictportbind -ip ${ip} -port ${port} +clientport ${clientport} +tv_port ${sourcetvport} +map ${defaultmap} +servercfgfile ${servercfg} -maxplayers ${maxplayers}" +} + +#### Advanced Variables #### + +# Steam +appid="346680" + +# Server Details +servicename="bmdm-server" +gamename="Black Mesa: Deathmatch" +engine="source" + +# Directories +rootdir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" +selfname="$(basename $0)" +lockselfname=".${servicename}.lock" +filesdir="${rootdir}/serverfiles" +systemdir="${filesdir}/bms" +executabledir="${filesdir}" +executable="./srcds_run" +servercfgdir="${systemdir}/cfg" +servercfg="${servicename}.cfg" +servercfgfullpath="${servercfgdir}/${servercfg}" +defaultcfg="${servercfgdir}/server.cfg" +backupdir="${rootdir}/backups" + +# Logging +logdays="7" +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" + +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