Borderlands 3 on Linux

I was struggling to get videos working on Borderlands 3 on Linux through Steam and Proton. Without the videos, there are parts of the game you are unable to get past.

I found pieces to the puzzle on Proton DB (https://www.protondb.com/app/397540) but there were still some tweaks I had to make.

YMMV, but this is what worked for me on Kubuntu 20.04 with Radeon Graphics.

Make sure you have told Steam to run all Windows games in Proton 5.

Run the game:

Before you can install the media foundation workarounds you need the Proton setup for the game to have run. That’s easily done by just running Borderlands 3 once and then exiting out once you’re at the title screen.

Install the prerequisites:

sudo apt install git cabextract python2 libudev1

Download and install media foundation workaround

Note that anywhere you see “Proton 5.0” you’ll need to use whatever the latest version number of proton is or the version you specified if you’re having the game run with a specific version.

mkdir ~/Downloads/bl3-mf/
cd ~/Downloads/bl3-mf/
git clone https://github.com/z0z0z/mf-install.git
cd mf-install/
WINEPREFIX="$HOME/.steam/steam/steamapps/compatdata/397540/pfx" PROTON="$HOME/.steam/steam/steamapps/common/Proton 5.0" ./mf-install.sh -proton
cd ..

Download and install the media foundation cab workaround

At the time of this post, the installer seems to be pointing to a file on Microsoft’s website that doesn’t exist anymore. These steps will download a working file manually and rename it to what the script expects. If you see a 404 error, you can ignore. If not, then the script has been fixed to point to a good location now.

sudo ln -svf /usr/lib/x86_64-linux-gnu/libudev.so.1 /usr/lib/x86_64-linux-gnu/libudev.so.0
git clone https://github.com/z0z0z/mf-installcab.git
cd mf-installcab/
wget http://download.windowsupdate.com/msdownload/update/software/svpk/2011/02/windows6.1-kb976932-x64_74865ef2562006e51d7f9333b4a8d45b7a749dab.exe
mv windows6.1-kb976932-x64_74865ef2562006e51d7f9333b4a8d45b7a749dab.exe windows6.1-KB976932-X64.exe
WINEPREFIX="$HOME/.steam/steam/steamapps/compatdata/397540/pfx" PROTON="$HOME/.steam/steam/steamapps/common/Proton 5.0" ./install-mf-64.sh -proton
cp mfplat.dll "$HOME/.steam/steam/steamapps/common/Borderlands 3/OakGame/Binaries/Win64/"

That’s it; see you on Pandora!

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.