feat(new server): The Front (#4359)

* add the front

* config

* appid

* config

* parameters

* params

* params

* ports

* update parameters

* verbose

* variable

* fix

* multihome

* update ip addressing

* add ip vars

* info

* add ft-icon

* add missing tf
This commit is contained in:
Daniel Gibbs 2023-10-29 21:27:21 +00:00 committed by GitHub
parent aedfa77001
commit 67472a824f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
26 changed files with 265 additions and 0 deletions

View File

@ -0,0 +1,202 @@
##################################
######## Default Settings ########
##################################
# DO NOT EDIT, ANY CHANGES WILL BE OVERWRITTEN!
# Copy settings from here and use them in either:
# common.cfg - applies settings to every instance.
# [instance].cfg - applies settings to a specific instance.
#### Game Server Settings ####
## Predefined Parameters | https://docs.linuxgsm.com/configuration/start-parameters
ip="0.0.0.0"
port="5001"
beaconport="5002"
shutdownport="5003"
queryport="27015"
adminlabel="true" # Enable admin icon.
allowsensitivewords="true"
altsavedirectoryname="${defaultmap}"
anticheat="true"
damageself="true"
damangeallies="true"
gamemode="0" # 0 = PvP; 1 = PvE
greenhand="true"
maxplayers="40"
maxqueuesize="50"
queuevalidtime="120"
saveinterval="300"
serveradmins="" # Use 17-digit Steam IDs separated by commas to grant admin privileges to players.
servername="LinuxGSM"
serverpassword=""
servertags="LinuxGSM"
steamsocket="0" # Use Steam Socket. 0 = off; 1 = on. Use Steam Servers for network penetration. Enable this if you don't have a public IP but you want to allow players from outside your network to join your server. If disabled, only you and other players on your LAN can join. If you have a public IP, you do not need to enable this.
## Server Parameters | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
startparameters="ProjectWar_Start?DedicatedServer?MaxPlayers=${maxplayers} -server -game -log -MultiHome=${ip} -Port=${port} -QueryPort=${queryport} -BeaconPort=${beaconport} -ShutDownServicePort=${shutdownport} -ConfigServerName='${selfname}' -OutIPAddress=${publicip} -ServerTags='${servertags}' -UseSteamSocket=${steamsocket} -UserDir='${serverfiles}/${selfname}' -ServerName='${servername}' -EnableParallelCharacterMovementTickFunction -EnableParallelCharacterTickFunction -UseDynamicPhysicsScene -Game.PhysicsVehicle=false -ansimalloc -Game.MaxFrameRate=35 -MaxQueueSize=${maxqueuesize} -QueueValidTime=${queuevalidtime} -QueueThreshold=${maxplayers} -ServerFightModeType=${gamemode} -IsCanSelfDamage=${damageself} -IsCanFriendDamage=${damageallies} -SaveWorldInterval=${saveinterval} -GMOverlapRatio=2 -GreenHand=${greenhand} -SensitiveWords=${allowsensitivewords} -UseACE=${anticheat} -ServerAdminAccounts='${serveradmins}' -IsShowGmTitle=${adminlabel} -ServerPassword='${serverpassword}'"
#### LinuxGSM Settings ####
## LinuxGSM Stats
# Send useful stats to LinuxGSM developers.
# https://docs.linuxgsm.com/configuration/linuxgsm-stats
# (on|off)
stats="off"
## Notification Alerts
# (on|off)
# Display IP | https://docs.linuxgsm.com/alerts#display-ip
displayip=""
# More info | https://docs.linuxgsm.com/alerts#more-info
postalert="off"
# Alert on Start/Stop/Restart
statusalert="off"
# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"
# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="email@example.com"
emailfrom=""
# Gotify Alerts | https://docs.linuxgsm.com/alerts/gotify
gotifyalert="off"
gotifytoken="token"
gotifywebhook="webhook"
# IFTTT Alerts | https://docs.linuxgsm.com/alerts/ifttt
iftttalert="off"
ifttttoken="accesstoken"
iftttevent="linuxgsm_alert"
# Pushbullet Alerts | https://docs.linuxgsm.com/alerts/pushbullet
pushbulletalert="off"
pushbullettoken="accesstoken"
channeltag=""
# Pushover Alerts | https://docs.linuxgsm.com/alerts/pushover
pushoveralert="off"
pushovertoken="accesstoken"
pushoveruserkey="userkey"
# Rocket.Chat Alerts | https://docs.linuxgsm.com/alerts/rocket.chat
rocketchatalert="off"
rocketchatwebhook="webhook"
# Slack Alerts | https://docs.linuxgsm.com/alerts/slack
slackalert="off"
slackwebhook="webhook"
# Telegram Alerts | https://docs.linuxgsm.com/alerts/telegram
# You can add a custom cURL string eg proxy (useful in Russia) in "curlcustomstring".
# For example "--socks5 ipaddr:port" for socks5 proxy see more in "curl --help".
telegramapi="api.telegram.org"
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
curlcustomstring=""
## Updating | https://docs.linuxgsm.com/commands/update
updateonstart="off"
## Backup | https://docs.linuxgsm.com/commands/backup
maxbackups="4"
maxbackupdays="30"
stoponbackup="on"
## Logging | https://docs.linuxgsm.com/features/logging
consolelogging="on"
logdays="7"
## Monitor | https://docs.linuxgsm.com/commands/monitor
# Query delay time
querydelay="5"
## ANSI Colors | https://docs.linuxgsm.com/features/ansi-colors
ansi="on"
#### Advanced Settings ####
## Message Display Time | https://docs.linuxgsm.com/features/message-display-time
sleeptime="0.5"
## SteamCMD Settings | https://docs.linuxgsm.com/steamcmd
# Server appid
appid="2334200"
steamcmdforcewindows="no"
# SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch
branch=""
betapassword=""
# Master Server | https://docs.linuxgsm.com/steamcmd/steam-master-server
steammaster="true"
## Stop Mode | https://docs.linuxgsm.com/features/stop-mode
# 1: tmux kill
# 2: CTRL+c
# 3: quit
# 4: quit 120s
# 5: stop
# 6: q
# 7: exit
# 8: 7 Days to Die
# 9: GoldSrc
# 10: Avorion
# 11: end
stopmode="2"
## Query mode
# 1: session only
# 2: gamedig (gsquery fallback)
# 3: gamedig
# 4: gsquery
# 5: tcp
querymode="2"
querytype="protocol-valve"
## Console type
consoleverbose="yes"
consoleinteract="no"
## Game Server Details
# Do not edit
gamename="The Front"
engine="unreal4"
glibc="2.17"
#### Directories ####
# Edit with care
## Game Server Directories
systemdir="${serverfiles}/ProjectWar"
executabledir="${systemdir}/Binaries/Linux"
executable="./TheFrontServer"
servercfgdir="${systemdir}/Saved/Config/LinuxServer"
servercfg="GameUserSettings.ini"
servercfgdefault="GameUserSettings.ini"
servercfgfullpath="${servercfgdir}/${servercfg}"
## Backup Directory
backupdir="${lgsmdir}/backup"
## Logging Directories
[ -n "${LGSM_LOGDIR}" ] && logdir="${LGSM_LOGDIR}" || logdir="${rootdir}/log"
gamelogdir="${systemdir}/Saved/Logs"
lgsmlogdir="${logdir}/script"
consolelogdir="${logdir}/console"
lgsmlog="${lgsmlogdir}/${selfname}-script.log"
consolelog="${consolelogdir}/${selfname}-console.log"
alertlog="${lgsmlogdir}/${selfname}-alert.log"
postdetailslog="${lgsmlogdir}/${selfname}-postdetails.log"
## Logs Naming
lgsmlogdate="${lgsmlogdir}/${selfname}-script-$(date '+%Y-%m-%d-%H:%M:%S').log"
consolelogdate="${consolelogdir}/${selfname}-console-$(date '+%Y-%m-%d-%H:%M:%S').log"
## Log Parameters
logtimestamp="off"
logtimestampformat="%Y-%m-%d %H:%M:%S"

View File

@ -111,6 +111,7 @@ st,libxml2
stn
sven
terraria
tf
tf2,libcurl.i686
tfc
ti

1 all,bc,binutils,bzip2,cpio,curl,epel-release,file,glibc.i686,gzip,hostname,jq,libstdc++,libstdc++.i686,nmap-ncat,python36,tar,tmux,unzip,util-linux,wget,xz
111 stn
112 sven
113 terraria
114 tf
115 tf2,libcurl.i686
116 tfc
117 ti

View File

@ -111,6 +111,7 @@ st,libxml2
stn
sven
terraria
tf
tf2,libcurl.i686
tfc
ti

1 all,bc,binutils,bzip2,cpio,curl,epel-release,file,glibc.i686,gzip,hostname,jq,libstdc++,libstdc++.i686,nmap-ncat,python3,tar,tmux,unzip,util-linux,wget,xz
111 stn
112 sven
113 terraria
114 tf
115 tf2,libcurl.i686
116 tfc
117 ti

View File

@ -111,6 +111,7 @@ st,libxml2
stn
sven
terraria
tf
tf2,libcurl.i686
tfc
ti

1 all,bc,binutils,bzip2,cpio,curl,epel-release,file,glibc.i686,gzip,hostname,jq,libstdc++,libstdc++.i686,nmap-ncat,python3,tar,tmux,unzip,util-linux,wget,xz
111 stn
112 sven
113 terraria
114 tf
115 tf2,libcurl.i686
116 tfc
117 ti

View File

@ -111,6 +111,7 @@ st,libxml2
stn
sven
terraria
tf
tf2,libcurl.i686
tfc
ti

1 all,bc,binutils,bzip2,cpio,curl,epel-release,file,glibc.i686,gzip,hostname,jq,libstdc++,libstdc++.i686,nmap-ncat,python36,tar,tmux,unzip,util-linux,wget,xz
111 stn
112 sven
113 terraria
114 tf
115 tf2,libcurl.i686
116 tfc
117 ti

View File

@ -111,6 +111,7 @@ st,libxml2
stn
sven
terraria
tf
tf2,libcurl.i686
tfc
ti

1 all,bc,binutils,bzip2,cpio,curl,epel-release,file,glibc.i686,gzip,hostname,jq,libstdc++,libstdc++.i686,nmap-ncat,python3,tar,tmux,unzip,util-linux,wget,xz
111 stn
112 sven
113 terraria
114 tf
115 tf2,libcurl.i686
116 tfc
117 ti

View File

@ -111,6 +111,7 @@ st,libxml2-utils
stn
sven,libssl1.1:i386,zlib1g:i386
terraria
tf
tf2,libcurl4-gnutls-dev:i386
tfc
ti

1 all,bc,binutils,bsdmainutils,bzip2,ca-certificates,cpio,curl,distro-info,file,gzip,hostname,jq,lib32gcc1,lib32stdc++6,netcat,python3,tar,tmux,unzip,util-linux,uuid-runtime,wget,xz-utils
111 stn
112 sven,libssl1.1:i386,zlib1g:i386
113 terraria
114 tf
115 tf2,libcurl4-gnutls-dev:i386
116 tfc
117 ti

View File

@ -111,6 +111,7 @@ st,libxml2-utils
stn
sven,libssl1.1:i386,zlib1g:i386
terraria
tf
tf2,libcurl4-gnutls-dev:i386
tfc
ti

1 all,bc,binutils,bsdmainutils,bzip2,ca-certificates,cpio,curl,distro-info,file,gzip,hostname,jq,lib32gcc-s1,lib32stdc++6,netcat,python3,tar,tmux,unzip,util-linux,uuid-runtime,wget,xz-utils
111 stn
112 sven,libssl1.1:i386,zlib1g:i386
113 terraria
114 tf
115 tf2,libcurl4-gnutls-dev:i386
116 tfc
117 ti

View File

@ -111,6 +111,7 @@ st,libxml2-utils
stn
sven,libssl3:i386,zlib1g:i386
terraria
tf
tf2,libcurl4-gnutls-dev:i386
tfc
ti

1 all,bc,binutils,bsdmainutils,bzip2,ca-certificates,cpio,curl,distro-info,file,gzip,hostname,jq,lib32gcc-s1,lib32stdc++6,netcat-openbsd,python3,tar,tmux,unzip,util-linux,uuid-runtime,wget,xz-utils
111 stn
112 sven,libssl3:i386,zlib1g:i386
113 terraria
114 tf
115 tf2,libcurl4-gnutls-dev:i386
116 tfc
117 ti

View File

@ -111,6 +111,7 @@ st,libxml2-utils
stn
sven,libssl1.1:i386,zlib1g:i386
terraria
tf
tf2,libcurl4-gnutls-dev:i386
tfc
ti

1 all,bc,binutils,bsdmainutils,bzip2,ca-certificates,cpio,curl,distro-info,file,gzip,hostname,jq,lib32gcc1,lib32stdc++6,netcat,python3,tar,tmux,unzip,util-linux,wget,xz-utils
111 stn
112 sven,libssl1.1:i386,zlib1g:i386
113 terraria
114 tf
115 tf2,libcurl4-gnutls-dev:i386
116 tfc
117 ti

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

@ -111,6 +111,7 @@ st,libxml2
stn
sven
terraria
tf
tf2,libcurl.i686
tfc
ti

1 all,bc,binutils,bzip2,cpio,curl,epel-release,file,glibc.i686,gzip,hostname,jq,libstdc++,libstdc++.i686,nmap-ncat,python36,tar,tmux,unzip,util-linux,wget,xz
111 stn
112 sven
113 terraria
114 tf
115 tf2,libcurl.i686
116 tfc
117 ti

View File

@ -111,6 +111,7 @@ st,libxml2
stn
sven
terraria
tf
tf2,libcurl.i686
tfc
ti

1 all,bc,binutils,bzip2,cpio,curl,epel-release,file,glibc.i686,gzip,hostname,jq,libstdc++,libstdc++.i686,nmap-ncat,python36,tar,tmux,unzip,util-linux,wget,xz
111 stn
112 sven
113 terraria
114 tf
115 tf2,libcurl.i686
116 tfc
117 ti

View File

@ -111,6 +111,7 @@ st,libxml2
stn
sven
terraria
tf
tf2,libcurl.i686
tfc
ti

1 all,bc,binutils,bzip2,cpio,curl,epel-release,file,glibc.i686,gzip,hostname,jq,libstdc++,libstdc++.i686,nmap-ncat,python3,tar,tmux,unzip,util-linux,wget,xz
111 stn
112 sven
113 terraria
114 tf
115 tf2,libcurl.i686
116 tfc
117 ti

View File

@ -111,6 +111,7 @@ st,libxml2
stn
sven
terraria
tf
tf2,libcurl.i686
tfc
ti

1 all,bc,binutils,bzip2,cpio,curl,epel-release,file,glibc.i686,gzip,hostname,jq,libstdc++,libstdc++.i686,nmap-ncat,python36,tar,tmux,unzip,util-linux,wget,xz
111 stn
112 sven
113 terraria
114 tf
115 tf2,libcurl.i686
116 tfc
117 ti

View File

@ -111,6 +111,7 @@ st,libxml2
stn
sven
terraria
tf
tf2,libcurl.i686
tfc
ti

1 all,bc,binutils,bzip2,cpio,curl,epel-release,file,glibc.i686,gzip,hostname,jq,libstdc++,libstdc++.i686,nmap-ncat,python3,tar,tmux,unzip,util-linux,wget,xz
111 stn
112 sven
113 terraria
114 tf
115 tf2,libcurl.i686
116 tfc
117 ti

View File

@ -110,6 +110,7 @@ st,stserver,Stationeers,ubuntu-22.04
stn,stnserver,Survive the Nights,ubuntu-22.04
sven,svenserver,Sven Co-op,ubuntu-20.04
terraria,terrariaserver,Terraria,ubuntu-22.04
tf,tfserver,The Front,ubuntu-22.04
tf2,tf2server,Team Fortress 2,ubuntu-22.04
tfc,tfcserver,Team Fortress Classic,ubuntu-22.04
ti,tiserver,The Isle,ubuntu-22.04

1 shortname gameservername gamename os
110 stn stnserver Survive the Nights ubuntu-22.04
111 sven svenserver Sven Co-op ubuntu-20.04
112 terraria terrariaserver Terraria ubuntu-22.04
113 tf tfserver The Front ubuntu-22.04
114 tf2 tf2server Team Fortress 2 ubuntu-22.04
115 tfc tfcserver Team Fortress Classic ubuntu-22.04
116 ti tiserver The Isle ubuntu-22.04

View File

@ -111,6 +111,7 @@ st,libxml2-utils
stn
sven,libssl1.1:i386,zlib1g:i386
terraria
tf
tf2,libcurl4-gnutls-dev:i386
tfc
ti

1 all,bc,binutils,bsdmainutils,bzip2,ca-certificates,cpio,curl,file,gzip,hostname,jq,lib32gcc1,lib32stdc++6,netcat,python3,tar,tmux,unzip,util-linux,uuid-runtime,wget,xz-utils
111 stn
112 sven,libssl1.1:i386,zlib1g:i386
113 terraria
114 tf
115 tf2,libcurl4-gnutls-dev:i386
116 tfc
117 ti

View File

@ -111,6 +111,7 @@ st,libxml2-utils
stn
sven,libssl1.1:i386,zlib1g:i386
terraria
tf
tf2,libcurl4-gnutls-dev:i386
tfc
ti

1 all,bc,binutils,bsdmainutils,bzip2,ca-certificates,cpio,curl,distro-info,file,gzip,hostname,jq,lib32gcc1,lib32stdc++6,netcat,python3,tar,tmux,unzip,util-linux,uuid-runtime,wget,xz-utils
111 stn
112 sven,libssl1.1:i386,zlib1g:i386
113 terraria
114 tf
115 tf2,libcurl4-gnutls-dev:i386
116 tfc
117 ti

View File

@ -111,6 +111,7 @@ st,libxml2-utils
stn
sven,libssl1.1:i386,zlib1g:i386
terraria
tf
tf2,libcurl4-gnutls-dev:i386
tfc
ti

1 all,bc,binutils,bsdmainutils,bzip2,ca-certificates,cpio,curl,distro-info,file,gzip,hostname,jq,lib32gcc1,lib32stdc++6,netcat,python3,tar,tmux,unzip,util-linux,uuid-runtime,wget,xz-utils
111 stn
112 sven,libssl1.1:i386,zlib1g:i386
113 terraria
114 tf
115 tf2,libcurl4-gnutls-dev:i386
116 tfc
117 ti

View File

@ -111,6 +111,7 @@ st,libxml2-utils
stn
sven,libssl1.1:i386,zlib1g:i386
terraria
tf
tf2,libcurl4-gnutls-dev:i386
tfc
ti

1 all,bc,binutils,bsdmainutils,bzip2,ca-certificates,cpio,curl,distro-info,file,gzip,hostname,jq,lib32gcc-s1,lib32stdc++6,netcat,python3,tar,tmux,unzip,util-linux,uuid-runtime,wget,xz-utils
111 stn
112 sven,libssl1.1:i386,zlib1g:i386
113 terraria
114 tf
115 tf2,libcurl4-gnutls-dev:i386
116 tfc
117 ti

View File

@ -111,6 +111,7 @@ st,libxml2-utils
stn
sven,libssl1.1:i386,zlib1g:i386
terraria
tf
tf2,libcurl4-gnutls-dev:i386
tfc
ti

1 all,bc,binutils,bsdmainutils,bzip2,ca-certificates,cpio,curl,distro-info,file,gzip,hostname,jq,lib32gcc-s1,lib32stdc++6,netcat-openbsd,python3,tar,tmux,unzip,util-linux,uuid-runtime,wget,xz-utils
111 stn
112 sven,libssl1.1:i386,zlib1g:i386
113 terraria
114 tf
115 tf2,libcurl4-gnutls-dev:i386
116 tfc
117 ti

View File

@ -111,6 +111,7 @@ st,libxml2-utils
stn
sven,libssl1.1:i386,zlib1g:i386
terraria
tf
tf2,libcurl4-gnutls-dev:i386
tfc
ti

1 all,bc,binutils,bsdmainutils,bzip2,ca-certificates,cpio,curl,distro-info,file,gzip,hostname,jq,lib32gcc-s1,lib32stdc++6,netcat-openbsd,python3,tar,tmux,unzip,util-linux,uuid-runtime,wget,xz-utils
111 stn
112 sven,libssl1.1:i386,zlib1g:i386
113 terraria
114 tf
115 tf2,libcurl4-gnutls-dev:i386
116 tfc
117 ti

View File

@ -15,6 +15,16 @@ info_game.sh
info_distro.sh
info_messages.sh
echo -e ""
echo -e "${lightgreen}IP Addresses Variables${default}"
fn_messages_separator
echo -e ""
echo -e "IP: ${ip}"
echo -e "HTTP IP: ${httpip}"
echo -e "Public IP: ${publicip}"
echo -e "Telnet IP: ${telnetip}"
echo -e "Display IP: ${displayip}"
echo -e ""
echo -e "${lightgreen}Query IP Addresses${default}"
fn_messages_separator

View File

@ -681,6 +681,24 @@ fn_info_game_stn() {
serverpassword="${serverpassword:-"NOT SET"}"
}
# Config Type: parameters
# Parameters: true
# Comment:
# Example: -ServerName="SERVERNAME"
# Filetype: parameters
fn_info_game_tf() {
beaconport="${beaconport:-"0"}"
gamemode="${gamemode:-"NOT SET"}"
maxplayers="${maxplayers:-"0"}"
port="${port:-"0"}"
queryport="${queryport:-"0"}"
saveinterval="${saveinterval:-"0"}"
servername="${servername:-"NOT SET"}"
serverpassword="${serverpassword:-"NOT SET"}"
shutdownport="${shutdownport:-"0"}"
}
# Config Type: ini
# Parameters: true
# Comment: ; or #
@ -2372,6 +2390,8 @@ elif [ "${shortname}" == "stn" ]; then
fn_info_game_stn
elif [ "${shortname}" == "terraria" ]; then
fn_info_game_terraria
elif [ "${shortname}" == "tf" ]; then
fn_info_game_tf
elif [ "${shortname}" == "ti" ]; then
fn_info_game_ti
elif [ "${shortname}" == "ts3" ]; then

View File

@ -1542,6 +1542,16 @@ fn_info_messages_tu() {
} | column -s $'\t' -t
}
fn_info_messages_tf() {
{
fn_port "header"
fn_port "Game" port udp
fn_port "Query" queryport tcp
fn_port "Beacon" beaconport udp
fn_port "Shutdown" shutdownport tcp
} | column -s $'\t' -t
}
fn_info_messages_ut2k4() {
{
fn_port "header"
@ -1813,6 +1823,8 @@ fn_info_messages_select_engine() {
fn_info_messages_stn
elif [ "${shortname}" == "terraria" ]; then
fn_info_messages_terraria
elif [ "${shortname}" == "tf" ]; then
fn_info_messages_tf
elif [ "${shortname}" == "ti" ]; then
fn_info_messages_ti
elif [ "${shortname}" == "ts3" ]; then