ValveSoftware / Proton

Compatibility tool for Steam Play based on Wine and additional components
Other
24.2k stars 1.06k forks source link

Ghostrunner (1139900) #4322

Open alosarjos opened 3 years ago

alosarjos commented 3 years ago

Compatibility Report

System Information

I confirm:

steam-1139900.log

Symptoms

Some intro videos don't play, with Proton GE they do so probably the usual MFPlat thing. Don't know yet if there are any cinematics outside of that. Besides that I have had some problems when streaming, but it's probably something related to Wayland/XWayland and OBS

kisak-valve commented 3 years ago

Hello @alosarjos, yes, it looks like this game would benefit from support for Media Foundation maturing. Can you elaborate on what problems you were seeing while streaming the game?

alosarjos commented 3 years ago

OBS capturing was stuck on the picture. I was playing and sound was being send, but the image was on the main menu. Doing it from a Xorg session works fine. (I know this has happened before but can't remember with which game exactly). Also on some parts while playing, while it looked fine on my screen, the streaming was lagging a lot.

Also closing OBS would freeze the game completely having to kill the process.

PD: The Steam Log is not from the session I was trying to stream, is just from running the game to the main menu so Media Foundation logs can appear.

mkrasnitski commented 3 years ago

I'm having issues with the game as well. It launches to the title screen, but then crashes if I send any keyboard or mouse input. Running with the same GPU/Driver/Kernel as above.

Steam Report Gist steam-1139900.log

alosarjos commented 3 years ago

I'm having issues with the game as well. It launches to the title screen, but then crashes if I send any keyboard or mouse input. Running with the same GPU/Driver/Kernel as above.

Steam Report Gist steam-1139900.log

While with the demo Proton 5.0 was Ok. I think you need to upgrade to 5.13 to avoid this problem.

mkrasnitski commented 3 years ago

If I try to force 5.13-1 as my proton version, then the game doesn't even launch.

alosarjos commented 3 years ago

If I try to force 5.13-1 as my proton version, then the game doesn't even launch.

Just to make sure:

  1. Steam Client on Beta version
  2. Proton 5.13
  3. Just in case, disable cloud saves (Until you get the game running, then you can enable them again)
  4. Delete the compatdata dir for this game.
  5. You should have installed the Steam Linux Runtime - Soldier tool, make sure it's on the client_beta branch

Try to launch the game again.

mkrasnitski commented 3 years ago

Tried all of the above, and the issue still persists, even through a reboot.

alosarjos commented 3 years ago

Can you provide a new Proton Log when running from 5.13?

mkrasnitski commented 3 years ago

The strange thing is that no log is generated with 5.13. I think it's stopping before it even starts proton. This could then be an issue with steam or with my proton install itself.

alosarjos commented 3 years ago

You may try uninstalling both Proton 5.13 and the Steam Soldier Runtime so when running the game both are downloaded again.

Also, it shouldn't be necessary, but you can give it a try with this workaround:

https://github.com/flightlessmango/MangoHud/issues/369#issuecomment-709902078

mkrasnitski commented 3 years ago

Ok, that workaround got me to at least get a log. steam-1139900.log

alosarjos commented 3 years ago

Hmmmm, you are getting the:

Application tried to create a window, but no driver could be loaded.

Which is a bug supposedly fixed with the beta version of the Steam Client + Beta version of the Steam Linux Runtime... I have to leave now, but maybe you can find more workarounds searching for that error message. Also just in case, try running the game from a Xorg session.

kisak-valve commented 3 years ago

Hello @mkrasnitski, err:module:import_dll Loading library kernelbase.dll (which is needed by L"C:\\windows\\system32\\kernel32.dll") failed (error c0000020). wine: could not load kernel32.dll, status c0000135 looks more significant in the log.

Sidestepping Steam Linux Runtime - Soldier isn't something we can support long term. Can you back out that workaround, completely close Steam, then run Steam from a terminal and let us know if any hints end up in the terminal spew when trying to run the game with Proton 5.13? Please use a gist for large copy/pastes.

mkrasnitski commented 3 years ago

Here's the output I get when I run steam in the terminal - https://gist.github.com/mkrasnitski/2685bfcf7ac5e99694d6a895fa543b83

kisak-valve commented 3 years ago

Thanks @mkrasnitski, in your log, ln: failed to create symbolic link '/tmp/SteamPVSockets.AMYDlC/SteamLinuxRuntime.caceec5670bdcb42/socket' -> '': No such file or directory and pressure-vessel-launch[7498]: Can't connect to peer socket: Could not connect: No such file or directory tell us something went wrong with Pressure Vessel on your system, but it's not very clear as to what happened.

Please give https://github.com/ValveSoftware/steam-runtime/blob/master/doc/reporting-steamlinuxruntime-bugs.md a read and open a new issue report on the steam-runtime issue tracker.

McMarius11 commented 3 years ago

with Proton: 5.13-1 it runs but without any videos

with Proton: 5.9-GE-6-ST i get this log steam-1139900.log it is mostly this error

3624.605:00c8:00cc:fixme:msvcrt:MSVCRT__stdio_common_vswprintf options 24 not handled

alosarjos commented 3 years ago

I was only successful running the game with Proton 5.13. I would recommend trying that first.

GloriousEggroll commented 3 years ago

The official game ships with xaudio2_9redist.dll which the demo does not. This causes sound to not work after getting past the intro movies in proton-ge and upstream wine, because the dll acts differently depending which version of windows is used. No idea how it works on proton unless there is a difference in the win10 version used from upstream's. I've submitted a bug and a patch fix for it upstream. For those using proton-ge try setting the prefix to win7.

https://bugs.winehq.org/show_bug.cgi?id=50101

kisak-valve commented 3 years ago

Whitelist Request: Ghostrunner

Issue transferred from https://github.com/ValveSoftware/Proton/issues/4403. @bonkmaykrQ posted on 2020-11-20T00:58:11:

Whitelist Request

System Information

I confirm:

Issues

https://youtu.be/5fkBsW-zLXk

bonkmaykrQ commented 3 years ago

If I try to force 5.13-1 as my proton version, then the game doesn't even launch.

This is an issue alot of people are having with 5.13, 5.21 GE (fan-made build) seems to fix this problem, at least for me.

https://github.com/ValveSoftware/steam-runtime/issues/298 https://github.com/ValveSoftware/Proton/issues/4278

I'd also like to add that both Ghostrunner and Titanfall 2 suffered from inconsistent performance (regardless of Proton version) when using NVIDIA cards and running without any tweaks, although it did not crash or fail to work. I think NVIDIA's poor driver support is to blame here, which causes issues outside of Proton, hence why I didn't mention it earlier in #4403.

alosarjos commented 3 years ago

Since I see that Proton 5.13-3 has gotten fixes for this game and where is a whitelist request, I have to note that I just finished it finally, and the ending scene just shows a white screen (Without audio but subtitles work) and then is stuck there. Looks like an mfplat thing.

Supreeeme commented 3 years ago

Also confirming the ending cutscene (which seems to be the only cutscene in the game) only shows a white screen with subtitles and no audio on 5.13-4. edit: turns out there's another cutscene in the beginning of the game. Both this cutscene and the one at the end of the game run fine in 5.21-GE. Also, performance is much better for the ending section (The Monster) for me in 5.21-GE vs 5.13 - I seem to have sub 60 fps in this final gameplay section. Running a GTX 1060.

DasCapschen commented 3 years ago

I've experienced some problem or another with different Proton versions:

(Proton 5.13 won't work for me at all, can't test)

About the game freezing: There seems to be some issue with the game in later levels. I'm in the level "Echoes" and when I reach the end and enter the cybervoid, all I get is a black screen and the game freezes. This also happens if I press escape and "restart level" after reaching at least 1 checkpoint. This does not occur in earlier levels, for example the second level (can reach cybervoid very fast) it does load, and restarting the level also works ; though I do still get a black screen and freeze for about a second, but the game manages to continue after that. This is not just a loading screen. Loading a level usually takes a few seconds for me (from SSD), but this black screen will persist indefinitely (I waited multiple minutes, nothing).

I couldn't find any useful info in the logs myself, but I attached some logs (PROTON_LOG=1). steam-1139900.log (Proton 5.21-GE) steam-1139900.log (Proton 6.5-GE) steam-1139900.log (Proton 5.0) (removed warning message MSVCRT__stdio_common_vswprintf options 24 not handled which bloated the log to multiple MB) steam-1139900.log (Proton 6.3)

System: OpenSuse Tumbleweed - Kernel 5.11.11 AMD Rx580 - Mesa 20.3.5 - RADV/ACO (other drivers like AMDVLK didn't affect anything) 16GB RAM

vasiaplaton commented 3 years ago

Any solution for black screen and complete freeze in level "Echo"? I had this problem, and I really don't know how can I play further.

aiudirog commented 3 years ago

I can confirm that I have the same issue as @DasCapschen and @vasiaplaton: crashes at the end of Echoes going into Cybervoid. I've tried Proton versions 6.3-4, 6.1-GE-2, 6.5-GE-2, and 6.9-GE-1 (clearing the prefix in between each one) as well underclocking my GPU and removing any extra environment variables for things like GameMode and MangoHud.

Edit: I can also confirm this happens with both DirectX 11 and 12.

System:

aiudirog commented 3 years ago

After waiting some time, I decided to try again with the newest VKD3D to test out the performance improvements on DX12. It appears to work now and I was able to finish the Echoes level! I'm currently running kernel 5.12.15 with 6.12-GE-1 with VKD3D 2.4 manually installed.

vasiaplaton commented 3 years ago

Good news. Have anyone savefile with finished level 9 Dharma City and not finished level 10 Echoes? Send me, please) I lose my file and don't want to replay 9 levels.

Oschowa commented 3 years ago

It seems like this game is affected by a performance regression with recent Proton Experimental when using the DX12 renderer.

Proton Experimental: ![Screenshot from 2021-10-10 22-26-05](https://user-images.githubusercontent.com/8129300/136827533-629c5bd5-0b2a-49b3-b924-e6042ff3de8a.png)
Proton 6.3-7: ![Screenshot from 2021-10-11 18-55-23](https://user-images.githubusercontent.com/8129300/136827588-cad87696-6b70-4288-823c-0d801197b2ab.png)

The DX11 renderer on DXVK is not affected. Both 6.3-7 and Experimental ship the same vkd3d-proton commit, so it's not a regression there. I'm sure older versions of Proton Experimental also didn't show this issue, I played though the game in August on Proton Experimental on DX12 and it was fine back then. Disabling FSYNC/FUTEX2 makes no difference.

Output of `perf top`: ![Screenshot from 2021-10-10 22-40-11](https://user-images.githubusercontent.com/8129300/136828138-5f8da993-0eb1-43bf-9281-d35be0774ecf.png)

I'm running Arch Linux on a RX 6700 XT with latest Mesa main.

Oschowa commented 3 years ago

Got around to bisecting Proton Experimental, the first commit that has the performance regression is

commit 4d4ac7a1f4046bb95992f2f36c31153196005b68
Author: Rémi Bernon <rbernon@codeweavers.com>
Date:   Tue Sep 14 16:28:14 2021 +0200

    msvcrt: Improve memset performance using overlapping stores.

    For n larger than 16 we store 16 bytes on each end of the buffer,
    eventually overlapping, and then 16 additional bytes for n > 32.

    Then we can find a 32-byte aligned range overlapping the remaining part
    of the destination buffer, which is filled 32 bytes at a time in a loop.

    Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
    Signed-off-by: Piotr Caban <piotr@codeweavers.com>
    Signed-off-by: Alexandre Julliard <julliard@winehq.org>
    (cherry picked from commit 7b17d7081512db52ef852705445762ac4016c29f)

 dlls/msvcrt/string.c | 60 +++++++++++++++++++++++++++++++++++++++++++++++++---
 1 file changed, 57 insertions(+), 3 deletions(-)

It's even more obvious during the logo videos on start-up:

4d4ac7a1f4046bb95992f2f36c31153196005b68: ![Screenshot from 2021-10-12 23-57-30](https://user-images.githubusercontent.com/8129300/137035132-633d480f-624f-484f-a3b8-3aef11b4a6a3.png)
f81b91251c711a0c86bd7bd47a2b54abb36b6e98: ![Screenshot from 2021-10-12 23-58-57](https://user-images.githubusercontent.com/8129300/137035114-a216afbd-e1af-4d2e-ae37-8eb58140301c.png)
alasky17 commented 2 years ago

It seems like this game is affected by a performance regression with recent Proton Experimental when using the DX12 renderer.

@Oschowa Thank you for the bisect!! The perf regression in experimental should be solved. Could you retest this?

Oschowa commented 2 years ago

@alasky17 Yeah, it's resolved in recent experimental.

ChiefGyk3D commented 2 years ago

I can't get past the initial level as it keeps crashing after the third or fourth checkpoint, and just now I didn't even make it to the first. Attached logs below

System specs: Pop!_OS 20.04 (Nvidia vesion)
Ryzen 9 5950X 64GB DDR4 Nvidia 3070 (470.86 drivers)

steam-1139900.log

singha95 commented 1 year ago

I recently tried installing this game and it seems fail to start with the error 'Microsoft Visual c++ Runtime needed'. Ive tried redownloading and still go the same error and tried different proton versions (Experimental and 7.0-6). Im wondering if there are others with similar issues.

niscolas commented 9 months ago

If anyone in the future have this issue, you should be able to fix it through Winetricks. At least on Heroic you would do: Select the default wineprefix > Install a Windows DLL or component > install vcrun2019 There's also some additional info on the ProtonDB Page, at the time of writing, my reviews are the top ones with some tips on how to get everything working