OpenRA - Dune2000
GamesOpenRA 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).
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
ghcr.io/ptero-eggs/installers:debianbash#!/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 "-----------------------------------------"