ValveSoftware / Proton

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

The Witcher 2 (20920) #2309

Open CuriousTommy opened 5 years ago

CuriousTommy commented 5 years ago

Compatibility Report

System Information

I confirm:

steam-20920.log

Symptoms

Game crashes silently (before showing anything on the screen).

Reproduction

Launch the game

JanGalek commented 5 years ago

@CuriousTommy The Witcher 2 has native support.

CuriousTommy commented 5 years ago

@JanGalek I know, but I want to try to Windows version and see how well it performs compared to the native version.

meequz commented 5 years ago

I experience the same issue (the game crashes silently), with all the available Proton versions. Any workaround found?

Kreyren commented 5 years ago

Crashes on startup

pid 8143 != 8142, skipping destruction (fork without exec?)

LOG: http://ix.io/1Q2q aptli: http://ix.io/1Q2r image

Conclusion: Proton is checking for wrong pid -> upstream fix required

EDIT: According to @kisak-valve this is harmless https://github.com/ValveSoftware/Proton/issues/131#issuecomment-415117673

EDIT2: as follows

Possible suspect(s)

SEH?

2777.364:0029:002a:trace:seh:__regs_RtlUnwind handler at 0x7bc85ef0 returned 1

Concluding that __regs_RtlUnwind handler at 0x7bc85ef0 returns false

Probably non-fatal

DOTNET?

According to https://appdb.winehq.org/objectManager.php?sClass=version&iId=26197 it may be using .NET with which proton seems to have issues providing based on https://github.com/ValveSoftware/Proton/labels/.NET -> Trying to install it manually

Referencing: https://appdb.winehq.org/objectManager.php?sClass=version&iId=26197&iTestingId=92121

Using manually installed dotnet46 breaks rundll32.dll since i can't even access winecfg now.


Made new installation

Locally (on wine not proton) i'm getting:

0009:err:module:import_dll Library mfc100u.dll (which is needed by L"Z:\home\kreyren\.steam\debian-installation\steamapps\common\the witcher 2\Launcher.exe") not found

Relevant: https://bbs.archlinux.org/viewtopic.php?id=137423

Installing vcrun2010 fixed issue with missing mfc100u.dll

Can't find anything usefull -> gave up

Kreyren commented 5 years ago

@CuriousTommy The Witcher 2 has native support.

Which is using eON wrapper that is next to unusable (crashes on startup, has performance and stability issues).. -> Using wine is much better.

To justify using wine for "native" game.

jqadev commented 5 years ago

Unfortunately Proton 4.11-1 with the PROTON_USE_D9VK=1 %command% launch option set hasn't resolved problem with running this game. @kisak-valve do you know if there are any plans on the developers' side to investigate the logs reported so far?

logan001 commented 5 years ago

how do you install windows version when there is a linux version?

CuriousTommy commented 5 years ago

@logan001 Right-click -> Properties -> Check "Force the use of a specific Steam Play compatibility tool".

John-Gee commented 5 years ago

I don't know if it helps, but I was unable to start Steam's The Witcher 2 even with a Wine Steam prefix (so no Proton), no matter the wine build, but at a dev's suggestion I tried with GoG's instead and it just worked which makes me wonder if the Steam build is not doing something special compared to GoG's.

kisak-valve commented 5 years ago

The Witcher 2 memory allocation

Issue transferred from https://github.com/ValveSoftware/Proton/issues/3238. @kkleinw posted on 2019-11-20T21:07:28:

There seems to be a memory allocation bug that leads to the game crashing on proton. Shortly before the crash there may be a warning that 3.9 of 4.0 gb memory are allocated and that OpenGL is not clearing it's cache. This warning may not always be seen. Easier to reproduce in second act.

kisak-valve commented 5 years ago

Hello @kkleinw, please copy your system information from Steam (Steam -> Help -> System Information) and put it in a gist, then include a link to the gist in this issue report. Also, please add PROTON_LOG=1 %command% to the game's launch options, reproduce the issue, and drag and drop the generated $HOME/steam-$APPID.log into the comment box. In general, proton logs compress well, so if Github isn't happen with the log's size, then try throwing it in an archive.

DustyCrumpet commented 5 years ago

Copying the contents of /steamapps/common/the witcher 2/bin/config to /compatdata/20920/pfx/drive_c/users/steamuser/My Documents/Witcher 2/Config allows the launcher and game to load.

With D9VK v0.30 there is a visual issue when in a conversation, fixed when using Joshua-Ashton/d9vk@55cb30c47f5c158afa159dde12ff9e8f8749bf55

D9VK v0.30 D9VK 55cb30c

steam-20920.log (WINEDEBUG=warn+all)

System Information

jqadev commented 5 years ago

@kisak-valve I copied config as @DustyCrumpet wrote:

cp -r ~/.steam/steam/steamapps/common/the\ witcher\ 2/bin/config/* ~/.steam/steam/steamapps/compatdata/20920/pfx/drive_c/users/steamuser/My\ Documents/Witcher\ 2/Config/

@aeikum is there an option to automate executing this command when the game is being installed the first time using Proton to not doing this manually?

The launcher works now but the game do not start when I use: PROTON_USE_D9VK=1 %command% The log file is not created when I use: PROTON_USE_D9VK=1 %command% PROTON_LOG=1 %command%

The game loads when I do not use PROTON_USE_D9VK=1 %command% option. When I set only PROTON_LOG=1 %command% then the log file is created: steam-20920.log

On both configurations: with PROTON_USE_D9VK=1 %command% and without it the launcher is hidden under the strange rectangle in the center: image

I can move the launcher outside it: image

There appears The Witcher logo in place of this rectangle when the game starts: image

System Information

aeikum commented 5 years ago

How does this work on Windows? If the step is not required on Windows, it should not be required here, either.

jqadev commented 5 years ago

@Joshua-Ashton do you have any idea why the log file is not being created when I set PROTON_LOG=1 %command% PROTON_USE_D9VK=1 %command%? When I set only PROTON_LOG=1 %command% then it works.

misyltoad commented 4 years ago

Use PROTON_LOG=1 PROTON_USE_D9VK=1 %command%

jqadev commented 4 years ago

@Joshua-Ashton thank you! Here is the log file steam-20920.log The hack

cp -r ~/.steam/steam/steamapps/common/the\ witcher\ 2/bin/config/* ~/.steam/steam/steamapps/compatdata/20920/pfx/drive_c/users/steamuser/My\ Documents/Witcher\ 2/Config/

has been done earlier so that I can run the launcher.

My system information is here https://github.com/ValveSoftware/Proton/issues/2309#issuecomment-557538739 The game does not start using PROTON_USE_D9VK=1 %command%. Without this command it works.

jqadev commented 4 years ago

How does this work on Windows? If the step is not required on Windows, it should not be required here, either.

@aeikum The steps I did to reproduce the issue with not starting launcher (without using the hack with copying the config described above):

  1. uninstalled Steam
  2. removed .steam directory
  3. installed Steam
  4. clicked right button on The Witcher 2 in the Steam Library
  5. checked Force the use of a specific Steam Play compatibility tool
  6. chose Proton 4.11-9
  7. clicked INSTALL button
  8. set PROTON_LOG=1 %command%
  9. clicked PLAY button

Here is the log file steam-20920.log

jqadev commented 4 years ago

Help us, @aeikum. You're our only hope.

jqadev commented 4 years ago

@aeikum there left only the issue with running the launcher without the workaround. Could you please check the log file? steam-20920.log

logan001 commented 4 years ago

@jqadev thanks for the workaround.

i did a quick test with my last saving i have from a few years ago. windows 38fps. linux 29 fps. (on ultra) i'll have too see how it works with native client. i don't remember if the settings are the same with native client.

viggy96 commented 4 years ago

Does not start for me. I tried copying the files as suggested previously. steam-20920.log

Newbytee commented 4 years ago

How does this work on Windows? If the step is not required on Windows, it should not be required here, either.

It "just works" on Windows. No need to copy directories.

mozo78 commented 4 years ago

It "just works" on Linux too if one use the native version.

jqadev commented 4 years ago

@daxcore I saw your great work related to fix of the PES 2020 Lite Would you like to help us and check what is going on with the need of the workaround?

cp -r ~/.steam/steam/steamapps/common/the\ witcher\ 2/bin/config/* ~/.steam/steam/steamapps/compatdata/20920/pfx/drive_c/users/steamuser/My\ Documents/Witcher\ 2/Config/
jqadev commented 4 years ago

@aeikum, the issue https://github.com/ValveSoftware/Proton/issues/231, which is still open for over a year, explains the need for making symlink ~/.steam/steam/steamapps/compatdata/20920/pfx/drive_c/users/steamuser/My\ Documents/Witcher\ 2/Config to ~/.steam/steam/steamapps/common/the\ witcher\ 2/bin/config/

As I've read in the mentioned issue, this problem is impossible to solve at the Proton / Wine level and the correct way to solve it is to manually create a symlink this way:

rm -r ~/.steam/steam/steamapps/compatdata/20920/pfx/drive_c/users/steamuser/My\ Documents/Witcher\ 2/Config/
ln -sfn ~/.steam/steam/steamapps/common/the\ witcher\ 2/bin/config/ ~/.steam/steam/steamapps/compatdata/20920/pfx/drive_c/users/steamuser/My\ Documents/Witcher\ 2/Config

instead of copying data (without symlink) as it was suggested here https://github.com/ValveSoftware/Proton/issues/2309#issuecomment-557256144, i.e.:

cp -r ~/.steam/steam/steamapps/common/the\ witcher\ 2/bin/config/* ~/.steam/steam/steamapps/compatdata/20920/pfx/drive_c/users/steamuser/My\ Documents/Witcher\ 2/Config/

@aeikum, please let me know if the only proper solution is to create a symbolic link manually.

aeikum commented 4 years ago

I don't think anyone has analyzed why the Config directory, or some file within it, is not being created correctly. That is what we should be looking into. Manually creating it is a workaround.

Leopard1907 commented 4 years ago

Well , game needs config workaround as mentioned. However game has a bigger issue than manually copying some stuff.

There is absolutely no way to get inventory open up while playing on Proton. Button is hardcoded to "I" , there is no way to change it. Probably due to my keyboard locale (which is not US layout) I,ı or i,İ doesn't seem to bring inventory.

Variables like LC_ALL=C , or LC_CTYPE etc doesn't work , changing keyboard layout from system settings doesn't work either. So that simple issue makes the game unplayable. Which is unfortunate because Linux port is utter thrash and crashes so much.

I think all of those issues are related and that is weird it gets ignored always.

https://github.com/ValveSoftware/Proton/issues/3791

https://github.com/ValveSoftware/Proton/issues/3783

https://github.com/ValveSoftware/Proton/issues/3673

https://github.com/ValveSoftware/Proton/issues/329

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

Leopard1907 commented 4 years ago

Follow up to my previous message : Inventory button works with GloriousEgroll's Proton build without messing anything.

https://github.com/GloriousEggroll/proton-ge-custom/releases/tag/5.6-GE-2

jqadev commented 4 years ago

@aeikum I've found a regression in the Proton 5.0-7, because during the game installation directories My\ Documents/Witcher\ 2/Config/ haven't been created in directory ~/.steam/steam/steamapps/compatdata/20920/pfx/drive_c/users/steamuser/ and I needed to create them manually to do a workaround to launch the game. The regression has been introduced in the Proton 5.0-6 or 5.0-7 as I tested it the previous time on the Proton 5.0-5 and then it worked.

kisak-valve commented 4 years ago

Hello @jqadev, please add PROTON_LOG=1 %command% to the game's launch options, reproduce the regression, and drag and drop the generated $HOME/steam-$APPID.log into the comment box.

jqadev commented 4 years ago

@kisak-valve will PROTON_LOG collect logs from the installation process? steam-20920.log

$ ls ~/.steam/debian-installation/steamapps/compatdata/20920/pfx/dosdevices/c:/users/steamuser
'Application Data'   Cookies   Desktop  'Local Settings'   Temp

As you can see after installation there are missing My\ Documents/Witcher\ 2/Config/ directories.

jqadev commented 4 years ago

@aeikum I've found a regression in the Proton 5.0-7, because during the game installation directories My\ Documents/Witcher\ 2/Config/ haven't been created in directory ~/.steam/steam/steamapps/compatdata/20920/pfx/drive_c/users/steamuser/ and I needed to create them manually to do a workaround to launch the game. The regression has been introduced in the Proton 5.0-6 or 5.0-7 as I tested it the previous time on the Proton 5.0-5 and then it worked.

I've checked https://github.com/GloriousEggroll/proton-ge-custom/releases/tag/5.8-GE-2-MF and it isn't affected by this issue but when the workaround with copying config files is done then the game doesn't launch in opposite to official Proton release.

kisak-valve commented 4 years ago

Witcher 2

Issue transferred from https://github.com/ValveSoftware/Proton/issues/3936. @ebesathyr posted on 2020-06-04T17:51:06:

Compatibility Report

System Information

``` System: Host: matheus-desktop Kernel: 5.0.0-32-generic x86_64 bits: 64 compiler: gcc v: 7.4.0 Desktop: Cinnamon 4.4.5 wm: muffin dm: LightDM Distro: Linux Mint 19.3 Tricia base: Ubuntu 18.04 bionic Machine: Type: Desktop Mobo: ASRock model: A320M-HD serial: UEFI [Legacy]: American Megatrends v: P5.40 date: 07/09/2019 CPU: Topology: Dual Core model: AMD Athlon 240GE with Radeon Vega Graphics bits: 64 type: MT MCP arch: Zen L2 cache: 1024 KiB flags: lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm bogomips: 28001 Speed: 3484 MHz min/max: 1600/3500 MHz Core speeds (MHz): 1: 3480 2: 1990 3: 3415 4: 1999 Graphics: Device-1: AMD Bonaire XTX [Radeon R7 260X/360] vendor: Gigabyte driver: amdgpu v: 5.0.19.20.7 bus ID: 01:00.0 chip ID: 1002:6658 Display: x11 server: X.Org 1.20.4 driver: amdgpu,ati unloaded: fbdev,modesetting,vesa resolution: 1920x1080~75Hz OpenGL: renderer: AMD Radeon R7 200 Series (BONAIRE DRM 3.31.0 5.0.0-32-generic LLVM 7.1.0) v: 4.5 Mesa 18.3.0-rc4 direct render: Yes ```

Proton: 5.0-7

I confirm:

Symptoms

O jogo não inicia, assim que coloco para rodar o mesmo desliga sozinho

Reproduction

kisak-valve commented 4 years ago

Hello @ebesathyr, you have a Sea Islands (CIK) generation video card, and Linux uses the radeon kernel module by default with that generation of video card. The radeon kernel module is not compatible with vulkan. Please give https://github.com/ValveSoftware/Proton/wiki/For-AMD-users-having-issues-with-non-OpenGL-games a read.

RussianNeuroMancer commented 4 years ago

Is anyone tested compatibility with GalliumNine?

jqadev commented 4 years ago

@aeikum @kisak-valve the workaround is no more needed since Proton 5.13-1 in contrast to the version 5.0-10.

ArtyIF commented 3 years ago

On Proton Experimental the game crashes silently (usually a launcher should appear, but it doesn't). Native version performs much worse (seemingly bottlenecked by loading things), so I'd really like for the game to work on Proton.

Installing VC++ Redist 2010 through protontricks didn't help, .NET Framework 4.0 fails to install. .NET 4.5 and 4.8 need --force to be installed due to a bug related to them (fixed in Wine 6.6+, but Proton is still based on Wine 6.3). Using --force didn't work since .NET 4.0 is needed for 4.5 apparently.

wine-mono just won't install for me for some reason.

Using Arch Linux

Newbytee commented 3 years ago

The game works for me using latest Proton Experimental.

Fedora 34 GNOME 40 (Wayland and X11) NVIDIA 470.57.02 Steam from RPM Fusion

Witcher 2 is modded with this mod though: https://www.nexusmods.com/witcher2/mods/934

ArtyIF commented 3 years ago

The game works for me using latest Proton Experimental.

Fedora 34 GNOME 40 (Wayland and X11) NVIDIA 470.57.02 Steam from RPM Fusion

Witcher 2 is modded with this mod though: https://www.nexusmods.com/witcher2/mods/934

I've seen it working for others on Arch out of box. I'm using KDE Plasma 5.22.3 (X11) with nvidia 470.57.02-5 drivers. Steam is installed through the multilib repository. Also here's the log after attempting to install vcrun2010 and wine-mono, maybe they'll help https://hastebin.com/kihusaqaza.rb

ArtyIF commented 3 years ago

Installed an earlier Proton version (4.x), .NET 4 installed successfully, but the launcher still doesn't launch. No unknown exception in the logs though. New logs: https://hastebin.com/xotuhitali.sql

ArtyIF commented 3 years ago

Progress! Decided to play Deus Ex Revision instead (which has no native Linux version), and noticed that it downloaded Steamworks Common Redistributables (which it didn't for Witcher 2). Launched W2 after that, and it automatically installed the prerequisites! Launcher works.

ArtyIF commented 3 years ago

Holy cow. It works! I spent hours trying to fix this and all I had to do is try to run a game that's Windows-exclusive!

Loading times are so much better than the native port, on the level of Windows. Performance is worse though, probably because I was using 4.x. Gonna test on Proton Experimental.

ArtyIF commented 3 years ago

Unable to find a version of the runtime to run this application.

Doesn't work on experimental. It does work on 4.11-3 though, but .NET 4 will probably need to be manually installed.

Newbytee commented 3 years ago

I didn't need to set up anything manually to make it work. It is possible I ran some other game that installed the common redistributables though.

ArtyIF commented 3 years ago

Reinstalled the game. On the first launch the performance was much worse, even the FMVs ran at like 15 FPS. But then I restarted the game (and closed a YouTube tab and a Discord window) and it ran much better, with levels close to native Windows!

ArtyIF commented 3 years ago

To #5027 - the first time setup mentioned DirectX Runtime and VC++ Redist 2010, so these are needed to be downloaded through Steamworks Common Redistributables. Also I saw people mention .NET Framework 4, but I'm not sure about that since it's broken under Wine/Proton.

smbkr commented 3 years ago

I seem to be experiencing similar problems. Here's a log from trying to launch the game: https://pastebin.com/XVEaHwty

It seems to be failing to load some DLLs:

6094.077:00cc:00d0:err:module:import_dll Library mfc100u.dll (which is needed by L"Z:\\home\\stuart\\.steam\\debian-installation\\steamapps\\common\\the witcher 2\\Launcher.exe") not found

I've tried Proton Experimental, 6.3-6, and 5.13-6, same result with all.

I did try running another Windows game in case that prompted the installation of the Steamworks Common Redistributables, but no luck (the other game - Arx Fatalis, if it matters - ran fine).

rihardsk commented 3 years ago

I have a different issue – the launcher starts, but after i click on "Launch game" the game gets stuck on the splash screen (the wolf medallion logo).

Logs: steam-20920.log

I've tried Proton Experimental, 6.3-7, 5.13-6, 5.0-10.

The game ran fine previously (might have been using Proton 5.13-6 or 5.0-10). One day it stopped working, I don't know what changed.

rihardsk commented 2 years ago

I've resolved the issue in my previous post. Some web searching revealed that the issue isn't exclusive to Linux+Proton but also happens on Windows. Some workaround suggested disabling hyperthreading, which pointed me to the actual culprit – having too many CPU cores. This seems to be a bug in Witcher 2.

To work around the bug, you can manually restrict the game to a subset of the cores with taskset – add, e.g., taskset -c 0-3 %command% to game's launch options in Steam to restrict it to 4 cores.

EDIT: i should probably mention that the problem manifested when i switched to a 16-core/32-thread CPU, but there were no issues with a 6-core/12-thread CPU.