OpenRA - Dune2000

Games
Report Issue

OpenRA is a project that recreates and modernizes the classic Command & Conquer real time strategy games. We have developed a flexible open source game engine (the OpenRA engine) that provides a common platform for rebuilding and reimagining classic 2D and 2.5D RTS games (the OpenRA mods).

Contributors:
README

OpenRA Dune2000

The classic command & conquer Server

from the developers

OpenRA is a project that recreates and modernizes the classic Command & Conquer real time strategy games. We have developed a flexible open source game engine (the OpenRA engine) that provides a common platform for rebuilding and reimagining classic 2D and 2.5D RTS games (the OpenRA mods).

This means that OpenRA is not restricted by the technical limitations of the original closed-source games: it includes native support for modern operating systems and screen resolutions (including Windows 10, macOS, and most Linux distros) without relying on emulation or binary hacks, and features integrated online multiplayer.

Make sure to checkout their Home Page.

Server Ports

OpenRA requires a single port

Port default
Game 5500

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

Docker Images (1)
Name Image
ghcr.io/ptero-eggs/yolks:mono_latest ghcr.io/ptero-eggs/yolks:mono_latest
Startup Command
./squashfs-root/AppRun --server Server.Name="{{SERVER_NAME}}" Server.ListenPort={{SERVER_PORT}} Server.AdvertiseOnline={{PUBLIC}} Server.EnableSingleplayer={{SINGLEPLAYER}} Server.Password="{{PASSWORD}}" Server.EnableGeoIP={{GEOIP}} Server.ShareAnonymizedIPs={{ANONYMOUS}}
Variables (8)

Server Name

The Name of the Server

Environment:
SERVER_NAME
Default:
OpenRAServer
User Viewable:
User Editable:
Rules:
required|string

Public Server

Shall this server be public

Environment:
PUBLIC
Default:
false
User Viewable:
User Editable:
Rules:
required|string|in:true,false

Enable Singleplayer

Enable Singleplayer ?

Environment:
SINGLEPLAYER
Default:
false
User Viewable:
User Editable:
Rules:
required|string|in:true,false

Require Authentification

Enable Authentification

Environment:
AUTH
Default:
false
User Viewable:
User Editable:
Rules:
required|string|in:true,false

PASSWORD

Server Password

Environment:
PASSWORD
Default:
None
User Viewable:
User Editable:
Rules:
nullable:string

GEOIP

Enable GEOIP

Environment:
GEOIP
Default:
false
User Viewable:
User Editable:
Rules:
string|max:20|in:true,false

Anonymized IPs

Hide IPs

Environment:
ANONYMOUS
Default:
true
User Viewable:
User Editable:
Rules:
string|max:20|in:true,false

VERSION

VERSION

Environment:
VERSION
Default:
latest
User Viewable:
User Editable:
Rules:
required|string|max:20
Installation Script
Container: ghcr.io/ptero-eggs/installers:debian
Entrypoint: bash
#!/bin/bash
#
# Server Files: /mnt/server

## install packages to get version and download links
apt update
apt install -y curl wget file jq

MATCH=OpenRA-Dune-2000-x86_64.AppImage

cd /mnt/server/ || { echo "Failed to change into server directory"; exit 1; }



# If latest version requested, determine version
if [ -z "${VERSION}" ] || [ "${VERSION}" == "latest" ]; then
    # Fetch latest version from OpenRA API
    echo "Finding latest version of OpenRA"
    VERSION=$(curl -s https://www.openra.net/versions.json | jq -r .release)
fi

echo "Installing version ${VERSION} of ${MATCH}"

# Configure GitHub authentication
if [ -n "${GITHUB_USER}" ] && [ -n "${GITHUB_OAUTH_TOKEN}" ]; then
    echo "Using GitHub authentication"
    # shellcheck disable=SC2139
    alias curl="curl -u ${GITHUB_USER}:${GITHUB_OAUTH_TOKEN}"
else
    echo "Using anonymous API calls"
fi


# Fetch release information from GitHub
RELEASE_JSON=$(curl --silent "https://api.github.com/repos/OpenRA/OpenRA/releases/tags/${VERSION}") || { echo "Failed to get release info for ${VERSION}"; exit 1; }

# Find download link for requested artifact
DOWNLOAD_LINK=$(echo "${RELEASE_JSON}" | jq -r --arg MATCH $MATCH '.assets[] | select(.name == $MATCH).browser_download_url')
if [ -z "${DOWNLOAD_LINK}" ] || [ "${DOWNLOAD_LINK}" == "null" ] ; then
    echo "Failed to find download url for "
    exit 1
fi

wget "${DOWNLOAD_LINK}" || { echo "Failed to download ${DOWNLOAD_LINK}"; exit 1; }

chmod +x $MATCH
./$MATCH --appimage-extract
rm -f $MATCH
rm -f ./*.zsync
cd squashfs-root && chmod +x AppRun

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