Oldunreal 227 Linux FAQ

From Oldunreal-Wiki
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

How do I install Unreal in Linux?

First you need to download the latest patch, but due to legal limitations (I'm not officially allowed to use a Linux specific installer) you must rely on the windows .exe patch Then there are 2 ways:

1. If you want to use Linux only, you need to run the installer from CD and then the patch with Wine to install it. 2. Install it in Windows and copy the directory over.

After installing (or copying it over) you can run it native without Wine f.e. in console with ./UnrealLinux.bin (in the Unreal/System directory or create a shortcut to start it from somewhere else).

UCC is also existing and fully functional except font import. So you can start a server like in Windows with "./UCCLinux.bin server ...". If you start it from console you can enter any command like in the windows version, but directly in the console window.

On which distributions is Unreal 227 running on?

For the moment I have reports that it is running on:

OpenSuSE 11.0, 11.1, 11.2, 11.3, 11.4, 12.1, 12.2 & 13.1

Slackware 12.X, 13.0 (but maybe artsd needs to be killed if using OSS for sound or Unreal needs to be started up without sound with the -nosound option)

Archlinux (last update 18.05.2009)

Debian 6.0 Squeeze

Problems are reported on:

Ubuntu (not sure which release)

But in theory any recent Linux system should do.

On which graphic card is Unreal running on?


Currently all cards seem to run fine with NVidia drivers installed. Tested and working with: GeForce 4 Ti4200, Geforce 5900XT, Geforce 8400M GS, Geforce 9800 GT, Geforce 9800 GTX, GTX260


Should run fine with FGLRX (Catalyst) drivers installed. Tested and working with Radeon HD 4890.


integrated Chipset like GM965 with Mesa works but there seem to be some problems with OpenGL (f.e. adjusting Brightness doesn't work in some cases).

Unreal segfaults at startup

Currently the following reasons are known:

Missing libraries:

Unreal requires 32-bit libraries to run. In particular, it requires libSDL 1.2 32-bit and freealut 32-bit. It also requires FMod, but it should already be provided with the patch (make sure to unpack all convenience libraries from Help/ directory to System/). On openSUSE, you can install the missing libraries by using:

   sudo zypper install libSDL-1_2-0-32bit freealut-32bit 

A messed up ini:
remove or rename UnrealLinux.ini and let Unreal create new one

Sound Issues:
Try to start Unreal with -nosound option to confirm. Then check the section Oldunreal_227_Linux_FAQ#Sound_issues for solutions.

On some distributions needed dependencies for libSDL are missing, so please make sure to have the packages "svgalib-bin", "libsvga", and "libsdl-gfx" installed.
If your system doesn't provide all libraries, there is a package called linux_convenience_libs.7z in the Help (only 227g) folder which should contain all the necessary files.

If you get something like that:

 Processors / Cores 2
 XDM authorization key matches an existing client!Couldn't initialize SDL: Couldn't open X11 display
 Exiting due to error

Try make "xhost +"(without quotes) before launching Unreal.


Delete System/libSDL-1.2.so*

Another reason for segfaults at startup could be that the requested fullscreen resolution is higher than your monitor supports (you switched your monitor maybe or took over the UnrealLinux.ini from another system).

After deleting libSDL.so.0 Unreal shows me black screen!

Do not panic. Hit ~, type quit. Unreal will exit, but your image on screen can be corrupted, just restart your X and downgrade SDL to version 1.2.13

How do I access Advanced Options?

There are no Advanced Options for Linux users. You need to edit the UnrealLinux.ini instead. But all possible options are already in the file and commented with a semicolon (;). You just need to change the commented lines.

I use tiled WM, and Unreal doesn't work properly in fullscreen mode

Run Unreal, then switch to another tag without windows on it.

I want to use the Unreal Gold/Unreal Tournament menu interface instead of this old one!

Open your UnrealLinux.ini and change the following lines in section [Engine.Engine]:






Is there no UED for Linux?

Old UED is built in visual basic and UED2 is completely based on Windows. A complete rebuild of UED2 in QT or GTK would be necessary to port it. So not planned at the moment. However, UED2 is running in wine and 227f's version does support OpenGL for the viewports, so it should be possible to run UED2 completely. Reports are showing that there is still a problem with selecting, so you can see anything, but not work in it yet. No solution is found so far.

Wine AppDB entry

Does 227 need wine to run?

No, 227 version is having a complete native port. Wine is not needed to run it. But since there is no Linux installer yet with permission from EPIC, Wine is needed to install the base game and the patch itself. After installing it Wine is no longer needed and the game can be run with UnrealLinux.bin

My system / distro / graphics card driver seems to have problems with OpenGL or graphics are messed up

Try SDLSoftDrv instead:




SDLGLDrv can be tried also, but its an old and not very advanced renderer. Its just left in there for testing purposes.

!!! To use it you need to add -NoForceSDLDrv at startup. !!!

Please note that SDLSoftDrv and SDLGLDrv are NOT supporting S3TC highres textures!

Sound issues

If you have any problems, try first to change the sound output to OpenAL (or if you set it up first to OpenAL then try FMOD). in Section


Default is FMOD.

227 is offering OpenAL, FMOD and SwFMOD for sound output. OpenAL is only capable of playing sounds, not tracker music, thus if you choose it, you will need to configure FMOD or SwFMOD in addition. However, OpenAL generally tends to work better out-of-the-box.

When using FMOD, since 227g you can choose between ALSA, OSS and ESD (and maybe more) outputs. When using OpenAL, you can choose between PulseAudio, ALSA and OSS. The available devices can be seen in UnrealLinux.bin.log, and are set up in UnrealLinux.ini, using the variables FMODOutputs for FMOD and ALDevices for OpenAL.

If your Unreal segfaults at startup because of sound you can set "ProbeDevicesOnly" in UnrealLinux.ini to determine the available devices in a failsafe way.

FMOD: Sound starts but stops after a few seconds playing

Lower number of channels.

OpenAL uses FMOD for music output and if using OSS it can be that OpenAL is blocking /dev/dsp for FMOD then. This seems to be system specific and the only recommendation is: if possible use ALSA.

Music doesn't play

If your system is using PulseAudio, you need to enable timer-based scheduling for FMOD to work correctly. This is normally on by default, but in case you set it otherwise or your distribution ships with different defaults, this change can be done by editing the /etc/pulse/default.pa file and removing any occurrences of tsched=0.

If you are not using PulseAudio, or if the above did not help, you can try using another FMOD output, such as OSS or ESD.

Music/sound doesn't play or stop playing after a while. Nothing helps.

Run EsounD:

  $esd &

Then change FMODOutouts property in UnrealLinux.ini under ALAudio.ALAudioSubsystem or FMODAudioDrv.FMODAudioDevice sections to


Run Unreal and enjoy your sound!

I don't have EAX/EFX effects / the environment ambients like "Underwater etc" do not work!

Check if your OpenAL libraries and the patch are up-to-date. EFX support on Linux was added in 227g.

Note that OpenAL does not closely emulate the echo/reverb effects of Galaxy, but it offers 112 ambient presets which are used for zones like "Underwaterzone", "Slimezone" etc. and some replacement for the echoes. So its way more functional, but if you want an exact matching reverb like in the first days of Unreal, you have to use FMOD.

Serverbrowser stalls entire system, taking very long

Check that your local hostname can be resolved, add it to /etc/hosts if necessary (can be checked with ping <hostname>). 227j will have a sufficient error message to identify this issue.