Install Wolfenstein: Enemy Territory ETPro on Ubuntu 20.04
Introduction
This documentation covers installation and configuration of a Wolfenstein: Enemy Territory game server for use as a match server with ETPro and latest competitive configuration.
Deploy Ubuntu Server
- Deploy a new Ubuntu 20.04 Vultr VPS instance.
- Follow our best practices guides:
Change to your sudo user for the remaining steps.
Installation
Since Enemy Territory is a dated game, some legacy dependencies are required:
$ sudo dpkg --add-architecture i386
$ sudo apt-get install -y libc6:i386
Enemy Territory is provided as a zip.
The unzip
utility is required.
$ sudo apt-get install -y unzip
Enemy Territory Installation
Create the directory where Enemy Territory will be installed.
$ mkdir -p ~/et/
Download the Enemy Territory game installation from Splash Damage.
$ mkdir -p /tmp/etsetup
$ cd /tmp/etsetup
$ wget https://cdn.splashdamage.com/downloads/games/wet/et260b.x86_full.zip
$ unzip et260b.x86_full.zip
$ ./et260b.x86_keygen_V03.run --noexec --target /tmp/etsetup/extracted
$ mv extracted/* ~/et/
$ cd ~/et/
$ mv bin/Linux/x86/etded.x86 .
$ rm -rf /tmp/etsetup
Optional: Remove files unnecessary to the operation of a gameserver.
$ rm -rf CHANGES Docs/ etkey.run etkey.sh makekey openurl.sh README ET.xpm \
setup.sh setup.data bin/
ETTV Installation
In order for ETTV relays to connect to your server, replace the ETTV binary from GamesTV and make it executable.
$ wget https://www.gamestv.org/drop/ettv.x86
$ chmod +x ettv.x86
ETPro Installation
Download and extract ETPro into place.
$ wget https://www.gamestv.org/drop/etpro-3_2_6.zip
$ unzip etpro-3_2_6.zip
$ rm -rf unzip etpro-3_2_6.zip
Configurations
Download the global configurations into place.
$ cd etpro/
$ wget https://www.gamestv.org/drop/globalconfigsv1_3.zip
$ unzip globalconfigsv1_3.zip
$ rm -rf globalconfigsv1_3.zip
$ cd ..
Place the following contents into ~/et/etpro/server.cfg
using Nano.
$ nano ~/et/etpro/server.cfg
With the following contents:
//=========================Server Passwords======================//
set g_password "mypassword" // set to password protect the server
set sv_privateclients "0" // if set > 0, then this number of client slots will be reserved for connections
set sv_privatepassword "" // that have "password" set to the value of "sv_privatePassword"
set rconpassword "myrcon" // remote console access password
set refereePassword "myreferee" // referee status password
set b_shoutcastpassword "myshoutcast" // Shoutcast login
//=============================DL, RATE==========================//
set sv_maxRate "25000"
set sv_dl_maxRate "2048000"
set sv_allowDownload "1"
set sv_wwwDownload "1"
set sv_wwwBaseURL "https://www.gamestv.org/download/repository/et/"
set sv_wwwDlDisconnected "0"
set sv_wwwFallbackURL ""
//=============================MOD, ECT==========================//
set sv_hostname "My Server Name" // name of server here
set server_motd0 " " // message in right corner of join screen here
set server_motd1 " "
set server_motd2 " "
set server_motd3 " "
set server_motd4 " "
set server_motd5 " "
//==========================MASTER SERVERS==========================//
// The master servers are unset, which means your server will not appear on the list
// This is to avoid DDoS attacks, delete the next 5 lines if you want your server to reappear on the list
set sv_master1 ""
set sv_master2 ""
set sv_master3 ""
set sv_master4 ""
set sv_master5 ""
//=========================STARTUP======================//
map radar
wait 300
config global3
wait 150
config global3
//=========================LOG SETTINGS======================//
set g_log "etserver.log"
set g_logsync 0
set logfile 0
//============================ETTV===========================//
set ettv_sv_maxslaves "2"
set ettv_password "3ttv"
set b_ettv_flags "3"
// Maximum number of clients per IP address
set ip_max_clients 2
In this file change the following configuration options to whatever is best for your situation:
g_password
- This is the password to connect to the gameserver, it may be blank.rconpassword
refereePassword
b_shoutcastpassword
sv_hostname
- The name of the server that users see.server_motd0
- (0-5) Text lines that are displayed on server connect.
Additional Maps
Additional maps will need to be placed within the etmain/
directory.
They can be added in the following manner:
$ cd etmain/
$ wget https://www.gamestv.org/download/repository/et/etmain/adlernest.pk3
$ cd ~/et/
No additional configuration is required.
Start Script
For simplicity, wrap the start command of the new server in a shell script.
Write a simple script to start your new server using Nano at ~/et/start.sh
:
$ nano ~/et/start.sh
With the following contents:
#!/bin/bash
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
"${DIR}/ettv.x86" \
+set dedicated 2 \
+set vm_game 0 \
+set net_port 27960 \
+set sv_maxclients 32 \
+set fs_game etpro \
+set sv_punkbuster 0 \
+set fs_basepath "${DIR}" \
+set fs_homepath "${DIR}" \
+exec server.cfg
Make sure this script is executable.
$ chmod +x ~/et/start.sh
Run the Server
To run the server now, invoke the script that was just created:
$ ~/et/start.sh
This will run the server in the foreground.
If you wish to run the server in the background for a long period, the script
should be invoked from within a utility such as screen
or tmux
.
It is possible to run more than one Enemy Territory server on your Vultr
virtual server, to make this possible allocate a different port for every
gameserver that will run, this is defined in the start.sh
script.
Connect to the Server
Once the server is running, you can connect to it from within the Wolfenstein: Enemy Territory client.
To connect, open the game and run the following command (where 192.0.2.1
is
the IP address of your Vultr instance):
/connect 192.0.2.1:27960; password <Your g_password>
Note:
- The 27960 value may be different depending on if you have altered the
~/et/start.sh
script above. - Your Vultr IP is the same IP address you're connected to SSH with.
- The
g_password
is defined in the~/et/etpro/server.cfg
file.