diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 000000000..19ec9bbb9 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,155 @@ +language: bash + +before_script: + - curl -L "https://shunit2.googlecode.com/files/shunit2-2.1.6.tgz" | tar zx + + + - mkdir /home/travis/build/dgibbs64/linuxgsm/7DaysToDie/serverfiles + - touch /home/travis/build/dgibbs64/linuxgsm/7DaysToDie/serverfiles/serverconfig.xml + + - mkdir /home/travis/build/dgibbs64/linuxgsm/CounterStrike/serverfiles/ + - mkdir /home/travis/build/dgibbs64/linuxgsm/CounterStrike/serverfiles/cstrike + + - mkdir /home/travis/build/dgibbs64/linuxgsm/CounterStrikeGlobalOffensive/serverfiles/ + - mkdir /home/travis/build/dgibbs64/linuxgsm/CounterStrikeGlobalOffensive/serverfiles/csgo + - mkdir /home/travis/build/dgibbs64/linuxgsm/CounterStrikeGlobalOffensive/serverfiles/csgo/cfg + + - mkdir /home/travis/build/dgibbs64/linuxgsm/JustCause2/serverfiles/ + - touch /home/travis/build/dgibbs64/linuxgsm/JustCause2/serverfiles/default_config.lua + + - mkdir /home/travis/build/dgibbs64/linuxgsm/KillingFloor/serverfiles + - mkdir /home/travis/build/dgibbs64/linuxgsm/KillingFloor/serverfiles/System + - touch /home/travis/build/dgibbs64/linuxgsm/KillingFloor/serverfiles/System/Default.ini + + - mkdir /home/travis/build/dgibbs64/linuxgsm/ProjectZomboid/Zomboid + - mkdir /home/travis/build/dgibbs64/linuxgsm/ProjectZomboid/Zomboid/Server + - mkdir /home/travis/build/dgibbs64/linuxgsm/ProjectZomboid/serverfiles + - mkdir /home/travis/build/dgibbs64/linuxgsm/ProjectZomboid/serverfiles/projectzomboid + + - mkdir /home/travis/build/dgibbs64/linuxgsm/SeriousSam3BFE/serverfiles + - mkdir /home/travis/build/dgibbs64/linuxgsm/SeriousSam3BFE/serverfiles/Content/ + - mkdir /home/travis/build/dgibbs64/linuxgsm/SeriousSam3BFE/serverfiles/Content/SeriousSam3 + - mkdir /home/travis/build/dgibbs64/linuxgsm/SeriousSam3BFE/serverfiles/Content/SeriousSam3/Config + - mkdir /home/travis/build/dgibbs64/linuxgsm/SeriousSam3BFE/serverfiles/Bin + + - mkdir /home/travis/build/dgibbs64/linuxgsm/UnrealTournament2004/serverfiles + - mkdir /home/travis/build/dgibbs64/linuxgsm/UnrealTournament2004/serverfiles/System + - touch /home/travis/build/dgibbs64/linuxgsm/UnrealTournament2004/serverfiles/System/ut2k4-server.ini + + - mkdir /home/travis/build/dgibbs64/linuxgsm/UnrealTournament99/serverfiles + - mkdir /home/travis/build/dgibbs64/linuxgsm/UnrealTournament99/serverfiles/System + - touch /home/travis/build/dgibbs64/linuxgsm/UnrealTournament99/serverfiles/System/ut99-server.ini + - mkdir /home/travis/build/dgibbs64/linuxgsm/TeamSpeak3/serverfiles +script: + + - bash 7DaysToDie/sdtdserver auto-install + - bash 7DaysToDie/sdtdserver start + - bash 7DaysToDie/sdtdserver stop + - bash 7DaysToDie/sdtdserver restart + - bash 7DaysToDie/sdtdserver validate + - bash 7DaysToDie/sdtdserver monitor + - bash 7DaysToDie/sdtdserver email-test + - bash 7DaysToDie/sdtdserver details + + - bash Arma3/arma3server auto-install + - bash Arma3/arma3server start + - bash Arma3/arma3server stop + - bash Arma3/arma3server restart + - bash Arma3/arma3server validate + - bash Arma3/arma3server monitor + - bash Arma3/arma3server email-test + - bash Arma3/arma3server details + + - bash CounterStrike/csserver auto-install + - bash CounterStrike/csserver start + - bash CounterStrike/csserver stop + - bash CounterStrike/csserver restart + - bash CounterStrike/csserver validate + - bash CounterStrike/csserver monitor + - bash CounterStrike/csserver email-test + - bash CounterStrike/csserver details + + - bash CounterStrikeGlobalOffensive/csgoserver auto-install + - bash CounterStrikeGlobalOffensive/csgoserver start + - bash CounterStrikeGlobalOffensive/csgoserver stop + - bash CounterStrikeGlobalOffensive/csgoserver restart + - bash CounterStrikeGlobalOffensive/csgoserver validate + - bash CounterStrikeGlobalOffensive/csgoserver monitor + - bash CounterStrikeGlobalOffensive/csgoserver email-test + - bash CounterStrikeGlobalOffensive/csgoserver details + + - bash JustCause2/jc2server auto-install + - bash JustCause2/jc2server start + - bash JustCause2/jc2server stop + - bash JustCause2/jc2server restart + - bash JustCause2/jc2server validate + - bash JustCause2/jc2server monitor + - bash JustCause2/jc2server email-test + - bash JustCause2/jc2server details + + - bash KillingFloor/kfserver auto-install + - bash KillingFloor/kfserver start + - bash KillingFloor/kfserver stop + - bash KillingFloor/kfserver restart + - bash KillingFloor/kfserver validate + - bash KillingFloor/kfserver monitor + - bash KillingFloor/kfserver email-test + - bash KillingFloor/kfserver details + + - bash NaturalSelection2/ns2server auto-install + - bash NaturalSelection2/ns2server start + - bash NaturalSelection2/ns2server stop + - bash NaturalSelection2/ns2server restart + - bash NaturalSelection2/ns2server validate + - bash NaturalSelection2/ns2server monitor + - bash NaturalSelection2/ns2server email-test + - bash NaturalSelection2/ns2server details + + - bash ProjectZomboid/pzserver auto-install + - bash ProjectZomboid/pzserver start + - bash ProjectZomboid/pzserver stop + - bash ProjectZomboid/pzserver restart + - bash ProjectZomboid/pzserver validate + - bash ProjectZomboid/pzserver monitor + - bash ProjectZomboid/pzserver email-test + - bash ProjectZomboid/pzserver details + + - bash SeriousSam3BFE/ss3sserver auto-install + - bash SeriousSam3BFE/ss3sserver start + - bash SeriousSam3BFE/ss3sserver stop + - bash SeriousSam3BFE/ss3sserver restart + - bash SeriousSam3BFE/ss3sserver validate + - bash SeriousSam3BFE/ss3sserver monitor + - bash SeriousSam3BFE/ss3sserver email-test + - bash SeriousSam3BFE/ss3sserver details + + - bash StarBound/sbserver auto-install + - bash StarBound/sbserver start + - bash StarBound/sbserver stop + - bash StarBound/sbserver restart + - bash StarBound/sbserver validate + - bash StarBound/sbserver monitor + - bash StarBound/sbserver email-test + - bash StarBound/sbserver details + + - bash UnrealTournament2004/ut2k4server start + - bash UnrealTournament2004/ut2k4server stop + - bash UnrealTournament2004/ut2k4server restart + - bash UnrealTournament2004/ut2k4server monitor + - bash UnrealTournament2004/ut2k4server email-test + - bash UnrealTournament2004/ut2k4server details + + - bash UnrealTournament99/ut99server start + - bash UnrealTournament99/ut99server stop + - bash UnrealTournament99/ut99server restart + - bash UnrealTournament99/ut99server monitor + - bash UnrealTournament99/ut99server email-test + - bash UnrealTournament99/ut99server details + + - bash TeamSpeak3/ts3server start + - bash TeamSpeak3/ts3server stop + - bash TeamSpeak3/ts3server restart + - bash TeamSpeak3/ts3server update + - bash TeamSpeak3/ts3server monitor + - bash TeamSpeak3/ts3server email-test + - bash TeamSpeak3/ts3server details \ No newline at end of file diff --git a/7DaysToDie/sdtdserver b/7DaysToDie/sdtdserver index 0523ed81d..be5dee526 100644 --- a/7DaysToDie/sdtdserver +++ b/7DaysToDie/sdtdserver @@ -17,7 +17,18 @@ steamuser="username" steampass="password" # Start Variables -ip="0.0.0.0" +ip="0.0.0.0" # can leave to answer on any IP + +# Mod Variables + +# If you are using or want to use Alloc's Server Fixes, +# uncomment the variable below +# *****Note: It has happened where the core gets updated, but +# Alloc's fixes weren't updated yet. If this happens +# you may need to comment out or set to false temporarily +# until Alloc's patch is updated. Please see 7 Days To Die +# forum for details. Many people use this patch. +allocsfixes=true # set to true if you want installed, false or comment if not # http://7daystodie.gamepedia.com/Server fn_parms(){ diff --git a/Insurgency/dependencies/libm.so.6 b/Insurgency/dependencies/libm.so.6 new file mode 100644 index 000000000..39034023b Binary files /dev/null and b/Insurgency/dependencies/libm.so.6 differ diff --git a/LICENSE b/LICENSE index 1ac4c4046..64aaf3c3f 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ The MIT License (MIT) -Copyright (c) 2014 Daniel Gibbs +Copyright (c) 2015 Daniel Gibbs Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/NS2Combat/dependencies/libc.so.6 b/NS2Combat/dependencies/libc.so.6 new file mode 100644 index 000000000..ee77b1740 Binary files /dev/null and b/NS2Combat/dependencies/libc.so.6 differ diff --git a/NS2Combat/dependencies/libm.so.6 b/NS2Combat/dependencies/libm.so.6 new file mode 100644 index 000000000..39034023b Binary files /dev/null and b/NS2Combat/dependencies/libm.so.6 differ diff --git a/NS2Combat/dependencies/libstdc++.so.6 b/NS2Combat/dependencies/libstdc++.so.6 new file mode 100644 index 000000000..fa1204704 Binary files /dev/null and b/NS2Combat/dependencies/libstdc++.so.6 differ diff --git a/NS2Combat/ns2cserver b/NS2Combat/ns2cserver new file mode 100644 index 000000000..9eddc7ba1 --- /dev/null +++ b/NS2Combat/ns2cserver @@ -0,0 +1,103 @@ +#!/bin/bash +# NS2: Combat +# Server Management Script +# Author: Daniel Gibbs +# Website: http://danielgibbs.co.uk +# Version: 210115 + +#### Variables #### + +# Notification Email +# (on|off) +emailnotification="off" +email="email@example.com" + +# Steam login +steamuser="username" +steampass="password" + +# Start Variables +defaultmap="co_core" +port="27015" +maxplayers="24" +ip="0.0.0.0" +servername="NS2C Server" +webadminuser="admin" +webadminpass="admin" +webadminport="8080" +configpath="server1" +modstorage="server1/Workshop" +mods="" +password="" +# Add the following line to the parms if you want a private server. Ensuring +# that the password variable above is not left empty. +# -password \"${password}\" + +# http://wiki.unknownworlds.com/ns2/Dedicated_Server +fn_parms(){ +parms="-name \"${servername}\" -port ${port} -webadmin -webdomain ${ip} -webuser ${webadminuser} -webpassword \"${webadminpass}\" -webport ${webadminport} -map ${defaultmap} -limit ${maxplayers} -config_path \"${rootdir}/${configpath}\" -modstorage \"${rootdir}/${modstorage}\" -mods \"${mods}\"" +} + +#### Advanced Variables #### + +# Steam +appid="313900" + +# Server Details +servicename="ns2c-server" +gamename="NS2: Combat" +engine="spark" + +# Directories +rootdir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" +selfname="$(basename $0)" +lockselfname=".${servicename}.lock" +filesdir="${rootdir}/serverfiles" +systemdir="${filesdir}" +executabledir="${filesdir}/ia32" +executable="./ns2combatserver_linux32" +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 --no-check-certificate /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 diff --git a/ProjectZomboid/pzserver b/ProjectZomboid/pzserver new file mode 100644 index 000000000..5ba24e857 --- /dev/null +++ b/ProjectZomboid/pzserver @@ -0,0 +1,92 @@ +#!/bin/bash +# Project Zomboid +# Server Management Script +# Author: Daniel Gibbs +# Website: http://danielgibbs.co.uk +# Version: 150415 + +#### Variables #### + +# Notification Email +# (on|off) +emailnotification="off" +email="email@example.com" + +# Steam login +steamuser="anonymous" +steampass="" + +# Start Variables +ip="0.0.0.0" + +fn_parms(){ +parms="" +} + +#### Advanced Variables #### + +# Steam +appid="108600" + +# Server Details +servicename="pz-server" +gamename="Project Zomboid" +engine="projectzomboid" + +# Directories +rootdir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" +selfname="$(basename $0)" +lockselfname=".${servicename}.lock" +filesdir="${rootdir}/serverfiles" +systemdir="${filesdir}/projectzomboid" +executabledir="${filesdir}" +executable="./projectzomboid-dedi-server.sh" +servercfgdir="${rootdir}/Zomboid/Server" +servercfg="servertest.ini" +servercfgfullpath="${servercfgdir}/${servercfg}" +defaultcfg="${servercfgdir}/servertest.ini" +backupdir="${rootdir}/backups" + +# Logging +logdays="7" +gamelogdir="${HOME}/Zomboid/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 --no-check-certificate /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 diff --git a/README.md b/README.md index 9d63d6bc7..a0bc59711 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,13 @@ -

Linux Game Server Managers_ Install

-linux Game Server Managers +

Linux Game Server Managers_

+linux Game Server Managers + +[![Build Status](https://travis-ci.org/dgibbs64/linuxgsm.svg?branch=master)](https://travis-ci.org/dgibbs64/linuxgsm) The Linux Game Server Managers are command line tools for quick, simple deployment and management of various dedicated game servers and voice comms servers. + +

Hassle Free Dedicated Servers

+Game servers traditionally are not easy to manage yourself. Admins often have to spend hours just messing around trying to get there server working. LGSM is designed to be a simple as possible allowing Admins to spend less time on management and more time on the fun stuff. +

Main features