Open PadreAdamo opened 6 years ago
Hello @PadreAdamo, 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.
This game have poor performance on Nvidia video card even on lowest settings. My system specs "Poor prefomance" is about 30-40 FPS against 60+ with same settings on Windows 10.
- Missing Shaman class from list of class choices. Also, unable to select any classes on new characters. Have not tested on established characters with only one class selected.
Grim Dawn Class Selection Broken
Issue transferred from https://github.com/ValveSoftware/Proton/issues/535. @twinsonian posted on 2018-08-25T13:02:57:
i5-4460 / RX 460 Proton 3.7 - Proton 3.7.4 Ubuntu 18.04 / Mesa 18.3.0-devel - padoka PPA
This affects Grim Dawn with or without ashes expansion.
@kungtotte commented on 2018-08-25T17:30:15
CPU Brand: Intel(R) Core(TM) i5-4670K CPU @ 3.40GHz Kernel Version: 4.14.65-1-MANJARO Driver Version: 4.6.0 NVIDIA 396.51, Proton 3.7
I'm having the same issue. I mounted my Windows games partition and compared the files between the Windows install and this one, and everything matches up. Going to investigate some more.
To add to this, bosses don't seem to spawn. See here for an additional report (it's also mentioned several times in the unofficial compatibility list spreadsheet). I've tried a number of things and haven't found anything that solves either this or the inability to select masteries (at both level 2 and level 10).
Aside from my previously mentioned issue of not being able to select a class, I am experiencing flickering of character models. They will intermittently disappear and reappear rapidly.
System Information: https://gist.github.com/kungtotte/c2a8a74134971703bec4635b14853362
Can't apply/save any game option. This mean also unable to change language for me :( It seems not created any files in /steamapps/compatdata/219990/pfx/drive_c/users/steamuser/Documents/My Games/Grim Dawn/. Creating empty paths or copying from windows version has no effect...
P.S. removed prefix, reinstall game several times - everytime same bug
CPU: Intel(R) Core(TM) i7-2700K CPU @ 3.50GHz NVIDIA: 1050ti, 4.6.0 NVIDIA 396.54 Proton: default
Same here with the missing classes, except it's missing shaman, Inquisitor, and Necromancer for me. I can play my Conjurer/shaman and Necromancer/nightblade just fine, though. (Existing characters made on WINE.) No problems with wine-staging 3.13.
Other than that, dx11 (default without /d3d9 flag) works awesome.
@garpu do boss monsters spawn for you? i switched to normal wine to choose masteries, then got stuck in proton again because named boss monsters wouldn't spawn, so i couldn't finish quests requiring me to kill them. I had to switch to normal wine for that too.
I just tried with my new character and the first boss in Burial Hill, and it didn't spawn for me using Proton. The boss spawned fine in non-Proton wine.
Similar problems on Manjaro, nvidia 396.54, default Proton 3.7:
Steam Information steam-219990.log Steam stdout (from start of the game to quitting)
DirectX 11 via Proton results in flickering of all textures. I have tried all video configurations from low to high, but the only change that consistently resolves the issue is to disable shadows completely and then restart the game. The other solution is to set launch option /d3d9
under Properties > General > SET LAUNCH OPTIONS... ; shadows work fine with DirectX 9 it seems.
Performance is otherwise excellent on max settings (all), if not slightly improved by adding +fullproc
to the launch options (though this is likely placebo). What probably enhances performance the most is the optimizations I list at the end.
https://steamcommunity.com/app/219990/discussions/0/3338745825889250571/?ctp=2 So there's some speculation that the missing boss and class issue is Proton triggering the anti-piracy measure. What does proton do that regular WINE doesn't?
With proton 3.16-1, there's absolutely no flickering, whatsoever. But classes and bosses are still missing.
And now regular WINE with dxvk 0.91 and Nvidia drivers 396.54.09 is flickering. /d3d9 doesn't have this issue. Regression?
Out of curiosity, has there been any movement on fixing proton tripping the anti-piracy measures? Anything we can help test?
@garpu I can confirm that wine-3.20 (Staging)
and dxvk 0.92
also produces flickering. Sysinfo:
Ubuntu 18.04.1
Driver: Nvidia 410.73
Wine: wine-3.20 (Staging)
Dxvk: 0.92
Should this go on dxvk's issues? I think it may have started around 0.90.
@garpu I was thinking the same thing. An issue should be opened here after we have confirmed that this happens in the master
branch: https://github.com/doitsujin/dxvk/issues
Per the project's guidelines:
If you run into a problem with a binary release, make sure to test with latest `master` as well.
I have successfully built the master branch, but have only been able to test for a few minutes. The flickering was worse on the character screen. So far, no flickering observed in game, but I am not confident that will last. Further, I am not sure if the latest dxvk
libraries will trigger the anti-piracy measures of the software.
To accomplish this, I forked a github project that I found for building the latest master branch of dxvk
:
https://github.com/stshow/dxvk-docker
Feel free to run the above container and try it for yourself. If you feel inclined to open the PR on https://github.com/doitsujin/dxvk/issues, be my guest. Only prerequisite is to use the above instructions to install the latest Docker CE. If you have never done that, try this (if you trust pulling down a bash script and running it as such):
$ curl -fsSL https://get.docker.com | bash
$ git clone https://github.com/stshow/dxvk-docker.git
$ docker build -t stshow/dxvk-docker:latest .
Update: My PR was merged in the upstream dxvk-docker image. You may want to use that one moving forward as it is more actively maintained. https://github.com/cheald/dxvk-docker
Update: New nvidia 415.18 drivers are available with improvements to Vulkan. This may be worth testing as well. https://www.phoronix.com/scan.php?page=news_item&px=NVIDIA-415.18.02-Linux-Released
I just did a couple of short tests on Ubuntu 18.04 with Nvidia 415.18 drivers, https://github.com/doitsujin/dxvk/commit/cf21111401db1ba301fe013132746030130aa67d (latest master), and Wine Staging 3.21. No flickering observed.
Still seeing flickering, but only on the title screen prior to starting the game and only when playing fullscreen. In borderless windowed mode, there is zero flickering. Update: When talking to Barnabas in Devil's Crossing, there is some small amount of flickering in the character portrait (windowed borderless). Otherwise, gameplay seems fine.
@stshow I used to have the flickering problem on title screen but now that I updated my nvidia to the latest driver it's working fine. I am getting same fps with same config on both Windows and Linux and no problems at all when it comes to graphics.
For me what makes the game unplayable is the progression, I started a new character and I already could not pick one of the Masteries at level 2, I kept playing until level 10 to see if I could find any other issue but that seems to be the only thing.
OS: Manjaro 18 Kernel: 4.19.6-1-MANJARO Driver: 415.18 Proton 3.16-4 Beta (using the latest one available on Steam) Resolution: Windows (Borderless) 2560x1080
@thamenato that is the anti-piracy protection. Unfortunately Crate are not looking to do anything with Linux and Steam are not going to change how Proton works for this one game unless it shows as a more widespread problem :/
I believe Grim Dawn will forever be 'unplayable' on Proton.
@thamenato I concur with @beaverusiv. Hence, I provided the details for running the game with wine-staging. Best case scenario: if we can find the wine patch that triggers the anti-piracy in the game ( esync etc ) using wine, we can make suggestions for improvements/changes to Proton. In the end, it is possible that our findings here may require changes to Proton that are undesirable to Valve et al. I will gladly continue to post findings that help our cause nevertheless.
And if we can figure out what's causing it, and if it's a problem with WINE, it might be something that can be fixed upstream from Proton.
I would love to help you guys somehow, though I'm not sure if my lack of knowledge on how WINE works under the hood would be useful.
I'm on AMD and don't have the flickering issue, just the supposed anti-piracy issue with missing classes + boss spawns + class choice etc. For Nvidia users if /d3d9 works fine then the flickering issue is with DXVK. I would say try older versions of DXVK (you can manually copy them into proton/dist/lib(and lib64)/wine/dxvk to see if any older version gets rid of the flicker. if it does, then dxvk needs to be bisected
The theory I have seen put forth is that Proton puts files in the directory of the game it is running under wine whereas other methods (PlayOnLinux, etc) do not and Grim Dawn is checking that only its files are in the directory. If this is the case then it is definitely not something Proton would likely change.
@beaverusiv not sure if this is correct/true, as I have my entire prefix folder inside of grim dawn's steam folder for lutris, and it runs the game without issue. If this is the case it might be helpful to figure out what files proton is placing in the grim dawn folder
@GloriousEggroll I am referring to this thread. I have not confirmed myself.
I confirmed that using the latest dxvk
master https://github.com/doitsujin/dxvk/commit/9572425912c2ee07ee112d8fe75a817c0f82b85c along with wine-tkg-protonified allows the game to progress. I leveled a a new necromancer to 5, opened the Burial Hill rift gate, and completed the first quest (kill boss beneath Burial Hill) without issue.
I have not reviewed the "protonified" source to find out which Proton patches are incorporated, but perhaps this can serve as a diff against Proton and help us to get to the bottom of the mystery. You can try it by downloading this pre-built binary (from Lutris' servers) and running it:
$ wget https://lutris.nyc3.digitaloceanspaces.com/runners/wine/wine-tkg-protonified-3.21-x86_64.tar.gz
$ tar xvzf wine-tkg-protonified-3.21-x86_64.tar.gz -C ~
$ WINEESYNC=1 WINEARCH=win32 WINEPREFIX=~/.grimdawn ~/tkg-protonified-3.21-x86_64/bin/wine C:\\\\windows\\\\command\\\\start.exe steam://rungameid/219990
We may also want to consider testing a standalone build of the latest Proton
master too. Perhaps, if @beaverusiv 's theory is correct, the Steam client is triggering the anti-piracy, and not the engine itself.
I fired up both the lutris/winesteam version and the proton version and looked into the libraries in-use in the task manager, then compared them to see if there was anything extra the lutris version had in use, here's what's missing from the proton version in relation to wine:
668 KB /home/gloriouseggroll/.local/share/lutris/runners/wine/3.21-x86_64/lib/wine/msvcr120.dll.so
220 KB /home/gloriouseggroll/.local/share/lutris/runners/wine/3.21-x86_64/lib/wine/dbghelp.dll.so
80 KB /home/gloriouseggroll/.local/share/lutris/runners/wine/3.21-x86_64/lib/wine/shcore.dll.so
76 KB /home/gloriouseggroll/.local/share/lutris/runners/wine/3.21-x86_64/lib/wine/concrt140.dll.so
60 KB /home/gloriouseggroll/.local/share/lutris/runners/wine/3.21-x86_64/lib/wine/netapi32.dll.so
44 KB /home/gloriouseggroll/.local/share/lutris/runners/wine/3.21-x86_64/lib/wine/crypt32.dll.so
20 KB /home/gloriouseggroll/.local/share/lutris/runners/wine/3.21-x86_64/lib/wine/secur32.dll.so
16 KB /home/gloriouseggroll/.local/share/lutris/runners/wine/3.21-x86_64/lib/wine/imagehlp.dll.so
12 KB /home/gloriouseggroll/.local/share/lutris/runners/wine/3.21-x86_64/lib/wine/kerberos.dll.so
12 KB /home/gloriouseggroll/.local/share/lutris/runners/wine/3.21-x86_64/lib/wine/mswsock.dll.so
8 KB /home/gloriouseggroll/.local/share/lutris/runners/wine/3.21-x86_64/lib/wine/bcrypt.dll.so
my hunch is that maybe it needs bcrypt/crypt32. Interestingly enough - using runner 3.16-x86_64 in lutris - which is the vanilla version of wine 3.16, with dxvk, the game doesn't render, just shows a black screen. It does work with 3.21.
@GloriousEggroll Just to be clear, you are comparing Wine 3.21
(vanilla) to Proton and not Wine tkg-protonified
, correct? Just wanted to clarify:
here's what's missing from the proton version in relation to wine
Appreciate the cycles on this!
Correct.
Flickering for me was corrected by setting antialiasing to 4x. Exited game and restarted, flickering present again, meh.
Wine-tkg-staging 4.0rc3, Dxvk 0.94, nvidia 415.25
Proton Beta Release: 3.16-6
Support for gnutls >= 3.0, which should fix many networking issues with games. Note the Steam runtime doesn’t ship this yet, so your distribution will need to provide it.
Have not had a chance to test, but might address crypto lib issues mentioned in https://github.com/ValveSoftware/Proton/issues/466#issuecomment-446109963 and help overcome anti-piracy issues seen thus far. If that does not work, a custom compile of proton with aforementioned dependencies (https://github.com/ValveSoftware/Proton/issues/466#issuecomment-446109963) may be in order.
@ryanmusante did you note whether quest progress is possible (https://github.com/ValveSoftware/Proton/issues/466#issuecomment-423186921)? Anti-piracy has been kicking in on versions prior to 3.16-6 so far.
sadly it did not fix it. the only other thing I can think of is maybe proton's version of the steam dlls needed for DRM is not enough
Still cannot pick a class with 3.16-7. Didn't expect it to work, just putting it here as I tested and know others will want to know.
The new x64 binary added in v1.1.0.0 does not seem to exhibit the problems reported here: I was able to pick a mastery upon reaching level 2 and Kyzogg did spawn, so I was able to complete the first quest. I was also able to kill Warden Krieg with another character.
The x32 version still has the same problems, even on Proton 3.16-8.
E: As @scottc points out, version 1.1.0.1 also fixes the problems for the x32 executable.
I can confirm, @bendooru None of the fixes described previously have worked for me for the class/progression issue but now running with x64 I am able to pick a class just fine. No HW changes for me and I've only updated Proton and the proprietary nVidia driver continuously as updates have been made available.
Grim Dawn 1.0.1.1 Proton 3.16-8 Beta
Both x86 and x86_64 builds are working flawlessly on my setup.
Kyzogg spawns and character progression is working.
Prior to Grim Dawn 1.1.0.0 I had issues with Kyzogg.
With V1.1.0.0 I have no issues, but I have to re-create already bugged character.
@scottc @lieff With Proton 4.2.1 and the x64 binary of V1.1.0.0, I'm experiencing flickering textures. Do you have this issue as well? Disabling D3D11 fixes this, but seems to have an very large impact on performance (going from native-like-smooth to barely playable when lots of stuff is happening on screen). What are you experiences in this?
I'm using nvidia-418.56 and linux 5.0.4.
According to this comment on Reddit, this issue seems to be related to the texture flickering: https://github.com/doitsujin/dxvk/issues/405. Running example with the fix here. Looks like one would need to provide a custom-built Proton version just for Grim Dawn with a specific patch that fixes the texture flickering, but breaks other games. :disappointed:
I'm already using dx9. With dx11 there flickering textures on previous versions of the game too.
It's just the patched version of dxvk that's needed. I pulled the dxvk files (dist/lib/wine/dxvk and dist/lib64/wine/dxvk) out of the version provided and put them into a copy of proton 4.2 pasted into Steam/compatibilityltools.d. (And compatibilitytool.vdf copied into the new proton directory and edited to reflect the new version.)
@garpu Thanks, I did just that and it seems to work fine. I couldn't get the game to work when compiling the dxvk dll's myself when cherry-picking the patch to DXVK 1.0, but with the patched DXVK 0.96 as described in the description of the aforementioned Youtube video, it works perfectly. No need to disable D3D11, no flickering textures.
Manipulation of Direct3D libraries in multi-player games may be considered cheating and can get your account banned. This may also apply to single-player games with an embedded or dedicated multiplayer portion. Use at your own risk.
Without further ado, these are the steps I took to get this to work:
mkdir ~/.local/share/Steam/compatibilitytools.d/
cp -r ~/.steam/steam/steamapps/common/Proton\ 4.2 ~/.local/share/Steam/compatibilitytools.d/
cd
to the directory where dxvk-dsr-0.96.tar.gz
was downloaded, or compile the DLL's yourself.tar xzvf dxvk-dsr-0.96.tar.gz
mv dxvk-dsr-0.96/x32/*.dll ~/.local/share/Steam/compatibilitytools.d/Proton\ 4.2/dist/lib/wine/dxvk
mv dxvk-dsr-0.96/x64/*.dll ~/.local/share/Steam/compatibilitytools.d/Proton\ 4.2/dist/lib64/wine/dxvk
touch ~/.local/share/Steam/compatibilitytools.d/Proton\ 4.2/compatibilitytool.vdf
and fill with the following content:{
"compat_tools"
{
"Proton 4.2-GrimDawn" // Internal name of this tool
{
// Can register this tool with Steam in two ways:
//
// - The tool can be placed as a subdirectory in compatibilitytools.d, in which case this
// should be '.'
//
// - This manifest can be placed directly in compatibilitytools.d, in which case this should
// be the relative or absolute path to the tool's dist directory.
"install_path" "."
// For this template, we're going to substitute the display_name key in here, e.g.:
"display_name" "Proton 4.2-GrimDawn"
"from_oslist" "windows"
"to_oslist" "linux"
}
}
}
After restarting steam
, you should be able to select the patched proton
version specifically for Grim Dawn:
And that's it!
It would be nifty, if there could be a release of the patched version of dxvk built specifically for Proton, like an optional tool release. (Seeing as though it's a fix for Grim Dawn and Dark Souls.) Are there any other games that are affected by this?
@garpu Unfortunately, this seems to be a bug that's not easily fixed without breaking other games according to https://github.com/doitsujin/dxvk/issues/405#issuecomment-458900682.
I wish I could fix it myself, but I have zero experience in C++ let alone DirectX or Vulkan programming. :smiley: Perhaps @doitsujin is willing to take a fresh look at it once more if we ask them nicely. Perhaps the codebase has evolved over the last couple of months so that the changes in https://github.com/doitsujin/dxvk/commit/621aed5fdbaf92764944be7b3a27cbb3df63ba94 can be incorporated more easily without breaking other stuff, who knows. :wink:
I'm not sure about other games being affected by this by the way. I haven't seen the flickering problem in any games other than Grim Dawn and Dark Souls Remastered.
That's why I thought the patched dxvk as an optional tool download would make sense--it would be compiled for proton and distributed through Valve. Compiling dxvk involves a dependency hell that not everyone would (or could) resolve. Although if it only affects two games, would it be worth the extra trouble?
No issues with Grim Dawn across AMD hardware. Launches perfectly.