Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
198 changes: 198 additions & 0 deletions lgsm/config-default/config-lgsm/rsdwserver/_default.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,198 @@
##################################
######## 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
# Most server settings (servername, passwords, owner id, world name) are read
# by the server from DedicatedServer.ini, NOT command-line arguments.
# Edit them in: serverfiles/RSDragonwilds/Saved/Config/LinuxServer/DedicatedServer.ini
servername="LinuxGSM"
port="7777"

## Server Parameters | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
## Game Server Docs | https://dragonwilds.runescape.wiki/w/Dedicated_Servers
startparameters="-Port=${port} -log"

#### 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"

# ntfy Alerts | https://docs.linuxgsm.com/alerts/ntfy
ntfyalert="off"
ntfytopic="LinuxGSM"
ntfyserver="https://ntfy.sh"
ntfytoken=""
ntfyusername=""
ntfypassword=""
ntfypriority=""
ntfytags=""

# 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 all".
telegramapi="api.telegram.org"
telegramalert="off"
telegramtoken="accesstoken"
telegramchatid=""
telegramthreadid=""
telegramsilentnotification="false"
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="4019830"
steamcmdforcewindows="no"
# SteamCMD Branch | https://docs.linuxgsm.com/steamcmd/branch
branch=""
betapassword=""
# Master Server | https://docs.linuxgsm.com/steamcmd/steam-master-server
steammaster="false"

## 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="1"
querytype=""

## Console type
consoleverbose="yes"
consoleinteract="no"

## Game Server Details
# Do not edit
gamename="RuneScape: Dragonwilds"
engine="unreal5"
glibc="2.17"

#### Directories ####
# Edit with care

## Game Server Directories
systemdir="${serverfiles}/RSDragonwilds"
executabledir="${systemdir}/Binaries/Linux"
executable="./RSDragonwildsServer-Linux-Shipping"
servercfgdir="${systemdir}/Saved/Config/LinuxServer"
servercfg="DedicatedServer.ini"
servercfgdefault="DedicatedServer.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"
1 change: 1 addition & 0 deletions lgsm/data/serverlist.csv
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,7 @@ ql,qlserver,Quake Live,ubuntu-24.04
qw,qwserver,Quake World,ubuntu-24.04
ricochet,ricochetserver,Ricochet,ubuntu-24.04
ro,roserver,Red Orchestra: Ostfront 41-45,ubuntu-24.04
rsdw,rsdwserver,RuneScape: Dragonwilds,ubuntu-24.04
rtcw,rtcwserver,Return to Castle Wolfenstein,ubuntu-24.04
rust,rustserver,Rust,ubuntu-24.04
rw,rwserver,Rising World,ubuntu-24.04
Expand Down
2 changes: 2 additions & 0 deletions lgsm/modules/check_system_requirements.sh
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,8 @@ elif [ "${shortname}" == "pvr" ]; then
ramrequirementgb="1"
elif [ "${shortname}" == "pz" ]; then
ramrequirementgb="3"
elif [ "${shortname}" == "rsdw" ]; then
ramrequirementgb="2"
elif [ "${shortname}" == "rust" ]; then
ramrequirementgb="9"
elif [ "${shortname}" == "sdtd" ]; then
Expand Down
24 changes: 24 additions & 0 deletions lgsm/modules/info_game.sh
Original file line number Diff line number Diff line change
Expand Up @@ -1799,6 +1799,28 @@ fn_info_game_ro() {
unreal2queryport="$((port + 1))" # Unreal2 Query Port
}

# Config Type: ini
# Parameters: true
# Comment: ; or #
# Example: ServerName=SERVERNAME
# Filetype: ini
fn_info_game_rsdw() {
if [ -f "${servercfgfullpath}" ]; then
fn_info_game_ini "adminpassword" "AdminPassword"
fn_info_game_ini "ownerid" "OwnerId"
fn_info_game_ini "servername" "ServerName"
fn_info_game_ini "serverpassword" "WorldPassword"
fn_info_game_ini "worldname" "DefaultWorldName"
fi
adminpassword="${adminpassword:-"NOT SET"}"
ownerid="${ownerid:-"NOT SET"}"
port="${port:-"0"}"
queryport="${port:-"0"}"
servername="${servername:-"NOT SET"}"
serverpassword="${serverpassword:-"NOT SET"}"
worldname="${worldname:-"NOT SET"}"
}

# Config Type: QuakeC
# Comment: // or /* */
# Example: set sv_hostname "SERVERNAME"
Expand Down Expand Up @@ -2427,6 +2449,8 @@ elif [ "${shortname}" == "qw" ]; then
fn_info_game_qw
elif [ "${shortname}" == "ro" ]; then
fn_info_game_ro
elif [ "${shortname}" == "rsdw" ]; then
fn_info_game_rsdw
elif [ "${shortname}" == "rtcw" ]; then
fn_info_game_rtcw
elif [ "${shortname}" == "rust" ]; then
Expand Down
18 changes: 17 additions & 1 deletion lgsm/modules/info_messages.sh
Original file line number Diff line number Diff line change
Expand Up @@ -719,7 +719,7 @@ fn_info_messages_ports_edit() {

startparameterslocation="${red}UNKNOWN${default}"
# engines/games that require editing in the config file.
local ports_edit_array=("ac" "arma3" "armar" "bo" "bt" "ct" "dst" "eco" "idtech2" "idtech3" "idtech3_ql" "jc2" "jc3" "lwjgl2" "mcb" "nec" "pc" "pc2" "prism3d" "pz" "qw" "refractor" "renderware" "rw" "sb" "sdtd" "st" "stn" "ts3" "tw" "terraria" "unreal" "unreal2" "unreal3" "vints" "xnt" "wurm")
local ports_edit_array=("ac" "arma3" "armar" "bo" "bt" "ct" "dst" "eco" "idtech2" "idtech3" "idtech3_ql" "jc2" "jc3" "lwjgl2" "mcb" "nec" "pc" "pc2" "prism3d" "pz" "qw" "refractor" "renderware" "rsdw" "rw" "sb" "sdtd" "st" "stn" "ts3" "tw" "terraria" "unreal" "unreal2" "unreal3" "vints" "xnt" "wurm")
for port_edit in "${ports_edit_array[@]}"; do
if [ "${shortname}" == "ut3" ]; then
startparameterslocation="${servercfgdir}/UTWeb.ini"
Expand Down Expand Up @@ -1412,6 +1412,20 @@ fn_info_messages_ro() {
} | column -s $'\t' -t
}

fn_info_messages_rsdw() {
{
fn_port "header"
fn_port "Game" port udp
} | column -s $'\t' -t
echo -e ""
echo -e "${bold}${lightgreen}${gamename} Game Settings${default}"
fn_messages_separator
{
echo -e "${lightblue}World name:\t${default}${worldname}"
echo -e "${lightblue}Owner ID:\t${default}${ownerid}"
} | column -s $'\t' -t
}

fn_info_messages_rtcw() {
{
fn_port "header"
Expand Down Expand Up @@ -1914,6 +1928,8 @@ fn_info_messages_select_engine() {
fn_info_messages_qw
elif [ "${shortname}" == "ro" ]; then
fn_info_messages_ro
elif [ "${shortname}" == "rsdw" ]; then
fn_info_messages_rsdw
elif [ "${shortname}" == "rtcw" ]; then
fn_info_messages_rtcw
elif [ "${shortname}" == "samp" ]; then
Expand Down