protonscr

Subnautica 2

protonopen appid 1962700Game compatibility - Unofficial
ValveSoftware/Proton#9791 · opened 2026-05-15 by beedell-roke · updated 2026-07-21 · 18 comments · github · game page · search this game
2 matching comments, n / p to jump
Bbeedell-roke 2026-05-15 github

Compatibility Report

  • Name of the game with compatibility issues

    Subnautica 2

  • Steam AppID of the game

    1962700

System Information

  • GPU

      1. #!/usr/bin/env sh
        kinfo | yq -P | grep 'Graphics Processor'
        

      2. Graphics Processor 1: AMD Radeon RX 5700
        Graphics Processor 2: AMD Ryzen 5 7600X 6-Core Processor
        
      1. #!/usr/bin/env sh
        run0 lshw -json -C display | yq -P
        

        [^1]

      2. - id: display
          class: display
          claimed: true
          handle: PCI:0000:03:00.0
          description: VGA compatible controller
          product: Navi 10 [Radeon RX 5600 OEM/5600 XT / 5700/5700 XT]
          vendor: Advanced Micro Devices, Inc. [AMD/ATI]
          physid: "0"
          businfo: pci@0000:03:00.0
          version: c4
          width: 64
          clock: 33000000
          configuration:
            driver: amdgpu
            latency: "0"
          capabilities:
            pm: Power Management
            pciexpress: PCI Express
            msi: Message Signalled Interrupts
            vga_controller: true
            bus_master: bus mastering
            cap_list: PCI capabilities listing
            rom: extension ROM
        - id: display
          class: display
          claimed: true
          handle: PCI:0000:59:00.0
          description: VGA compatible controller
          product: Raphael
          vendor: Advanced Micro Devices, Inc. [AMD/ATI]
          physid: "0"
          businfo: pci@0000:59:00.0
          version: c7
          width: 64
          clock: 33000000
          configuration:
            driver: amdgpu
            latency: "0"
          capabilities:
            pm: Power Management
            pciexpress: PCI Express
            msi: Message Signalled Interrupts
            msix: MSI-X
            vga_controller: true
            bus_master: bus mastering
            cap_list: PCI capabilities listing
        

  • Video driver version

    1. #!/usr/bin/env sh
      glxinfo | grep -E "OpenGL vendor|OpenGL version|Mesa" | yq -P
      

    2. client glx vendor string: Mesa Project and SGI
      OpenGL vendor string: AMD
      OpenGL core profile version string: 4.6 (Core Profile) Mesa 26.0.6
      OpenGL version string: 4.6 (Compatibility Profile) Mesa 26.0.6
      OpenGL ES profile version string: OpenGL ES 3.2 Mesa 26.0.6
      
  • Kernel version

      1. #!/usr/bin/env sh
        python3.15 - <<'EOF' |
        #!/usr/bin/env python3.15
        import json
        import platform
        
        print(json.dumps(platform.uname()._asdict()))
        EOF
        yq -P '. | pick(["system", "version"])'
        

      2. system: Linux
        version: '#1 SMP PREEMPT_DYNAMIC Wed May 13 16:08:06 UTC 2026'
        
      1. #!/usr/bin/env sh
        rpm -qf /boot/vmlinuz-$(uname -r) \
        	--queryformat "$(
        		cat <<'EOF'
        Name: %{NAME}
        Version: %{VERSION}
        Release: %{RELEASE}
        Architecture: %{ARCH}
        Install Date: %{INSTALLTIME:date}
        Size: %{SIZE}
        Signature: %{SIGPGP:pgpsig}
        Source RPM: %{SOURCERPM}
        Build Date: %{BUILDTIME:date}
        Build Host: %{BUILDHOST}
        Packager: %{PACKAGER}
        Vendor: %{VENDOR}
        EOF
        	)"$'\n' | yq -P
        

      2. Name: kernel-core
        Version: 7.0.6
        Release: 200.fc44
        Architecture: x86_64
        Install Date: Thu 14 May 2026 10:54:56 BST
        Size: 103888091
        Signature: (none)
        Source RPM: kernel-7.0.6-200.fc44.src.rpm
        Build Date: Wed 13 May 2026 16:51:03 BST
        Build Host: buildhw-x86-02.rdu3.fedoraproject.org
        Packager: Fedora Project
        Vendor: Fedora Project
        
  • Link to full system information report as Gist

    42837531's e9030b4a494e7a1f59c135130828712e, at gist.github.com

  • Proton version

    1. #!/usr/bin/env sh
      cat $HOME/.local/share/Steam/steamapps/compatdata/1962700/version
      

    2. 11.0-100

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

Firstly, the loading window appeared:

Image

…with a separate, black window, behind it, whereupon it ANRs:

Image

All subsequent attempted invocations result in nothing, except "Start" being replaced with "Stop", in Steam's interface, when it invokes:

  1. Image
  2. Image

Additionally, what steam-for-linux/issues/13165#issuecomment-4405807885 describes occurs (as ccpp-2026-05-15-15:12:35.791719-51835.zip should demonstrate), alongside:

  1. bugzilla.redhat.com/show_bug.cgi?id=2467442

  2. bugzilla.redhat.com/show_bug.cgi?id=2464001#c13

The logs that I observe are:

  • StdOut

    chdir "/home/RokeJulianLockhart/.local/share/Steam/steamapps/common/Subnautica2"
    ERROR: ld.so: object '/home/RokeJulianLockhart/.local/share/Steam/steamrt32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
    steam-runtime-launcher-service[77380]: I: Running spawn command sh
    ERROR: ld.so: object '/home/RokeJulianLockhart/.local/share/Steam/steamrt32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
    ERROR: ld.so: object '/home/RokeJulianLockhart/.local/share/Steam/steamrt32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
    ERROR: ld.so: object '/home/RokeJulianLockhart/.local/share/Steam/steamrt64/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
    ERROR: ld.so: object '/home/RokeJulianLockhart/.local/share/Steam/steamrt32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
    Game Recording - would start recording game 1962700, but recording for this game is disabled
    Adding process 83481 for gameID 1962700
    ERROR: ld.so: object '/home/RokeJulianLockhart/.local/share/Steam/steamrt32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
    Adding process 83484 for gameID 1962700
    Adding process 83504 for gameID 1962700
    Adding process 83508 for gameID 1962700
    ERROR: ld.so: object '/home/RokeJulianLockhart/.local/share/Steam/steamrt32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
    ERROR: ld.so: object '/home/RokeJulianLockhart/.local/share/Steam/steamrt32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
    ERROR: ld.so: object '/home/RokeJulianLockhart/.local/share/Steam/steamrt32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
    Adding process 83630 for gameID 1962700
    Adding process 83631 for gameID 1962700
    
  • #popup_target > div > div._1ENHEsrSLcTRtPQFl1F-wL._1DvwQt0JN-Ogp_4tVZdkzX > div._3mz8wQ6Q44B8P7pzPP4Iyw > div._3Z7VQ1IMk4E3HsHvrkLNgo > div._3Z3ohQ8-1NKnCZkbS6fvy > div > div._2Lu3d-5qLmW4i19ysTt2jT._7AlhCx3XGzBeIrQaCneUD._1gqEjB5QsKT_NftD1dEsdZ

    ExecCommandLine: "'~/.steam/root/ubuntu12_32/steam' 'steam://rungameid/1962700'"
    ExecuteSteamURL: "steam://rungameid/1962700"
    GameAction [AppID 1962700, ActionID 1] : LaunchApp changed task to CheckShaderDepotManifest with ""
    GameAction [AppID 1962700, ActionID 1] : LaunchApp changed task to ProcessingInstallScript with ""
    Running install script evaluator for AppID 1962700, 3 step(s)  /home/RokeJulianLockhart/.local/share/Steam/steamrt64/steam-launch-wrapper -- /home/RokeJulianLockhart/.local/share/Steam/steamrt64/reaper SteamLaunch AppId=1962700 Install=1 -- '/home/RokeJulianLockhart/.local/share/Steam/steamapps/common/SteamLinuxRuntime_4'/_v2-entry-point --verb=run -- '/home/RokeJulianLockhart/.local/share/Steam/steamapps/common/Proton Hotfix'/proton run '/home/RokeJulianLockhart/.local/share/Steam/legacycompat/iscriptevaluator.exe' 'legacycompat\evaluatorscript_1962700.vdf'GameAction [AppID 1962700, ActionID 1] : LaunchApp changed task to SynchronizingCloud with ""
    GameAction [AppID 1962700, ActionID 1] : LaunchApp changed task to SynchronizingStats with ""
    GameAction [AppID 1962700, ActionID 1] : LaunchApp changed task to ShowInterstitials with ""
    GameAction [AppID 1962700, ActionID 1] : LaunchApp waiting for user response to ShowInterstitials ""
    GameAction [AppID 1962700, ActionID 1] : LaunchApp continues with user response "ShowInterstitials"
    GameAction [AppID 1962700, ActionID 1] : LaunchApp changed task to SiteLicenseSeatCheckout with ""
    GameAction [AppID 1962700, ActionID 1] : LaunchApp changed task to DelayLaunch with ""
    GameAction [AppID 1962700, ActionID 1] : LaunchApp changed task to CreatingProcess with ""
    GameAction [AppID 1962700, ActionID 1] : LaunchApp waiting for user response to CreatingProcess ""
    GameAction [AppID 1962700, ActionID 1] : LaunchApp continues with user response "CreatingProcess"
    steam-runtime-launch-client\0--alongside-steam\0--env-fd=126\0-c\0/home/RokeJulianLockhart/.local/share/Steam/steamrt64/steam-launch-wrapper -- /home/RokeJulianLockhart/.local/share/Steam/steamrt64/reaper SteamLaunch AppId=1962700 -- '/home/RokeJulianLockhart/.local/share/Steam/steamapps/common/SteamLinuxRuntime_4'/_v2-entry-point --verb=waitforexitandrun -- '/home/RokeJulianLockhart/.local/share/Steam/steamapps/common/Proton Hotfix'/proton waitforexitandrun  '/home/RokeJulianLockhart/.local/share/Steam/steamapps/common/Subnautica2/Subnautica2.exe'\0Game process added : AppID 1962700 "/home/RokeJulianLockhart/.local/share/Steam/steamrt64/steam-launch-wrapper -- /home/RokeJulianLockhart/.local/share/Steam/steamrt64/reaper SteamLaunch AppId=1962700 -- '/home/RokeJulianLockhart/.local/share/Steam/steamapps/common/SteamLinuxRuntime_4'/_v2-entry-point --verb=waitforexitandrun -- '/home/RokeJulianLockhart/.local/share/Steam/steamapps/common/Proton Hotfix'/proton waitforexitandrun  '/home/RokeJulianLockhart/.local/share/Steam/steamapps/common/Subnautica2/Subnautica2.exe'", ProcID 83481, IP 0.0.0.0:0
    GameAction [AppID 1962700, ActionID 1] : LaunchApp changed task to WaitingGameWindow with ""
    GameAction [AppID 1962700, ActionID 1] : LaunchApp changed task to Completed with ""
    

If I close it each time it does this, then allow Steam to download something that it chooses to download after each closure (it also mentions shader re-computation), it operates thereafter.

Reproduction

#!/usr/bin/env sh
steam -dev
steam steam://install/1962700
steam steam://rungameid/1962700
Bbeedell-jared 2026-05-15 github
Bbeedell-roke 2026-05-15 github

I'm forced to reboot, each time I want to invoke Subnautica 2, I've realised:

Image

A logout is insufficient, somehow.

BBoxGod14 2026-05-15 github

Same thing happened to me, the solution was to use Proton 7 with no parameters or Proton Experimental with VKD3DDISABLEEXTENSIONS=VKEXTmeshshader,VKNVrawacces…"Same thing happened to me, the solution was to use Proton 7 with no parameters or Proton Experimental with VKD3D_DISABLE_EXTENSIONS=VK_EXT_mesh_shader,VK_NV_raw_access_chains %command%
It's a bug exclusive to RTX 5000 GPUs

JJustaPeriod 2026-05-16 github

OS: Fedora Linux 44 (KDE Plasma Desktop Edition) x86_64
Kernel: Linux 7.0.6-200.fc44.x86_64
CPU: AMD Ryzen 9 9950X3D (32) @ 5.76 GHz
GPU 1: NVIDIA GeForce RTX 5090 [Discrete]
GPU Drivers: 595.71.05

Game crashes on experimental regardless using gamescope unless I use the following parameters on launch:
VKD3D_DISABLE_EXTENSIONS=VK_EXT_mesh_shader,VK_NV_raw_access_chains %command%

Ddsalt 2026-05-19 github

Sometimes hangs on start-up. (Black screen, except for the “busy” indicator at the lower right corner.)

Telling Steam to kill the running instance doesn't function correctly: the game continues in its stuck state and needs to be killed in another way, which I've semi-automated with

kill $(ps ax | grep Win64-Ship | awk '{ print $1; exit }')

(I note that the devs are aware of a start-up hang on Steam Deck. They have a workaround based on forcing display refresh rate, which is interesting because I have the game window on a Freesync screen.)

steam-1962700.log.gz

Bbeedell-roke 2026-05-19 github

It's a bug exclusive to RTX 5000 GPUs

@BoxGod14, it can't be, because mine is from AMD.

Ddamien 2026-05-20 github

Confirming the VKD3D_DISABLE_EXTENSIONS=VK_EXT_mesh_shader,VK_NV_raw_access_chains workaround. Same driver version as the earlier RTX 5090 report in this thread, so not fixed in 595.71.05.

  • GPU: NVIDIA GeForce RTX 5090 (Blackwell)
  • NVIDIA driver: 595.71.05
  • OS/Kernel: Fedora 44 / Linux 7.0.4-200.fc44.x86_64
  • Proton: Experimental (2026-05-20), fresh prefix
  • Game build: Subnautica 2 CL-113933 (build 53, packaged 2026-05-18)

Without the workaround: DXGI_ERROR_DEVICE_REMOVED ~5s after the loading screen appears (during the first frame's SkyLight real-time capture). With it: launches cleanly to main menu and lobby join.

The underlying vkd3d-proton issue (mesh shader / VK_NV_raw_access_chains path on Blackwell) may warrant its own upstream report at HansKristian-Work/vkd3d-proton, since this thread mixes the AMD launcher-freeze symptom (OP) with the NVIDIA Blackwell GPU hang.

NNeoTheFox 2026-07-14 github

I have a 7900 and mesa 26.1.4

For me the game crashes randomly after an undefined amount of playtime with
Illegal opcode in command stream.
Setting VKD3D_DISABLE_EXTENSIONS=VK_EXT_device_generated_commands helps, ever since I've set it I haven't crashed in a long time. I'll update this comment if it still crashes with this variable set in the future.

Ccgillinger 2026-07-18 github

Confirming @NeoTheFox's report on a second RDNA3 card: random mid-game GPU hang with Illegal opcode in command stream. In my case the gfx ring reset also failed, so the driver fell back to a full MODE1 GPU reset — VRAM was lost and the whole desktop session (Cinnamon) crashed with it, requiring a hard reboot.

System

  • GPU: AMD Radeon RX 7600 (Navi 33, RDNA3)
  • OS: Linux Mint 22.2, kernel 6.14.0-37-generic
  • Mesa: 25.2.8-0ubuntu0.24.04.2 (RADV)
  • Proton: 11.0-100
  • Game: Subnautica 2 (1962700)

Kernel log at the time of the crash

kernel: amdgpu 0000:2d:00.0: amdgpu: ring gfx_0.0.0 timeout, signaled seq=6276337, emitted seq=6276339
kernel: amdgpu 0000:2d:00.0: amdgpu: Process information: process GameThread pid 21671 thread vkd3d_queue pid 21737
kernel: amdgpu 0000:2d:00.0: amdgpu: Starting gfx_0.0.0 ring reset
kernel: [drm:gfx_v11_0_bad_op_irq [amdgpu]] *ERROR* Illegal opcode in command stream
kernel: amdgpu 0000:2d:00.0: amdgpu: Ring gfx_0.0.0 reset failure
kernel: amdgpu 0000:2d:00.0: amdgpu: GPU reset begin!
kernel: amdgpu 0000:2d:00.0: amdgpu: MES failed to respond to msg=REMOVE_QUEUE
kernel: [drm:amdgpu_mes_unmap_legacy_queue [amdgpu]] *ERROR* failed to unmap legacy queue
kernel: [drm:gfx_v11_0_cp_gfx_enable.isra.0 [amdgpu]] *ERROR* failed to halt cp gfx
kernel: amdgpu 0000:2d:00.0: amdgpu: MODE1 reset
kernel: amdgpu 0000:2d:00.0: amdgpu: GPU reset succeeded, trying to resume
kernel: [drm] VRAM is lost due to GPU reset!

The crash happened mid-game after an extended play session, not at startup — so this looks distinct from the launcher-freeze symptom in the OP and the NVIDIA Blackwell startup crash, and matches the RDNA3 mid-game hang.

I'm now testing the VKD3D_DISABLE_EXTENSIONS=VK_EXT_device_generated_commands %command% workaround and will report back if the crash recurs with it set.

NNeoTheFox 2026-07-18 github

@cgillinger ever since I've reported it I've played around with debugging some more, and I figured this fix was better than no fix, but still allowed for some crashes. If it's going to be the same for you - this is what solved crashes for good - VKD3D_CONFIG=single_queue
There's a race condition somewhere in VKD3D. This does lower the performance somewhat, but you can get virtually all of it back by using OptiScaler to swap DLSS for FSR4 with frame generation.

Ccgillinger 2026-07-18 github

@NeoTheFox Thanks — that matches what I was hoping to learn before hitting the crash again. I've now set both on my RX 7600:

VKD3D_CONFIG=single_queue VKD3D_DISABLE_EXTENSIONS=VK_EXT_device_generated_commands %command%

keeping the DGC disable alongside single_queue since they address different mechanisms and a crash on my setup is expensive — the failed ring reset escalates to a full MODE1 reset that kills the whole desktop session.

A race condition in vkd3d-proton's queue handling would also explain why the crashes are random rather than tied to a specific scene. If that's confirmed, this probably deserves an upstream issue at HansKristian-Work/vkd3d-proton for the RDNA3 symptom specifically, since this thread is already tracking three distinct problems.

One note on the performance recovery tip for anyone else reading: FSR4 officially requires RDNA4, so on RDNA3 cards like mine OptiScaler with FSR 3.1 + frame generation is the realistic route instead.

I'll report back after a few longer sessions with single_queue set.

NNeoTheFox 2026-07-18 github

@cgillinger I have great news for you - since not so long ago FSR4 is supported on RDNA3, though being somewhat more expensive it's still gives you better visuals and makes good use of that extra performance left on the table by single_queue.
I suggest proton-cachyos so you can try FSR4_UPGRADE=1 PROTON_USE_OPTISCALER=1 for ease of testing. Having both VK_EXT_device_generated_commands and single_queue is superfluous.
I'd love to file a bug with VKD3D but that leads me to how I discovered this is a race condition - trying to get RADV_DEBUG=hang just solved the issue since it forces order. So I have nothing, and breadcrumbs also yields nothing. I do not know how to proceed.

Ccgillinger 2026-07-18 github

@NeoTheFox Thank you — that's genuinely great news about FSR 4.1 on RDNA3, and I really appreciate you taking the time to share your debugging journey here. It's saved me (and probably others) a lot of trial and error. One small note for anyone else trying the CachyOS route: I believe the variables are spelled PROTON_USE_OPTISCALER=1 PROTON_FSR4_UPGRADE=1. You're right that my double workaround is redundant — I'll trim down to just VKD3D_CONFIG=single_queue once I've had a few stable sessions to compare against, and I'm looking forward to trying the FSR4 route after that.

On the vkd3d-proton question — I'm far from an expert here, so take this with a grain of salt, but I wonder if what you've found is already worth reporting as-is? The way I read it, "RADV_DEBUG=hang makes the crash disappear because it forces ordering" isn't a failed repro so much as a data point: combined with single_queue fixing it permanently, it seems to point fairly specifically at synchronization between queue submissions. My impression is that upstream has triaged timing-dependent issues before without a deterministic repro, and they may well know exactly which instrumentation to ask for next. Between the two of us we could offer:

  • The symptom: random Illegal opcode in command stream on RDNA3 (7900 and 7600 confirmed in this thread), mid-game, scene-independent.
  • Full amdgpu dmesg from the hang. If I understand correctly, recent kernels also produce a devcoredump (/sys/class/devcoredump/) at reset time, which captures ring state passively — so it might sidestep the heisenbug problem, though I haven't verified this myself.
  • Game (Subnautica 2, 1962700, UE5), Proton and Mesa versions from two independent systems.

Of course, you've dug far deeper into this than I have, so you're in a much better position to judge. But if you do decide to file it, please tag me or link it here — I'd be glad to add my logs and hardware details to the report.

NNeoTheFox 2026-07-18 github

@cgillinger I'll consider reporting once you'll confirm it's fixed for you too and my findings are correct.
As for PROTON_FSR4_UPGRADE=1 - since the last release it does nothing, and they haven't updated their README yet in the master branch, if you'll look at releases you'll see the description of the new variables and changes.

Ccgillinger 2026-07-18 github

I'll try to put in a few sessions the next few days!

HHoff16 2026-07-19 github

Has anyone tried Proton Experimental Bleeding Edge? I've had that resolve issues that even the latest GE or Cachy Proton couldn't solve!

Ccgillinger 2026-07-21 github

@NeoTheFox Following up as promised: I can now confirm stability with VKD3D_CONFIG=single_queue. Three sessions since setting it (July 18, 20 and 21, roughly 2 hours of play in total) — zero GPU hangs, clean exits every time, and nothing from amdgpu in the kernel log. Same setup as before: RX 7600 (Navi 33), Mesa 25.2.8, kernel 6.14.0-37, Proton 11.0-100, Linux Mint 22.2. So from my side the single_queue workaround looks solid — happy to provide logs if you file this upstream.

@Hoff16 I haven't tried Bleeding Edge myself — for me the vkd3d queue race seems fully worked around by single_queue on stable Proton 11.0-100, so I've stayed on that to keep the data point clean.