6 changed files with 258 additions and 199 deletions
@ -6,29 +6,35 @@ |
|||||
|
|
||||
version="180116" |
version="180116" |
||||
|
|
||||
|
# File fetching settings |
||||
|
# Github Branch Select |
||||
|
# Allows for the use of different function files |
||||
|
# from a different repo and/or branch. |
||||
|
githubuser="jaredballou" |
||||
|
githubrepo="linuxgsm" |
||||
|
githubbranch="master" |
||||
|
|
||||
#### Variables #### |
#### Variables #### |
||||
|
|
||||
# The name of this script file, used to show the LGSM link properly |
# The name of this script file, used to show the LGSM link properly |
||||
selfname=$(basename $(readlink -f "${BASH_SOURCE[0]}")) |
selfname=$(basename $(readlink -f "${BASH_SOURCE[0]}")) |
||||
|
|
||||
|
# Name of this service (for symlinked instances) |
||||
|
servicename="$(basename $0)" |
||||
|
|
||||
# Directories |
# Directories |
||||
|
|
||||
# Script root |
# Script root |
||||
rootdir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" |
rootdir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" |
||||
|
|
||||
# LGSM Support Files |
# LGSM Support Files |
||||
lgsmdir="${rootdir}/lgsm" |
lgsmdir="${rootdir}/lgsm" |
||||
|
|
||||
# Temporary path to store and manipulate settings |
# Temporary path to store and manipulate settings |
||||
settingsdir="${lgsmdir}/settings.tmp" |
settingsdir="${lgsmdir}/settings.tmp" |
||||
|
|
||||
# Supported Game Data |
# Supported Game Data |
||||
gamesdir="${lgsmdir}/games" |
gamesdir="${lgsmdir}/games" |
||||
|
|
||||
# Config path for local instances |
# Config path for local instances |
||||
scriptcfgdir="${lgsmdir}/cfg/servers" |
scriptcfgdir="${lgsmdir}/cfg/servers" |
||||
|
|
||||
|
|
||||
# Debugging, if debugflag exists send output to $debuglog |
# Debugging, if debugflag exists send output to $debuglog |
||||
debugflag="${lgsmdir}/.dev-debug" |
debugflag="${lgsmdir}/.dev-debug" |
||||
debuglog="${lgsmdir}/dev-debug.log" |
debuglog="${lgsmdir}/dev-debug.log" |
||||
@ -38,138 +44,8 @@ if [ -f "${debugflag}" ]; then |
|||||
set -x |
set -x |
||||
fi |
fi |
||||
|
|
||||
# Settings to get before config parsing begins |
|
||||
engine="source" |
|
||||
# Game name for file paths |
|
||||
game="insurgency" |
|
||||
# Name for subdirectory in GitHub repo |
|
||||
gamename="Insurgency" |
|
||||
# Name of this service (for symlinked instances) |
|
||||
servicename="$(basename $0)" |
|
||||
|
|
||||
# File fetching settings |
|
||||
# Github Branch Select |
|
||||
# Allows for the use of different function files |
|
||||
# from a different repo and/or branch. |
|
||||
githubuser="jaredballou" |
|
||||
githubrepo="linuxgsm" |
|
||||
githubbranch="master" |
|
||||
|
|
||||
#ipaddr=$(ip addr show $(ip route | grep '^default' | awk '{print $NF}') | grep 'inet ' | awk '{print $2}' | cut -f1 -d'/') |
#ipaddr=$(ip addr show $(ip route | grep '^default' | awk '{print $NF}') | grep 'inet ' | awk '{print $2}' | cut -f1 -d'/') |
||||
|
|
||||
# Config files |
|
||||
cfg_file_default="${scriptcfgdir}/_default.cfg" |
|
||||
cfg_file_common="${scriptcfgdir}/_common.cfg" |
|
||||
cfg_file_instance="${scriptcfgdir}/${servicename}.cfg" |
|
||||
|
|
||||
# Config file headers |
|
||||
cfg_header_all="# Your settings for all servers go in _common.cfg\n# Server-specific settings go into \$SERVER.cfg" |
|
||||
cfg_header_default="# Default config - Changes will be overwritten by updates.\n${cfg_header_all}" |
|
||||
cfg_header_common="# Common config - Will not be overwritten by script.\n${cfg_header_all}" |
|
||||
cfg_header_instance="# Instance Config for ${servicename} - Will not be overwritten by script.\n${cfg_header_all}" |
|
||||
|
|
||||
# If default config does not exist, create it. This should come from Git, and will be overwritten by updates. |
|
||||
# Rather than try to wget it from Github or other fancy ways to get it, the simplest way to ensure it works is to simply create it here. |
|
||||
fn_update_config() |
|
||||
{ |
|
||||
key=$1 |
|
||||
val=$2 |
|
||||
cfg_file=${3:-$cfg_file_default} |
|
||||
comment=${4:-""} |
|
||||
# Put " # " at beginning of comment if not empty |
|
||||
if [ "${comment}" != "" ] |
|
||||
then |
|
||||
comment=" # ${comment}" |
|
||||
fi |
|
||||
|
|
||||
# Line to be put in |
|
||||
data="${key}=\"${val}\"${comment}" |
|
||||
|
|
||||
# Get current key/value pair from file |
|
||||
exists=$(grep "^${key}=" $cfg_file) |
|
||||
|
|
||||
# Check if key exists in config |
|
||||
if [ "${exists}" != "" ]; then |
|
||||
# If the line isn't the same as the parsed data line, replace it |
|
||||
if [ "${exists}" != "${data}" ]; then |
|
||||
echo "Updating ${data} in ${cfg_file}" |
|
||||
sed -e "s/^${key}=.*\$/${data}/g" -i $cfg_file |
|
||||
fi |
|
||||
else |
|
||||
# If value does not exist, append to file |
|
||||
echo "Adding ${data} to ${cfg_file}" |
|
||||
echo -ne "${data}\n" >> $cfg_file |
|
||||
fi |
|
||||
} |
|
||||
fn_create_config(){ |
|
||||
cfg_type=${1:-default} |
|
||||
cfg_file="cfg_file_${cfg_type}" |
|
||||
cfg_header="cfg_header_${cfg_type}" |
|
||||
|
|
||||
cfg_dir=$(dirname ${!cfg_file}) |
|
||||
#If config directory does not exist, create it |
|
||||
if [ ! -e $cfg_dir ]; then mkdir -p $cfg_dir; fi |
|
||||
|
|
||||
# Create file header if needed |
|
||||
if [ ! -e ${!cfg_file} ]; then |
|
||||
echo "Creating ${cfg_type} config at ${!cfg_file}" |
|
||||
echo -ne "${!cfg_header}\n\n" > ${!cfg_file} |
|
||||
fi |
|
||||
|
|
||||
# Default config values |
|
||||
if [ "${cfg_type}" == "default" ]; then |
|
||||
fn_update_config "appid" "237410" |
|
||||
fn_update_config "beta" "" "${!cfg_file}" "To enable beta, use \"-beta beta\"" |
|
||||
fn_update_config "clientport" "27005" |
|
||||
fn_update_config "defaultmap" "ministry" |
|
||||
fn_update_config "defaultmode" "checkpoint" |
|
||||
fn_update_config "email" "[email protected]" |
|
||||
fn_update_config "emailnotification" "off" "$cfg_file_default" "(on|off)" |
|
||||
fn_update_config "ip" "0.0.0.0" |
|
||||
fn_update_config "lgsm_version" $version |
|
||||
fn_update_config "logdays" "7" |
|
||||
fn_update_config "mapcyclefile" "mapcycle.txt" |
|
||||
fn_update_config "maxplayers" "64" |
|
||||
fn_update_config "playlist" "custom" |
|
||||
fn_update_config "port" "27015" |
|
||||
fn_update_config "sourcetvport" "27020" |
|
||||
fn_update_config "srcds_parms" "" "$cfg_file_default" "Put the parameters that start with \"-\" first, then \"+\" parameters after" |
|
||||
fn_update_config "steampass" "" |
|
||||
fn_update_config "steamuser" "anonymous" |
|
||||
fn_update_config "updateonstart" "off" |
|
||||
fi |
|
||||
} |
|
||||
|
|
||||
fn_settings_flush(){ |
|
||||
if [ -e $settingsdir ]; then |
|
||||
rm -rf $settingsdir > /dev/null |
|
||||
fi |
|
||||
mkdir -p $settingsdir |
|
||||
} |
|
||||
fn_settings_import(){ |
|
||||
import="${gamesdir}/${1}" |
|
||||
if [ ! -e $import ]; then |
|
||||
fn_getgithubfile "games/${1}" |
|
||||
fi |
|
||||
source $import |
|
||||
} |
|
||||
|
|
||||
fn_set_game_params(){ |
|
||||
param_set=$1 |
|
||||
param_name=$2 |
|
||||
param_value=$3 |
|
||||
param_comment=$4 |
|
||||
fn_update_config "${param_name}" "${param_value}" "${settingsdir}/${param_set}" "${param_comment}" |
|
||||
} |
|
||||
fn_get_game_params(){ |
|
||||
param_set=$1 |
|
||||
param_name=$2 |
|
||||
param_default=$3 |
|
||||
} |
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
##### Script ##### |
##### Script ##### |
||||
# Do not edit |
# Do not edit |
||||
|
|
||||
@ -237,24 +113,6 @@ fn_getgithubfile(){ |
|||||
fi |
fi |
||||
} |
} |
||||
|
|
||||
# Flush old setings buffer |
|
||||
fn_settings_flush |
|
||||
|
|
||||
# Import this game's settings |
|
||||
fn_settings_import $game |
|
||||
|
|
||||
# New method is to always run this function, it will overwrite defaults with whatever the new script values are |
|
||||
fn_create_config default |
|
||||
|
|
||||
# Load defaults |
|
||||
source $cfg_file_default |
|
||||
|
|
||||
# Load sitewide common settings (so that Git updates can safely overwrite default.cfg) |
|
||||
if [ ! -f $cfg_file_common ]; then fn_create_config common; else source $cfg_file_common; fi |
|
||||
|
|
||||
# Load instance specific settings |
|
||||
if [ ! -f $cfg_file_instance ]; then fn_create_config instance; else source $cfg_file_instance; fi |
|
||||
|
|
||||
#### Advanced Variables #### |
#### Advanced Variables #### |
||||
# Directories |
# Directories |
||||
lockselfname=".${servicename}.lock" |
lockselfname=".${servicename}.lock" |
||||
@ -283,41 +141,21 @@ emaillog="${scriptlogdir}/${servicename}-email.log" |
|||||
scriptlogdate="${scriptlogdir}/${servicename}-script-$(date '+%d-%m-%Y-%H-%M-%S').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" |
consolelogdate="${consolelogdir}/${servicename}-console-$(date '+%d-%m-%Y-%H-%M-%S').log" |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
# Set the paramaters to send to srcds |
|
||||
# https://developer.valvesoftware.com/wiki/Command_Line_Options#Source_Dedicated_Server |
|
||||
fn_parms(){ |
|
||||
#TODO: Put in some conditional logic to handle generating the parm string so we can make this a little less game specific |
|
||||
parms="${parms} -game ${game}" |
|
||||
parms="${parms} -strictportbind" |
|
||||
parms="${parms} -ip ${ip}" |
|
||||
parms="${parms} -port ${port}" |
|
||||
parms="${parms} -maxplayers ${maxplayers}" |
|
||||
parms="${parms} ${srcds_parms}" |
|
||||
parms="${parms} +clientport ${clientport}" |
|
||||
parms="${parms} +tv_port ${sourcetvport}" |
|
||||
parms="${parms} +sv_playlist ${playlist}" |
|
||||
parms="${parms} +mapcyclefile ${mapcyclefile}" |
|
||||
parms="${parms} +servercfgfile ${servercfg}" |
|
||||
parms="${parms} +map ${defaultmap} ${defaultmode}" |
|
||||
} |
|
||||
|
|
||||
# fn_runfunction |
# fn_runfunction |
||||
fn_runfunction(){ |
fn_runfunction(){ |
||||
|
scriptfile=${1:-$functionfile} |
||||
|
functionfile=$scriptfile |
||||
fn_getgithubfile "functions/${functionfile}" 1 |
fn_getgithubfile "functions/${functionfile}" 1 |
||||
} |
} |
||||
|
|
||||
# core_functions.sh |
# core_functions.sh |
||||
core_functions.sh(){ |
#core_functions.sh(){ |
||||
# Functions are defined in core_functions.sh. |
# # Functions are defined in core_functions.sh. |
||||
functionfile="${FUNCNAME}" |
# fn_runfunction "${FUNCNAME}" |
||||
fn_runfunction |
#} |
||||
} |
|
||||
|
|
||||
core_functions.sh |
fn_runfunction game_settings.sh |
||||
|
fn_runfunction core_functions.sh |
||||
|
|
||||
getopt=$1 |
getopt=$1 |
||||
core_getopt.sh |
core_getopt.sh |
||||
|
@ -0,0 +1,144 @@ |
|||||
|
#!/bin/bash |
||||
|
# LGSM game_settings.sh function |
||||
|
# Author: Jared Ballou |
||||
|
# Website: http://gameservermanagers.com |
||||
|
lgsm_version="180116" |
||||
|
|
||||
|
function_selfname="$(basename $(readlink -f "${BASH_SOURCE[0]}"))" |
||||
|
local modulename="Settings" |
||||
|
|
||||
|
# Config files |
||||
|
cfg_file_default="${scriptcfgdir}/_default.cfg" |
||||
|
cfg_file_common="${scriptcfgdir}/_common.cfg" |
||||
|
cfg_file_instance="${scriptcfgdir}/${servicename}.cfg" |
||||
|
|
||||
|
# Config file headers |
||||
|
cfg_header_all="# Your settings for all servers go in _common.cfg\n# Server-specific settings go into \$SERVER.cfg" |
||||
|
cfg_header_default="# Default config - Changes will be overwritten by updates.\n${cfg_header_all}" |
||||
|
cfg_header_common="# Common config - Will not be overwritten by script.\n${cfg_header_all}" |
||||
|
cfg_header_instance="# Instance Config for ${servicename} - Will not be overwritten by script.\n${cfg_header_all}" |
||||
|
|
||||
|
|
||||
|
# If default config does not exist, create it. This should come from Git, and will be overwritten by updates. |
||||
|
# Rather than try to wget it from Github or other fancy ways to get it, the simplest way to ensure it works is to simply create it here. |
||||
|
fn_update_config() |
||||
|
{ |
||||
|
key=$1 |
||||
|
val=$2 |
||||
|
cfg_file=${3:-$cfg_file_default} |
||||
|
comment=${4:-""} |
||||
|
|
||||
|
# Get current key/value pair from file |
||||
|
exists=$(grep "^${key}=" $cfg_file 2>/dev/null) |
||||
|
exists_comment=$(echo $(echo $exists | cut -d'#' -f2-)) |
||||
|
case "${val}" in |
||||
|
""|"--UNSET--") |
||||
|
if [ "${exists}" != "" ]; then |
||||
|
echo "Removing ${key} from ${cfg_file}" |
||||
|
sed "/${key}=.*/d" -i $cfg_file |
||||
|
fi |
||||
|
return |
||||
|
;; |
||||
|
"--EMPTY--") |
||||
|
val="" |
||||
|
;; |
||||
|
esac |
||||
|
# Put " # " at beginning of comment if not empty |
||||
|
if [ "${comment}" != "" ] |
||||
|
then |
||||
|
comment=" # ${comment}" |
||||
|
else |
||||
|
if [ "${exists_comment}" != "" ]; then |
||||
|
comment=" # ${exists_comment}" |
||||
|
fi |
||||
|
fi |
||||
|
|
||||
|
# Line to be put in |
||||
|
data="${key}=\"${val}\"${comment}" |
||||
|
|
||||
|
# Check if key exists in config |
||||
|
if [ "${exists}" != "" ]; then |
||||
|
# If the line isn't the same as the parsed data line, replace it |
||||
|
if [ "${exists}" != "${data}" ]; then |
||||
|
#echo "Updating ${data} in ${cfg_file}" |
||||
|
sed -e "s/^${key}=.*\$/${data}/g" -i $cfg_file |
||||
|
#sed "/${key}=.*/${data}/" -i $cfg_file |
||||
|
fi |
||||
|
else |
||||
|
# If value does not exist, append to file |
||||
|
#echo "Adding ${data} to ${cfg_file}" |
||||
|
echo -ne "${data}\n" >> $cfg_file |
||||
|
fi |
||||
|
} |
||||
|
|
||||
|
fn_create_config(){ |
||||
|
cfg_type=${1:-default} |
||||
|
cfg_force=$2 |
||||
|
cfg_file="cfg_file_${cfg_type}" |
||||
|
cfg_header="cfg_header_${cfg_type}" |
||||
|
|
||||
|
cfg_dir=$(dirname ${!cfg_file}) |
||||
|
#If config directory does not exist, create it |
||||
|
if [ ! -e $cfg_dir ]; then mkdir -p $cfg_dir; fi |
||||
|
|
||||
|
# Create file header if needed |
||||
|
if [ ! -e ${!cfg_file} ] || [ "${cfg_force}" != "" ]; then |
||||
|
echo "Creating ${cfg_type} config at ${!cfg_file}" |
||||
|
echo -ne "${!cfg_header}\n\n" > ${!cfg_file} |
||||
|
# Dump in defaults for this game |
||||
|
if [ "${cfg_type}" == "default" ]; then |
||||
|
cat ${settingsdir}/settings >> ${!cfg_file} |
||||
|
fi |
||||
|
fi |
||||
|
} |
||||
|
|
||||
|
fn_flush_game_settings(){ |
||||
|
if [ -e $settingsdir ]; then |
||||
|
rm -rf $settingsdir > /dev/null |
||||
|
fi |
||||
|
mkdir -p $settingsdir |
||||
|
} |
||||
|
|
||||
|
fn_import_game_settings(){ |
||||
|
import="${gamesdir}/${1}" |
||||
|
if [ ! -e $import ]; then |
||||
|
fn_getgithubfile "games/${1}" |
||||
|
fi |
||||
|
source $import |
||||
|
} |
||||
|
|
||||
|
fn_set_game_params(){ |
||||
|
param_set=$1 |
||||
|
param_name=$2 |
||||
|
param_value=$3 |
||||
|
param_comment=$4 |
||||
|
fn_update_config "${param_name}" "${param_value}" "${settingsdir}/${param_set}" "${param_comment}" |
||||
|
} |
||||
|
|
||||
|
|
||||
|
fn_get_game_params(){ |
||||
|
param_set=$1 |
||||
|
param_name=$2 |
||||
|
param_default=$3 |
||||
|
} |
||||
|
|
||||
|
# Flush old setings buffer |
||||
|
fn_flush_game_settings |
||||
|
|
||||
|
# Import this game's settings |
||||
|
fn_import_game_settings $selfname |
||||
|
|
||||
|
# New method is to always run this function, it will overwrite defaults with whatever the new script values are |
||||
|
fn_create_config default |
||||
|
|
||||
|
# Load defaults |
||||
|
source $cfg_file_default |
||||
|
|
||||
|
# Load sitewide common settings (so that Git updates can safely overwrite default.cfg) |
||||
|
if [ ! -f $cfg_file_common ]; then fn_create_config common; else source $cfg_file_common; fi |
||||
|
|
||||
|
# Load instance specific settings |
||||
|
if [ ! -f $cfg_file_instance ]; then fn_create_config instance; else source $cfg_file_instance; fi |
||||
|
|
||||
|
|
||||
|
|
@ -2,9 +2,23 @@ |
|||||
# _default |
# _default |
||||
# Base defaults for all games |
# Base defaults for all games |
||||
|
|
||||
|
# Set the default settings for the script |
||||
fn_set_game_params settings "email" "[email protected]" "Email address for notification" |
fn_set_game_params settings "email" "[email protected]" "Email address for notification" |
||||
fn_set_game_params settings "emailnotification" "off" "Email notification (on|off)" |
fn_set_game_params settings "emailnotification" "off" "Email notification (on|off)" |
||||
fn_set_game_params settings "ip" "0.0.0.0" "IP Address to bind for server" |
fn_set_game_params settings "ip" "0.0.0.0" "IP Address to bind for server" |
||||
fn_set_game_params settings "lgsm_version" "${version}" "Version of LGSM that created this config" |
fn_set_game_params settings "lgsm_version" "${version}" "Version of LGSM that created this config" |
||||
fn_set_game_params settings "logdays" "7" "Number of days to retain logs" |
fn_set_game_params settings "logdays" "7" "Number of days to retain logs" |
||||
fn_set_game_params settings "updateonstart" "off" "Update game on start" |
fn_set_game_params settings "updateonstart" "off" "Update game on start" |
||||
|
|
||||
|
|
||||
|
|
||||
|
fn_set_game_params settings "lockselfname" ".\${servicename}.lock" "LGSM Lock File" |
||||
|
fn_set_game_params settings "filesdir" "\${rootdir}/serverfiles" "Server Files Directory" |
||||
|
fn_set_game_params settings "backupdir" "\${lgsmdir}/backups" "Backup Directory" |
||||
|
fn_set_game_params settings "scriptlogdir" "\${lgsmdir}/log/script" "Script Log Dir" |
||||
|
fn_set_game_params settings "consolelogdir" "\${lgsmdir}/log/console" "Console Log Dir" |
||||
|
fn_set_game_params settings "scriptlog" "\${scriptlogdir}/\${servicename}-script.log" "Script Log" |
||||
|
fn_set_game_params settings "consolelog" "\${consolelogdir}/\${servicename}-console.log" "Console Log" |
||||
|
fn_set_game_params settings "emaillog" "\${scriptlogdir}/\${servicename}-email.log" "Email Log" |
||||
|
fn_set_game_params settings "scriptlogdate" "\${scriptlogdir}/\${servicename}-script-\$(date '+%d-%m-%Y-%H-%M-%S').log" "Script Log Rotation Filename" |
||||
|
fn_set_game_params settings "consolelogdate" "\${consolelogdir}/\${servicename}-console-\$(date '+%d-%m-%Y-%H-%M-%S').log" "Console Log Rotation Filename" |
||||
|
@ -0,0 +1,39 @@ |
|||||
|
# Game Settings File |
||||
|
# csgoserver |
||||
|
# Counter-Strike: Global Offensive Dedicated Server |
||||
|
|
||||
|
# Import SRCDS |
||||
|
fn_import_game_settings _srcds |
||||
|
|
||||
|
# Add playlist parameter |
||||
|
fn_set_game_params parms_plus "+sv_playlist" "\${playlist}" |
||||
|
|
||||
|
# Override some server settings |
||||
|
fn_set_game_params settings "appid" "740" |
||||
|
fn_set_game_params settings "defaultmap" "de_dust2" |
||||
|
fn_set_game_params settings "game" "csgo" |
||||
|
fn_set_game_params settings "mapcyclefile" "--UNSET--" |
||||
|
fn_set_game_params settings "gamename" "Counter Strike: Global Offensive" |
||||
|
fn_set_game_params settings "mapgroup" "random_classic" "Map Group. See https://developer.valvesoftware.com/wiki/Counter-Strike:_Global_Offensive_Dedicated_Servers#Starting_the_Server" |
||||
|
fn_set_game_params settings "tickrate" "64" "Server Tick Rate" |
||||
|
fn_set_game_params settings "gametype" "0" "Game Type. Set to: Arms Race 1 Classic Casual 0 Classic Competitive 0 Demolition 1 Deathmatch 1" |
||||
|
fn_set_game_params settings "gamemode" "0" "Game Mode. Set to: Arms Race 0 Classic Casual 0 Classic Competitive 1 Demolition 1 Deathmatch 2" |
||||
|
fn_set_game_params settings "gslt" "--EMPTY--" "Required: Game Server Login Token. GSLT is required for running a public server. More info: http://gameservermanagers.com/gslt" |
||||
|
fn_set_game_params settings "authkey" "--EMPTY--" "Optional key for Workshop Content. See https://developer.valvesoftware.com/wiki/CSGO_Workshop_For_Server_Operators - To get an authkey visit - http://steamcommunity.com/dev/apikey" |
||||
|
fn_set_game_params settings "ws_collection_id" "--EMPTY--" "Workshop Collection ID" |
||||
|
fn_set_game_params settings "ws_start_map" "--EMPTY--" "Workshop Start Map" |
||||
|
|
||||
|
|
||||
|
# The parms that start with - go first |
||||
|
fn_set_game_params parms_minus "-usercon" "--EMPTY--" |
||||
|
fn_set_game_params parms_minus "-tickrate" "\${tickrate}" |
||||
|
fn_set_game_params parms_minus "-maxplayers_override" "\${maxplayers}" |
||||
|
fn_set_game_params parms_minus "-authkey" "\${authkey}" |
||||
|
|
||||
|
# Then the parms that start with + |
||||
|
fn_set_game_params parms_plus "+sv_setsteamaccount" "\${gslt}" |
||||
|
fn_set_game_params parms_plus "+mapgroup" "\${mapgroup}" |
||||
|
fn_set_game_params parms_plus "+game_mode" "\${gamemode}" |
||||
|
fn_set_game_params parms_plus "+game_type" "\${gametype}" |
||||
|
fn_set_game_params parms_plus "+host_workshop_collection" "\${ws_collection_id}" |
||||
|
fn_set_game_params parms_plus "+workshop_start_map" "\${ws_start_map}" |
@ -1,13 +1,17 @@ |
|||||
# Game Settings File |
# Game Settings File |
||||
# insurgency |
# insserver |
||||
# Insurgency Dedicated Server |
# Insurgency Dedicated Server |
||||
|
|
||||
fn_settings_import _srcds |
# Import SRCDS |
||||
|
fn_import_game_settings _srcds |
||||
|
|
||||
fn_set_game_params params_plus "+sv_playlist" "\${playlist}" |
# Add playlist parameter |
||||
|
fn_set_game_params parms_plus "+sv_playlist" "\${playlist}" |
||||
|
|
||||
|
# Override some server settings |
||||
fn_set_game_params settings "appid" "237410" |
fn_set_game_params settings "appid" "237410" |
||||
fn_set_game_params settings "defaultmap" "ministry checkpoint" |
fn_set_game_params settings "defaultmap" "ministry checkpoint" |
||||
fn_set_game_params settings "game" "insurgency" |
fn_set_game_params settings "game" "insurgency" |
||||
fn_set_game_params settings "mapcyclefile" "mapcycle.txt" |
fn_set_game_params settings "mapcyclefile" "mapcycle.txt" |
||||
fn_set_game_params settings "playlist" "custom" "Server Playlist" |
fn_set_game_params settings "playlist" "custom" "Server Playlist" |
||||
|
fn_set_game_params settings "gamename" "Insurgency" |
Loading…
Reference in new issue