Dragon's Dogma 2

Dragon's Dogma 2

Not enough ratings
How to Run On Linux With Proton
By Kyrrisayo
This is a compilation of everything I've found so far in trying to get Dragon's Dogma 2 to run on Linux via Proton. Any comments with suggestions about additions or corrections to this guide are very welcome.
   
Award
Favorite
Favorited
Unfavorite
Introduction
Apologies that this guide is so disorderly currently. I'll try to come back and clean it up later. I just figured it was worth getting as much out as I could, as quickly as I could for those, like, who've been struggling with this.

I figured someone should create at least a basic guide with the information we've found so far. If anybody has any information they'd like to share or have included here, please don't hesitate to leave a comment.

To be clear, I haven't yet gotten DD2 to run, but I was able to reproduce my issues with DD2 in the "Character Creator and Storage" demo and overcome them. I'll update this as soon as I have actually gotten it to run myself, but I'm fairly confident that it'll work this next time with what I found. (It didn't. See the DX11 and Proton Version sections)

Throughout my process, I tried multiple different versions of Proton and several different combinations of launch settings. I would tend to crash at one of three places: either right away, before the "Compiling Shaders" loading bar started filling up, immediately after it finished, or immediately after completely the screen brightness adjustment where it switches to show the "autosave" feature prompt. After crashing, the crash reporter would always fail to complete, sometimes opening the Wine "System Info" window. Mostly, I saw 0x2000000 errors.
Denuvo
Due to the DRM included with the game, Denuvo, you have 5 attempts every 24 hours to launch the game. You read that right. You have 5, and only 5 attempts on Linux (through Proton/WINE, at least) to launch the game. I assume this applies to launching the game and quitting normally as well.

Even on the same version of Proton, it seems you only have 5 attempts every 24 hours. Use these attempts wisely, and, if you can, and you don't want to be stuck waiting another 24 hours at least to play the game, stop trying after your fourth attempt and go run it on Windows.

Once your 5 attempts are up, you should get a popup window with an error message reading something similar to "Sorry, something went wrong. For solutions, please visit: https://support.codefusion.technology/anti-tamper/?e=88500006&l=english&s=at".




The link should take you to a website stating that you'll have to wait 24 hours before you can authenticate on new devices.
Proton Versions
The only version of Proton that I've found to work myself so far, is GE-Proton9-2.

I tried DD2 with my Character Creator setup, including the version above, and it would always through this error right after the "Re Engine" splash screen:



The text of the window:

Wine C++ Runtime Library Assertion failed! Program: Z:\home\USERNAME\.local\share\Steam\steamapps\common\Dragons Dogma 2\DD2.exe File: ../src-wine/dlls/winevulkan/loader-thunks.c Line: 5626 Expression: "!status && "vkLatencySleepNV"" Press OK to exit the program, or Cancel to start the Wine debugger.

After reading an older post on ProtonDB mentioning the type of error, I tried GE-Proton9-1, and it actually worked! Finally to the main menu in DD2.

It's a custom version of Proton made by a dude called "GloriousEggroll". It can be acquired here[github.com]. Here are some basic instructions for installing a GE version of Proton, copied from the linked page:

Download a release from the Releases[github.com] page.
Create a ~/.steam/root/compatibilitytools.d directory if it does not exist.
Extract the release tarball into ~/.steam/root/compatibilitytools.d/.
tar -xf GE-ProtonVERSION.tar.gz -C ~/.steam/root/compatibilitytools.d/
Restart Steam.
Enable proton-ge-custom[github.com].

Here is a list of other versions of Proton that I've seen users report as having been able to run DD2:
  • GE-Proton8-30
  • GE-Proton9-2
  • Proton Experimental
  • Proton 9.0 (Beta)
DirectX11
At this point, I'm starting to believe that DD2 can't be run through Proton with DX12 at the moment and that some Linux systems are defaulting to DX11, while others DX12, likely depending on distro, graphics drivers or other configurations.

This is the part where I explain how I finally got the Character Creator to the main menu (past the "autosave" screen). Having found this forum post, I decided to try it out.

I opened up "config.ini", in the game's root install directory, (located for me at /home/USERNAME/.local/share/Steam/steamapps/common/Dragons Dogma 2/), and I changed line 3 from "TargetPlatform=DirectX12" to "TargetPlatform=DirectX11".

The game didn't work immediately after that for me, but after adjusting some launch parameters and switching back to GE-Proton9-2, it did.


Unfortunately, much of the above (in this section) is likely wrong, but I'm considering leaving it in, to be as complete as possible.

Now, for some reason (maybe I just didn't notice it before) the "config.ini" file gets reset to it's default whenever the game launches, meaning it's likely not actually using DX11 after all. I tried several other methods of forcing it, but they didn't fix my issues with DD2 either.

Maybe my earlier issues were just related to vkd3d (the DX12 api on top of Vulkan). If that doesn't make any sense to you, don't worry about it. Seriously, you don't want to have to go down that rabbit-hole unless you absolutely need to.
Launch Options
This is the launch settings string that eventually got it to work for me, after having made the previously-mentioned changes:
PROTON_HIDE_NVIDIA_GPU=0 PROTON_ENABLE_NVAPI=1 RADV_PERFTEST=nosam PROTON_ASYNC=1 VKD3D_CONFIG=dxr11,no_upload_hvv %command%

Personally, I haven't bothered to figure out what most of this means exactly yet. In fact, I'm fairly certain that the only part I really needed was
VKD3D_CONFIG=dxr11,no_upload_hvv %command%

Interestingly enough, I can remove either part, "dxr11" or "no_upload_hvv", and it still seems to work just fine, but, if I remove both, it the game only runs at (literally) 1fps through all of the cutscenes. I don't know why this is. If anybody has any ideas, I'd love to hear them.
Performance
Adding " -useallavailablecores -gc.buffer 2048 -force-d3d11-no-singlethreaded -maxMem=16384 -high" after %command% in my launch options more than doubled my framerate in the menu (from ~22fps to ~64)

Example:

%command% -useallavailablecores -gc.buffer 2048 -force-d3d11-no-singlethreaded -maxMem=16384 -high

I've seen people comment that the following improves performance in game, but I have yet to confirm anything myself:

"gamemoderun" launch option

"VKD3D_CONFIG=,no_upload_hvv" launch option
TL;DR
You only have 5 attempts each day to launch the game with Proton, due to Denuvo.


These settings worked for me with the Dragon's Dogma 2:

Proton Version
GE-Proton9-1

Launch Options
PROTON_HIDE_NVIDIA_GPU=0 PROTON_ENABLE_NVAPI=1 RADV_PERFTEST=nosam PROTON_ASYNC=1 %command% -useallavailablecores -gc.buffer 2048 -force-d3d11-no-singlethreaded -maxMem=16384 -high


These settings worked for me with the Character Creator:

Proton Version: GE-Proton9-2
Changed game's "config.ini" file's "TargetPlatform" to "DirectX11"
Launch Options: VKD3D_CONFIG=dxr11,no_upload_hvv %command%
Acknowledgements
ChrisDonelly, from this thread, for posting the part about setting the TargetPlatform to DX11

This dude for posting his launch options that I copied verbatim

All of the fine folks who've commented in this thread: https://gtm.steamproxy.vip/app/2054970/discussions/0/4289188517340782678/

Proton DB[www.protondb.com]Even though none of the reviews were there for me when I initially posted this guide (probably a caching issue on my side), it's a great resource for any game

GloriousEggroll[www.patreon.com], for saving the day yet again with ProtonGE

Rifter for inspring me to even write this guide in the first place with his very sad Steam review

The Linux community in general for being so willing to help eachother out
3 Comments
Philolsopher 30 Jun @ 6:03am 
Thanks a ton for this!
Kyrrisayo  [author] 23 Mar @ 1:40pm 
Steam Deck is Linux
Geezo 23 Mar @ 12:46pm 
how about steam deck?