Play Enemy Territory Legacy! (Linux, Mac, Windows)

et_logoIn my previous post about Enemy Territory I mentioned an active, maintained fork of this infamous Splash Damage WWII RPG-shooter from the mid-2000’s.  I found time to install, play and setup servers for Enemy Territory: Legacy – If you’re looking for a fun, free Open Source class-based FPS this is it.

Installing ET:Legacy:
The installation process is much more modernized and straightforward than the older, retired original ET.  If you’re on Windows or OSX simply download the appropriate files, copy the original ET 2.60b pak3 files in ../etmain and off you go.  Proceed down to the post-installation steps for tips to help you get started.

Update: 2022-06-04:  It appears you can now install ET:Legacy via Flatpak, this may be the easiest way to install on Linux.

Installation on Linux via Flatpak
Flatpak is an application sandbox framework for X11 and GUI applications, I use it frequently for lots of things.  You should consult your distribution-specific setup guide if you’re using something other than Fedora.  Flatpak commands run as your normal non-root user.

sudo dnf install flatpak -y
flatpak remote-add --if-not-exists flathub
flatpak install flathub com.etlegacy.ETLegacy

I am going to cover manual installation on Linux below.
Updated 2019-01-18 for version 2.76, adjust for any newer versions

Installation on Linux
We’ll be installing the 32bit version on Linux.  Run the following commands in a terminal as your normal user.  Substitute your ~/Download directory for wherever you want the game installed.  Note the differences below.  You can install both 32bit and 64bit on the same system as they’ll go into different directory paths.

Obtain the Game – 32bit Version
This is recommended since you can play on ET servers running fun 32bit mods like No Quarter.

cd ~/Downloads ; curl \
> etlegacy-v2.76-i386.tar.gz

You may also need some 32bit libs, on Fedora 25+ this was needed also:

dnf install mesa-libGLU.i686

(optional) Obtain the Game – 64bit Version
As ET is really light on resources comparatively, you really just need the 32bit version but there is a 64bit version.  The only downside is that you can’t play 32bit mods which really limits the number of servers you can play on.  If you want to stay pure this is a fine option as you’ll be able to play on any ET:Legacy server.

cd ~/Downloads ; curl \
> etlegacy-v2.76-x86_64.tar.gz

Install the Thing
Next you’ll want to extract the tarball archive you’ve downloaded, if you want to install both 32bit and 64bit from above you’ll need to duplicate this step for the other tar.gz.

cd ~/Downloads ; tar -zxvf etlegacy-v2.76-i386.tar.gz

You’ll need the Enemy Territory asset files if you don’t have them, these go into ../etmain/ directory.  You can get them here or just download them from me (208mb).  These are the pak3 files from the original Enemy Territory.


(I’ve moved the WolfET assets to github above, but a mirror is here).

Copy assets into your ../etmain directory and extract (you’ll need to copy these into both the 32bit and 64bit installations if you opted to install both):

cp et-assets.tar ~/Downloads/etlegacy-v2.76-i386/etmain/
cd !$ ; tar -xvf et-assets.tar

Here are the md5sums for the asset files:

9558347f477bfbdc65b06768ce2e31d1  pak0.pk3
2502d531f5505d920ee1129baf392925  pak1.pk3
256da2aa10c43728f36515ddad1aa582  pak2.pk3

That’s it.  You’ll find all the game binaries inside your etlegacy-v2.76-i386 directory.  If you opted to install the 64bit version it will be called etlegacy-v2.76-x86_64.

Inside the etlegacy-v2.76-i386 directory you’ll have a set of binaries – the etl binary launches the game.  Comparatively, the etlded binary is used for running a dedicated server.


I setup the following alias command to launch the game on my system, and can simply run “etlstart” to launch the game.

echo "alias etl32start='cd ~/Downloads/etlegacy-v2.76-i386 && \
./etl +r_mode +set com_hunkmegs 768 +vid_restart'" >> ~/.bashrc

Post Install Setup
When you run etl for the first time it will create a profile for you, this will generate an etkey which makes a unique UID for your player so servers with experience save enabled can save your progression.

Some things you might want to change:

  • Set the resolution to whatever is native for your setup, Ultra HD is supported.
  • Turn up the textures and graphics – this game runs very lean even on low-end hardware
  • Under the view options, experiment with the different HUDs and hiding or shrinking artifacts
  • Like all Quake engine based games you can access the console and enter settings directly using the ~ key.  Some settings you might want to apply to maximize your resource are:
/seta com_hunkmegs "768"
/seta com_zoneMegs "64"

And if you wanted to play 4096 x 2160 on a 4K TV…

/seta r_customwidth "4096"
/seta r_customheight "2160"
  • Some ~ console settings my require you to restart the game, like the ones above.
  • Changes made in the ~ console save to your etconfig.cfg file and are persistent.

Known Issues:
If you get an error about this missing library:

Failed loading ./ 
cannot open shared object file: No such file or directory"

You need to install the 32bit mesa-libGLU library.

dnf install mesa-libGLU.i686

Known Issues:  MESA-LOADER warnings
You may also need this package if you see the following error:

libGL error: MESA-LOADER: failed to open iris: /usr/lib/dri/

Try installing:

dnf install mesa-dri-drivers.i686

Known Issues:
OpenGL Error
Some people report issues with turning on Anti-Aliasing, I was able to reproduce this with an Nvidia graphics card on Linux.  If you get the following error you need to not enable Anti-Aliasing:

GLW_StartOpenGL() - could not load OpenGL subsystem:

Rename your etconfig.cfg and start the game without, this will revert your settings to default but let you get back in the game to set things up again.  For me it was this:

mv ~/.etlegacy/legacy/profiles/sadsfae/etconfig.cfg \

You could also try running the game in windowed mode as an option:

./etl +set r_fullscreen 0 +set r_mode 3

Known Issue: ET is too Dark on Linux
With some display drivers (intel for me) ET can seem too dark, and the UI settings don’t seem to fix it.  Here’s the fix that worked for me.  Type ~ to bring up console:

/r_gamma 3
/r_intensity 1.5
/r_mapoverbrightbits 3
/r_overbrightbits 1

You may also need to need to set:

/r_ignorehwgamma 1

Now, restart the video (or just restart the game).  Adjust these values as needed.


Gameplay Information
There are many good guides on Enemy Territory, but in a nutshell it’s a class-based first person shooter game – each class plays a particular role.  In objective-based games each class plays a certain part in achieving the team goals to win the map.

You accrue experience points playing various classes and performing actions as that class and the rewards, or “levels” are in the form of perks, additional weapons and abilities which are signified overall by progression through military ranks.

Class and Role Breakdown

  • Soldier – general purpose fighting class, has access to heavy weapons like bazooka, tripod-mounted machine gun, mortar, flamethrower etc.
  • Medic – a healer type, can generate medpacks and revive other players on the battlefield.
  • Field Ops – generates ammo to distribute to other players and calls in artillery strikes and air strikes in outside zones
  • Engineer – a must have for most objective maps, Engineers build/destroy things, set landmines, fix broken tanks, guns and vehicles, set dynamite.  They cannot write software.
  • Covert Ops – these are stealth special forces operators, they are adept at sniping, sublety and stealing enemy uniforms and going behind enemy lines.  They are also needed to set satchel charges for some objective maps.

Military ranks are explained here, along with relevant class perks and skills.

Gameplay Tips

  • When the game starts you’re in the lobby, press l to get to team select.  select a side, then select a class, finally select your weapon and join
  • Press v then 2 for the voice request menu.  For example if I need a medic or more ammo brought to me I can press v -> 2 -> 1 (medic) or v -> 2 -> 2 (ammo).  A friendly bot or player should come to your rescue.  Bots are great for this.
  • Press and hold g will toggle small mini-map, I use that and disable the onscreen one in options -> view as it takes up too much room.
  • Press and hold b to zoom in with binoculars
  • x is prone position
  • Press and hold z to crouch
  • q (lean left) and e (lean right) are useful for peeking around corners
  • f activates things, opens doors, enters tanks, steals enemy uniforms (covert ops)
  • Weapons and items are swapped with number keys.
  • If you have any issues connecting to servers you can hit ~ and type /reconnect

Game Resources

Here’s some footage captured via OBS Studio on Fedora:

Here’s some action on some of my servers – Saving Private Ryan.

Here is ET: Legacy with the No Quarter mod on another one of my servers.

Here are some useful links to Enemy Territory: Legacy online resources:

Playing Online

  • Under Play Online, Toggle Filters -> Mod: Legacy to see all ET:L servers.
  • NOTE: 64bit ET:Legacy is NOT compatible with the old 2.60b ET.
    • If you have issues with other servers and mods simply install the 32bit version and use that, it will happily exist – just use the optional link above.
    • If you see this error (etlegacy dev post) couldn’t load offical pak file.
      • According to their FAQ you can install the old 2.60b version files alongside ET:Legacy just to make sure you can play on all servers.
      • I have the original ET install files here if needed, or just the pak files here.  Those need to be copied into the etmain directory of your etlegacy installation.

There hundreds or more ET servers to play on and people are routinely adding more – be sure to filter by “legacy” mod.  I’m running three servers currently, two in Europe and one in the United States.

To join the objective-based, custom map European Server type ~ and enter:


To join the “Saving Private Ryan” themed United States Server type ~ and enter:


To join the objective-based, custom map European NQ Server type ~ and enter:


To join the “Saving Private RyanUnited States NQ Server type ~ and enter:

  • NQ stands for “No Quarter Mod” and adds a slew of nice features, additional levels, skills and weapons to vanilla Enemy Territory.  The only downside I’ve noticed is that it doesn’t seem to support all of the resolutions that Vanilla ET:Legacy does, though I might be doing something wrong.

Below is the status of the European Objective-based ET:Legacy server.  I’m unable to display either United States servers in an image because of limitations with image2ps and the sheer amount of players bots on it.

Below is the current status of the European ET:L NQ Server running the No Quarter mod.
If it fails to render below it’s also because of image2ps and characters exceeding canvas limit.

About Will Foster

hobo devop/sysadmin/SRE
This entry was posted in gaming, open source and tagged , , , , , , , , , . Bookmark the permalink.

2 Responses to Play Enemy Territory Legacy! (Linux, Mac, Windows)

  1. Antonio says:

    Hi, I currently have the game in Fedora 29 but it does not sound like you solved the problem?


    • Will Foster says:

      Hi Antonio. Any issues mentioned on the guide have workarounds if experienced – It plays perfectly fine for me on Fedora 28. I’m not aware of any outstanding problems playing the latest version of ET Legacy on Fedora.

      One thing you might try if you do have issues is make sure you’re not using Wayland and instead try falling back to Xorg for your graphics rendering (I think in GNOME/KDE this might be default – I use XFCE which is still on Xorg). You can do this from the desktop session prompt usually (GDM/KDM).


Leave a Reply to Will Foster Cancel reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.