The new version of Ubuntu with a codename “Local Fossa” has arrived a couple of months ago called ‘Ubuntu 20.4’ based on Linux. It’s the improved version of its predecessor with a set of enhancements like booting speed, visual changes, improved UI, redesigned lock screen, flickering-free booting experience, and more. Meanwhile, the best part is that all the Ubuntu users can now play or run the Spelunky 2 game on Ubuntu Linux 20.4 (Proton 5.18).

So, if you’re also one of the Ubuntu users and want to play the newly launched roguelike action game Spelunky 2 on your Ubuntu PC/Laptop then this guide is for you only. Though the game is officially available for PS4 and Windows platforms only, thanks to a Redditor u/gla308 for providing the workaround below. Now, without wasting any more time, let’s get into it.

How to Play or Run Spelunky 2 on Ubuntu Linux 20.4

That Redditor has tested the game on the Ubuntu 20.4 with the Proton 5.18 source on the AMD Ryzen 7 2700X CPU and RX Vega 56 GPU. Based on Wine tkg git, the workaround has been developed which is quite appreciated. Now, let’s jump into the steps below.

  • Download the latest source code (tar.gz) file from Wine tkg git releases.
  • Next, extract the file into a folder > Launch the Terminal.
  • Type the below command and hit Enter to the subdirectory proton-tkg:

cd

  • In the file proton-tkg.cfg, set the following commit or whatever the last commit was:

_staging_version=“9acfa3b89931e628d7b62e843934fce26b880405”

  • Add 32-bit compatibility by running the command line below:

sudo dpkg –add-architecture i386

  • Next, run the below command line as well:

sudo apt update

  • For some reason, these aren’t listed as deps in the proton-tkg wiki guide, but they are needed to build dxvk. One of glslang-tools or glslang-dev may not actually be needed, but installed both anyway:

sudo apt install meson gcc-mingw-w64-i686 g++-mingw-w64-i686 gcc-mingw-w64-x86-64 g++-mingw-w64-x86-64 glslang-tools glslang-dev

  • Now, run all of the below commands one by one in sequence. If prompted, select the posix alternatives. This is needed to avoid build errors in dxvk:

sudo update-alternatives –config x86_64-w64-mingw32-gcc

sudo update-alternatives –config x86_64-w64-mingw32-g++

sudo update-alternatives –config i686-w64-mingw32-gcc

sudo update-alternatives –config i686-w64-mingw32-g++

  • Install the remaining deps. The wiki guide is out of date. Ubuntu 20.04 can handle all of these dependencies at once:

sudo apt install git autoconf bison ccache debhelper desktop-file-utils docbook-to-man docbook-utils docbook-xsl flex fontforge gawk gettext libacl1-dev libasound2-dev libcapi20-dev libcups2-dev libdbus-1-dev libgif-dev libglu1-mesa-dev libgphoto2-dev libgsm1-dev libgtk-3-dev libkrb5-dev liblcms2-dev libldap2-dev libmpg123-dev libncurses5-dev libopenal-dev libosmesa6-dev libpcap-dev libpulse-dev libsane-dev libssl-dev libtiff5-dev libudev-dev libv4l-dev libva-dev libxslt1-dev libxt-dev ocl-icd-opencl-dev oss4-dev prelink sharutils unixodbc-dev valgrind schedtool libfreetype6-dev xserver-xorg-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev gcc-multilib g++-multilib curl fonttools libsdl2-dev python3-tk libvulkan1 libc6-dev linux-libc-dev libkdb5-9 libppl14 libcolord2 libvulkan-dev libgnutls28-dev libgstreamer-plugins-base1.0-dev libgstreamer1.0-dev libpng-dev libkadm5clnt-mit11 libkadm5srv-mit11 libavcodec-dev libavutil-dev libswresample-dev libavcodec58 libswresample3 libavutil56 libfaudio0 libfaudio-dev libvkd3d-dev libxinerama-dev libxcursor-dev libxrandr-dev libxcomposite-dev xserver-xorg-dev:i386 libfreetype6-dev:i386 libfontconfig1-dev:i386 libglu1-mesa-dev:i386 libosmesa6-dev:i386 libvulkan-dev:i386 libvulkan1:i386 libpulse-dev:i386 libopenal-dev:i386 libncurses-dev:i386 libfaudio0:i386 libfaudio-dev:i386 libvkd3d-dev:i386 libgnutls28-dev:i386 libtiff-dev:i386 libldap-dev:i386 libcapi20-dev:i386 libpcap-dev:i386 libxml2-dev:i386 libmpg123-dev:i386 libgphoto2-dev:i386 libsane-dev:i386 libcupsimage2-dev:i386 libkrb5-dev:i386 libgsm1-dev:i386 libxslt1-dev:i386 libv4l-dev:i386 libgstreamer-plugins-base1.0-dev:i386 libudev-dev:i386 libxi-dev:i386 liblcms2-dev:i386 libibus-1.0-dev:i386 libsdl2-dev:i386 ocl-icd-opencl-dev:i386 libxinerama-dev:i386 libxcursor-dev:i386 libxrandr-dev:i386 libxcomposite-dev:i386 libavcodec58:i386 libswresample3:i386 libavutil56:i386

  • Finally, run the following script:

./proton-tkg.sh

  • This process may take a while to build. Once it’s done, you’ll need to launch the Steam client on your Ubuntu by downloading from the Steam website.
  • Then you’ll need to forcefully load the Spelunky 2 game with the Proton package that you’ve just built. Head over to the Steam launcher > Click on Steam > Settings > Steam Play > Click on ‘Enable Steam Play for supported titles’ > Under Advanced section, click on ‘Enable Steam Play for all titles’ > Click on ‘Use this tool instead of game-specific selections from Steam’ > Select Proton version from the Compatibility tool > Click on OK and restart Steam.

The Spelunky 2 game will run just fine without any glitch or noticeable errors. However, there is a new Ubuntu version has been released. So, you may a ‘non-supported’ prompt while launching the game but there will be no issue in the game launch or gameplay.

However, tabbing out of the game may cause it to minimize, and unminimizing may cause it to open in the wrong monitor. But you’ve to deal with it.

Meanwhile, some of the Ubuntu users have also reported that they have to delete the game’s wine prefix and set the launch option as follows:

PROTON_USE_WINED3D11=1 PROTON_NO_ESYNC=1 %command%

That’s it, guys. We hope you’ve found this guide useful. For further queries, you can comment below.

Source: Reddit