Skip to content
Brendan McGrath edited this page Aug 22, 2019 · 40 revisions

The official build of Proton 4.2 and later runs ED

A custom build is no longer required.

The ED prefix, however, still requires dotnet40 installed (as of 4.2-8, vcrun2015 is no longer required).

You can install dotnet40:

The manual approach has more steps but does not require installation of any additional software. If you already have wine and winetricks installed, and are using Proton 4.2; then I recommend using the winetricks method.

Note that I personally experienced freezes (as the ED client launched) after upgrading to 4.11, but these appeared to be resolved by recreating the prefix and using the manual process. So I recommend recreating your prefix and using the manual process if upgrading to 4.11.

Both install methods require the setting of the WINEPREFIX environment variable.

The WINEPREFIX tells wine where to install software and apply configuration changes.

To set the WINEPREFIX, run the following:

STEAMAPPS=~/.steam/steam/steamapps # see comment below about this value
export WINEPREFIX=$STEAMAPPS/compatdata/359320/pfx

The value of STEAMAPPS may be different for your system. To confirm, right-click ED (in your Steam library) and go to Properties -> Local Files (the tab) -> Browse Local Files. The value of STEAMAPPS should be this path up until (and including) the steamapps directory.

Manual install

Make sure your WINEPREFIX is set (as shown above) and update your PATH to include the Proton version of wine.

For example:

PROTONSTEAMAPPS=~/.steam/steam/steamapps # see comment below about this value
PATH="$PROTONSTEAMAPPS/common/Proton 4.11/dist/bin:$PATH"

The value of PROTONSTEAMAPPS may be different for your system. To confirm, right-click the Proton version you will use to run ED (for example 'Proton 4.11'). This is found in Steam under Library -> Tools. Go to Properties -> Local Files (the tab) -> Browse Local Files. The value of PROTONSTEAMAPPS should be this path up until (and including) the steamapps directory.

You will also want the dotnet40 installer. If you have used winetricks, this will most likely be located here:

  • ~/.cache/winetricks/dotnet40/dotNetFx40_Full_x86_x64.exe

Otherwise you can download it with:

  • wget https://download.microsoft.com/download/9/5/A/95A9616B-7A37-4AF6-BC36-D6EA96C8DAAE/dotNetFx40_Full_x86_x64.exe

Now:

  1. Start with a clean prefix by deleting the current (rm -rf $WINEPREFIX)
  2. Run ED from Steam once (this will create the prefix and install a number of components before exiting quietly)
  3. Run wine64 uninstaller and remove 'Wine Mono Windows Support'
  4. Run wine64 winecfg and set 'Windows Version' to 'Windows XP'
  5. Install dotnet40 by running wine64 dotNetFx40_Full_x86_x64.exe from the path where dotNetFx40_Full_x86_x64.exe was downloaded
  6. Run wine64 winecfg again and set 'Windows Version' back to 'Windows 7'

You should now be able to launch and play ED from within Steam.

Using winetricks

You will need:

  • wine (4.0 stable is recommended for Proton 4.2, but anything higher should also work. For Proton 4.11, try using wine 4.11); and
  • winetricks (20190615-next or higher).

How to get these depends on your distro. Please see the Wine section of this wiki for more information.

Instructions for obtaining winetricks can be found here. Note that how wine-mono was installed changed with Wine version 4.6. wine-mono needs to be uninstalled to install dotnet40, and only a more recent version of winetricks will do this correctly.

With these installed, make sure your WINEPREFIX is set (as shown above) and run the following:

rm -rf $WINEPREFIX
winetricks -q dotnet40 win7

You can now launch the game (click 'Play' from within the Steam client).

Note that the errors that pop-up when you first launch ED can be safely ignored.

Also note that much of the troubleshooting section below still applies; although most issues are related to:

  • incorrect wine or winetricks version (see above); or
  • incorrect graphics driver (see the DXVK wiki for recommended versions)

ProtonDB is also a useful resource.

To install the legacy custom build:

Warning: If updating from a previous custom version of Proton for Elite Dangerous - please ensure you have completed the install before deleting the old custom version. Deleting a Proton version that is still configured for use by Steam causes all Proton games to be deleted.

  • create a 'compatibilitytools.d' directory under your steam 'root' dir. This is usually under ~/.steam/root (e.g: mkdir ~/.steam/root/compatibilitytools.d) but it appears to be under ~/.local/share/Steam/compatibilitytools.d on some other distros and installs.
  • copy Proton_3.16-8_Beta_ED.tar.gz to this directory
  • extract the contents (e.g: tar xf Proton_3.16-8_Beta_ED.tar.gz)
  • run ./fixED.sh - which can be found in the root of the extracted directory (this step is optional if you have dotnet40 installed in the ED prefix. As of Proton 3.16-8 Beta ED, vcrun2015 is no longer needed)
  • restart Steam
  • select this release from your Steam Play settings (as shown below) or force it just for Elite Dangerous (also shown below)

Select this option to use the custom build for all games (images are for older release - but process is the same):

steamplay

Or select this option to use the custom build only for Elite Dangerous:

forceED

Please note that you use this release at your own risk with no guarantees. Please see the LICENSE for full terms and conditions.

Troubleshooting:

Launcher doesn't... launch

If your logs show:

0009:err:module:fixup_imports_ilonly mscoree.dll not found, IL-only binary L"EDLaunch.exe" cannot be loaded 0009:err:module:LdrInitializeThunk Importing dlls for 

then dotnet40 has not installed correctly. Check that wine-mono was successfully removed by running:

wine64 uninstaller

If it is listed, you can manually remove it and try installing dotnet40 again.

After clicking Launch on the launcher, the game never starts

Make sure the driver for your graphics card is installed correctly and can run Vulkan. You can check with vulkaninfo or vulkan-cube.

If vulkaninfo returns:

failed with VK_ERROR_INITIALIZATION_FAILED

Then vulkan is not working correctly. If you are using Radeon on Ubuntu, please see here for details on how to resolve the issue.

When trying to login it says there was no or empty response

Check your internet connection. If you are using IPv6, check that it is working correctly.

I have also ran in to this issue when one of the addresses being returned by a DNS lookup was not reachable. A workaround was to add my own DNS entry to /etc/hosts.

Shader issues with Horizons

Make sure your graphics driver meets Proton's minimum requirements: https://github.com/ValveSoftware/Proton/wiki/Requirements#graphics-drivers-requirements---general

Also note that nvidia-driver-410 and xorg-x11-server 1.19 combinations have a compatibility issue.

Game launches but I get an error "Make sure you start the game from the launcher so that you are up to date"

Note: As of Proton 3.16-8 Beta ED, vcrun2015 is no longer required; therefore this error should no longer occur. If you are running an older version, then it should be noted vcrun2015 was recently added to the ED Steam Depot and so it is now recommended to delete your existing prefix (example: rm -rf ~/.steam/steam/steamapps/compatdata/359320) if this is the first time running the game with a ED custom build

This error occurs when vcrun2015 is not installed. If you have ran ./fixED.sh then you may have to install it manually.

If using winetricks; make sure you set the WINEPREFIX environment variable as described here.

For example:

WINEPREFIX=~/.steam/steam/steamapps/compatdata/359320/pfx winetricks vcrun2015 win7

If the install of vcrun fails with an error like "Another version is installed", then it may be best to start clean and try again (by deleting your prefix, example: rm -rf ~/.steam/steam/steamapps/compatdata/359320).

Can't change display settings to Fullscreen

You can manually change your configuration by editing the file located at: <steam_home>/steamapps/compatdata/359320/pfx/drive_c/users/steamuser/Local Settings/Application Data/Frontier Developments/Elite Dangerous/Options/Graphics/DisplaySettings.xml

Change the value of the 'FullScreen' setting to '1'

Unable to initialise network. Please check your connection

If your netLog (which can be found under .../steamapps/common/Elite Dangerous/Products/elite-dangerous-64/Logs) has an entry:

IPv4 is enabled, but address not found

then this is likely caused by a missing hostname entry in your /etc/hosts file. Add a new entry to /etc/hosts with your hostname resolving to a localhost address. For example:

127.0.1.1 mydesktop

Internal error creating window

A window pops up saying "Internal error creating window: Add value to collection of type 'System.Windows.Controls.UIElementCollection' threw an exception."

You need to set your Wine prefix to use Windows 7. You can do this via:

winetricks win7

or

winecfg and then change it in the 'Windows Version' drop down.

In both cases you will need to set the WINEPREFIX environment variable first (via an export for example). The value of WINEPREFIX will be <steam_install_loc>/steamapps/compatdata/359320/pfx where the steam_install_loc is the location you installed Elite Dangerous (as listed under Steam -> Settings -> Downloads -> STEAM LIBRARY FOLDERS).

Keyboard does not work at all

Sometimes, after the game is loaded and the main menu is shown, the mouse will work properly but no keystroke will be recognized. Ctrl+Alt+F might enable showing the framerate. Trying to enter Options -> Controls with mouse will not work.

This kind of input failure is usually worked around by simply re-launching the game. Usually 2-3 attempts are enough.

Note that if your keyboard works for navigation (WS keys) in the menu but you have other problems with bindings, this is not the same issue and will likely not be solved by mere reloading.

Custom version not showing in Steam

The compatibilitytools.d dir needs to be created under the root of your steam install. This can be found by running ps ux | grep steam.sh whilst steam is running. Further troubleshooting can be performed by referring to the compat_log.txt found under the <steamroot>/steam/logs dir.

Alternatives

Clone this wiki locally
You can’t perform that action at this time.