protonscr

The Forever Winter: ~30s stall on launch (Epic Online Services bootstrapper / named pipe handshake)

protonclosed
ValveSoftware/Proton#10057 · opened 2026-08-11 by Seralth · updated 2026-08-11 · 1 comments · github
SSeralth 2026-08-11 github

Compatibility Report

  • Name of the game with compatibility issues: The Forever Winter
  • Steam AppID of the game: 2828860

System Information

  • GPU: AMD Radeon RX 7900 XTX
  • Video driver version: Mesa 26.1.6-arch3.1 (RADV NAVI31)
  • Kernel version: 7.1.5-1-cachyos-bore
  • Link to full system information report as Gist: https://gist.github.com/Seralth/301c80e24e92217ec66122a6f1843586
  • Proton version: proton-11.0-1b (also reproduces on proton-cachyos cachyos-11.0-20260703-slr, see below)

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.

Symptoms

The game reliably stalls for approximately 30 seconds before the splash screen appears, before the actual game binary (ForeverWinter-Win64-Shipping.exe) has even started — the delay is entirely within the outer bootstrapper process. This is not shader compilation (which is a separate, later, correctly-labeled stage) — it's a silent stall with no window and no indication anything is happening.

Reproduction

  1. Launch The Forever Winter with PROTON_LOG=1 %command% set in launch options.
  2. Wait ~30 seconds for the game to reach its splash screen.
  3. In the resulting steam-2828860.log, find a ~30 second gap in consecutive timestamps immediately following these lines:
    Loaded "C:\Program Files (x86)\Epic Games\Epic Online Services\os_toolbox.node"
    fixme:kernelbase:AppPolicyGetProcessTerminationMethod ...
    warn:threadname:NtSetInformationThread Thread renamed to "wine_threadpool_waitqueue"
    
  4. The log resumes after the gap with:
    fixme:sync:GetNamedPipeHandleStateW ... : semi-stub
    
    (repeated 3 times), immediately after which the game proceeds normally.

Measured twice, on two different Proton builds:

  • stock Proton 11.0-1b: 4.525s + 25.311s = 29.836s total (two-part gap, separated by a single mscoree:DllMain line)
  • proton-cachyos cachyos-11.0-20260703-slr: 29.838s total (single gap)

The two measurements differ by 2 milliseconds. The game's own bootstrapper debug output (visible via OutputDebugString passthrough in the attached log) shows it explicitly locating and launching an EOS helper process right before this stall:

[Info] [FGenericBootstrapper::Bootstrap] EOS User Helper application located:
'C:\Program Files (x86)\Epic Games\Epic Online Services\EpicOnlineServicesUserHelper.exe'.
[Verbose] [FWindowsPlatform::TryRunExecutable] Creating process with command:
'"C:\...\EpicOnlineServicesUserHelper.exe" '

This points at an IPC handshake (evidently over a named pipe, given the GetNamedPipeHandleStateW calls that follow the gap) between the game's bootstrapper and its EOS helper process, which either times out or hangs on Wine's incomplete implementation of that API before the bootstrapper gives up and continues anyway. Epic's own EOS SDK documentation states a default network/task timeout of 30 seconds when none is explicitly provided, which lines up closely with both measurements above.

GetNamedPipeHandleStateW's semi-stub status is not new — it's referenced in Wine bug reports going back to at least 2015 — so this may be a long-standing gap rather than a recent regression.

Full PROTON_LOG=1 output for the stock Proton 11 reproduction: https://gist.githubusercontent.com/Seralth/301c80e24e92217ec66122a6f1843586/raw/e053e3e218282ef6baac1dd981239b52e102f3d1/steam-2828860.log

Kkisak-valve maintainer 2026-08-11 github

Hello @Seralth, we're using one issue report per unofficially supported game title, so I've gone ahead and transferred this issue report to https://github.com/ValveSoftware/Proton/issues/8119#issuecomment-5247758564.

Proton versions

Launch options

Upstream links