Egg Repository

Pterodactyl Community Egg Repository

Cubic Odyssey

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!

Read Me

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.

PortDefault (example)
Server Port27015
Yolks
NameTag
Wine Latestghcr.io/ptero-eggs/yolks:wine_latest
Wine Stagingghcr.io/ptero-eggs/yolks:wine_staging
Variables and Startup

Startup Command

wine ./server/CubicOdysseyServer.exe -Port={{GAME_PORT}} -Password="{{SERVER_PASSWORD}}" -Gamemode={{GAMEMODE}} -MaxNumPlayers={{MAX_PLAYERS}}

Variables

Steam Username

A steam username of an account that owns the server tool is required

Environment Variable: STEAM_USER
Default Value:
User Viewable:
User Editable:
Steam Password

Steam User Password

Environment Variable: STEAM_PASS
Default Value:
User Viewable:
User Editable:
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 Variable: STEAM_AUTH
Default Value:
User Viewable:
User Editable:
Server Name

The name of the server, this will be shown on the server-list

Environment Variable: SERVER_NAME
Default Value: Cubic Odyssey Server
User Viewable:
User Editable:
Server Password

If enabled players must enter the password to join the server

Environment Variable: SERVER_PASSWORD
Default Value:
User Viewable:
User Editable:
Game port

This sets the port the server will bind to

Environment Variable: GAME_PORT
Default Value: 20000
User Viewable:
User Editable:
Max Players

This will set the maximum number of allowed players

Environment Variable: MAX_PLAYERS
Default Value: 20
User Viewable:
User Editable:
Gamemode

Sets the desired game mode, it's adventure by default, available options: adventure, creative

Environment Variable: GAMEMODE
Default Value: adventure
User Viewable:
User Editable:
Private Server

This will make the server private/public

Environment Variable: PRIVATE_SERVER
Default Value: FALSE
User Viewable:
User Editable:
Galaxy Seed

This sets the seed used by the server

Environment Variable: GALAXY_SEED
Default Value: 21945875634
User Viewable:
User Editable:
Auto Update

autoupdate Server on start or restart. 1 = on; 0 = off

Environment Variable: AUTO_UPDATE
Default Value: 1
User Viewable:
User Editable:
SRCDS_APPID

Environment Variable: SRCDS_APPID
Default Value: 3858450
User Viewable:
User Editable:
Windows Install

Required to always install and update the correct version of the game.

Environment Variable: WINDOWS_INSTALL
Default Value: 1
User Viewable:
User Editable:
Install Script
#!/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 "-----------------------------------------"
Installation Imageghcr.io/ptero-eggs/installers:debianInstallation Entrypointbash