Steam for Linux

Steam for Linux

Horizon: Forbidden West crashes on splash screen [SOLVED]
OS: gentoo linux 6.8.1
GPU: Sapphire Radeon RX5700XT
steam client: 1.0.0.79 64-bit
Proton version: Proton-8.0-5

Any other version of Proton (including GE), I get an error that my graphics card "does not support Shader Model 6.6." This is incorrect: my card supports up to Shader Model 6.7. With Proton-8.0-5, I can start the game's own launcher screen and change settings, but the moment I click "Play" the game will start, but immediately crashes during the Sony splash-screen.

Any tips how to fix this?
Last edited by Elassus Herron; 26 Mar @ 12:36am
< >
Showing 1-14 of 14 comments
Marlock 24 Mar @ 7:09am 
there may be an environment variable you can set for proton (look up proton and wine ones) to force it to expose shader model 6.6 as supported

check your version of Mesa

do not use AMD's proprietary driver

look for clues on protondb for that specific game

some games behave better if you ask proton to fake another gpu brand/model (look up how it can he done in proton and wine docs too)
Update on this: If I add `PROTON_LOG=1 %command%` to the game's options, the game starts, and gets me all the way to the opening screen where I can start a new game. However, 1) the log it writes is 7G by the time I quit, and 2) the game freezes on a black screen once I select "New Game".
So the game can start, it just … won't. If I remove the log option, the game crashes immediately.
Originally posted by Marlock:
there may be an environment variable you can set for proton (look up proton and wine ones) to force it to expose shader model 6.6 as supported
I'll look that up.

check your version of Mesa
24.0.2, updating now to 24.0.3

do not use AMD's proprietary driver
It's an open-source driver built into the kernel. What else would I use?

look for clues on protondb for that specific game
The ProtonDB page says it works flawlessly out of the box, which obviously isn't the case for me.

some games behave better if you ask proton to fake another gpu brand/model (look up how it can he done in proton and wine docs too)
I'll look that up.
I couldn't find any environment variables to report shader model support, nor to spoof the GPU. Can you help me find that?
In the meantime, fiddling with this has somehow completely trashed my EVE Online install (which resides on a different SSD and has its own prefix), so that now the whole desktop crashes out if I try to start EVE.
I think there's something seriously wrong with my wine/proton/vkd3d setup. Any idea how I'd even begin to debug it?
Marlock 24 Mar @ 11:54am 
AMD has a proprietary driver installer on their website... some people grab it and install it like they were used to do from windows

It's worse than Mesa (the one that comes out-of-the-box on all linux distros) for gaming and general desktop usage, and mostly relevant only for a few proprietary rendering software and for parallel computing (but even then the OpenCL module can be installed without the rest of the proprietary driver)
Marlock 24 Mar @ 1:05pm 
Originally posted by Elassus Herron:
I think there's something seriously wrong with my wine/proton/vkd3d setup. Any idea how I'd even begin to debug it?
i think you're right...

nothing i suggested should break other games, except maybe the Mesa update you applied, but even then it's very unusual

are you observing issues outside proton games? linux native games, steam app itself, anything weird other than gaming?

are you saying the proton logs were growing up to occupy 7GB? if yes, that's a lot, like too much, definitely something screaming in it

things to try, in no particular order:
a) check dmesg, since there is a system crash
b) run steam from the terminal and check the output
c) reinstall steam linux runtimes
d) run glxgears (opengl test) and vkcube (vulkan test) via terminal and check the output
Originally posted by Marlock:
are you observing issues outside proton games? linux native games, steam app itself, anything weird other than gaming?
I have no Linux-native games. EVE is on its own prefix/partition, using system wine. But I noticed an Eve Online folder on the brand-new Steam installation, and deleted it. It shouldn't have been there, but maybe that was a link from something on the EVE partition? But checking the installation integrity with the EVE launcher turned up nothing wrong.

are you saying the proton logs were growing up to occupy 7GB? if yes, that's a lot, like too much, definitely something screaming in it
Yup. As soon as I launch Horizon: Forbidden West from the Steam launcher, that file starts growing, and especially when the game itself starts, it grows at about 2GB/minute. This is what it says at the end of the log:
31418.822:012c:0320:warn:seh:dwarf_virtual_unwind backtrace: 0x7f6b7ae4701b: /home/elassus/carrier10/SteamLibrary/steamapps/common/Proton 8.0/dist/bin/../lib64/wine/x86_64-unix/ntdll.so + 0x5001b. 31418.822:012c:0320:trace:unwind:execute_cfa_instructions 7f6b7ae46f38: DW_CFA_def_cfa %rsp, 8 31418.822:012c:0320:trace:unwind:execute_cfa_instructions 7f6b7ae46f38: DW_CFA_offset %rip, -8 31418.822:012c:0320:trace:unwind:dwarf_virtual_unwind fde 0x7f6b7ae99344 len 6c personality (nil) lsda (nil) code 7f6b7ae46f38-7f6b7ae470a9 31418.822:012c:0320:trace:unwind:execute_cfa_instructions 7f6b7ae46f38: DW_CFA_advance_loc 15 31418.822:012c:0320:trace:unwind:execute_cfa_instructions 7f6b7ae46f47: DW_CFA_def_cfa_offset 0 31418.822:012c:0320:trace:unwind:execute_cfa_instructions 7f6b7ae46f47: DW_CFA_expression %rip 7f6b7ae9935a-7f6b7ae9935d 31418.822:012c:0320:trace:unwind:execute_cfa_instructions 7f6b7ae46f47: DW_CFA_advance_loc 14 31418.822:012c:0320:trace:unwind:execute_cfa_instructions 7f6b7ae46f55: DW_CFA_expression %rbx 7f6b7ae99361-7f6b7ae99363 31418.822:012c:0320:trace:unwind:execute_cfa_instructions 7f6b7ae46f55: DW_CFA_advance_loc 4 31418.822:012c:0320:trace:unwind:execute_cfa_instructions 7f6b7ae46f59: DW_CFA_expression %rsi 7f6b7ae99367-7f6b7ae99369 31418.822:012c:0320:trace:unwind:execute_cfa_instructions 7f6b7ae46f59: DW_CFA_advance_loc 4 31418.822:012c:0320:trace:unwind:execute_cfa_instructions 7f6b7ae46f5d: DW_CFA_expression %rdi 7f6b7ae9936d-7f6b7ae9936f 31418.822:012c:0320:trace:unwind:execute_cfa_instructions 7f6b7ae46f5d: DW_CFA_advance_loc 4 31418.822:012c:0320:trace:unwind:execute_cfa_instructions 7f6b7ae46f61: DW_CFA_expression %r12 7f6b7ae99373-7f6b7ae99376 pid 28093 != 28052, skipping destruction (fork without exec?)
That repeated for as far back from the end of the file as I could scroll. Here's the start of the log:
Proton: 1705700124 proton-8.0-5c SteamGameId: 2420110 Command: ['/path/to/steam/SteamLibrary/steamapps/common/Horizon Forbidden West Complete Edition/HorizonForbiddenWest.exe'] Options: {'enablenvapi', 'forcelgadd'} depot: 0.20240212.77547 pressure-vessel: 0.20240212.0 scout scripts: 0.20240212.0 sniper: 0.20240212.77547 sniper 0.20240212.77547 Kernel: Linux 6.8.1-gentoo #1 SMP PREEMPT_DYNAMIC Sat Mar 23 17:16:00 CET 2024 x86_64 Language: LC_ALL None, LC_MESSAGES None, LC_CTYPE None Effective WINEDEBUG: +timestamp,+pid,+tid,+seh,+unwind,+threadname,+debugstr,+loaddll,+mscoree
Are there launch options to get less aggressive debugging?

things to try, in no particular order:
a) check dmesg, since there is a system crash
b) run steam from the terminal and check the output
c) reinstall steam linux runtimes
d) run glxgears (opengl test) and vkcube (vulkan test) via terminal and check the output
I'll try some of those tomorrow. I'm too burned out tonight.

Thanks for the help. I'll warn you in advance that my system is a mess and the problems I have are always weird ones.

Cheers,
dmesg:
[] F2FS-fs (sdf1): Mounted with checkpoint version = d34c1 [] [drm:amdgpu_job_timedout] *ERROR* ring gfx_0.0.0 timeout, signaled seq=466129, emitted seq=466131 [] [drm:amdgpu_job_timedout] *ERROR* Process information: process exefile.exe pid 15311 thread dxvk-submit pid 15398 [] amdgpu 0000:09:00.0: amdgpu: GPU reset begin! [] [drm:amdgpu_dm_atomic_check] *ERROR* [CRTC:85:crtc-0] hw_done or flip_done timed out [] amdgpu 0000:09:00.0: amdgpu: failed to suspend display audio [] amdgpu 0000:09:00.0: amdgpu: BACO reset [] amdgpu 0000:09:00.0: amdgpu: GPU reset succeeded, trying to resume [] [drm] PCIE GART of 512M enabled (table at 0x0000008000900000). [] [drm] VRAM is lost due to GPU reset! [] [drm] PSP is resuming... [] [drm] reserve 0x900000 from 0x81fd000000 for PSP TMR [] amdgpu 0000:09:00.0: amdgpu: RAS: optional ras ta ucode is not available [] amdgpu 0000:09:00.0: amdgpu: RAP: optional rap ta ucode is not available [] amdgpu 0000:09:00.0: amdgpu: SECUREDISPLAY: securedisplay ta ucode is not available [] amdgpu 0000:09:00.0: amdgpu: SMU is resuming... [] amdgpu 0000:09:00.0: amdgpu: use vbios provided pptable [] amdgpu 0000:09:00.0: amdgpu: smc_dpm_info table revision(format.content): 4.5 [] amdgpu 0000:09:00.0: amdgpu: SMU is resumed successfully! [] [drm] kiq ring mec 2 pipe 1 q 0 [] [drm] VCN decode and encode initialized successfully(under DPG Mode). [] [drm] JPEG decode initialized successfully.
is that bad? It looks bad.
Marlock 24 Mar @ 2:28pm 
Are there launch options to get less aggressive debugging?
it's a great idea... i have no idea, if it exists, never heard of it

maybe you can use grep to eliminate repetitive lines that seem pointless from one of those beastly logs... i think there is a flag on that command that can exclude results matching the string you pass to it, and that it can read from a file input directly and also output to a file directly

i'm sure someone will have better ways to clean the log up a bit via bash
Marlock 24 Mar @ 2:30pm 
dmesg seems to show a gpu crashing and automatically reseting...

it's not very informative on the root if the issue, at least not to my non-expert eyes

hopefully someone else with more keen eyes for those logs will join this thread to comment further
Last edited by Marlock; 24 Mar @ 2:39pm
indeed. I was being somewhat tongue-in-cheek: that very much looks like the gpu driver crashing, which is … well, bad.
I'll see if vkcube runs when I try some more debugging in the morning.
I solved my problem. It turns out I also had amdvlk installed, and it was severely interfering with vkd3d-proton, both on H:FW and EVE Online. Uninstalling it resolved the issue.
Holy crap, this game is so beautiful.
Thank you very much for the help. Having to debug it to answer questions helped me isolate the problem and fix it. Cheers.
Marlock 26 Mar @ 5:30pm 
yes, horizon is gorgeous, both the first and the second title

and don't get me started on the first game's story!!! i love it so much!!!
< >
Showing 1-14 of 14 comments
Per page: 1530 50