Freelancer Discovery setup with Lutris, Wine at Linux

This article describes installation of Freelancer Discovery online space simulator for Linux.

Intro

We show specifics for Kubuntu 22.04 LTS, but it should be usable for any Linux as long as you are able to install Lutris and having reasonable CPU architecture (we go with amd64). We organize article in paragraphs having next structure:

In theory the same guide can be adopted for any Freelancer/mod installation. As well as serve as inspiration to how dockerize its server. There are wine docker images, and it would be interesting to make it happen.

The guide was written on 2024.07.14 and last time checked it is all working on 2024.07.14.

Dependencies

Writing last versions of dependencies with which it was possible to make it happen:

1. Setup Lutris

Visit list of lutris installating instructions Check your OS and install Lutris accordingly. Article guarantees all this stuff will work with lutris 0.5.16, how it will work with other versions is not guaranteed.

if you are able to launch Lutris and see it, the installation is succeful

Verify that u installed Lutris 0.5.16 in Lutris About. lutris --version for CLI. If we will use newer Lutris version, the guide will be updated.

2. Setup Wine

There are many wine versions, but this one is the last that keep the UI text from not cutting out and also keeps intro video playing nicely with Freelancer Vanilla.

the folder inside expects to look like this

Relaunch lutris, u should see it in discovered wines

P.S. Known issues for Wine 9.0. For me the keyboard is not available right away at the game entering. It becomes active only if i alt tab and return. Ensure on game enter, u can open chat by “Enter” before flying from planet! Quick alt tabbing in game helps me to fix it.

3. Setup Freelancer and Wine Prefix

Visit the Freelancer installing link and load Freelancer.iso

For fast speed recommended using torrentink link and loading via Transmission (or Qbittorrent). Unpack the iso with archive program to some folder (i used Ark app coming as default in Kubuntu).

After that u need to create locally installed Game in Lutris. Name in whatever way u wish.

4. Setup winetricks installable dependencies.

Open Lutris bash console for the current application

winetricks msacm32
winetricks dotnet40
winetricks dotnet45
winetricks directplay
winetricks webdings

and install this list of dependencies

in the process u will see different stuff that resembles errors. that’s okay

After installation. Go to your Wine Prefix folder and confirm in file winetricks.log (for me it is at the path /home/naa/apps/freelancer_related/wine_prefix_freelancer_online/winetricks.log), that u have shown as installed next stuff:

msacm32
remove_mono internal
winxp
dotnet40
remove_mono internal
dotnet45
directplay
webdings

6. Setup DxVk

open for Lutris application Freelancer Online (or how u named it) options menu and open Wine Configuration and turn on overrides for d3d8.dll and d3d9.dll

if u did this step correctly, Alt tabbing will work correctly regardless of how many times u alt tabbed at full screen.

You can optionally add Environment variable DXVK_HUD=devinfo,fps,api as described here in docs https://github.com/doitsujin/dxvk?tab=readme-ov-file#dll-dependencies

if u did this step, later in game u will see turned on d3d8 in a HUD overlay for confirmation

5. Setup Discovery Freelancer

Visit the Freelancer installing link again and load Discovery Installer.

Change in Lutris app configuration executable path to

Post installation

I recommend going into your wine prefix created location, into user ~/apps/freelancer_related/winreprefix_freelancer_vanilla/drive_c/users/steamuser. Wine by default creates Documents folder as symlink. i recommend removing symlink and just having as real folder. That is the best decision for multiple Freelancer installations, because they all very conflictful regarding already present save games if they have different installed mods and it will help to keep them separate and not crashing with weird errors.

Go to your dedicated wine prefix created for this Freelancer vanilla or mod (We create separate Wine prefixes for each!)

WARNING: if you crash with weird errors 000c22fe, 000c21de on New Game, that can be because your “My Games” is still symlinked to single place. Rename/delete existing ones to ensure u stat a fresh one not touched by other Freelancer mods. Or use advice above and delete symlink and create Documents folder as recommended

7. Setup dll override

u need extra variable into Lutris app configuration in Runners options. key msacm32 and value n,b

It is possible to do the same by opening Wine Configuration menu for the app and selecting the dll override there

8. Launching game

U should be having already selected DSLauncher.exe as main executable

Launch the game :) You are ready. Close notes, agree to license, patch to latest and launch as normal.

Extra info - d3d8to9 v1.12.0

The guide used dxvk 2.4 with direct 8 support to launch the game, but d3d8to9 v1.12.0 can be used as alternative.

Extra info - Fonts.

By default you don't need this step, if u followed Step "3. Setup Freelancer and Wine Prefix" step correctly!

If you copied game from windows 10 instead of installing in Lutris/Wine, then u need to put the fonts manually in windotws/Fonts folder

U can find them in the freelancer ISO

Extra info - Legacy reliable Alt-tab switch.

By default you don't need this step, if u followed Step DxVK 2.4 setup correctly!

Current version with ## 6. Setup DxVk having manual d3d8/d3d9 from dxvk makes alt tab working reliably at it is. Having this section only out of legacy how this problem was solved in the past.

Older instruction suggested installing gamescope separately and turn on it in Lutris app configuration. It should make alt-tab working reliably.

P.S. Alternatively can be used Virtual Desktop feature.

Extra info - vendoring dependencies

Just in case providing copies of all main dependencies, vendored in for this articles, in case they aren’t longer downloadable.

Extra info - possible unexpected dependencies.

as it was mentioned before lutris/now 0.5.16 version is currently used and it may be turning on some unexpected other important stuff. Just in case showing page with all app default settings. This information may be will be helpful for future maintenance.

Extra info - Limit Frame rate

Some players need limiting their frame rate. You can do it by inserting desired framerate into Env variables of application DXVK_FRAME_RATE=150 for example

You can validate it works, by also injecting env var DXVK_HUD=devinfo,fps,api to see FPS in real time

Extra info - Migrating from legacy Wine Proton 8.0.4

For those of you who used Wine Proton 8.0.4 before, you can reuse same created Wine Prefix

Acknowlegments