Skip to content

Nuclear Option

Fly near-future aircraft with immersive physics on intense battlefields, facing land, air and sea threats. Wage war against AI or other players with an array of potent weapons. Wield tactical and strategic nuclear weapons, capable of annihilating anything in their path.

egg-nuclear-option.json

updated

Ports

Add an allocation on the node for each port.

  • Game 27015
  • Query 7777

Install

Installer image
ghcr.io/ptero-eggs/installers:debian
Steam app
3930080
Steam login
not required
Install script
67 lines

Image

  • SteamCMD, Debian ghcr.io/ptero-eggs/steamcmd:debian

Startup

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

7 variables

Startup command

export LD_LIBRARY_PATH="$(pwd)/linux64:$LD_LIBRARY_PATH"; ./NuclearOptionServer.x86_64
  • Steam App ID used for installation and updates. Rarely needs to be changed.

    SRCDS_APPIDUsers cannot see

    required|string|in:3930080

  • Name of the server

    SERVER_NAMEUsers can edit

    required|string|max:30

  • Maximum number of players allowed

    MAX_PLAYERSUsers can edit

    required|string

  • Disabling or enabling automated updates on boot

    AUTO_UPDATEUsers can edit

    required|boolean

  • Modded server, true or false

    MODDED_SERVERUsers can edit

    required|string

  • The password used to join the server

    SERVER_PASSWORDUsers can edit

    nullable|string

  • QUERY_PORTUsers can edit

    required|string

Wings

Stop command
^C (SIGINT)
Running when the console shows
[DedicatedServerManager] Waiting for Players before loading next map

Files Wings edits

Wings sets these values in these files before each start.

DedicatedServerConfig.json json

ServerName
{{server.build.env.SERVER_NAME}}
Password
{{server.build.env.SERVER_PASSWORD}}
MaxPlayers
{{server.build.env.MAX_PLAYERS}}
ModdedServer
{{server.build.env.MODDED_SERVER}}
Port.Value
{{server.build.default.port}}
QueryPort.Value
{{server.build.env.QUERY_PORT}}
MissionDirectory
/home/container/NuclearOption-Missions

Readme

Nuclear Option

Steam Page

Fly near-future aircraft with immersive physics on intense battlefields, facing land, air and sea threats. Wage war against AI or other players with an array of potent weapons. Wield tactical and strategic nuclear weapons, capable of annihilating anything in their path.

Server Ports

Ports required to run the server, they can be changed.

Port default
Game 27015
Query 7777

Requirements of RAM and storage on a empty server.

Req Minimum Recommend
RAM 500MB 1.5GB
Storage 2.0GB 3.0GB

Changes

  1. Add: nuclear option (#311)

    · Red Banana · 8a374b6

All changes on GitHub

Problem with this egg?

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

Install script 67 lines bash in ghcr.io/ptero-eggs/installers:debian Show
#!/bin/bash
# steamcmd Base Installation Script

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

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


cat > /mnt/server/DedicatedServerConfig.json <<EOF
{
  "BanListPaths": [ "ban_list.txt" ],
  "MaxPlayers": 20,
  "MissionDirectory": "/home/steam/NuclearOption-Missions",
  "MissionRotation": [
    {
      "Key": { "Group": "BuiltIn", "Name": "Escalation" },
      "MaxTime": 7200
    },
    {
      "Key": { "Group": "BuiltIn", "Name": "Terminal Control" },
      "MaxTime": 7200
    }
  ],
  "ModdedServer": false,
  "NoPlayerStopTime": 30,
  "Password": "ChangeMe",
  "Port": { "IsOverride": true, "Value": ${SERVER_PORT} },
  "QueryPort": { "IsOverride": true, "Value": ${QUERY_PORT} },
  "RotationType": 0,
  "ServerName": "Pterodactyl-server"
}
EOF

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