Browse Source

Merge 524baf3162 into 8745129a25

pull/4771/merge
Stephan Schaffner 2 weeks ago
committed by GitHub
parent
commit
1686382c20
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 5
      lgsm/config-default/config-lgsm/ecoserver/_default.cfg
  2. 5
      lgsm/config-default/config-lgsm/hzserver/_default.cfg
  3. 2
      lgsm/config-default/config-lgsm/jc2server/_default.cfg
  4. 2
      lgsm/config-default/config-lgsm/tfserver/_default.cfg
  5. 2
      lgsm/data/almalinux-8.csv
  6. 2
      lgsm/data/almalinux-9.csv
  7. 2
      lgsm/data/centos-7.csv
  8. 2
      lgsm/data/centos-8.csv
  9. 2
      lgsm/data/centos-9.csv
  10. 2
      lgsm/data/debian-10.csv
  11. 2
      lgsm/data/debian-11.csv
  12. 2
      lgsm/data/debian-12.csv
  13. 2
      lgsm/data/debian-13.csv
  14. 2
      lgsm/data/debian-9.csv
  15. 2
      lgsm/data/rhel-7.csv
  16. 2
      lgsm/data/rhel-8.csv
  17. 2
      lgsm/data/rhel-9.csv
  18. 2
      lgsm/data/rocky-8.csv
  19. 2
      lgsm/data/rocky-9.csv
  20. 2
      lgsm/data/serverlist.csv
  21. 2
      lgsm/data/ubuntu-16.04.csv
  22. 2
      lgsm/data/ubuntu-18.04.csv
  23. 2
      lgsm/data/ubuntu-20.04.csv
  24. 2
      lgsm/data/ubuntu-22.04.csv
  25. 2
      lgsm/data/ubuntu-23.04.csv
  26. 2
      lgsm/data/ubuntu-23.10.csv
  27. 4
      lgsm/data/ubuntu-24.04.csv
  28. 118
      lgsm/modules/alert_discord.sh
  29. 11
      lgsm/modules/check_deps.sh
  30. 2
      lgsm/modules/command_monitor.sh
  31. 29
      lgsm/modules/command_postdetails.sh
  32. 2
      lgsm/modules/info_messages.sh
  33. 1
      lgsm/modules/mods_list.sh
  34. 6
      lgsm/modules/query_gsquery.py

5
lgsm/config-default/config-lgsm/ecoserver/_default.cfg

@ -8,8 +8,11 @@
#### Game Server Settings #### #### Game Server Settings ####
## Predefined Parameters | https://docs.linuxgsm.com/configuration/start-parameters
usertoken=""
## Server Parameters | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters ## Server Parameters | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
startparameters="-nogui" startparameters="-nogui -userToken=${usertoken}"
#### LinuxGSM Settings #### #### LinuxGSM Settings ####

5
lgsm/config-default/config-lgsm/hzserver/_default.cfg

@ -12,7 +12,6 @@
ip="0.0.0.0" ip="0.0.0.0"
port="7777" port="7777"
queryport="27015" queryport="27015"
servername="LinuxGSM"
## Server Parameters | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters ## Server Parameters | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
startparameters="-log -port=${port} -queryport=${queryport} -steamservername=${servername}" startparameters="-log -port=${port} -queryport=${queryport} -steamservername=${servername}"
@ -157,8 +156,8 @@ glibc="2.17"
systemdir="${serverfiles}/TSSGame" systemdir="${serverfiles}/TSSGame"
executabledir="${systemdir}/Binaries/Linux" executabledir="${systemdir}/Binaries/Linux"
executable="./TSSGameServer-Linux-Shipping" executable="./TSSGameServer-Linux-Shipping"
servercfgdir="${systemdir}/Saved/Config/LinuxServer" servercfgdir="${systemdir}"
servercfg="GameUserSettings.ini" servercfg="GameServerSettings.ini"
servercfgdefault="GameUserSettings.ini" servercfgdefault="GameUserSettings.ini"
servercfgfullpath="${servercfgdir}/${servercfg}" servercfgfullpath="${servercfgdir}/${servercfg}"

2
lgsm/config-default/config-lgsm/jc2server/_default.cfg

@ -134,7 +134,7 @@ stopmode="2"
# 4: gsquery # 4: gsquery
# 5: tcp # 5: tcp
querymode="2" querymode="2"
querytype="jc2mp" querytype="jc2m"
## Console type ## Console type
consoleverbose="yes" consoleverbose="yes"

2
lgsm/config-default/config-lgsm/tfserver/_default.cfg

@ -33,7 +33,7 @@ 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. 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 ## 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}'" 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} -UseEAC=${anticheat} -ServerAdminAccounts='${serveradmins}' -IsShowGmTitle=${adminlabel} -ServerPassword='${serverpassword}'"
#### LinuxGSM Settings #### #### LinuxGSM Settings ####

2
lgsm/data/almalinux-8.csv

@ -127,7 +127,7 @@ ut2k4
ut3 ut3
ut99 ut99
vh,glibc-devel,libatomic,pulseaudio-libs-devel vh,glibc-devel,libatomic,pulseaudio-libs-devel
vints,aspnetcore-runtime-7.0 vints,dotnet-runtime-7.0
vpmc,java-21-openjdk vpmc,java-21-openjdk
vs vs
wet wet

Can't render this file because it has a wrong number of fields in line 2.

2
lgsm/data/almalinux-9.csv

@ -127,7 +127,7 @@ ut2k4
ut3 ut3
ut99 ut99
vh,glibc-devel,libatomic,pulseaudio-libs-devel vh,glibc-devel,libatomic,pulseaudio-libs-devel
vints,aspnetcore-runtime-7.0 vints,dotnet-runtime-7.0
vpmc,java-21-openjdk vpmc,java-21-openjdk
vs vs
wet wet

Can't render this file because it has a wrong number of fields in line 2.

2
lgsm/data/centos-7.csv

@ -127,7 +127,7 @@ ut2k4
ut3 ut3
ut99 ut99
vh,glibc-devel,libatomic,pulseaudio-libs-devel vh,glibc-devel,libatomic,pulseaudio-libs-devel
vints,aspnetcore-runtime-7.0 vints,dotnet-runtime-7.0
vpmc,java-11-openjdk vpmc,java-11-openjdk
vs vs
wet wet

Can't render this file because it has a wrong number of fields in line 2.

2
lgsm/data/centos-8.csv

@ -127,7 +127,7 @@ ut2k4
ut3 ut3
ut99 ut99
vh,glibc-devel,libatomic,pulseaudio-libs-devel vh,glibc-devel,libatomic,pulseaudio-libs-devel
vints,aspnetcore-runtime-7.0 vints,dotnet-runtime-7.0
vpmc,java-17-openjdk vpmc,java-17-openjdk
vs vs
wet wet

Can't render this file because it has a wrong number of fields in line 2.

2
lgsm/data/centos-9.csv

@ -127,7 +127,7 @@ ut2k4
ut3 ut3
ut99 ut99
vh,glibc-devel,libatomic,pulseaudio-libs-devel vh,glibc-devel,libatomic,pulseaudio-libs-devel
vints,aspnetcore-runtime-7.0 vints,dotnet-runtime-7.0
vpmc,java-17-openjdk vpmc,java-17-openjdk
vs vs
wet wet

Can't render this file because it has a wrong number of fields in line 2.

2
lgsm/data/debian-10.csv

@ -127,7 +127,7 @@ ut2k4
ut3 ut3
ut99 ut99
vh,libc6-dev,libatomic1,libpulse-dev vh,libc6-dev,libatomic1,libpulse-dev
vints,aspnetcore-runtime-7.0 vints,dotnet-runtime-7.0
vpmc,openjdk-11-jre vpmc,openjdk-11-jre
vs vs
wet wet

Can't render this file because it has a wrong number of fields in line 4.

2
lgsm/data/debian-11.csv

@ -127,7 +127,7 @@ ut2k4
ut3 ut3
ut99 ut99
vh,libc6-dev,libatomic1,libpulse-dev vh,libc6-dev,libatomic1,libpulse-dev
vints,aspnetcore-runtime-7.0 vints,dotnet-runtime-7.0
vpmc,openjdk-11-jre vpmc,openjdk-11-jre
vs vs
wet wet

Can't render this file because it has a wrong number of fields in line 2.

2
lgsm/data/debian-12.csv

@ -127,7 +127,7 @@ ut2k4
ut3 ut3
ut99 ut99
vh,libc6-dev,libatomic1,libpulse-dev vh,libc6-dev,libatomic1,libpulse-dev
vints,aspnetcore-runtime-7.0 vints,dotnet-runtime-7.0
vpmc,openjdk-17-jre vpmc,openjdk-17-jre
vs vs
wet wet

Can't render this file because it has a wrong number of fields in line 2.

2
lgsm/data/debian-13.csv

@ -127,7 +127,7 @@ ut2k4
ut3 ut3
ut99 ut99
vh,libc6-dev,libatomic1,libpulse-dev vh,libc6-dev,libatomic1,libpulse-dev
vints,aspnetcore-runtime-7.0 vints,dotnet-runtime-7.0
vpmc,openjdk-21-jre vpmc,openjdk-21-jre
vs vs
wet wet

Can't render this file because it has a wrong number of fields in line 2.

2
lgsm/data/debian-9.csv

@ -127,7 +127,7 @@ ut2k4
ut3 ut3
ut99 ut99
vh,libc6-dev,libatomic1,libpulse-dev vh,libc6-dev,libatomic1,libpulse-dev
vints,aspnetcore-runtime-7.0 vints,dotnet-runtime-7.0
vpmc,openjdk-8-jre vpmc,openjdk-8-jre
vs vs
wet wet

Can't render this file because it has a wrong number of fields in line 2.

2
lgsm/data/rhel-7.csv

@ -127,7 +127,7 @@ ut2k4
ut3 ut3
ut99 ut99
vh,glibc-devel,libatomic,pulseaudio-libs-devel vh,glibc-devel,libatomic,pulseaudio-libs-devel
vints,aspnetcore-runtime-7.0 vints,dotnet-runtime-7.0
vpmc,java-11-openjdk vpmc,java-11-openjdk
vs vs
wet wet

Can't render this file because it has a wrong number of fields in line 2.

2
lgsm/data/rhel-8.csv

@ -127,7 +127,7 @@ ut2k4
ut3 ut3
ut99 ut99
vh,glibc-devel,libatomic,pulseaudio-libs-devel vh,glibc-devel,libatomic,pulseaudio-libs-devel
vints,aspnetcore-runtime-7.0 vints,dotnet-runtime-7.0
vpmc,java-21-openjdk vpmc,java-21-openjdk
vs vs
wet wet

Can't render this file because it has a wrong number of fields in line 2.

2
lgsm/data/rhel-9.csv

@ -127,7 +127,7 @@ ut2k4
ut3 ut3
ut99 ut99
vh,glibc-devel,libatomic,pulseaudio-libs-devel vh,glibc-devel,libatomic,pulseaudio-libs-devel
vints,aspnetcore-runtime-7.0 vints,dotnet-runtime-7.0
vpmc,java-21-openjdk vpmc,java-21-openjdk
vs vs
wet wet

Can't render this file because it has a wrong number of fields in line 2.

2
lgsm/data/rocky-8.csv

@ -127,7 +127,7 @@ ut2k4
ut3 ut3
ut99 ut99
vh,glibc-devel,libatomic,pulseaudio-libs-devel vh,glibc-devel,libatomic,pulseaudio-libs-devel
vints,aspnetcore-runtime-7.0 vints,dotnet-runtime-7.0
vpmc,java-21-openjdk vpmc,java-21-openjdk
vs vs
wet wet

Can't render this file because it has a wrong number of fields in line 2.

2
lgsm/data/rocky-9.csv

@ -127,7 +127,7 @@ ut2k4
ut3 ut3
ut99 ut99
vh,glibc-devel,libatomic,pulseaudio-libs-devel vh,glibc-devel,libatomic,pulseaudio-libs-devel
vints,aspnetcore-runtime-7.0 vints,dotnet-runtime-7.0
vpmc,java-21-openjdk vpmc,java-21-openjdk
vs vs
wet wet

Can't render this file because it has a wrong number of fields in line 2.

2
lgsm/data/serverlist.csv

@ -126,7 +126,7 @@ ut2k4,ut2k4server,Unreal Tournament 2004,ubuntu-24.04
ut3,ut3server,Unreal Tournament 3,ubuntu-24.04 ut3,ut3server,Unreal Tournament 3,ubuntu-24.04
ut99,ut99server,Unreal Tournament 99,ubuntu-24.04 ut99,ut99server,Unreal Tournament 99,ubuntu-24.04
vh,vhserver,Valheim,ubuntu-24.04 vh,vhserver,Valheim,ubuntu-24.04
vints,vintsserver,Vintage Story,ubuntu-24.04 vints,vintsserver,Vintage Story,ubuntu-22.04
vpmc,vpmcserver,Velocity Proxy MC,ubuntu-24.04 vpmc,vpmcserver,Velocity Proxy MC,ubuntu-24.04
vs,vsserver,Vampire Slayer,ubuntu-24.04 vs,vsserver,Vampire Slayer,ubuntu-24.04
wet,wetserver,Wolfenstein: Enemy Territory,ubuntu-24.04 wet,wetserver,Wolfenstein: Enemy Territory,ubuntu-24.04

Can't render this file because it has a wrong number of fields in line 47.

2
lgsm/data/ubuntu-16.04.csv

@ -127,7 +127,7 @@ ut2k4
ut3 ut3
ut99 ut99
vh,libc6-dev,libatomic1,libpulse-dev vh,libc6-dev,libatomic1,libpulse-dev
vints,aspnetcore-runtime-7.0 vints,dotnet-runtime-7.0
vpmc,openjdk-8-jre vpmc,openjdk-8-jre
vs vs
wet wet

Can't render this file because it has a wrong number of fields in line 2.

2
lgsm/data/ubuntu-18.04.csv

@ -127,7 +127,7 @@ ut2k4
ut3 ut3
ut99 ut99
vh,libc6-dev,libatomic1,libpulse-dev vh,libc6-dev,libatomic1,libpulse-dev
vints,aspnetcore-runtime-7.0 vints,dotnet-runtime-7.0
vpmc,openjdk-11-jre vpmc,openjdk-11-jre
vs vs
wet wet

Can't render this file because it has a wrong number of fields in line 2.

2
lgsm/data/ubuntu-20.04.csv

@ -127,7 +127,7 @@ ut2k4
ut3 ut3
ut99 ut99
vh,libc6-dev,libatomic1,libpulse-dev vh,libc6-dev,libatomic1,libpulse-dev
vints,aspnetcore-runtime-7.0 vints,dotnet-runtime-7.0
vpmc,openjdk-11-jre vpmc,openjdk-11-jre
vs vs
wet wet

Can't render this file because it has a wrong number of fields in line 2.

2
lgsm/data/ubuntu-22.04.csv

@ -127,7 +127,7 @@ ut2k4
ut3 ut3
ut99 ut99
vh,libc6-dev,libatomic1,libpulse-dev vh,libc6-dev,libatomic1,libpulse-dev
vints,aspnetcore-runtime-7.0 vints,dotnet-runtime-7.0
vpmc,openjdk-21-jre vpmc,openjdk-21-jre
vs vs
wet wet

Can't render this file because it has a wrong number of fields in line 2.

2
lgsm/data/ubuntu-23.04.csv

@ -127,7 +127,7 @@ ut2k4
ut3 ut3
ut99 ut99
vh,libc6-dev,libatomic1,libpulse-dev vh,libc6-dev,libatomic1,libpulse-dev
vints,aspnetcore-runtime-7.0 vints,dotnet-runtime-7.0
vpmc,openjdk-21-jre vpmc,openjdk-21-jre
vs vs
wet wet

Can't render this file because it has a wrong number of fields in line 2.

2
lgsm/data/ubuntu-23.10.csv

@ -127,7 +127,7 @@ ut2k4
ut3 ut3
ut99 ut99
vh,libc6-dev,libatomic1,libpulse-dev vh,libc6-dev,libatomic1,libpulse-dev
vints,aspnetcore-runtime-7.0 vints,dotnet-runtime-7.0
vpmc,openjdk-21-jre vpmc,openjdk-21-jre
vs vs
wet wet

Can't render this file because it has a wrong number of fields in line 2.

4
lgsm/data/ubuntu-24.04.csv

@ -5,7 +5,7 @@ ahl
ahl2 ahl2
ark ark
arma3 arma3
armar,libcurl4 armar,libcurl4t64
ats ats
av av
bb bb
@ -127,7 +127,7 @@ ut2k4
ut3 ut3
ut99 ut99
vh,libc6-dev,libatomic1,libpulse-dev vh,libc6-dev,libatomic1,libpulse-dev
vints,aspnetcore-runtime-8.0 vints,dotnet-runtime-7.0
vpmc,openjdk-21-jre vpmc,openjdk-21-jre
vs vs
wet wet

Can't render this file because it has a wrong number of fields in line 2.

118
lgsm/modules/alert_discord.sh

@ -10,68 +10,86 @@ moduleselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
json=$( json=$(
cat << EOF cat << EOF
{ {
"username": "LinuxGSM", "username": "LinuxGSM",
"avatar_url": "https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${githubbranch}/lgsm/data/alert_discord_logo.jpg", "avatar_url": "https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${githubbranch}/lgsm/data/alert_discord_logo.jpg",
"file": "content", "file": "content",
"embeds": [ "embeds": [
{ {
"author": { "author": {
"name": "LinuxGSM Alert", "name": "LinuxGSM Alert",
"url": "", "url": "",
"icon_url": "https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${githubbranch}/lgsm/data/alert_discord_logo.jpg" "icon_url": "https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${githubbranch}/lgsm/data/alert_discord_logo.jpg"
}, },
"title": "${alerttitle}", "title": "${alerttitle}",
"url": "", "url": "",
"description": "", "description": "",
"color": "${alertcolourdec}", "color": "${alertcolourdec}",
"type": "content", "type": "content",
"thumbnail": { "thumbnail": {
"url": "${alerticon}" "url": "${alerticon}"
}, },
"fields": [ "fields": [
{ {
"name": "Server Name", "name": "Server Name",
"value": "${servername}" "value": "${servername}"
}, },
{ {
"name": "Information", "name": "Information",
"value": "${alertmessage}" "value": "${alertmessage}"
}, },
{ {
"name": "Game", "name": "Game",
"value": "${gamename}", "value": "${gamename}",
"inline": true "inline": true
}, },
{ {
"name": "Server Time", "name": "Server Time",
"value": "$(date)", "value": "$(date)",
"inline": true "inline": true
} },
{
"name": "More info",
"value": "${alerturl}",
"inline": true
}
EOF EOF
) )
if [ -n "${querytype}" ]; then if [ -n "${querytype}" ]; then
json+=$( json+=$(
cat << EOF cat << EOF
, ,
{ {
"name": "Is my Game Server Online?", "name": "Is my Game Server Online?",
"value": "https://ismygameserver.online/${imgsoquerytype}/${alertip}:${queryport}", "value": "https://ismygameserver.online/${imgsoquerytype}/${alertip}:${queryport}",
"inline": true "inline": true
} }
EOF
)
fi
if [ -n "{alerturl}" ]; then
json+=$(
cat << EOF
,
{
"name": "More info",
"value": "${alerturl}",
"inline": true
}
EOF EOF
) )
fi fi
json+=$( json+=$(
cat << EOF cat << EOF
], ],
"footer": { "footer": {
"icon_url": "https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${githubbranch}/lgsm/data/alert_discord_logo.jpg", "icon_url": "https://raw.githubusercontent.com/${githubuser}/${githubrepo}/${githubbranch}/lgsm/data/alert_discord_logo.jpg",
"text": "Sent by LinuxGSM ${version}" "text": "Sent by LinuxGSM ${version}"
} }
} }
] ]
} }
EOF EOF
) )

11
lgsm/modules/check_deps.sh

@ -9,8 +9,8 @@ moduleselfname="$(basename "$(readlink -f "${BASH_SOURCE[0]}")")"
fn_install_dotnet_repo() { fn_install_dotnet_repo() {
if [ "${distroid}" == "ubuntu" ]; then if [ "${distroid}" == "ubuntu" ]; then
# if package aspnetcore-runtime-7.0 is unavailable in ubuntu repos, add the microsoft repo. # if package dotnet-runtime-7.0 is unavailable in ubuntu repos, add the microsoft repo.
if ! apt-cache show aspnetcore-runtime-7.0 > /dev/null 2>&1; then if ! apt-cache show dotnet-runtime-7.0 > /dev/null 2>&1; then
fn_fetch_file "https://packages.microsoft.com/config/ubuntu/${distroversion}/packages-microsoft-prod.deb" "" "" "" "/tmp" "packages-microsoft-prod.deb" "" "" "" "" fn_fetch_file "https://packages.microsoft.com/config/ubuntu/${distroversion}/packages-microsoft-prod.deb" "" "" "" "/tmp" "packages-microsoft-prod.deb" "" "" "" ""
sudo dpkg -i /tmp/packages-microsoft-prod.deb sudo dpkg -i /tmp/packages-microsoft-prod.deb
fi fi
@ -251,12 +251,15 @@ fn_deps_detector() {
if [ "${deptocheck}" == "libsdl2-2.0-0:i386" ] && [ -z "${appid}" ]; then if [ "${deptocheck}" == "libsdl2-2.0-0:i386" ] && [ -z "${appid}" ]; then
array_deps_required=("${array_deps_required[@]/libsdl2-2.0-0:i386/}") array_deps_required=("${array_deps_required[@]/libsdl2-2.0-0:i386/}")
steamcmdstatus=1 steamcmdstatus=1
return
elif [ "${deptocheck}" == "steamcmd" ] && [ -z "${appid}" ]; then elif [ "${deptocheck}" == "steamcmd" ] && [ -z "${appid}" ]; then
array_deps_required=("${array_deps_required[@]/steamcmd/}") array_deps_required=("${array_deps_required[@]/steamcmd/}")
steamcmdstatus=1 steamcmdstatus=1
return
elif [ "${deptocheck}" == "steamcmd" ] && [ "${distroid}" == "debian" ] && ! grep -qE '[^deb]+non-free([^-]|$)' /etc/apt/sources.list; then elif [ "${deptocheck}" == "steamcmd" ] && [ "${distroid}" == "debian" ] && ! grep -qE '[^deb]+non-free([^-]|$)' /etc/apt/sources.list; then
array_deps_required=("${array_deps_required[@]/steamcmd/}") array_deps_required=("${array_deps_required[@]/steamcmd/}")
steamcmdstatus=1 steamcmdstatus=1
return
# Java: Added for users using Oracle JRE to bypass check. # Java: Added for users using Oracle JRE to bypass check.
elif [[ ${deptocheck} == "openjdk"* ]] || [[ ${deptocheck} == "java"* ]]; then elif [[ ${deptocheck} == "openjdk"* ]] || [[ ${deptocheck} == "java"* ]]; then
# Is java already installed? # Is java already installed?
@ -279,9 +282,9 @@ fn_deps_detector() {
monoinstalled=false monoinstalled=false
fi fi
# .NET Core: A .NET Core repo needs to be installed. # .NET Core: A .NET Core repo needs to be installed.
elif [ "${deptocheck}" == "aspnetcore-runtime-7.0" ]; then elif [ "${deptocheck}" == "dotnet-runtime-7.0" ]; then
# .NET is not installed. # .NET is not installed.
if [ -n "${dotnetversion}" ]; then if dotnet --list-runtimes | grep -q "Microsoft.NETCore.App 7.0"; then
depstatus=0 depstatus=0
dotnetinstalled=true dotnetinstalled=true
else else

2
lgsm/modules/command_monitor.sh

@ -167,7 +167,7 @@ fn_monitor_check_update_source() {
fn_script_log_info "Checking update: ${selfname} has requested an update and needs to be restarted" fn_script_log_info "Checking update: ${selfname} has requested an update and needs to be restarted"
alert="update-request" alert="update-request"
alert.sh alert.sh
command_update.sh command_restart.sh
core_exit.sh core_exit.sh
fi fi
fi fi

29
lgsm/modules/command_postdetails.sh

@ -58,18 +58,27 @@ else
fi fi
fn_print_dots "termbin.com" fn_print_dots "termbin.com"
link=$(cat "${postdetailslog}" | nc termbin.com 9999 | tr -d '\n\0') link=$(cat "${postdetailslog}" | {
fn_print_ok_nl "termbin.com for 30D" nc -w 3 termbin.com 9999
fn_script_log_pass "termbin.com for 30D" echo $? > /tmp/nc_exit_status
pdurl="${link}" } | tr -d '\n\0')
nc_exit_status=$(cat /tmp/nc_exit_status)
if [ "${nc_exit_status}" -ne 0 ]; then
fn_print_error_nl "Failed to post to termbin.com"
fn_script_log_error "Failed to post to termbin.com"
else
fn_print_ok_nl "termbin.com for 30D"
fn_script_log_pass "termbin.com for 30D"
pdurl="${link}"
if [ "${firstcommandname}" == "POST-DETAILS" ]; then if [ "${firstcommandname}" == "POST-DETAILS" ]; then
echo -e "" echo -e ""
echo -e "Please share the following url for support: " echo -e "Please share the following url for support: "
echo -e "${italic}${pdurl}${default}" echo -e "${italic}${pdurl}${default}"
fi
fn_script_log_info "${pdurl}"
alerturl="${pdurl}"
fi fi
fn_script_log_info "${pdurl}"
alerturl="${pdurl}"
if [ -z "${exitbypass}" ]; then if [ -z "${exitbypass}" ]; then
core_exit.sh core_exit.sh

2
lgsm/modules/info_messages.sh

@ -1658,7 +1658,7 @@ fn_info_messages_tf() {
{ {
fn_port "header" fn_port "header"
fn_port "Game" port udp fn_port "Game" port udp
fn_port "Query" queryport tcp fn_port "Query" queryport udp
fn_port "Beacon" beaconport udp fn_port "Beacon" beaconport udp
fn_port "Shutdown" shutdownport tcp fn_port "Shutdown" shutdownport tcp
} | column -s $'\t' -t } | column -s $'\t' -t

1
lgsm/modules/mods_list.sh

@ -189,7 +189,6 @@ mod_info_spinnertool=(MOD "spinnertool" "Spinner Tool" "https://github.com/dvdvi
mod_info_surfacefrictiontool=(MOD "surfacefrictiontool" "Surface Friction Tool" "https://github.com/dvdvideo1234/surfacefrictiontool/archive/master.zip" "surfacefrictiontool-master.zip" "0" "LowercaseOn" "${systemdir}/addons" "OVERWRITE" "ENGINES" "Garry's Mod;" "NOTGAMES" "https://github.com/dvdvideo1234/SurfaceFrictionTool" "Controls the surface friction of a prop") mod_info_surfacefrictiontool=(MOD "surfacefrictiontool" "Surface Friction Tool" "https://github.com/dvdvideo1234/surfacefrictiontool/archive/master.zip" "surfacefrictiontool-master.zip" "0" "LowercaseOn" "${systemdir}/addons" "OVERWRITE" "ENGINES" "Garry's Mod;" "NOTGAMES" "https://github.com/dvdvideo1234/SurfaceFrictionTool" "Controls the surface friction of a prop")
mod_info_magneticdipole=(MOD "magneticdipole" "Magnetic Dipole" "https://github.com/dvdvideo1234/magneticdipole/archive/master.zip" "magneticdipole-master.zip" "0" "LowercaseOn" "${systemdir}/addons" "OVERWRITE" "ENGINES" "Garry's Mod;" "NOTGAMES" "https://github.com/dvdvideo1234/MagneticDipole" "Magnet entity that runs forces on its poles. Supports wire") mod_info_magneticdipole=(MOD "magneticdipole" "Magnetic Dipole" "https://github.com/dvdvideo1234/magneticdipole/archive/master.zip" "magneticdipole-master.zip" "0" "LowercaseOn" "${systemdir}/addons" "OVERWRITE" "ENGINES" "Garry's Mod;" "NOTGAMES" "https://github.com/dvdvideo1234/MagneticDipole" "Magnet entity that runs forces on its poles. Supports wire")
mod_info_environmentorganizer=(MOD "environmentorganizer" "Environment Organizer" "https://github.com/dvdvideo1234/environmentorganizer/archive/master.zip" "environmentorganizer-master.zip" "0" "LowercaseOn" "${systemdir}/addons" "OVERWRITE" "ENGINES" "Garry's Mod;" "NOTGAMES" "https://github.com/dvdvideo1234/EnvironmentOrganizer" "Installs routines designed for server settings adjustment") mod_info_environmentorganizer=(MOD "environmentorganizer" "Environment Organizer" "https://github.com/dvdvideo1234/environmentorganizer/archive/master.zip" "environmentorganizer-master.zip" "0" "LowercaseOn" "${systemdir}/addons" "OVERWRITE" "ENGINES" "Garry's Mod;" "NOTGAMES" "https://github.com/dvdvideo1234/EnvironmentOrganizer" "Installs routines designed for server settings adjustment")
mod_info_precision_alignment=(MOD "precision-alignment" "Precision Alignment" "https://github.com/Mista-Tea/precision-alignment/archive/master.zip" "precision-alignment-master.zip" "0" "LowercaseOn" "${systemdir}/addons" "OVERWRITE" "ENGINES" "Garry's Mod;" "NOTGAMES" "https://github.com/Mista-Tea/precision-alignment" "Creates precise constraints and aligments")
mod_info_improved_stacker=(MOD "improved-stacker" "Improved Stacker" "https://github.com/Mista-Tea/improved-stacker/archive/master.zip" "improved-stacker-master.zip" "0" "LowercaseOn" "${systemdir}/addons" "OVERWRITE" "ENGINES" "Garry's Mod;" "NOTGAMES" "https://github.com/Mista-Tea/improved-stacker" "Stacks entities in the direction chosen") mod_info_improved_stacker=(MOD "improved-stacker" "Improved Stacker" "https://github.com/Mista-Tea/improved-stacker/archive/master.zip" "improved-stacker-master.zip" "0" "LowercaseOn" "${systemdir}/addons" "OVERWRITE" "ENGINES" "Garry's Mod;" "NOTGAMES" "https://github.com/Mista-Tea/improved-stacker" "Stacks entities in the direction chosen")
mod_info_improved_weight=(MOD "improved-weight" "Improved Weight" "https://github.com/Mista-Tea/improved-weight/archive/master.zip" "improved-weight-master.zip" "0" "LowercaseOn" "${systemdir}/addons" "OVERWRITE" "ENGINES" "Garry's Mod;" "NOTGAMES" "https://github.com/Mista-Tea/improved-weight" "Weight tool but with more features") mod_info_improved_weight=(MOD "improved-weight" "Improved Weight" "https://github.com/Mista-Tea/improved-weight/archive/master.zip" "improved-weight-master.zip" "0" "LowercaseOn" "${systemdir}/addons" "OVERWRITE" "ENGINES" "Garry's Mod;" "NOTGAMES" "https://github.com/Mista-Tea/improved-weight" "Weight tool but with more features")
mod_info_improved_antinoclip=(MOD "improved-antinoclip" "Improved Antinoclip" "https://github.com/Mista-Tea/improved-antinoclip/archive/master.zip" "improved-antinoclip-master.zip" "0" "LowercaseOn" "${systemdir}/addons" "OVERWRITE" "ENGINES" "Garry's Mod;" "NOTGAMES" "https://github.com/Mista-Tea/improved-antinoclip" "Controls clipping trough an object") mod_info_improved_antinoclip=(MOD "improved-antinoclip" "Improved Antinoclip" "https://github.com/Mista-Tea/improved-antinoclip/archive/master.zip" "improved-antinoclip-master.zip" "0" "LowercaseOn" "${systemdir}/addons" "OVERWRITE" "ENGINES" "Garry's Mod;" "NOTGAMES" "https://github.com/Mista-Tea/improved-antinoclip" "Controls clipping trough an object")

6
lgsm/modules/query_gsquery.py

@ -11,7 +11,7 @@ import socket
import sys import sys
engine_types = ('protocol-valve', 'protocol-quake2', 'protocol-quake3', 'protocol-gamespy1', engine_types = ('protocol-valve', 'protocol-quake2', 'protocol-quake3', 'protocol-gamespy1',
'protocol-unreal2', 'ut3', 'minecraft', 'minecraftbe', 'jc2mp', 'mumbleping', 'soldat', 'teeworlds') 'protocol-unreal2', 'ut3', 'minecraft', 'minecraftbe', 'jc2m', 'mumbleping', 'soldat', 'teeworlds')
class gsquery: class gsquery:
@ -23,7 +23,7 @@ class gsquery:
idtech3query = ('protocol-quake3', 'iw3.0', 'ioquake3', 'qfusion') idtech3query = ('protocol-quake3', 'iw3.0', 'ioquake3', 'qfusion')
minecraftquery = ('minecraft', 'lwjgl2') minecraftquery = ('minecraft', 'lwjgl2')
minecraftbequery = ('minecraftbe') minecraftbequery = ('minecraftbe')
jc2mpquery = ('jc2mp') jc2mquery = ('jc2m')
mumblequery = ('mumbleping') mumblequery = ('mumbleping')
soldatquery = ('soldat') soldatquery = ('soldat')
twquery = ('teeworlds') twquery = ('teeworlds')
@ -40,7 +40,7 @@ class gsquery:
self.query_prompt_string = b'\xff\xff\xff\xffstatus\x00' self.query_prompt_string = b'\xff\xff\xff\xffstatus\x00'
elif self.argument.engine in self.idtech3query: elif self.argument.engine in self.idtech3query:
self.query_prompt_string = b'\xff\xff\xff\xffgetstatus' self.query_prompt_string = b'\xff\xff\xff\xffgetstatus'
elif self.argument.engine in self.jc2mpquery: elif self.argument.engine in self.jc2mquery:
self.query_prompt_string = b'\xFE\xFD\x09\x10\x20\x30\x40' self.query_prompt_string = b'\xFE\xFD\x09\x10\x20\x30\x40'
elif self.argument.engine in self.minecraftquery: elif self.argument.engine in self.minecraftquery:
self.query_prompt_string = b'\xFE\xFD\x09\x3d\x54\x1f\x93' self.query_prompt_string = b'\xFE\xFD\x09\x3d\x54\x1f\x93'

Loading…
Cancel
Save