#!/bin/bash # LGSM fn_validate function # Author: Daniel Gibbs # Website: http://danielgibbs.co.uk # Version: 150415 # Description: Runs a server validation. local modulename="Validate" fn_validation(){ fn_printwarn "Validating may overwrite some customised files." sleep 1 echo -en "\n" echo -en "https://developer.valvesoftware.com/wiki/SteamCMD#Validate" sleep 5 echo -en "\n" fn_printdots "Checking server files" sleep 1 fn_printok "Checking server files" fn_scriptlog "Checking server files" sleep 1 cd "${rootdir}" cd "steamcmd" ./steamcmd.sh +login "${steamuser}" "${steampass}" +force_install_dir "${filesdir}" +app_update "${appid}" validate +quit|tee -a "${scriptlog}" fn_scriptlog "Checking complete" # addition for 7 Days to Die - very popular server addon run on most dedicated servers # file validation breaks this addon and it requires re-installation each time. if [ "${allocsfixes}" = true ]; then sleep 5 fn_scriptlog "Installing Alloc's Server Fixes" echo -en "\n" sleep 5 echo -en "Installing Alloc's Server Fixes\n" cd "${rootdir}"/serverfiles/ rm -rf server_fixes.tar.gz wget http://illy.bz/fi/7dtd/server_fixes.tar.gz if [ -f "server_fixes.tar.gz" ]; then tar -xzf server_fixes.tar.gz rm -rf server_fixes.tar.gz fn_scriptlog "Server Fixes Installed" echo -en "Alloc's Server Fixes have been installed.\n" else if [ ! -f "server_fixes.tar.gz" ]; then fn_scriptlog "Error downloading Server Fixes!" fi echo -en "There was a problem installing Alloc's Server Fixes!" fi fn_scriptlog "Alloc's Server Fixes installed." echo -en "FAlloc's Server Fixes installed.\n" fi } fn_check_root fn_check_systemdir tmuxwc=$(tmux list-sessions 2>&1|awk '{print $1}'|grep -v failed|grep -Ec "^${servicename}:") if [ "${tmuxwc}" -eq 1 ]; then fn_stop fn_validation fn_start else fn_validation fi