Just Cause 2 running on Linux (Ubuntu 18.04 with AMD and DXVK)

Channel:
Subscribers:
16,300
Published on ● Video Link: https://www.youtube.com/watch?v=SmWIvMCAG4Q



Just Cause 2
Game:
Duration: 19:20
1,291 views
13


Just Cause 2 always seemed like a game I'd never get to play free of Windows... until now.

Reports of this game working seem to be much more common with Nvidia than AMD. (However, I have no working Nvidia hardware I can test with.) I'm not quite sure why, my best guess is that it has to do with the wonderful things Nvidia's drivers do to your system libraries. ...oh well.

The key here (for me at least) is Vulkan... you need to remove it. You probably think that sounds crazy... well, it is. But for some reason it works. Now, before you read that, read on.

The problem with this damned game is that it's 32-bit, 64-bit systems not being that common back then. (Guess they really needed to appeal to those Pentium 4 gamers... running Vista/7 with a DX10 GPU? ...idk...) With our distros all (varyingly) going all 64-bit, this can cause problems. Of course normally all you need to do is enable multilib... but here's the thing: DXVK. You see, DXVK, if you weren't aware, requires Vulkan libraries in the same arch as the Windows program itself. If you're playing a more recent 64-bit game, great, it will probably just work. But with a 32-bit game like this, if you don't have 32-bit Vulkan libraries installed on your system, DXVK will fail to load and you'll fall back on Wine's own D3D10 implementation, which would not seem feature complete enough to allow this game to run.

Reading through Lutris's guide to installing 32-bit Vulkan libraries (https://github.com/lutris/lutris/wiki/Installing-drivers) I ran into a snag with that, when it came to installing the 32-bit libraries, apt would complain it couldn't due to the lack of libvulkan1:i386 (in other words, the 32-bit Vulkan library). So I install it... and apt complains that libvulkan1:i386 can't be installed due to a dependency conflict with... libvulkan1. The 64-bit version of the very same library. What, so you can't have 32-bit and 64-bit Vulkan installed on the system? That's dumb... Yeah, for a while I had just given up, not thinking it's important. I didn't think removing the 64-bit version of the library was a good idea. ...Until I decided to just stop caring (frustration in life...) and try it anyway just to see what happens.

Now removing Vulkan will also remove anything that lists it as a dependency. For me that was vlc and some gstreamer packages, mostly. Copy the list of packages into a text editor so you can reinstall them after. After you've ripped poor Vulkan out of your system, install the 32-bit lib... and it'll pull in the 64-bit version of itself as a dependency. That's freaking weird, and I don't really understand what happened there. (Did something happen to my package that removing it fixed? I did see apt listing different versions for the 32 and 64 libs...) So now that you have those both Vulkans installed, reinstall those other packages apt removed along with it.

Next I just used Lutris's script to install the game with Steam running in Wine. I couldn't get the game to work in Proton yet but there's some fixes listed on ProtonDB I haven't tried yet. Really, it seems running it in any Wine prefix that also has DirectX installed, and possibly some other libraries installed will work.

The game does have some interesting bugs still. Sometimes it will lock up when you try to quit, so you'll have to kill its process. When you first load the game it'll lag to hell but it goes away after a few minutes... I think that might be shader compilation? And full screen only seems to work with it in a virtual desktop. (Lutris's script configures it that way by default... complete with a cheesy background of the game's logo. However, in this video I made the game run without virtual desktop, this is because I couldn't show the Steam startup process, but I wanted you to be able to see I'm not faking the video...) But it seems quite playable.

tl;dr:
1. You need 32-bit Vulkan libraries installed
2. If you can't install them REMOVE VULKAN FROM YOUR SYSTEM, (write down anything else it removes) then install the i386 libs
3. This will put 64-bit Vulkan back on your system. (Phew.) Reinstall any other packages you removed with Vulkan.
4. Install the game and DXVK in a Wine prefix.
5. The game will (hopefully) work! You don't need a cracked EXE like I've seen claims of, it worked fine in Steam.







Other Statistics

Just Cause 2 Statistics For Sarah Onfy

Sarah Onfy currently has 1,291 views spread across 1 video for Just Cause 2. Less than an hour worth of Just Cause 2 videos were uploaded to his channel, making up less than 0.14% of the total overall content on Sarah Onfy's YouTube channel.