Linux Workarounds

  • This article covers various workarounds for UA on Linux.
    This article covers information about running UA on Linux.

    1 Information

    1.1 Playing UA on Linux

    Urban Assault can be played on Linux to an extent. However, some features may not work and graphical performance is usually not as good as it is on Windows.

    1.2 OpenUA (UA_Source)

    OpenUA is an open-source engine reimplementation of UA. OpenUA works natively on Linux, and it is usually the best choice to play the game. It should work on MacOS and other non-Windows platforms as well. OpenUA is covered in a separate article.

    1.3 Wine

    Using Wine is a common choice but not all versions of Wine work nicely. Wine is a better choice over a virtual machine because the computer doesn't have to simulate an entire operating system just to play the game. A virtual machine however has the possibility of being more stable and less prone to errors.

    Software rendering and hardware rendering via DirectDraw HAL are usually available when playing UA on Wine.

    1.3.1 Compatible Versions

    The following versions of Wine are known to work with UA:

    * 1.3.35 (software rendering only)

    * 1.4.1

    * 1.5.5 (SW and DirectDraw HAL - Kubuntu 13.10 - Radeon 6450)

    * 1.7.28 (DirectDraw HAL works, SW causes problems?)

    * 1.7.55 (DirectDraw HAL works, SW status unknown?)

    * 1.9.1 (DirectDraw HAL only)

    * 1.9.8 (DirectDraw HAL only)

    * 3.4 (Software: works partially, black screen glitches; DirectDraw HAL: suboptimal performance)

    1.3.2 Incompatible Versions

    The following Wine versions are known to have serious problems with UA or to not work at all:

    * 1.5.6 (unclear; may be driver-related)

    * 1.5.25 (new bug introduced between 1.5.13 and 1.5.14)

    * 1.5.31

    * 1.6

    1.4 Common problems and solutions / General graphics issues

    This section contains information about some common problems. When testing UA on Wine, it's recommended to use virtual desktop emulation as it often prevents annoying screen problems which may occur when UA changes the screen resolution but does not start properly.

    Enabling DrawPrimitive is usually beneficial. If it is disabled, graphical glitches may occur in the mission briefing, for example.

    1.5 Changing the graphics rendering mode

    If the game does not start properly or the screen is severely distorted, changing the graphics rendering mode may help. This can be done by editing …/env/guid3d.def file. Known possible options are <software> for software rendering and <primary> for hardware rendering/DirectDraw HAL.

    1.6 Intro videos and start-up problems

    Intro videos can cause start-up problems such as black screen, especially with older Wine versions. In this case, disabling the video player completely by editing NUCLEUS.ini may help. This method is explained in Windows Troubleshooting.

    Wine 1.9.1 does not play the videos because it lacks support for some MPEG-1 streams. However, the non-working videos don't seem to cause any problems either. If the videos are converted into another format (MS-CRAM + PCM audio in AVI container tested), they work but a screen scaling glitch may occur when the video ends. The glitch goes away when the graphics engine gets reloaded, for example, when starting a mission.

    1.7 Virtual machines

    Installing Windows into a virtual machine is another way to play UA on Linux. It requires more system resources than Wine, and you need a Windows license, but it provides a native Windows environment.

    1.8 VirtualBox

    VirtualBox is free and it should support all NT-based Windows versions. Older versions (ME, 98, 95…) may work but guest additions are not available. Running 64-bit systems or Windows 8/8.1/10 requires a CPU with hardware-assisted virtualization capabilities (VT-x/AMD-V).

    Virtualbox allows hardware rendering via its virtual GPU driver which is provided with the guest additions package.

    1.9 VMWare


    1.10 QEMU


    2 Multiplayer

    See Multiplayer Configuration for general information about multiplayer basics.

    2.1 Manual multiplayer - DirectPlay over TCP/IP

    DirectPlay over TCP/IP works on Wine provided that Microsoft DirectPlay is installed via Winetricks (tested with Wine 3.4). Firewall must be configured to allow traffic to the DirectPlay ports - see the article linked above.

    Other DirectPlay options are usually not available in the multiplayer menu when using Wine.

    2.2 Using GameRanger

    GameRanger itself works on Wine. The file mfc42.dll must be copied from a Windows installation or elsewhere into the Wine system directory to make GameRanger work. See Wine Application Database for more information. Previously, Flash Player was also required, but new versions of GameRanger no longer need it.

    However, more information about whether UA multiplayer via GameRanger works on Wine is needed. As of April, 2018, there were no successful reports of playing UA on Wine using GameRanger. If it doesn't work straight away, installing DirectPlay via Winetricks may help - test required.