feat(new server): Counter Strike 2 (#4356)

* cs2

* config

* fix: remove lo code

* config

* params

* source2

* game info

* messages

* config changes

* dirs

* config

* refactor: refactor info message functions in alert.sh, command_details.sh, command_dev_query_raw.sh, and command_postdetails.sh

- Refactored the info message functions in multiple files to have consistent naming conventions.
- Renamed fn_info_message_* functions to fn_info_messages_* for clarity and consistency.
- Updated function calls accordingly.

* refactor: remove unnecessary code duplication in info_game.sh

The commit removes duplicated code for retrieving server information from the game configuration file. Specifically, it removes redundant lines related to rconpassword, rconport, and serverpassword. This improves code readability and maintainability.

* cs2

* cs2

* cs2 icon

* remove lo

* remove file

* remove lo

* update url

* ignore games with no configs

* remove configs from games that have non

* details check fix

* details check

* details check

* ignore systemdir check if running github actions

* fix name
This commit is contained in:
Daniel Gibbs 2023-10-27 23:59:57 +01:00 committed by GitHub
parent ab0fb4f14e
commit f33bfdf47c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
38 changed files with 507 additions and 259 deletions

View File

@ -59,14 +59,14 @@ jobs:
- name: Download config
run: |
if [ -z "${{ steps.sets-servercfgname.outputs.servercfgname }}" ]; then
if [ "${{ steps.sets-servercfgname.outputs.servercfgname }}" == "" ]; then
echo "This game server has no config file."
else
curl -f -o config "https://raw.githubusercontent.com/GameServerManagers/Game-Server-Configs/main/${{ matrix.shortname }}/${{ steps.sets-servercfgname.outputs.servercfgname }}"
fi
- name: Display config
run: |
if [ -z "${{ steps.sets-servercfgname.outputs.servercfgname }}" ]; then
if [ "${{ steps.sets-servercfgname.outputs.servercfgname }}" == "" ]; then
echo "This game server has no config file."
else
cat config

View File

@ -1,6 +1,6 @@
#!/bin/bash
curl "https://raw.githubusercontent.com/GameServerManagers/LinuxGSM/master/lgsm/data/serverlist.csv" | grep -v '^[[:blank:]]*$' > serverlist.csv
curl "https://raw.githubusercontent.com/GameServerManagers/LinuxGSM/${GITHUB_REF#refs/heads/}/lgsm/data/serverlist.csv" | grep -v '^[[:blank:]]*$' > serverlist.csv
echo -n "{" > "shortnamearray.json"
echo -n "\"include\":[" >> "shortnamearray.json"

View File

@ -0,0 +1,217 @@
##################################
######## 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 ####
## SteamCMD Login | https://docs.linuxgsm.com/steamcmd#steamcmd-login
steamuser="username"
steampass='password'
## Predefined Parameters | https://docs.linuxgsm.com/configuration/start-parameters
# https://docs.linuxgsm.com/game-servers/counter-strike-2
# [Game Modes] gametype gamemode gamemodeflags skirmishid mapgroup (you can mix these across all Game Modes except Danger Zone, but use only one)
# Arms Race 1 0 0 0 mg_armsrace
# Boom! Headshot! 1 2 0 6 mg_skirmish_headshots
# Classic Casual 0 0 0 0 mg_casualsigma, mg_casualdelta
# Classic Competitive (Default) 0 1 0 0 mg_active, mg_reserves, mg_hostage, mg_de_dust2, ...
# Classic Competitive (Short Match) 0 1 32 0 mg_active, mg_reserves, mg_hostage, mg_de_dust2, ...
# Danger Zone 6 0 0 0 mg_dz_blacksite (map: dz_blacksite), mg_dz_sirocco (map: dz_sirocco)
# Deathmatch (Default) 1 2 0 0 mg_deathmatch
# Deathmatch (Free For All) 1 2 32 0 mg_deathmatch
# Deathmatch (Team vs Team) 1 2 4 0 mg_deathmatch
# Demolition 1 1 0 0 mg_demolition
# Flying Scoutsman 0 0 0 3 mg_skirmish_flyingscoutsman
# Hunter-Gatherers 1 2 0 7 mg_skirmish_huntergatherers
# Retakes 0 0 0 12 mg_skirmish_retakes
# Stab Stab Zap 0 0 0 1 mg_skirmish_stabstabzap
# Trigger Discipline 0 0 0 4 mg_skirmish_triggerdiscipline
# Wingman 0 2 0 0 mg_de_prime, mg_de_blagai, mg_de_vertigo, mg_de_inferno, mg_de_overpass, mg_de_cbble, mg_de_train, mg_de_shortnuke, mg_de_shortdust, mg_de_lake
gametype="0"
gamemode="1"
gamemodeflags="0"
skirmishid="0"
mapgroup="mg_active"
ip="0.0.0.0"
port="27015"
defaultmap="de_dust2"
maxplayers="16"
tickrate="64"
## Game Server Login Token (GSLT): Required
# GSLT is required for running a public server.
# More info: https://docs.linuxgsm.com/steamcmd/gslt
gslt=""
## Server Parameters | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
startparameters="-dedicated +sv_setsteamaccount ${gslt} +map ${defaultmap} +game_type 0 +game_mode 1 +sv_logfile 1 -serverlogging +exec ${selfname}.cfg"
#### 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="1"
## 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="730"
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="9"
## 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="yes"
## Game Server Details
# Do not edit
gamename="Counter-Strike 2"
engine="source2"
glibc="2.31"
#### Directories ####
# Edit with care
## Game Server Directories
systemdir="${serverfiles}/game/csgo"
executabledir="${serverfiles}/game/bin/linuxsteamrt64"
executable="./cs2"
servercfgdir="${systemdir}/cfg"
servercfg="${selfname}.cfg"
servercfgdefault="server.cfg"
servercfgfullpath="${servercfgdir}/${servercfg}"
## Backup Directory
backupdir="${lgsmdir}/backup"
## Logging Directories
[ -n "${LGSM_LOGDIR}" ] && logdir="${LGSM_LOGDIR}" || logdir="${rootdir}/log"
gamelogdir="${systemdir}/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

@ -168,9 +168,6 @@ glibc="2.17"
systemdir="${serverfiles}/Insurgency"
executabledir="${systemdir}/Binaries/Linux"
executable="./InsurgencyServer-Linux-Shipping"
servercfgdir="${systemdir}/Saved/Config/LinuxServer"
servercfg="Game.ini"
servercfgdefault="Game.ini"
## Backup Directory
backupdir="${lgsmdir}/backup"

View File

@ -157,11 +157,6 @@ glibc="2.17"
systemdir="${serverfiles}"
executabledir="${systemdir}/blank1/Binaries/Linux"
executable="./blank1Server-Linux-Shipping"
servercfgdir="${systemdir}/blank1/Saved/Config/LinuxServer"
servercfg="Game.ini"
servercfgdefault="Game.ini"
servercfgfullpath="${servercfgdir}/${servercfg}"
## Backup Directory
backupdir="${lgsmdir}/backup"

View File

@ -29,6 +29,7 @@ coduo,compat-libstdc++-33.i686
codwaw
col
cs
cs2
cscz
csgo
css,ncurses-libs.i686
@ -64,7 +65,6 @@ kf
kf2
l4d
l4d2
lo
mc,java-17-openjdk
mcb,libnsl
mh

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
29 codwaw
30 col
31 cs
32 cs2
33 cscz
34 csgo
35 css,ncurses-libs.i686
65 kf2
66 l4d
67 l4d2
lo
68 mc,java-17-openjdk
69 mcb,libnsl
70 mh

View File

@ -29,6 +29,7 @@ coduo,compat-libstdc++-33.i686
codwaw
col
cs
cs2
cscz
csgo
css,ncurses-libs.i686
@ -64,7 +65,6 @@ kf
kf2
l4d
l4d2
lo
mc,java-17-openjdk
mcb,libnsl
mh

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
29 codwaw
30 col
31 cs
32 cs2
33 cscz
34 csgo
35 css,ncurses-libs.i686
65 kf2
66 l4d
67 l4d2
lo
68 mc,java-17-openjdk
69 mcb,libnsl
70 mh

View File

@ -29,6 +29,7 @@ coduo,compat-libstdc++-33.i686
codwaw
col
cs
cs2
cscz
csgo
css,ncurses-libs.i686
@ -64,7 +65,6 @@ kf
kf2
l4d
l4d2
lo
mc,java-11-openjdk
mcb,libnsl
mh

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
29 codwaw
30 col
31 cs
32 cs2
33 cscz
34 csgo
35 css,ncurses-libs.i686
65 kf2
66 l4d
67 l4d2
lo
68 mc,java-11-openjdk
69 mcb,libnsl
70 mh

View File

@ -29,6 +29,7 @@ coduo,compat-libstdc++-33.i686
codwaw
col
cs
cs2
cscz
csgo
css,ncurses-libs.i686
@ -64,7 +65,6 @@ kf
kf2
l4d
l4d2
lo
mc,java-17-openjdk
mcb,libnsl
mh

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
29 codwaw
30 col
31 cs
32 cs2
33 cscz
34 csgo
35 css,ncurses-libs.i686
65 kf2
66 l4d
67 l4d2
lo
68 mc,java-17-openjdk
69 mcb,libnsl
70 mh

View File

@ -29,6 +29,7 @@ coduo,compat-libstdc++-33.i686
codwaw
col
cs
cs2
cscz
csgo
css,ncurses-libs.i686
@ -64,7 +65,6 @@ kf
kf2
l4d
l4d2
lo
mc,java-17-openjdk
mcb,libnsl
mh

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
29 codwaw
30 col
31 cs
32 cs2
33 cscz
34 csgo
35 css,ncurses-libs.i686
65 kf2
66 l4d
67 l4d2
lo
68 mc,java-17-openjdk
69 mcb,libnsl
70 mh

View File

@ -29,6 +29,7 @@ coduo,libstdc++5:i386
codwaw
col
cs
cs2
cscz
csgo
css,libtinfo5:i386
@ -64,7 +65,6 @@ kf
kf2
l4d
l4d2
lo
mc,openjdk-11-jre
mcb
mh

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
29 codwaw
30 col
31 cs
32 cs2
33 cscz
34 csgo
35 css,libtinfo5:i386
65 kf2
66 l4d
67 l4d2
lo
68 mc,openjdk-11-jre
69 mcb
70 mh

View File

@ -29,6 +29,7 @@ coduo,libstdc++5:i386
codwaw
col
cs
cs2
cscz
csgo
css,libtinfo5:i386
@ -64,7 +65,6 @@ kf
kf2
l4d
l4d2
lo
mc,openjdk-17-jre
mcb
mh

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
29 codwaw
30 col
31 cs
32 cs2
33 cscz
34 csgo
35 css,libtinfo5:i386
65 kf2
66 l4d
67 l4d2
lo
68 mc,openjdk-17-jre
69 mcb
70 mh

View File

@ -29,6 +29,7 @@ coduo,libstdc++5:i386
codwaw
col
cs
cs2
cscz
csgo
css,libtinfo5:i386
@ -64,7 +65,6 @@ kf
kf2
l4d
l4d2
lo
mc,openjdk-17-jre
mcb
mh

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
29 codwaw
30 col
31 cs
32 cs2
33 cscz
34 csgo
35 css,libtinfo5:i386
65 kf2
66 l4d
67 l4d2
lo
68 mc,openjdk-17-jre
69 mcb
70 mh

View File

@ -29,6 +29,7 @@ coduo,libstdc++5:i386
codwaw
col
cs
cs2
cscz
csgo
css,libtinfo5:i386
@ -64,7 +65,6 @@ kf
kf2
l4d
l4d2
lo
mc,openjdk-8-jre
mcb
mh

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
29 codwaw
30 col
31 cs
32 cs2
33 cscz
34 csgo
35 css,libtinfo5:i386
65 kf2
66 l4d
67 l4d2
lo
68 mc,openjdk-8-jre
69 mcb
70 mh

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

View File

@ -29,6 +29,7 @@ coduo,compat-libstdc++-33.i686
codwaw
col
cs
cs2
cscz
csgo
css,ncurses-libs.i686
@ -64,7 +65,6 @@ kf
kf2
l4d
l4d2
lo
mc,java-11-openjdk
mcb,libnsl
mh

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
29 codwaw
30 col
31 cs
32 cs2
33 cscz
34 csgo
35 css,ncurses-libs.i686
65 kf2
66 l4d
67 l4d2
lo
68 mc,java-11-openjdk
69 mcb,libnsl
70 mh

View File

@ -29,6 +29,7 @@ coduo,compat-libstdc++-33.i686
codwaw
col
cs
cs2
cscz
csgo
css,ncurses-libs.i686
@ -64,7 +65,6 @@ kf
kf2
l4d
l4d2
lo
mc,java-17-openjdk
mcb,libnsl
mh

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
29 codwaw
30 col
31 cs
32 cs2
33 cscz
34 csgo
35 css,ncurses-libs.i686
65 kf2
66 l4d
67 l4d2
lo
68 mc,java-17-openjdk
69 mcb,libnsl
70 mh

View File

@ -29,6 +29,7 @@ coduo,compat-libstdc++-33.i686
codwaw
col
cs
cs2
cscz
csgo
css,ncurses-libs.i686
@ -64,7 +65,6 @@ kf
kf2
l4d
l4d2
lo
mc,java-17-openjdk
mcb,libnsl
mh

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
29 codwaw
30 col
31 cs
32 cs2
33 cscz
34 csgo
35 css,ncurses-libs.i686
65 kf2
66 l4d
67 l4d2
lo
68 mc,java-17-openjdk
69 mcb,libnsl
70 mh

View File

@ -29,6 +29,7 @@ coduo,compat-libstdc++-33.i686
codwaw
col
cs
cs2
cscz
csgo
css,ncurses-libs.i686
@ -64,7 +65,6 @@ kf
kf2
l4d
l4d2
lo
mc,java-17-openjdk
mcb,libnsl
mh

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
29 codwaw
30 col
31 cs
32 cs2
33 cscz
34 csgo
35 css,ncurses-libs.i686
65 kf2
66 l4d
67 l4d2
lo
68 mc,java-17-openjdk
69 mcb,libnsl
70 mh

View File

@ -29,6 +29,7 @@ coduo,compat-libstdc++-33.i686
codwaw
col
cs
cs2
cscz
csgo
css,ncurses-libs.i686
@ -64,7 +65,6 @@ kf
kf2
l4d
l4d2
lo
mc,java-17-openjdk
mcb,libnsl
mh

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
29 codwaw
30 col
31 cs
32 cs2
33 cscz
34 csgo
35 css,ncurses-libs.i686
65 kf2
66 l4d
67 l4d2
lo
68 mc,java-17-openjdk
69 mcb,libnsl
70 mh

View File

@ -28,6 +28,7 @@ coduo,coduoserver,Call of Duty: United Offensive,ubuntu-22.04
codwaw,codwawserver,Call of Duty: World at War,ubuntu-22.04
col,colserver,Colony Survival,ubuntu-22.04
cs,csserver,Counter-Strike 1.6,ubuntu-22.04
cs2,cs2server,Counter-Strike 2,ubuntu-22.04
cscz,csczserver,Counter-Strike: Condition Zero,ubuntu-22.04
csgo,csgoserver,Counter-Strike: Global Offensive,ubuntu-22.04
css,cssserver,Counter-Strike: Source,ubuntu-22.04

1 shortname gameservername gamename os
28 codwaw codwawserver Call of Duty: World at War ubuntu-22.04
29 col colserver Colony Survival ubuntu-22.04
30 cs csserver Counter-Strike 1.6 ubuntu-22.04
31 cs2 cs2server Counter-Strike 2 ubuntu-22.04
32 cscz csczserver Counter-Strike: Condition Zero ubuntu-22.04
33 csgo csgoserver Counter-Strike: Global Offensive ubuntu-22.04
34 css cssserver Counter-Strike: Source ubuntu-22.04

View File

@ -29,6 +29,7 @@ coduo,libstdc++5:i386
codwaw
col
cs
cs2
cscz
csgo
css,libtinfo5:i386
@ -64,7 +65,6 @@ kf
kf2
l4d
l4d2
lo
mc,openjdk-8-jre
mcb
mh

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
29 codwaw
30 col
31 cs
32 cs2
33 cscz
34 csgo
35 css,libtinfo5:i386
65 kf2
66 l4d
67 l4d2
lo
68 mc,openjdk-8-jre
69 mcb
70 mh

View File

@ -29,6 +29,7 @@ coduo,libstdc++5:i386
codwaw
col
cs
cs2
cscz
csgo
css,libtinfo5:i386
@ -64,7 +65,6 @@ kf
kf2
l4d
l4d2
lo
mc,openjdk-11-jre
mcb
mh

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
29 codwaw
30 col
31 cs
32 cs2
33 cscz
34 csgo
35 css,libtinfo5:i386
65 kf2
66 l4d
67 l4d2
lo
68 mc,openjdk-11-jre
69 mcb
70 mh

View File

@ -29,6 +29,7 @@ coduo,libstdc++5:i386
codwaw
col
cs
cs2
cscz
csgo
css,libtinfo5:i386
@ -64,7 +65,6 @@ kf
kf2
l4d
l4d2
lo
mc,openjdk-17-jre
mcb
mh

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
29 codwaw
30 col
31 cs
32 cs2
33 cscz
34 csgo
35 css,libtinfo5:i386
65 kf2
66 l4d
67 l4d2
lo
68 mc,openjdk-17-jre
69 mcb
70 mh

View File

@ -29,6 +29,7 @@ coduo,libstdc++5:i386
codwaw
col
cs
cs2
cscz
csgo
css,libtinfo5:i386
@ -64,7 +65,6 @@ kf
kf2
l4d
l4d2
lo
mc,openjdk-17-jre
mcb
mh

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
29 codwaw
30 col
31 cs
32 cs2
33 cscz
34 csgo
35 css,libtinfo5:i386
65 kf2
66 l4d
67 l4d2
lo
68 mc,openjdk-17-jre
69 mcb
70 mh

View File

@ -29,6 +29,7 @@ coduo,libstdc++5:i386
codwaw
col
cs
cs2
cscz
csgo
css,libtinfo5:i386
@ -64,7 +65,6 @@ kf
kf2
l4d
l4d2
lo
mc,openjdk-17-jre
mcb
mh

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
29 codwaw
30 col
31 cs
32 cs2
33 cscz
34 csgo
35 css,libtinfo5:i386
65 kf2
66 l4d
67 l4d2
lo
68 mc,openjdk-17-jre
69 mcb
70 mh

View File

@ -29,6 +29,7 @@ coduo,libstdc++5:i386
codwaw
col
cs
cs2
cscz
csgo
css,libtinfo5:i386
@ -64,7 +65,6 @@ kf
kf2
l4d
l4d2
lo
mc,openjdk-17-jre
mcb
mh

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
29 codwaw
30 col
31 cs
32 cs2
33 cscz
34 csgo
35 css,libtinfo5:i386
65 kf2
66 l4d
67 l4d2
lo
68 mc,openjdk-17-jre
69 mcb
70 mh

View File

@ -18,11 +18,11 @@ fn_alert_log() {
fi
{
fn_info_message_head
fn_info_message_distro
fn_info_message_server_resource
fn_info_message_gameserver_resource
fn_info_message_gameserver
fn_info_messages_head
fn_info_messages_distro
fn_info_messages_server_resource
fn_info_messages_gameserver_resource
fn_info_messages_gameserver
fn_info_logs
} | sed -r "s/\x1B\[([0-9]{1,2}(;[0-9]{1,2})?)?[m|K]//g" | tee -a "${alertlog}" > /dev/null 2>&1
}

View File

@ -15,7 +15,7 @@ if [ ! -d "${serverfiles}" ]; then
core_exit.sh
fi
if [ ! -d "${systemdir}" ]; then
if [ ! -d "${systemdir}" ] && [ -z "${CI}" ]; then
fn_print_fail_nl "Cannot access ${systemdir}: No such directory"
if [ -d "${lgsmlogdir}" ]; then
fn_script_log_fail "Cannot access ${systemdir}: No such directory."

View File

@ -23,20 +23,20 @@ if [ "${querymode}" == "2" ] || [ "${querymode}" == "3" ]; then
fi
done
fi
fn_info_message_distro
fn_info_message_server_resource
fn_info_message_gameserver_resource
fn_info_message_gameserver
fn_info_message_script
fn_info_message_backup
fn_info_messages_distro
fn_info_messages_server_resource
fn_info_messages_gameserver_resource
fn_info_messages_gameserver
fn_info_messages_script
fn_info_messages_backup
# Some game servers do not have parms.
if [ "${shortname}" != "jc2" ] && [ "${shortname}" != "dst" ] && [ "${shortname}" != "pz" ] && [ "${engine}" != "renderware" ]; then
fn_info_message_commandlineparms
fn_info_messages_commandlineparms
fi
fn_info_message_ports_edit
fn_info_message_ports
fn_info_message_select_engine
fn_info_message_statusbottom
fn_info_messages_ports_edit
fn_info_messages_ports
fn_info_messages_select_engine
fn_info_messages_statusbottom
exitcode=0
core_exit.sh

View File

@ -185,7 +185,7 @@ fn_messages_separator
echo -e ""
echo -e "${lightgreen}SS Output${default}"
fn_messages_separator
fn_info_message_ports
fn_info_messages_ports
eval "${portcommand}"
echo -e ""
echo -e "${lightgreen}Query Port - Raw Output${default}"

View File

@ -42,20 +42,20 @@ else
done
touch "${postdetailslog}" || fn_bad_postdetailslog
{
fn_info_message_distro
fn_info_message_server_resource
fn_info_message_gameserver_resource
fn_info_message_gameserver
fn_info_message_script
fn_info_message_backup
fn_info_messages_distro
fn_info_messages_server_resource
fn_info_messages_gameserver_resource
fn_info_messages_gameserver
fn_info_messages_script
fn_info_messages_backup
# Some game servers do not have parms.
if [ "${shortname}" != "jc2" ] && [ "${shortname}" != "jc3" ] && [ "${shortname}" != "dst" ] && [ "${shortname}" != "pz" ] && [ "${engine}" != "renderware" ]; then
fn_info_message_commandlineparms
fn_info_messages_commandlineparms
fi
fn_info_message_ports_edit
fn_info_message_ports
fn_info_message_select_engine
fn_info_message_statusbottom
fn_info_messages_ports_edit
fn_info_messages_ports
fn_info_messages_select_engine
fn_info_messages_statusbottom
} | sed -r "s/\x1B\[([0-9]{1,2}(;[0-9]{1,2})?)?[m|K]//g" | tee -a "${postdetailslog}" > /dev/null 2>&1
fi

View File

@ -14,7 +14,7 @@ fn_firstcommand_set
fn_stop_graceful_ctrlc() {
fn_print_dots "Graceful: CTRL+c"
fn_script_log_info "Graceful: CTRL+c"
# Sends quit.
# Sends CTRL+c.
tmux -L "${socketname}" send-keys -t "${sessionname}" C-c > /dev/null 2>&1
# Waits up to 30 seconds giving the server time to shutdown gracefuly.
for seconds in {1..30}; do

View File

@ -53,12 +53,12 @@ fn_apply_fix() {
}
apply_pre_start_fix=(arma3 armar ark av bt bo csgo cmw dst hw ins nmrih onset pvr rust rw sdtd sfc sof2 squad st tf2 terraria ts3 mcb mta unt vh wurm zmr)
apply_post_install_fix=(av kf kf2 lo ro samp ut2k4 ut ut3)
apply_post_install_fix=(av kf kf2 ro samp ut2k4 ut ut3)
# validate registered fixes for safe development
for fix in "${apply_pre_start_fix[@]}" "${apply_post_install_fix[@]}"; do
if ! fn_exists_fix "${fix}"; then
fn_print_fail_nl "fix_${fix}.sh is registered but doesn't exist. Typo or did you miss to modify core_functions.sh?"
fn_print_fail_nl "fix_${fix}.sh is registered but doesn't exist. Typo or did you miss to modify core_modules.sh?"
exitcode=1
core_exit.sh
fi

View File

@ -1132,6 +1132,26 @@ fn_info_game_col() {
steamport="${steamport:-"0"}"
}
# Config Type: Valve KeyValues
# Comment: //
# Example: hostname "SERVERNAME"
# Filetype: cfg
fn_info_game_cs2() {
if [ -f "${servercfgfullpath}" ]; then
fn_info_game_valve_keyvalues "servername" "hostname"
fi
# Steamport can be between 26901-26910 and is normally automatically set.
# Some servers might support -steamport parameter to set
if [ "${steamport}" == "0" ] || [ -v "${steamport}" ]; then
steamport="$(echo "${ssinfo}" | grep "${srcdslinuxpid}" | awk '{print $5}' | grep ":269" | cut -d ":" -f2)"
fi
defaultmap="${defaultmap:-"NOT SET"}"
maxplayers="${maxplayers:-"0"}"
port="${port:-"0"}"
queryport="${port:-"0"}"
servername="${servername:-"NOT SET"}"
}
# Config Type: ini
# Parameters: true
# Comment: ; or #
@ -2252,6 +2272,8 @@ elif [ "${shortname}" == "codwaw" ]; then
fn_info_game_codwaw
elif [ "${shortname}" == "col" ]; then
fn_info_game_col
elif [ "${shortname}" == "cs2" ]; then
fn_info_game_cs2
elif [ "${shortname}" == "ct" ]; then
fn_info_game_ct
elif [ "${shortname}" == "dayz" ]; then

File diff suppressed because it is too large Load Diff

View File

@ -346,6 +346,12 @@ elif [ "${shortname}" == "cs" ]; then
fn_default_config_remote
fn_set_config_vars
fn_list_config_locations
elif [ "${shortname}" == "cs2" ]; then
array_configs+=(server.cfg)
fn_fetch_default_config
fn_default_config_remote
fn_set_config_vars
fn_list_config_locations
elif [ "${shortname}" == "cscz" ]; then
array_configs+=(server.cfg)
fn_fetch_default_config