protonscr

Permafrost

protonopen appid 2254990Game compatibility - Unofficial
ValveSoftware/Proton#10241 · opened 2026-10-10 by callynsky · updated 2026-10-10 · 0 comments · github · game page · search this game
Ccallynsky 2026-10-10 github

steam-2254990-anon.log.gz

stosy-winedbg-anon.txt

steam-runtime-diagnostics-anon.txt

Compatibility Report

  • Name of the game with compatibility issues: Permafrost
  • Steam AppID of the game: 2254990

System Information

  • GPU: AMD Radeon RX 7600 (RADV NAVI33)
  • Video driver version: Mesa 26.0.8
  • Kernel version: 7.0.0-38-generic
  • Full system information: see the collapsible section at the end (Steam -> Help -> System Information; Steam UI is in Polish)
  • Proton version: Proton Experimental (experimental-11.0-20261001); also reproduced with Proton 11.0 and GE-Proton11-6
  • Steam Runtime Diagnostics attached: steam-runtime-diagnostics-anon.txt (anonymized)

Distribution: Ubuntu 26.04.1 LTS, KDE Plasma 6.6.6 (Wayland session, game runs through Xwayland).
Game version: 0.44.2.4649-milestone (current build 25854170); hang first captured on 0.44.2.4638-milestone (build 25839346). Still reproducible on the current build.

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 attached: steam-2254990-anon.log.gz (PROTON_LOG=1, standard fi layout, current build 25854170; home directory path replaced with ~).

Symptoms

After loading a character (new game or existing save) the screen stays black. Audio keeps
playing and the mouse cursor is visible. The main menu and settings render fine before
loading. The window stops responding.

The main game thread uses 100% of one CPU core. All other threads (RenderThread, RHIThread,
vkd3d queues, async loading, IO) are idle. GPU load is about 6%.

Stack of the main thread, captured with winedbg (attach, bt all). Four samples over about
50 seconds all show the same stack:

=>0 win32u (+0x17374)                      (NtUserToUnicodeEx syscall into the unix side)
  1 user32 (+0x4a714)                      ToUnicode
  2 UKiBLIIFunctionLibrary::KeyCodeToCharCode(KeyCode=0xdb, ScanCode=0xd)
  3 UKiBLIIFunctionLibrary::RemapKey_QwertyToSystem
  4 UKiBLIIFunctionLibrary::execRemapKey_QwertyToSystem
    ... Blueprint VM frames ...
 15 UInputIconWidget::OnInputDeviceChange(bGamepad=true)
 16 UInputIconWidget::NativeConstruct
    ... widget construction ...
 71 UGeneralHUDWidget::AddToggleablePanel
 72 UUI_ManagerComponent::InitHUD
 75 APermaPlayerController::LOCAL_FinalizePlayerInitialization
 76 APermaPlayerController::LOCAL_RecheckInitializationData

The full dump of all threads is attached (stosy-winedbg-anon.txt).

Trigger:

  • The keyboard layout has a dead key at scancode 0x0D. Reproduced with the standard Finnish
    layout (fi) and with a custom Finnish-based layout; both have dead_acute / dead_grave on
    <AE12>, the key right of "+". VK 0xDB is VK_OEM_4.
  • Observation: the gamepad was the active input device during the captured hang
    (bGamepad=true). Not tested without a gamepad.

Results on the current build 25854170:

  • Standard Finnish layout (fi), with dead keys: black screen, the hang happens (the attached
    Proton log is from this run).
  • Custom Finnish-based layout with dead keys: the same hang.
  • The same custom layout without dead keys (dead_acute replaced by acute, etc., like
    fi(nodeadkeys)): the game loads and runs normally.

Hypothesis: the game's KiBLII plugin calls ToUnicode in a loop until it gets a non-negative
result, which is a common way to flush a pending dead key. On Windows, calling ToUnicode again
for a pending dead key returns a non-negative value (the spacing form of the accent) and clears
the dead-key state, so such a loop ends. Under Wine/Proton it apparently keeps returning -1 for
this dead key, so the loop never ends. The game also has a bug (the loop has no upper bound;
reported to the developer separately), but the ToUnicode/ToUnicodeEx dead-key behaviour
here may differ from Windows.

Reproduction

  1. Use a keyboard layout with a dead key at scancode 0x0D, e.g. the standard Finnish layout
    (fi): dead acute / dead grave on the key right of "+". Confirmed with fi.
  2. Connect a gamepad (here: a HORIPAD over Bluetooth, through Steam Input). This is what
    was in use during the captured hang; not tested without it.
  3. Start Permafrost and load a character or start a new game.
  4. After loading: black screen with audio, window not responding, one core at 100%.
  5. Switch to a layout without dead keys (e.g. fi(nodeadkeys); tested here with the
    no-dead-keys variant of the custom layout) and repeat: the game loads normally.

Related issues/PRs: none found (searched for "Permafrost" and "2254990").

Steam system information
Informacje o komputerze:
Producent: Dell Inc.
Model: 0NDYHG
Rodzaj: Komputer stacjonarny
Nie wykryto panelu dotykowego
Informacje o procesorze:
Dostawca CPU: GenuineIntel
Marka procesora: 11th Gen Intel(R) Core(TM) i7-11700 @ 2.50GHz
Rodzina CPU: 0x6
Model CPU: 0xa7
Numer wersji CPU: 0x1
Typ CPU: 0x0
Częstotliwość: 4800 MHz
Rdzenie logiczne: 16
Rdzenie fizyczne: 8
Hyper-Threading: Obsługiwane
FCMOV: Obsługiwane
SSE2: Obsługiwane
SSE3: Obsługiwane
SSSE3: Obsługiwane
SSE4a: Nieobsługiwane
SSE4: Obsługiwane
SSE42: Obsługiwane
AES: Obsługiwane
AVX: Obsługiwane
AVX2: Obsługiwane
AVX52F: Obsługiwane
AVX52PF: Nieobsługiwane
AVX52ER: Nieobsługiwane
AVX52CD: Obsługiwane
AVX52VNNI: Obsługiwane
SHA: Obsługiwane
CMPXCHG6B: Obsługiwane
LAHF/SAHF: Obsługiwane
PrefetchW: Nieobsługiwane
BMI1: Obsługiwane
BMI2: Obsługiwane
F16C: Obsługiwane
FMA: Obsługiwane
System operacyjny:
Ubuntu 26.04.1 LTS (64-bitowy)
Nazwa jądra: Linux
Wersja jądra: 7.0.0-38-generic
Dostawca serwera X: The X.Org Foundation
Wydanie serwera X: 12401010
Menedżer okien X: KWin
Wersja biblioteki Steam: steam-runtime_1.0.20260714.251828
Informacje o kliencie:
Wersja: 1788652215
Status akceleracji grafiki (przeglądarka): Włączone
Canvas (przeglądarka): Włączone
Rasteryzacja pozaprocesowa Canvas (przeglądarka): Włączone
Kompozytor Direct Rendering Display (przeglądarka): Wyłączony
Kompozycja (przeglądarka): Włączone
Wątki wielokrotnego rastrowania (przeglądarka): Włączone
OpenGL (przeglądarka): Włączone
Rasteryzacja (przeglądarka): Włączone
RawDraw (przeglądarka): Wyłączony
Skia Graphite (przeglądarka): Wyłączony
Dekodowanie wideo (przeglądarka): Włączone
Kodowanie wideo (przeglądarka): Wyłączony
Vulkan (przeglądarka): Wyłączony
WebGL (przeglądarka): Włączone
WebGL2 (przeglądarka): Włączone
WebGPU (przeglądarka): Wyłączony
WebNN (przeglądarka): Wyłączony
Karta graficzna:
Sterownik: AMD AMD Radeon RX 7600 (radeonsi, navi33, ACO, DRM 3.64, 7.0.0-38-generic)
Wersja sterownika: 4.6 (Compatibility Profile) Mesa 26.0.8-1ubuntu0.3
Wersja OpenGL: 4.6
Głębia kolorów pulpitu: 24 bitów na piksel
Częstotliwość odświeżania monitora: 59 Hz
ID producenta: 0x1002
ID urządzenia: 0x7480
Nie wykryto wersji
Liczba monitorów: 1
Liczba logicznych układów graficznych: 1
Rozdzielczość głównego ekranu: 1920 x 1080
Rozdzielczość pulpitu: 1920 x 1080
Wielkość głównego ekranu: 23.50" x 13.23" (26.97" diag), 59.7cm x 33.6cm (68.5cm diag)
Ilość pamięci VRAM: 8192 MB
Karta dźwiękowa:
Dźwięk: Realtek ALC3246
Pamięć:
RAM: 80222 Mb
Sprzęt VR:
Nie wykryto żadnych gogli VR
Nie wykryto konfiguracji VR z urządzeniami śledzącymi.
Największa liczba urządzeń śledzących w sesji: 0.
Informacje dodatkowe:
Język interfejsu: Polski
JĘZYK: pl_PL.UTF-8
Łączna dostępna pojemność dysków: 1876195 MB
Największy wolny sektor dysku twardego: 1073785 MB
Miejsce:
Liczba dysków SSD: 2
Pojemności dysków SSD: 2000G,0B
Liczba dysków HDD: 0
Liczba dysków wymiennych: 0

Proton versions

Launch options