While you're here, please consider supporting GamingOnLinux on:
Reward Tiers: Patreon. Plain Donations: PayPal.
This ensures all of our main content remains totally free for everyone! Patreon supporters can also remove all adverts and sponsors! Supporting us helps bring good, fresh content. Without your continued support, we simply could not continue!
You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
Reward Tiers: Patreon. Plain Donations: PayPal.
This ensures all of our main content remains totally free for everyone! Patreon supporters can also remove all adverts and sponsors! Supporting us helps bring good, fresh content. Without your continued support, we simply could not continue!
You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
Login / Register
- Steam Controller 2 is apparently a thing and being 'tooled for a mass production' plus a new VR controller
- Steam Deck OLED: Limited Edition White and Steam Deck Australia have launched
- NVIDIA stable driver 550.135 released for Linux
- Sony reportedly looking to acquire Kadokawa, owner of ELDEN RING dev FromSoftware
- Dungeon Clawler will grab hold of your free time now it's in Early Access, plus keys to give away
- > See more over 30 days here
-
UnderworldGodot is an engine recreation of Ultima Under…
- Shmerl -
Proton Experimental for Steam Deck / Linux fixes Disgae…
- BladePupper -
JSAUX released their first White 6-in-1 Docking Station…
- RFSharpe -
Proton Experimental for Steam Deck / Linux fixes Disgae…
- Cybolic -
Dungeon Clawler will grab hold of your free time now it…
- Liam Dawe - > See more comments
- What have you been listening to?
- Shmerl - What do you want to see on GamingOnLinux?
- Linux_Rocks - Our own anti-cheat list
- Liam Dawe - Weekend Players' Club 11/22/2024
- Liam Dawe - Types of programs that are irritating
- Cyril - See more posts
View PC info
Ah, Just Cause 2. 'Twas a lovely game of a guy going to a tropical island with a grappling hook, overthrowing the government, and just causing a lot of trouble. (heh heh, no one's ever made that joke before.) There's just one problem. IT'S A DIRECTX 10 game. Ah DirectX 10, the bastard version that was exclusive to the oh so beloved Windows Vista! Windows 7 had come out less than a year ago at least, but so many of us were on Windows XP so we couldn't play it! And while disgust over Vista caused a few Linux converts, the idea of Linux gaming back then was somewhat laughable (nervously eyes this site's age) and either way, many of us stuck with XP way past its shelf life, eventually moving to Windows 7. And all was well. Until Microsoft released 8 and 10... the straw that broke my back, and here I am desperately trying to get everything working on Linux! (For a while, it's been a long process.)
Oh right. It's 10 years later. Native Linux ports are slightly common! Steam supports it! Gog supports it! And Wine has made incredible progress, almost any game from the Windows XP era onward works by now. But not Just Cause 2. This game was a thorn in my side, one of the only games I couldn't get running with Wine/XP or older. (Since it's a DX10 game... As for anything requiring XP and older that still doesn't work... I'll just live with running older Windows on old hardware.) For a lot of you, if you try to play it, you'll get a fatal DirectX error or nothing at all. It just won't work.
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.) 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.
Video of it running: https://www.youtube.com/watch?v=SmWIvMCAG4Q (Note: in the 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...)
(Hope this was okay, I guess I rambled a bit.)
View PC info
Anyway, it doesn't seem to work in Proton at all, either in Steam or standalone. It would seem the hacks Proton does to make Windows games better integrated with the Linux Steam client interfere with the DRM... and the Windows Steam client, for that matter. (Good job.) I guess that's why people were saying to use cracks to play the game. (But it works without cracks in the Windows Steam client within regular Wine, at least.)
I actually ended up playing the game until 4 AM last night, ha ha whoops. The game didn't seem affected by the explosion bug I've read about, because I blew lots of stuff up (even going through a mission) and the game kept playing at full speed. Guess that's only an Nvidia bug, ironically. (Bug with their Vulkan implementation?)
View PC info
I dunno about difficulty, admittedly I'm playing on the easiest setting, but I hopped into one of those turrets on top of a military vehicle and just started raining down a torrent of hellfire, blowing up every vehicle and killing everyone in sight... even some of the factions trying to fight alongside me. (Oops.) I lasted quite a while doing this and even got an achievement out of it.
We can’t because your profile is private.
View PC info
View PC info
Sorry, I didn't realize that. It's fixed now, thanks.
Last edited by obscurenforeign on 11 May 2020 at 1:30 am UTC
Possibly, though not on the phone where no such button appears.
Hmm, that’s probably something for Liam to look into.