protonscr

The Outer Worlds: Spacer's Choice Edition

protonopen appid 1920490Game compatibility - UnofficialXAudio2
ValveSoftware/Proton#8076 · opened 2024-09-06 by Athanasius · updated 2024-12-21 · 4 comments · github · game page · search this game
1 matching comments, n / p to jump
AAthanasius 2024-09-06 github

Compatibility Report

  • Name of the game with compatibility issues: The Outer Worlds: Spacer's Choice Edition
  • Steam AppID of the game: 1920490

I need to note that I am not running this through Steam, as I own it only on Epic Game Store. Thus I am using "Heroic" to launch it. I have confirmed it is using the linux-Steam provided "Proton - Experimental" when the problem manifests.

This currently works perfectly fine with 1725481090 GE-Proton9-13, so presumably this issue is a regression from the mp4 playback capabilities in that version.

System Information

  • GPU: NVIDIA RTX 3080
  • Video driver version: nvidia 560.28.03 (the new 'more open source' option)
  • Kernel version: 6.10.8
  • Link to full system information report as Gist:
  • Proton version: Experimental - 1723129720 experimental-9.0-20240808

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.

Using PROTON_LOG=1 to run the game a relevant excerpt appears to be:

winegstreamer error: decodebin0: Your GStreamer installation is missing a plug-in.
winegstreamer error: decodebin0: ../src-gst_base/gst/playback/gstdecodebin2.c(4704): gst_decode_bin_expose (): /GstBin:bin0/GstDecodeBin:decodebin0:
no suitable plugins found:
Couldn't set avdec_h264-0 to PAUSEDCouldn't set avdec_valve_h264-0 to PAUSED
Missing decoder: MPEG-4 AAC (audio/mpeg, mpegversion=(int)4, framed=(boolean)true, stream-format=(string)raw, level=(string)2, base-profile=(string)lc, profile=(string)lc, codec_data=(buffer)1190, rate=(int)48000, channels=(int)2)

Full log follows: steam-heroic-TOWSpacersChoice-redacted.log.gz (I redacted EGS related login info).

Symptoms

Playback of the game-files videos fails. It's extra annoying because the game developer seems to have only the video in the mp4 files and supplies the audio via the game engine. When the video playback fails the audio still plays but the game decides that because the video playback has 'finished' NPCs will continue the next part of any conversation. So you get the "video" audio mixed in with other chatter.

This affects not only actual gameplay videos but also the startup splash screens. They simply don't play, but you still have to wait for the duration of them to expire.

Reproduction

  1. As mentioned above this is with the EGS version of this game.
  2. Using "Heroic" to launch it.
  3. Set "Heroic" global or specific game settings to use "Proton - Proton - Experimental", which will utilise the Steam installed version.
  4. Launch the game. You will see no splash screens, just a 'test card' briefly at one point, and have to wait a substantial number of seconds before the pre-menu title screen displays.

In order to run this with PROTON_LOG=1 I had to take the logged commandline that "Heroic" used and put it in a shell script to fix up some quoting:

#!/bin/bash

set -x

export PROTON_LOG=1
export HEROIC_APP_NAME=cb3bf7ba89574a66ae3b795e039d4dbc
export HEROIC_APP_RUNNER=legendary
export GAMEID=umu-0
export HEROIC_APP_SOURCE=epic
export STORE=egs
export STEAM_COMPAT_INSTALL_PATH=/mnt/emilia/games/Heroic/TOWSpacersChoice
export LD_PRELOAD=
export STEAM_COMPAT_CLIENT_INSTALL_PATH=/home/users/athan/.steam/steam
export WINEPREFIX="/mnt/emilia/games/Heroic/Prefixes/default/The Outer Worlds Spacers Choice Edition"
export STEAM_COMPAT_DATA_PATH="/mnt/emilia/games/Heroic/Prefixes/default/The Outer Worlds Spacers Choice Edition"
export PROTONPATH="/mnt/emilia/games/steam-client/debian-installation/steamapps/common/Proton - Experimental"
export WINE_FULLSCREEN_FSR=0
export PROTON_ENABLE_NVAPI=1
export DXVK_NVAPI_ALLOW_OTHER_DRIVERS=1
export PROTON_EAC_RUNTIME=/home/users/athan/.config/heroic/tools/runtimes/eac_runtime
export PROTON_BATTLEYE_RUNTIME=/home/users/athan/.config/heroic/tools/runtimes/battleye_runtime
export STEAM_COMPAT_APP_ID=0
export SteamAppId=0
export SteamGameId=heroic-TOWSpacersChoice
export PROTON_LOG_DIR=/home/users/athan
export LEGENDARY_CONFIG_PATH=/home/users/athan/.config/heroic/legendaryConfig/legendary
/opt/Heroic/resources/app.asar.unpacked/build/bin/x64/linux/legendary launch cb3bf7ba89574a66ae3b795e039d4dbc --no-wine --wrapper " \"/mnt/emilia/games/steam-client/debian-installation/steamapps/common/Proton - Experimental/proton\" waitforexitandrun" --language en

I can also bypass Heroic to run it with just this as the actual command:

"/mnt/emilia/games/steam-client/debian-installation/steamapps/common/Proton - Experimental/proton" run /mnt/emilia/games/Heroic/TOWSpacersChoice/TheOuterWorldsSpacersChoiceEdition.exe

Changing that to:

/mnt/emilia/games/Heroic-config/tools/proton/Proton-GE-Proton9-13/proton run /mnt/emilia/games/Heroic/TOWSpacersChoice/TheOuterWorldsSpacersChoiceEdition.exe

results in working video playback.

AAthanasius 2024-09-06 github

Wait, looking more closely at those Proton versions is GE-Proton9-13 actually newer ? Or was it just built at a later time ?

1725481090 GE-Proton9-13
1723129720 experimental-9.0-20240808

1725481090 > 1723129720. I did try to find a proper definition of what 'Proton - Experimental' is, but answers were vague. I guess any devs responding here will know.

Edit: Ah, I see proton-GE is a third-party project, so there's not necessarily any alignment between what's in there and what's in this baseline proton.

AAthanasius 2024-09-07 github

I'd try out the latest bleeding edge experimental, but something to do with openfst is preventing me from being able to compile any tag, see https://github.com/ValveSoftware/Proton/issues/8012

AAthanasius 2024-09-21 github

The startup video playback is still not working with Proton 9.0 (Beta) which has a version file with 1725643099 proton-9.0-3 now, nor 'Proton - Experimental' which now has a version of 1726673587 experimental-9.0-20240918.

It still works fine with GE-Proton9-13 (just to verify that there's not been a game patch or something else now in the mix).

AAthanasius 2024-12-21 github

One last checkin to note that this still doesn't work with 1734449731 experimental-9.0-20241217, latest Steam "Proton - Experimental".

I'll be uninstalling the game now, so won't be able to make further checks.