protonscr

SILENT HILL f

protonclosed appid 2947440Game compatibility - UnofficialXAudio2
ValveSoftware/Proton#9194 · opened 2025-11-06 by mbriar · updated 2025-11-06 · 2 comments · github · game page · search this game
Mmbriar 2025-11-06 github

Compatibility Report

  • Name of the game with compatibility issues: Silent Hill f
  • Steam AppID of the game: 2947440

System Information

I confirm:

  • [x] that I haven't found an existing compatibility report for this game.
  • [x] that I have checked whether there are updates for my system available.

Proton log: steam-2947440.zip

Symptoms

Silent Hill f will crash during certain parts of certain cutscenes under specific conditions with 100% reproducibility. I will post a video of how to exactly reproduce the crash and attach save games below.

The conditions needed for the crash to occur that I have figured out thus far are:

  • the game's speech and text language need to be in Japanese
  • the needs to be in fullscreen or borderless, not windowed mode

This is a regression in Proton Experimental Bleeding Edge. I have bisected this (by downloading specific tags of Bleeding Edge with the steam console) to have started with experimental-bleeding-edge-10.0-265592-20251103-p65da75-w8b0c29-de9ad90-vda1f4f. So it should be wine commit 8b0c29f5b that causes the issue. This regression in definitely unrelated to vkd3d-proton, using latest vkd3d-proton git dlls dropped into "good" Bleeding Edge versions do not cause the issue.

Attaching gdb to the game, I get this output after a crash:

Thread 96 "SHf-Win64-Shipp" received signal SIGSEGV, Segmentation fault.
[Switching to LWP 32659]
RtlVirtualUnwind2 (type=<optimized out>, base=123145298051072, pc=123145298511647, function=<optimized out>, 
    context=<optimized out>, context@entry=0x304cd80, mach_frame_unwound=mach_frame_unwound@entry=0x0, data=data@entry=0x304cc78, 
    frame_ret=frame_ret@entry=0x304cc70, ctx_ptr=<optimized out>, ctx_ptr@entry=0x304cc80, limit_low=limit_low@entry=0x0, 
    limit_high=limit_high@entry=0x0, handler_ret=handler_ret@entry=0x304cbf8, flags=flags@entry=0)
    at ../src-wine/dlls/ntdll/unwind.c:2183
warning: 2183   ../src-wine/dlls/ntdll/unwind.c: No such file or directory
(gdb) bt
#0  RtlVirtualUnwind2 (type=<optimized out>, base=123145298051072, pc=123145298511647, function=<optimized out>, 
    context=<optimized out>, context@entry=0x304cd80, mach_frame_unwound=mach_frame_unwound@entry=0x0, data=data@entry=0x304cc78, 
    frame_ret=frame_ret@entry=0x304cc70, ctx_ptr=<optimized out>, ctx_ptr@entry=0x304cc80, limit_low=limit_low@entry=0x0, 
    limit_high=limit_high@entry=0x0, handler_ret=handler_ret@entry=0x304cbf8, flags=flags@entry=0)
    at ../src-wine/dlls/ntdll/unwind.c:2183
#1  0x00006ffffff66e46 in RtlVirtualUnwind (type=<optimized out>, base=<optimized out>, pc=<optimized out>, func=<optimized out>, 
    context=0x304cd80, handler_data=0x304cc78, frame_ret=0x304cc70, ctx_ptr=0x304cc80) at ../src-wine/dlls/ntdll/unwind.c:2272
#2  0x0000000141104421 in ?? ()
#3  0x0000000000000000 in ?? ()

Reproduction

Ggofman 2025-11-06 github

Thanks for the report! This should hopefully be fixed in the just updated Proton Experimental (Bleeding Edge branch, where it previously regressed).

Mmbriar 2025-11-06 github

I can confirm it's working again on latest bleeding edge, thanks for the quick fix!

Proton versions