diff --git a/server/MMS.container b/server/MMS.container index 61d955c..045b7da 100644 --- a/server/MMS.container +++ b/server/MMS.container @@ -1,12 +1,14 @@ [Unit] Description=Modded Minecraft Server via Podman managed by Systemd Documentation=https://git.nanody.de/anonoe/MMS +Wants=velocity.service +After=velocity.service [Container] Image=git.nanody.de/anonoe/jre-alpine:latest AutoUpdate=registry -PublishPort=25565:25565/tcp -PublishPort=24454:24454/udp +PublishPort=25566:25565/tcp +PublishPort=24455:24455/udp UserNS=keep-id Mount=type=bind,src=/PATH/TO/server,dst=/mnt/server Mount=type=bind,src=/PATH/TO/rcon,dst=/mnt/rcon diff --git a/server/compose.yml b/server/compose.yml deleted file mode 100644 index 4041903..0000000 --- a/server/compose.yml +++ /dev/null @@ -1,14 +0,0 @@ -version: '3.8' -services: - jre-hl-mc-MMS: - image: alp-jre-21-hl:latest - volumes: - - ./server:/mnt/server - working_dir: /mnt/server - command: ["java", "-Xmx4G", "-Xms1G", "-jar", "minecraft_server.jar", "--nogui"] - ports: - - "25565:25565/tcp" # minecraft - - "24454:24454/udp" # simple voicechat - tty: true - # restart: unless-stopped - diff --git a/server/podman-run.sh b/server/podman-run.sh deleted file mode 100755 index f9125ad..0000000 --- a/server/podman-run.sh +++ /dev/null @@ -1,12 +0,0 @@ -podman run \ - --rm \ - --name jre-hl-mc-MMS \ - --tty \ - --interactive \ - --publish 25565:25565/tcp \ - --publish 24454:24454/udp \ - --volume ./server:/mnt/server \ - --workdir /mnt/server \ -alp-jre-21-hl:latest \ -java -Xmx4G -Xms1G -jar minecraft_server.jar --nogui - diff --git a/server/server/config/FabricProxy-Lite.toml b/server/server/config/FabricProxy-Lite.toml new file mode 100644 index 0000000..22a0716 --- /dev/null +++ b/server/server/config/FabricProxy-Lite.toml @@ -0,0 +1,4 @@ +hackOnlineMode = true +hackEarlySend = false +hackMessageChain = false +secret = "PUT SOMETHING HERE" diff --git a/server/server/config/voicechat/voicechat-server.properties b/server/server/config/voicechat/voicechat-server.properties index b3372b2..cc9d231 100644 --- a/server/server/config/voicechat/voicechat-server.properties +++ b/server/server/config/voicechat/voicechat-server.properties @@ -6,7 +6,7 @@ # Set this to '-1' to use the same port number that is used by the Minecraft server. # However, it is strongly recommended NOT to use the same port number because UDP on # it is also used by default for the server query. Doing so may crash the server! -port=24454 +port=24455 # The server IP address to bind the voice chat to # Leave blank to use the 'server-ip' property from the 'server.properties' config file # To bind to the wildcard IP address, use '*' diff --git a/server/server/mods/FabricProxy-Lite-2.6.0.jar b/server/server/mods/FabricProxy-Lite-2.6.0.jar new file mode 100644 index 0000000..6bd4285 Binary files /dev/null and b/server/server/mods/FabricProxy-Lite-2.6.0.jar differ diff --git a/server/server/mods/crossstitch-0.1.6.jar b/server/server/mods/crossstitch-0.1.6.jar new file mode 100644 index 0000000..5fc5b3c Binary files /dev/null and b/server/server/mods/crossstitch-0.1.6.jar differ diff --git a/server/velocity.container b/server/velocity.container new file mode 100644 index 0000000..dfd3b7d --- /dev/null +++ b/server/velocity.container @@ -0,0 +1,23 @@ +[Unit] +Description=Minecraft Proxy Velocity via Podman managed by Systemd +Documentation=https://docs.papermc.io/velocity/ + +[Container] +Image=git.nanody.de/anonoe/jre-alpine:latest +AutoUpdate=registry +PublishPort=25565:25565/tcp +PublishPort=24454:24454/udp +UserNS=keep-id +Mount=type=bind,src=PATH/TO/velocity,dst=/mnt/server +WorkingDir=/mnt/server +PodmanArgs=--tty --interactive +Exec=java -Xms500M -Xmx500M -XX:+UseG1GC -XX:G1HeapRegionSize=4M -XX:+UnlockExperimentalVMOptions -XX:+ParallelRefProcEnabled -XX:+AlwaysPreTouch -XX:MaxInlineLevel=15 -jar velocity.jar + +[Service] +SuccessExitStatus=0 143 +TimeoutStartSec=480 +TimeoutStopSec=480 + +[Install] +# Start by default on boot +WantedBy=default.target diff --git a/server/velocity/plugins/LuckPerms-Velocity-5.5.17.jar b/server/velocity/plugins/LuckPerms-Velocity-5.5.17.jar new file mode 100644 index 0000000..33515fe Binary files /dev/null and b/server/velocity/plugins/LuckPerms-Velocity-5.5.17.jar differ diff --git a/server/velocity/plugins/voicechat-velocity-2.6.4.jar b/server/velocity/plugins/voicechat-velocity-2.6.4.jar new file mode 100644 index 0000000..e459723 Binary files /dev/null and b/server/velocity/plugins/voicechat-velocity-2.6.4.jar differ diff --git a/server/velocity/plugins/voicechat/voicechat-proxy.properties b/server/velocity/plugins/voicechat/voicechat-proxy.properties new file mode 100644 index 0000000..5b78ba4 --- /dev/null +++ b/server/velocity/plugins/voicechat/voicechat-proxy.properties @@ -0,0 +1,7 @@ +# Simple Voice Chat proxy config v2.6.4 + +# The port number to use for the voice chat communication. +# Audio packets are always transmitted via the UDP protocol on the port number +# specified here, independently of other networking used for the game server. +# Set this to '-1' to use the same port number as the one used by the proxy. +port=24454 diff --git a/server/velocity/velocity.jar b/server/velocity/velocity.jar new file mode 120000 index 0000000..7c32d0d --- /dev/null +++ b/server/velocity/velocity.jar @@ -0,0 +1 @@ +velocity-3.4.0-SNAPSHOT-558.jar \ No newline at end of file diff --git a/server/velocity/velocity.toml b/server/velocity/velocity.toml new file mode 100644 index 0000000..0e69f09 --- /dev/null +++ b/server/velocity/velocity.toml @@ -0,0 +1,39 @@ +# Config version. Do not change this +config-version = "2.7" + +# What should be the MOTD? This gets displayed when the player adds your server to +# their server list. Only MiniMessage format is accepted. +motd = "<#09add3>The Server is down (╯°□°)╯︵ ┻━┻" + +# Should we forward IP addresses and other data to backend servers? +# Available options: +# - "none": No forwarding will be done. All players will appear to be connecting +# from the proxy and will have offline-mode UUIDs. +# - "legacy": Forward player IPs and UUIDs in a BungeeCord-compatible format. Use this +# if you run servers using Minecraft 1.12 or lower. +# - "bungeeguard": Forward player IPs and UUIDs in a format supported by the BungeeGuard +# plugin. Use this if you run servers using Minecraft 1.12 or lower, and are +# unable to implement network level firewalling (on a shared host). +# - "modern": Forward player IPs and UUIDs as part of the login process using +# Velocity's native forwarding. Only applicable for Minecraft 1.13 or higher. +player-info-forwarding-mode = "modern" + +[servers] +# Configure your servers here. Each key represents the server's name, and the value +# represents the IP address of the server to connect to. +#lobby = "127.0.0.1:30066" +#factions = "127.0.0.1:30067" +#minigames = "127.0.0.1:30068" +mms = "host.containers.internal:25566" +# In what order we should try servers when a player logs in or is kicked from a server. +try = [ + "mms" +] + +[forced-hosts] +"nanody.de" = [ + "mms" +] +"mms.nanody.de" = [ + "mms" +]