Running Microsoft Flight Simulator X on Linux with Proton

no alter data available

A comprehensive guide to getting Microsoft Flight Simulator X working on Linux using Proton.

8th July 2024

linuxgamingprotonguide

Running Microsoft Flight Simulator X on Linux with Proton

Microsoft Flight Simulator X (FSX) is a beloved classic in the flight simulation community. For Linux users, running FSX can be a bit challenging, but thanks to Proton, it is possible to get it up and running smoothly. This guide will walk you through the steps needed to make FSX work on Linux using Proton.

Prerequisites

  • Protontricks: A handy utility to help with managing Proton prefixes.
  • Proton Version: Any version >= 7.0 should work.
  • Steam: Make sure FSX is installed through Steam.

Step-by-Step Guide

1. Select Proton Version

First, ensure you have a Proton version >= 7.0 selected for FSX.

  1. Open Steam and go to your Library.
  2. Right-click on "Microsoft Flight Simulator X: Steam Edition" and select "Properties".
  3. In the "Compatibility" tab, check the box "Force the use of a specific Steam Play compatibility tool".
  4. Select any Proton version >= 7.0 from the dropdown menu.

2. Initial Launch

Attempt to launch FSX. It will likely crash, but this step is necessary to set up the initial environment.

3. Use Protontricks to Install 'dxvk' and 'corefonts'

Protontricks simplifies the installation of necessary components.

  1. Install Protontricks: If you don’t already have Protontricks installed, you can install it using pip:
    bash
    pip install protontricks
    
  2. Identify Your Steam App ID: FSX’s Steam App ID is 314160.
  3. Install 'dxvk' and 'corefonts': Open a terminal and run the following commands:
    bash
    protontricks 314160 dxvk
    protontricks 314160 corefonts
    

4. Create Native Only Override for d3d10.dll and d3d10_1.dll

Overrides are necessary to ensure the correct handling of these libraries.

  1. Open Wine Configuration:
    bash
    protontricks 314160 winecfg
    
  2. Add DLL Overrides:
    • Go to the "Libraries" tab in the Wine configuration window.
    • In the "New override for library" dropdown, type d3d10 and click "Add".
    • In the "Existing overrides" list, find d3d10, select it, and click "Edit". Set it to "Native (Windows)".
    • Repeat the same process for d3d10_1.

Alternatively, you can set the DLL overrides directly via the launch options:

  1. Set Launch Options in Steam:
    • Open Steam.
    • Go to your Library.
    • Right-click on FSX and select "Properties".
    • In the "General" tab, click "Set Launch Options".
    • Enter the following launch options:
      bash
      WINEDEBUG=-all WINEDLLOVERRIDES="d3d10=n;d3d10_1=n" %command%
      

Additional Notes

  • Wayland-based WM Launch Option: If you are using a Wayland-based window manager, you should use the following launch option:
    bash
    WINE_DISABLE_VULKAN_OPWR=1 DXVK_HUD=full %command%
    
  • Reduced DXVK HUD: If you prefer a reduced DXVK HUD, use:
    bash
    DXVK_HUD=1 %command%
    

By following these steps, you should be able to install the necessary components and configure the DLL overrides to get FSX running with Proton. With these configurations, you can enjoy FSX on your Linux system, including the free-flight menu and proper in-flight functionality.

For more detailed information and user experiences, visit the ProtonDB page for FSX.

Improving Experience

Small Part Reject Radius

If you encounter issues with aircraft disappearing or flickering, you can adjust the SmallPartRejectRadius setting in the fsx.cfg file. This setting controls the distance at the aircraft parts are rendered. To adjust it:

  1. Locate your fsx.cfg file (usually in ~/.steam/steam/steamapps/compatdata/314160/pfx/drive_c/users/steamuser/AppData/Roaming/Microsoft/FSX).
  2. Open the file in a text editor.
  3. Add the following line under [SCENERY]:
    SmallPartRejectRadius=0
    

Troubleshooting

Black screen when entering game/aircraft

If you encounter a black screen when entering the game or selecting an aircraft, try the following: locate your fsx.cfg file (usually in ~/.steam/steam/steamapps/compatdata/314160/pfx/drive_c/users/steamuser/AppData/Roaming/Microsoft/FSX) and add Maximized=0 under [MAIN]. This should resolve the issue, as FSX sometimes has trouble with fullscreen mode.

It should be noted that when modifications are made to the fsx.cfg file, it is recommended to make a backup of the original file and you must do this while FSX is not running.

Low FPS

If you experience low FPS, try disabling the in-game anti-aliasing and anisotropic filtering. These settings can be taxing on the system and may cause performance issues. Along with that lower unneeded settings to get better performance such as shadows, reflections, water effects, etc.