Skip to content

Veloren

Veloren is a multiplayer voxel RPG written in Rust. It is inspired by games such as Cube World, Legend of Zelda: Breath of the Wild, Dwarf Fortress and Minecraft.

egg-veloren.json

updated

Ports

Add an allocation on the node for each port.

  • Game 14004
  • Metrics 14005

Install

Installer image
ghcr.io/ptero-eggs/installers:debian
Install script
40 lines

Image

  • Ubuntu ghcr.io/ptero-eggs/yolks:ubuntu_24.04

Startup

The Panel runs this command to start the server. It replaces each variable in the command with the value of that variable.

3 variables

Startup command

./veloren-server-cli
  • weekly = download the latest weekly build. nightly = download the latest nightly build.

    VERSIONUsers can edit

    required|string|in:weekly,nightly

  • The name your server will be displaying

    SERVER_NAMEUsers can edit

    required|string|max:64

  • Game port +1

    METRICS_PORTUsers can see

    required|integer

Wings

Stop command
shutdown graceful 10
Running when the console shows
Server is ready to accept connections

Files Wings edits

Wings sets these values in these files before each start.

userdata/server/server_config/settings.ron file

metrics_address
metrics_address: "0.0.0.0:{{server.build.env.METRICS_PORT}}",
server_name
server_name: "{{server.build.env.SERVER_NAME}}",

Readme

Veloren

From their Site

Veloren is a multiplayer voxel RPG written in Rust. It is inspired by games such as Cube World, Legend of Zelda: Breath of the Wild, Dwarf Fortress and Minecraft.

Veloren is fully open-source, licensed under GPL 3. It uses original graphics, musics and other assets created by its community. Being contributor-driven, its development community and user community is one and the same: developers, players, artists and musicians come together to develop the game.

Server Ports

Due to there new config file you have to set the game port manual in the config file!!

/home/container/userdata/server/server_config/settings.ron

  • Line 4: address: "[::]:14004", -> address: "[::]:<port>",
  • Line 7: address: "0.0.0.0:14004",-> address: "0.0.0.0:<port>",

Ports required to run the server in a table format.

Port default
Game 14004
Metrics 14005

Mods/Plugins may require ports to be added to the server

Changes

  1. veloren-update (#280)

    · Red Banana · 8f02f6d

  2. Validate and update embedded URLs

    · Daniel Barton · bf9f3cb

  3. SteamCMD + Other fixes

    · yesBad · edbf925

  4. Add standalone games

    · Daniel Barton · 74c706a

All changes on GitHub

Problem with this egg?

Open an issue on GitHub. Include your Panel and Wings versions.

Install script 40 lines bash in ghcr.io/ptero-eggs/installers:debian Show
#!/bin/bash

apt update
apt install -y curl wget unzip git jq

mkdir -p /mnt/server
cd /mnt/server

ARCH=$([[ "$(uname -m)" == "x86_64" ]] && echo "x86_64" || echo "aarch64")

if [ -z "${VERSION}" ] || [ "${VERSION}" == "weekly" ]; then
    echo -e "weekly"
    DOWNLOAD_URL=https://download.veloren.net/latest/linux/${ARCH}/weekly
elif [ "${VERSION}" == "nightly" ]; then
    echo -e "nightly"
    DOWNLOAD_URL=https://download.veloren.net/latest/linux/${ARCH}/nightly
else
    echo -e  "something went wrong"
fi

echo -e "download url: ${DOWNLOAD_URL}"
wget ${DOWNLOAD_URL} -O files.zip

unzip -o files.zip
rm files.zip

chmod +x veloren-server-cli

## generate config because there is no better way to get it.
mkdir -p /mnt/server/userdata/server/server_config/
if [ ! -f /mnt/server/userdata/server/server_config/settings.ron ]; then
    wget https://raw.githubusercontent.com/ptero-eggs/game-eggs/main/veloren/settings.ron -O /tmp/settings.ron
    sed "s/14004/${SERVER_PORT}/g" /tmp/settings.ron > /mnt/server/userdata/server/server_config/settings.ron
    rm /tmp/settings.ron
    echo "config file pulled"
fi

echo "-----------------------------------------"
echo "Installation completed..."
echo "-----------------------------------------"