Experimental Ports – Arma 3

From Bohemia Interactive Community
Revision as of 15:08, 28 April 2023 by Lou Montana (talk | contribs) (Text replacement - "\[ *(https?:\/\/[^ = ]+) +([^= ]+) *\]" to "{{Link|$1|$2}}")
Jump to navigation Jump to search

Please visit this overview page to learn more about our experimental client ports to Linux and Mac, including the limitations and F.A.Q.


Installation

  1. Check the limitations overview to decide whether you find them acceptable.
  2. Check the minimal requirements to determine whether your system is able to run the ports.
  3. Download and install the Steam client, create an account and purchase the Windows retail version of Arma 3.
  4. Install the game (it will automatically download the data for Mac or Linux, depending on the platform you are installing from).
  5. Play!


Known Issues

  • Potential Out Of Memory client crashes/freezes when playing for longer periods of time - the ports are limited to 768 MB of VRAM on Linux and 512 MB on Mac.
  • Being a 32-bit process, Arma 3 has 4 GB of memory available to it. However, unlike Direct3D, OpenGL stores texture data in the game's address space. Using more VRAM would fill the available memory much more quickly, leading to more frequent crashes.
  • Lower FPS after long gameplay - this may hint at an incoming OOM crash. Restarting the game cleans the memory.
  • Lag and desync under heavy multiplayer load
  • Problem with different languages and diacritics - only English works properly. Non-ASCII characters are not supported.
  • Low FPS on OS X - running the OS and the native display resolution eat up a lot of computing power.
  • AMD Mesa drivers can cause graphical glitches, such as white blinking vegetation LODs.
  • Occasional Alt + Tab crashes
  • Aspect ratio changing CTD - changing the aspect ratio in-game can cause issues and/or CTDs.
  • Joystick, gaming devices - Xbox 360 controllers should work plug-and-play on Linux and Mac, but it is not always possible to remap their buttons in-game. Joysticks, Xbox One gamepads and other game controllers need user alterations of the SDLGamepad.config file located in the Arma directory on Linux.
  • The VP wrapper can lower Arma 3’s performance by up to 30 percent on several systems, but the performance drop should not exceed 10 percent on a vast majority of systems.
  • Video options have some limitations dependent on the system’s computing power. It can disable your option to set up High or Ultra quality levels on less powerful machines.
  • Some keys (e.g. "Alt") are designated for something else in the system (on Mint for example), so you may need to re-map your keyboard settings.
  • The shader cache file can become corrupted during some crashes. Deleting "~/.local/share/bohemiainteractive/arma3/eONprecompiledShaders.dat" fixes the problem.
  • Drivers on AMD cards - AMDGPU-PRO Beta and MESA drivers - are in development and are prone to cause unexpected issues from time to time.
  • Potential sound issues (e.g. static and stuttering)
  • Arma 3 Server running on Linux may suffer from BattlEye client not updating properly. Try restarting the server to trigger the update.
  • Issues with shared memory management in PulseAudio drivers in some community missions.
  • DLC content errors after update 1.64: deleting the contents of the Steam/depotcache folder and a subsequent data verification in Steam should help.
  • Legacy versions (e.g. 1.64 and 1.68) work on older OS X (10.9.5) as they don't use Metal 2.0 yet.
  • Steam overlay on Linux/Mac platforms may lead to crashes or other major issues.
  • If you get a Steam Library error when starting a dedicated server, try starting it using this command LD_LIBRARY_PATH=~/.steam/bin32/ ~/.steam/bin32/steam-runtime/run.sh ./arma3 -server -config=server.cfg
  • Apple AudioToolbox crashes might sometimes happen.
  • ATOC might cause rendering issues with AMD cards using MESA drivers.
  • User on distributions using the Wayland display server may find that the following issues occur (read on for a way to disable it and restore the functionality).
    • Cannot select any resolutions other than the highest one your monitor supports.
    • After restoring a minimized game window, it will have an empty space where the title bar should normally be.
  • Using a multiple monitor setup and using Alt + Tab may cause aspect ratio issues or CTDs.
  • Any issues fixed since the 1.82 Windows version

Disabling Wayland

Disabling Wayland protocol / display driver and switching back to X Server:

  1. Open /etc/gdm/custom.conf for editing
  2. Uncomment the line WaylandEnable=false
  3. Reboot


Distros

Supported Linux distributions are:

  • Ubuntu 16.04 64-bit and later LTS versions
  • Mint 18 64-bit and later LTS versions
  • Fedora 25 and later LTS versions
  • SteamOS 2.87 and later stable versions

32bit Linux systems are considered too unstable due to crashes in MP, although it may be possible to play Arma 3 on them. The Arma 3 ports are now 64-bit processes, so no further testing was done on 32-bit systems and Arma 3 ports will not run on them.

We support only default desktop environments such as Cinnamon on Mint and Unity on Ubuntu. It should be possible to run the game on Debian and Gentoo, but it was not the part of the QA process, therefore we cannot guarantee support.

There are community tests of Arma 3 on other Linux distributions such as Arch Linux. You can find more information on the forums and Feedback Tracker regarding issues on unsupported distros.


Linux Graphics Drivers Updates

NVIDIA

A quick 'how-to' on updating NVIDIA drivers on Ubuntu and Mint systems:

  1. Open Terminal
  2. Enter "sudo add-apt-repository ppa:graphics-drivers/ppa"
  3. Enter "sudo apt-get update"
  4. Enter "sudo apt-get install nvidia-390"

Your drivers should now be updated after restarting.

Check https://launchpad.net/~graphics-drivers/+archive/ubuntu/ppa for newer drivers.

A quick 'how-to' on updating NVIDIA drivers on Fedora systems:

  1. Enable both (free & paid) RPM Fusion Repositories here
  2. Open Terminal
  3. Enter "xorg-x11-drv-nvidia akmod-nvidia "kernel-devel-uname-r == $(uname -r)"" and install everything the package requires
  4. If you're on a 64-bit system, enter "sudo dnf install install xorg-x11-drv-nvidia-libs.i686" after the previous operation finishes
  5. Reboot (you may find that the boot process takes longer than usual; this is normal the first time)

AMD

Ubuntu 16.04 and all distros with Xorg1.18 or higher, need the AMDGPU-PRO beta driver (for newest GPUs) or Oibaf MESA drivers (recommended). Installing AMDGPU-PRO: http://support.amd.com/en-us/download/linux. Oibaf driver info can be found here. As MESA drivers are quite frequently updated, we've been using the latest version (18.1.0-devel) for testing and found that many graphical issues and crashes have been fixed.

In addition, Fedora 25 with AMD GPUs need to disable the Wayland display driver and re-enable X Server for the game to work correctly.


Installing MESA drivers for AMD:

  1. Open Terminal
  2. Type in and execute: "sudo add-apt-repository ppa:oibaf/graphics-drivers"
  3. Type in and execute: "sudo apt-get update"
  4. Type in and execute: "sudo apt-get dist-upgrade"
  5. Reboot


Installing MESA drivers on Fedora:

  1. Follow the installation instructions here.


In the case Steam is not working with MESA this may help :

  1. Open Terminal
  2. Type in and execute: "gedit .bashrc"
  3. Add line "export LD_PRELOAD='/usr/$LIB/libstdc++.so.6' DIAPLAY=:0"
  4. Save and exit
  5. Steam should now launch by typing "steam" into Terminal


Joysticks & Gamepads

Unfortunately, Steam’s standard only supports standard Xbox and Windows XInput gamepad schemes, which means that more sophisticated schemes present in Arma 3, and using DirectInput and allowing reconfiguration of gamepads and joysticks in-game, had to be turned off in the ports. It is possible to reconfigure them by modifying the mapping text, but it’s not intuitive. Alternatively you can try to remap your keybinding using third-party software (e.g. AntiMicro).


Dedicated Servers

Mac

  1. Run the Steam client (if you do not start the normal game first, it will not let you launch after the Dedicated Server is on).
  2. Run Arma 3 and wait for the game to get to the main menu.
  3. Run Terminal.
  4. Change the current directory to the path where the Arma3.app is (e.g. "cd ~/Library/Application\ Support/Steam/SteamApps/common/Arma\ 3/").
  5. Run the Dedicated Server by command: "./ArmA3.app/Contents/MacOS/ArmA3 --args -server -config=Server.cfg".

Linux

Method 1

  1. Launch Arma 3 via Steam normally (if you want to run server and client on the same PC).
  2. Find your Arma 3 installation folder by using your right mouse button to click on the game name in Steam's library and go to the Properties click on Local files tab, then click on Browse local files button to open the file browser at that location. You should also put the server.cfg file there. Default installation folder is: "~/.steam/steam/steamapps/common/Arma 3".
  3. Open Terminal and type in: "cd 'your Arma 3 path'" and then press Enter. It should change to your game folder.
  4. Type in and execute: "export LD_LIBRARY_PATH="/home/user/.steam/ubuntu12_32""
  5. Type in and execute: "./arma3 -server -config=server.cfg"

Your Dedicated Server should run alongside the normal game now. Note - you can skip #4 by entering "export LD_LIBRARY_PATH="/home/user/.steam/ubuntu12_32" directly into the ~/.bashrc file.

Method 2

Arma_3_Dedicated_Server#Instructions (Linux o/s)


Fedora Firewall

There may be an issue with connections on Arma 3’s server on Fedora caused by a firewall. For disabling this you may use this: https://docs.fedoraproject.org/en-US/Fedora/19/html/Security_Guide/sec-Disabling_firewalld.html.

Keep in mind this will open your firewall completely, and opening ports just for Arma 3 is advised (default ports are: 2302-2305 UDP)


Cross-Platform Windows Compatibility

See Arma 3: Play on Linux for a Proton-based solution.

The Linux / Mac ports presently use the current Arma 3 version 1.82. For now, the version of the Linux / Mac ports and primary Windows version should be compatible, at least until further Windows version updates. When that happens, players on the Windows platform, who wish to keep playing with players on the ports version, must use the legacyports beta branch, as described below.

1.82 version installation on Windows:

  1. Open the Properties of Arma 3 in the Steam library
  2. Open the Betas tab
  3. Enter access code: Arma3LegacyPorts. This should unlock the legacyports - Legacy Build (1.82 - ports).
  4. Download and play