Cubic Odyssey
gamesEmbark on a galactic journey in Cubic Odyssey, an open-world adventure where you explore vibrant planets, craft tools, build vehicles, and fight the Red Darkness. Uncover ancient mysteries, and shape a universe full of life, danger, and limitless possibilities!
README
Cubic Odyssey
Steam Game Page
Embark on a galactic journey in Cubic Odyssey, an open-world adventure where you explore vibrant planets, craft tools, build vehicles, and fight the Red Darkness. Uncover ancient mysteries, and shape a universe full of life, danger, and limitless possibilities!
Requirements
You must have a Steam account that owns the Cubic Odyssey Dedicated Server tool (free) to run the server.
Server Port
Cubic Odyssey requires one port. You can use any available port.
| Port | Default (example) |
|---|---|
| Server Port | 27015 |
Docker Images (2)
| Name | Image |
|---|---|
Wine Latest | ghcr.io/ptero-eggs/yolks:wine_latest |
Wine Staging | ghcr.io/ptero-eggs/yolks:wine_staging |
Startup Command
wine ./server/CubicOdysseyServer.exe -Port={{GAME_PORT}} -Password="{{SERVER_PASSWORD}}" -Gamemode={{GAMEMODE}} -MaxNumPlayers={{MAX_PLAYERS}} Variables (13)
Steam Username
A steam username of an account that owns the server tool is required
- Environment:
STEAM_USER- Default:
None- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string
Steam Password
Steam User Password
- Environment:
STEAM_PASS- Default:
None- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string
Steam Auth Code
Steam Auth Code required if the Steam Account is using Steam Auth. Slow installs will cause the code to expire before it can be used.
- Environment:
STEAM_AUTH- Default:
None- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string
Server Name
The name of the server, this will be shown on the server-list
- Environment:
SERVER_NAME- Default:
Cubic Odyssey Server- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|string
Server Password
If enabled players must enter the password to join the server
- Environment:
SERVER_PASSWORD- Default:
None- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
nullable|string
Game port
This sets the port the server will bind to
- Environment:
GAME_PORT- Default:
20000- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|numeric
Max Players
This will set the maximum number of allowed players
- Environment:
MAX_PLAYERS- Default:
20- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|string
Gamemode
Sets the desired game mode, it's adventure by default, available options: adventure, creative
- Environment:
GAMEMODE- Default:
adventure- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|in:adventure,creative
Private Server
This will make the server private/public
- Environment:
PRIVATE_SERVER- Default:
FALSE- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|in:TRUE,FALSE
Galaxy Seed
This sets the seed used by the server
- Environment:
GALAXY_SEED- Default:
21945875634- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|string|max:11
Auto Update
autoupdate Server on start or restart. 1 = on; 0 = off
- Environment:
AUTO_UPDATE- Default:
1- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|boolean
SRCDS_APPID
- Environment:
SRCDS_APPID- Default:
3858450- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|string|in:3858450
Windows Install
Required to always install and update the correct version of the game.
- Environment:
WINDOWS_INSTALL- Default:
1- User Viewable:
- ❌
- User Editable:
- ❌
- Rules:
required|boolean
Installation Script
ghcr.io/ptero-eggs/installers:debianbash#!/bin/bash
## just in case someone removed the defaults.
if [[ "${STEAM_USER}" == "" ]] || [[ "${STEAM_PASS}" == "" ]]; then
echo -e "steam user is not set.\n"
echo -e "Using anonymous user.\n"
STEAM_USER=anonymous
STEAM_PASS=""
STEAM_AUTH=""
else
echo -e "user set to ${STEAM_USER}"
fi
## download and install steamcmd
cd /tmp
mkdir -p /mnt/server/steamcmd
curl -sSL -o steamcmd.tar.gz https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
tar -xzvf steamcmd.tar.gz -C /mnt/server/steamcmd
mkdir -p /mnt/server/steamapps # Fix steamcmd disk write error when this folder is missing
cd /mnt/server/steamcmd
# SteamCMD fails otherwise for some reason, even running as root.
# This is changed at the end of the install process anyways.
chown -R root:root /mnt
export HOME=/mnt/server
## install game using steamcmd and request app license
./steamcmd.sh +force_install_dir /mnt/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} +app_license_request 3858450 $( [[ "${WINDOWS_INSTALL}" == "1" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s "-beta ${SRCDS_BETAID}" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s "-betapassword ${SRCDS_BETAPASS}" ) ${INSTALL_FLAGS} validate +quit
## set up 32 bit libraries
mkdir -p /mnt/server/.steam/sdk32
cp -v linux32/steamclient.so ../.steam/sdk32/steamclient.so
## set up 64 bit libraries
mkdir -p /mnt/server/.steam/sdk64
cp -v linux64/steamclient.so ../.steam/sdk64/steamclient.so
echo "-----------------------------------------"
echo "Installation completed..."
echo "-----------------------------------------"