Skip to content

feat(newserver): add Velocity Proxy #3904

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Sep 22, 2022
Merged
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
179 changes: 179 additions & 0 deletions lgsm/config-default/config-lgsm/vpmcserver/_default.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,179 @@
##################################
######## 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
javaram="1024" # -Xmx$1024M

## Server Parameters | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
startparameters=""

## Release Settings | https://docs.linuxgsm.com/game-servers/minecraft#release-settings
# Version (latest|3.1.1)
mcversion="latest"

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

# Discord Alerts | https://docs.linuxgsm.com/alerts/discord
discordalert="off"
discordwebhook="webhook"

# Email Alerts | https://docs.linuxgsm.com/alerts/email
emailalert="off"
email="[email protected]"
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"

# Mailgun Email Alerts | https://docs.linuxgsm.com/alerts/mailgun
mailgunalert="off"
mailgunapiregion="us"
mailguntoken="accesstoken"
mailgundomain="example.com"
mailgunemailfrom="[email protected]"
mailgunemail="[email protected]"

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

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

## 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
# 12: shutdown
stopmode="12"

## Query mode
# 1: session only
# 2: gamedig (gsquery fallback)
# 3: gamedig
# 4: gsquery
# 5: tcp
querymode="2"
querytype="minecraft"

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

## Game Server Details
# Do not edit
gamename="Velocity Proxy"
engine="lwjgl2"
glibc="null"

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

## Game Server Directories
systemdir="${serverfiles}"
executabledir="${serverfiles}"
preexecutable="java -Xmx${javaram}M -XX:+UseG1GC -XX:G1HeapRegionSize=4M -XX:+UnlockExperimentalVMOptions -XX:+ParallelRefProcEnabled -XX:+AlwaysPreTouch -XX:MaxInlineLevel=15 -jar"
executable="./velocity.jar"
servercfgdir="${systemdir}"
servercfg="velocity.toml"
servercfgdefault="velocity.toml"
servercfgfullpath="${servercfgdir}/${servercfg}"

## Backup Directory
backupdir="${lgsmdir}/backup"

## Logging Directories
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"
1 change: 1 addition & 0 deletions lgsm/data/almalinux-8.csv
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,7 @@ ut99
vh,glibc-devel
vs
vints,mono-complete
vpmc,java-11-openjdk
wet
wf
wmc,java-11-openjdk
Expand Down
1 change: 1 addition & 0 deletions lgsm/data/centos-8.csv
Original file line number Diff line number Diff line change
Expand Up @@ -118,6 +118,7 @@ ut99
vh,glibc-devel
vs
vints,mono-complete
vpmc,java-11-openjdk
wet
wf
wmc,java-11-openjdk
Expand Down
1 change: 1 addition & 0 deletions lgsm/data/debian-10.csv
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,7 @@ ut99
vh,libc6-dev
vs
vints,mono-complete
vpmc,openjdk-11-jre
wet
wf
wmc,openjdk-11-jre
Expand Down
1 change: 1 addition & 0 deletions lgsm/data/debian-11.csv
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,7 @@ ut99
vh,libc6-dev
vs
vints,mono-complete
vpmc,openjdk-11-jre
wet
wf
wmc,openjdk-17-jre
Expand Down
1 change: 1 addition & 0 deletions lgsm/data/rhel-7.csv
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,7 @@ ut99
vh,glibc-devel
vs
vints,mono-complete
vpmc,java-11-openjdk
wet
wf
wmc,java-11-openjdk
Expand Down
1 change: 1 addition & 0 deletions lgsm/data/rhel-8.csv
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,7 @@ ut99
vh,glibc-devel
vs
vints,mono-complete
vpmc,java-11-openjdk
wet
wf
wmc,java-11-openjdk
Expand Down
1 change: 1 addition & 0 deletions lgsm/data/rocky-8.csv
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,7 @@ ut99
vh,glibc-devel
vs
vints,mono-complete
vpmc,java-11-openjdk
wet
wf
wmc,java-11-openjdk
Expand Down
1 change: 1 addition & 0 deletions lgsm/data/serverlist.csv
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,7 @@ ut3,ut3server,Unreal Tournament 3
ut99,ut99server,Unreal Tournament 99
vh,vhserver,Valheim
vints,vintsserver,Vintage Story
vpmc,vpmcserver,Velocity Proxy MC
vs,vsserver,Vampire Slayer
wet,wetserver,Wolfenstein: Enemy Territory
wf,wfserver,Warfork
Expand Down
1 change: 1 addition & 0 deletions lgsm/data/ubuntu-18.04.csv
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,7 @@ ut99
vh,libc6-dev
vs
vints,mono-complete
vpmc,openjdk-11-jre
wet
wf
wmc,openjdk-11-jre
Expand Down
1 change: 1 addition & 0 deletions lgsm/data/ubuntu-20.04.csv
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,7 @@ ut99
vh,libc6-dev
vs
vints,mono-complete
vpmc,openjdk-11-jre
wet
wf
wmc,openjdk-17-jre
Expand Down
1 change: 1 addition & 0 deletions lgsm/data/ubuntu-21.04.csv
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,7 @@ ut99
vh,libc6-dev
vs
vints,mono-complete
vpmc,openjdk-11-jre
wet
wf
wmc,openjdk-17-jre
Expand Down
1 change: 1 addition & 0 deletions lgsm/data/ubuntu-21.10.csv
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,7 @@ ut99
vh,libc6-dev
vs
vints,mono-complete
vpmc,openjdk-11-jre
wet
wf
wmc,openjdk-17-jre
Expand Down
1 change: 1 addition & 0 deletions lgsm/data/ubuntu-22.04.csv
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,7 @@ ut99
vh,libc6-dev
vs
vints,mono-complete
vpmc,openjdk-11-jre
wet
wf
wmc,openjdk-17-jre
Expand Down
2 changes: 2 additions & 0 deletions lgsm/functions/command_stop.sh
Original file line number Diff line number Diff line change
Expand Up @@ -231,6 +231,8 @@ fn_stop_graceful_select() {
fn_stop_graceful_avorion
elif [ "${stopmode}" == "11" ]; then
fn_stop_graceful_cmd "end" 30
elif [ "${stopmode}" == "12" ]; then
fn_stop_graceful_cmd "shutdown" 30
fi
}

Expand Down
2 changes: 1 addition & 1 deletion lgsm/functions/command_update.sh
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ elif [ "${shortname}" == "mc" ]; then
update_minecraft.sh
elif [ "${shortname}" == "mcb" ]; then
update_minecraft_bedrock.sh
elif [ "${shortname}" == "pmc" ] || [ "${shortname}" == "wmc" ]; then
elif [ "${shortname}" == "pmc" ] || [ "${shortname}" == "vpmc" ] || [ "${shortname}" == "wmc" ]; then
update_papermc.sh
elif [ "${shortname}" == "mumble" ]; then
update_mumble.sh
Expand Down
18 changes: 18 additions & 0 deletions lgsm/functions/info_game.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2190,6 +2190,22 @@ fn_info_game_vints() {
configip=${configip:-"0.0.0.0"}
}

fn_info_game_vpmc() {
if [ ! -f "${servercfgfullpath}" ]; then
servername="${unavailable}"
configip="0.0.0.0"
port="25577"
else
servername=$(sed -nr 's/^motd\s*=\s*"(.*)"/\1/p' "${servercfgfullpath}")
bindaddress=$(sed -nr 's/^bind\s*=\s*"([0-9.:]+)"/\1/p' "${servercfgfullpath}")
configip=$(echo "${bindaddress}" | cut -d ':' -f 1)
port=$(echo "${bindaddress}" | cut -d ':' -f 2)

servername=${servername:-"NOT SET"}
fi
queryport=${port:-"25577"}
}

fn_info_game_wet() {
# Config
if [ ! -f "${servercfgfullpath}" ]; then
Expand Down Expand Up @@ -2456,6 +2472,8 @@ elif [ "${shortname}" == "vh" ]; then
fn_info_game_vh
elif [ "${shortname}" == "vints" ]; then
fn_info_game_vints
elif [ "${shortname}" == "vpmc" ]; then
fn_info_game_vpmc
elif [ "${shortname}" == "wet" ]; then
fn_info_game_wet
elif [ "${shortname}" == "wf" ]; then
Expand Down
11 changes: 10 additions & 1 deletion lgsm/functions/info_messages.sh
Original file line number Diff line number Diff line change
Expand Up @@ -687,7 +687,7 @@ fn_info_message_ports() {
echo -e "ss -tuplwn | grep AvorionServer"
elif [ "${shortname}" == "bf1942" ]; then
echo -e "ss -tuplwn | grep bf1942_lnxded"
elif [ "${shortname}" == "mc" ] || [ "${shortname}" == "pmc" ] || [ "${shortname}" == "rw" ] || [ "${shortname}" == "wmc" ]; then
elif [ "${shortname}" == "mc" ] || [ "${shortname}" == "pmc" ] || [ "${shortname}" == "rw" ] || [ "${shortname}" == "vpmc" ] || [ "${shortname}" == "wmc" ]; then
echo -e "ss -tuplwn | grep java"
elif [ "${shortname}" == "terraria" ]; then
echo -e "ss -tuplwn | grep Main"
Expand Down Expand Up @@ -1610,6 +1610,13 @@ fn_info_message_vints() {
} | column -s $'\t' -t
}

fn_info_message_vpmc() {
{
fn_port "header"
fn_port "Game" port tcp
} | column -s $'\t' -t
}

fn_info_message_wet() {
{
fn_port "header"
Expand Down Expand Up @@ -1798,6 +1805,8 @@ fn_info_message_select_engine() {
fn_info_message_ut2k4
elif [ "${shortname}" == "ut3" ]; then
fn_info_message_ut3
elif [ "${shortname}" == "vpmc" ]; then
fn_info_message_vpmc
elif [ "${shortname}" == "wet" ]; then
fn_info_message_wet
elif [ "${shortname}" == "wf" ]; then
Expand Down
2 changes: 1 addition & 1 deletion lgsm/functions/install_server_files.sh
Original file line number Diff line number Diff line change
Expand Up @@ -222,7 +222,7 @@ elif [ "${shortname}" == "mcb" ]; then
elif [ "${shortname}" == "pmc" ]; then
install_eula.sh
update_papermc.sh
elif [ "${shortname}" == "wmc" ]; then
elif [ "${shortname}" == "wmc" ]||[ "${shortname}" == "vpmc" ]; then
update_papermc.sh
elif [ "${shortname}" == "mumble" ]; then
update_mumble.sh
Expand Down
2 changes: 2 additions & 0 deletions lgsm/functions/update_papermc.sh
Original file line number Diff line number Diff line change
Expand Up @@ -122,6 +122,8 @@ remotelocation="papermc.io"

if [ "${shortname}" == "pmc" ]; then
paperproject="paper"
elif [ "${shortname}" == "vpmc" ]; then
paperproject="velocity"
elif [ "${shortname}" == "wmc" ]; then
paperproject="waterfall"
fi
Expand Down