Egg Repository

Pterodactyl Community Egg Repository

NeosVR

Neos VR is a metaverse engineered for the unknown! It’s one of the most versatile and feature rich metaverses for virtual reality, designed so everybody can find something interesting or useful to do in a social setting.

Read Me

Neos VR headless client

From https://neos.com

Developing Neos, short for neo spatium - new space, a highly collaborative virtual and augmented reality metaverse.

Notice

To use this egg you will need a beta code and a Steam account. Currently the beta code can only acquired by going to the Neos Patreon, subscribing to the "Gunter" level, and linking your Patreon to Discord. Then you will be able to see the #headless-client channel and the password will be pinned in the command after -betapassword. The account will also need to have Neos VR in its library. You can do this by running app_license_request 740250 in steamcmd if you have never installed Neos VR on this Steam account. For more information related to configuration go here: https://wiki.neos.com/Headless_Client/Server

This game does not require any port forwarding, but instead uses UDP NAT hole punching (and/or relay) on a random port. You can force a certain port in the config for direct connections, but most communcation is done via NAT hole punch using LiteNetLib (LNL).

Yolks
NameTag
Monoghcr.io/ptero-eggs/yolks:mono_latest
Variables
NameDescriptionEnvironment VariableDefault ValueUser ViewableUser Editable
Steam Account UserThe username for your Steam account.STEAM_USERYesYes
Steam Account PasswordThe password for your Steam account.STEAM_PASSYesYes
Steam Account Token/CodeThe Steam Guard code or Login Token emailed to you.STEAM_AUTHYesYes
Enable Mod LoaderSee: https://github.com/neos-modding-group/NeosModLoader for more information on Neos Mod Loader.ENABLE_MODLOADERfalseYesYes
Beta PasswordThis is the "Beta Password" that is only acquired by going to the Neos Patreon, subscribing to the "Gunter" level, and linking your Patreon to Discord. Then you will be able to see the #headless-client channel and the password will be pinned in the command after -betapassword.SRCDS_BETAPASSYesYes
Beta branch nameSRCDS_BETAIDheadless-clientNoNo
Auto updateAuto update the server on startupAUTO_UPDATE1YesYes
Steam App IDSRCDS_APPID740250NoNo
Install Script
#!/bin/bash
# steamcmd Base Installation Script
#
# Server Files: /mnt/server
# Image to install with is 'ghcr.io/ptero-eggs/installers:debian'


## 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
./steamcmd.sh +force_install_dir /mnt/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ "${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 ## other flags may be needed depending on install. looking at you cs 1.6

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

## add below your custom commands if needed

## create default config
mkdir -p /mnt/server/Config
rm -rf /mnt/server/Config/Config.json
curl -sSL -o /mnt/server/Config/Config.json https://raw.githubusercontent.com/ptero-eggs/game-eggs/main/neosvr/Config.json

## install end
echo "-----------------------------------------"
echo "Installation completed..."
echo "-----------------------------------------"