ValveSoftware / Proton

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

The Elder Scrolls Online (306130) #556

Open diraven opened 6 years ago

diraven commented 6 years ago

% uname -a Linux 4.17.0-1-amd64 #1 SMP Debian 4.17.8-1 (2018-07-20) x86_64 GNU/Linux

Processor Information: CPU Vendor: GenuineIntel CPU Brand: Intel(R) Core(TM) i5-7600 CPU @ 3.50GHz

Video Card: Driver: NVIDIA Corporation GeForce GTX 970/PCIe/SSE2 Driver Version: 4.6.0 NVIDIA 390.77

Installs fine, then freezes after "Bethesda" logo.


15688.364:002a:002b:trace:module:LdrGetDllHandle L"libcef.dll" -> 0x1f40000 (load path L"Z:\\home\\diraven\\.steam\\steam\\steamapps\\common\\Zenimax Online\\Launcher;C:\\Program Files (x86)\\Steam;C:\\windows\\system32;C:\\windows\\system;C:\\windows;.;C:\\windows\\system32;C:\\windows;C:\\windows\\system32\\wbem")
15698.353:002a:002b:trace:module:LdrGetDllHandle L"libcef.dll" -> 0x1f40000 (load path L"Z:\\home\\diraven\\.steam\\steam\\steamapps\\common\\Zenimax Online\\Launcher;C:\\Program Files (x86)\\Steam;C:\\windows\\system32;C:\\windows\\system;C:\\windows;.;C:\\windows\\system32;C:\\windows;C:\\windows\\system32\\wbem")
15706.831:007c:0082:err:ntdll:RtlpWaitForCriticalSection section 0x7bd0cdc0 "/home/proton/proton/wine/dlls/ntdll/esync.c: shm_init_section" wait timed out in thread 0082, blocked by 0083, retrying (60 sec)```
tomaszg7 commented 4 years ago

Problem with the launcher stuck at "Loading" seems to be related to ca-certificates package. Version 20200601 breaks the game but downgrading fixes it for me.

https://bugs.gentoo.org/727262

justinkv commented 4 years ago

ESO installs and runs fine, but audio only is outputting on 2 channels. I'm using a 5.1 analog surround system without up-mixing, and winecfg shows audio as pulseaudio 5.1. Separate 5.1 audio channels works on other games I have currently installed (DOOM 2016 (Proton), FF XIV (wine)).

I noticed the opening logos/movies are outputting concurrently to all 5 speakers, but then the game itself is only front left and right. I installed the game in Windows and confirmed that surround is working there.

System Information KERNEL: 5.4.44-1-MANJARO GPU: NVIDIA GeForce RTX 2060 SUPER GPU DRIVER: NVIDIA 440.82 Proton version I'm using: 5.0-9

Tagging @aeikum based off the changes you made for #1803.

aeikum commented 4 years ago

@justinkv Thanks for reporting. I don't have time right now to dig into this myself, but maybe we can at least see where the problem is. In pavucontrol, can you tell whether the failing stream has 2 channels or 5 channels (with 3 being silent)? Can you upload a log of the failing audio with the following channels: +timestamp,+pulse,+alsa,+mmdevapi,+winmm,+dsound,+dsound3d,+xaudio2?

justinkv commented 4 years ago

Attaching log and a screenshot from pavucontrol. It looks like in pavucontrol it only shows left and right once the game audio starts up.

steam-306130.zip eso ingame sound

aeikum commented 4 years ago

@justinkv Thanks. Looks like the game is using XAudio2, which goes through FAudio. FAudio is for some reason only providing two channels to PulseAudio, so that's what you see in pavucontrol. Possibly this is a bug in Wine or in FAudio. Someone will have to dig into what the game is trying to do and why we're not opening 6 channels.

flibitijibibo commented 4 years ago

It's an SDL bug, set SDL_AUDIO_CHANNELS=6 as an environment variable to work around this.

Bugzilla entry: https://bugzilla.libsdl.org/show_bug.cgi?id=4181

justinkv commented 4 years ago

Awesome, that worked. Added SDL_AUDIO_CHANNELS=6 %command% to Steam launch options and everything is coming through on the correct channels now. pavucontrol also now shows 6 channels.

image

Thanks for the assistance @aeikum and @flibitijibibo.

effinjdent commented 4 years ago

This game was working fine for me up until today. The client would just bring up a black screen and hang. I tried reinstalling but the patcher is now doing a similar thing. This is the only error in my log:

[0623/161901.962773:ERROR:frame_sink_video_capturer_impl.cc(206)] Invalid resolutions constraints: 0x0 must not be greater than 0x0; and also within media::limits.

steam-info.txt

effinjdent commented 4 years ago

This game was working fine for me up until today. The client would just bring up a black screen and hang. I tried reinstalling but the patcher is now doing a similar thing. This is the only error in my log:

[0623/161901.962773:ERROR:frame_sink_video_capturer_impl.cc(206)] Invalid resolutions constraints: 0x0 must not be greater than 0x0; and also within media::limits.

steam-info.txt

That error is red herring I think. It's been in my logs even when the game was working. Is there a way I can capture more debug info?

effinjdent commented 4 years ago

steam-306130.log

ghost commented 4 years ago

@tomaszg7 eh, I wouldn't necessarily downgrade. The certificates are out of date and using them could pose a security risk.

I think the best approach would be to keep the ca-certificates package updated, and keep local copies of the outdated thawte certificates saved somewhere. When you want to play, copy them to /usr/local/share/ca-certificates/mozilla and run update-ca-certificates to import them. When you're done playing, delete them and run update-ca-certificates again to remove them.

That way you aren't holding back up-to-date certificates unnecessarily, while still being able to connect and play when you need to. It is a bit of a hassle, but you could automate this with a script for the time being, and hopefully Zenimax/Bethesda will stop being lazy and fix it on their end.

ghost commented 4 years ago

Proton 5.13 solves the certificates issue :)

tomaszg7 commented 4 years ago

Funny, doesn't start at all for me with Proton 5.13. However it works now with Proton 5.0 and new certificates.

ghost commented 4 years ago

Huh, that is strange. I guess there are still issues to iron out in that case.

kisak-valve commented 4 years ago

Hello @tomaszg7, please add PROTON_LOG=1 %command% to the game's launch options and attach the generated $HOME/steam-$APPID.log to this issue report as a file. (Proton logs compress well if needed.) Also, 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.

tomaszg7 commented 4 years ago

It seems in my case the problem lies elsewhere. Whole Proton 5.13 is broken. I missed it at first since I forgot I had some overrides in place for other games I run today. I'll report it in another thread when I know more.

ghost commented 4 years ago

I've had issues using Proton 4.11 and Proton 5.0 yesterday, they wouldn't work when installed manually. I had to uninstall them and let a game trigger the install before they would properly run. Otherwise I would click Play and it would just stop right away without doing anything. If that is the issue you're experiencing, it could be worth trying to verify Proton 5.13 files, in case the install might be broken, and if that doesn't work then I would try uninstalling it entirely and letting the game install it on next launch (Proton is listed in your library under Tools.)

kisak-valve commented 4 years ago

Elder Scrolls Online - stuck at login screen (happens 3 out of 4)

Issue transferred from https://github.com/ValveSoftware/Proton/issues/4314. @maboleth posted on 2020-10-25T10:20:08:

Compatibility Report

System Information

I confirm:

Symptoms

Once the initial logos go off, the game is stuck at the login screen. It's like it's frozen. The pointer works but I cannot click on anything inside the game. After I go out of the game and back, I perform a 'force quit'. If I do it enough times (restarting the game from the launcher) the game will eventually continue logging in without any problems.

Reproduction

Start the game, wait for the logos to come and go and see if the game will log you in.

I'm sorry but I couldn't find $HOME/steam-$APPID.log file anywhere in .steam dir after putting Proton log in the launch line.

maboleth commented 4 years ago

Adding PROTON_NO_ESYNC=1 %command% line in the launch option helps and makes this login problem disappear...

BUT

the game is not that stable and can crash every now and then. Before this option, ESO was rock solid. Can anyone explain to me what NO_Esync does and is there a way for proton to fix this?

codeman101 commented 4 years ago

Works fine for me. (version 5.13-1) Although I haven't played extensively yet. I thought controller input didn't work but that turned out to be because the games disables it by default and you can't enable it until you get into your character. Stupid of Bethesda.

oliverklee commented 4 years ago

On my system (Kubuntu Linux with Plasma on an X server with native Nvidia drivers for a 2060 card), Proton 5.13-1 does not automatically disable the Compositor when running Elder Scrolls Online (306130, #556) in full-screen mode, while Proton 5.0-10 does, resulting in screen tearing (and possible slightly worse performance). I've also checked this by testing whether desktop transparency effects (that require the Compositor to be enabled) are still active when running ESO is full-screen mode. Edit: There's also a new issue for this problem: #4469

jkhsjdhjs commented 3 years ago

I'm playing ESO via Lutris on Arch Linux, but the following information may also be relevant to Proton users:
Today the launcher was stuck at Loading... for me, it wouldn't get past it. Since it worked fine yesterday, I checked which packages got updated yesterday evening and I was able to narrow the problematic package down to ca-certificates-mozilla. It works with version 3.59-1 and doesn't work with 3.60-1. The issue persists with 3.61-1 and 3.62-1.

Also a note to other Lutris players: With lutris-6.0-rc1 (the default) I get patch manifest download errors, works fine with lutris-5.7 or wine-staging 5.22.

doogie544 commented 3 years ago

@oliverklee I would suspect that when the compositor is disabled you should see a slight boost in performance as the compositor is not trying to regulate the framerate of the game. The screen tearing issue should be able to be fixed with the vsnyc settings in the game. The game should be able to handle the vsync-ing easier than the compositor and you will not have the compositor and the game working either against each other or duplicating functions.

Thank you for your conformation that it is not working when launching a game. Now at least we have conformation that is it most likely related to the proton version and not the fact that I am using a more recent plasma version than the distro officially supported by Valve and also not likely a newer than expected lib issue related to Arch

kisak-valve commented 3 years ago

Elder Scrolls Online, Zenimax Free Space Error / Directory Not Writable

Issue transferred from https://github.com/ValveSoftware/Proton/issues/4682. @jmgant posted on 2021-03-20T19:19:06:

Compatibility Report

System Information

I confirm:

Symptoms

When I launch the game with Proton Experimental, the Zenimax installer says I only have 3GB available while I have over 1TB and won't install. When I launch with older Proton versions, the free space is reported correctly, however the Zenimax installer says the path to the game is not writable. I assure you it is, or has been made so.

I had this game on this system running at first. I removed it from an old, small drive, and it is only upon the reinstall that this has happened.

steam-346110.log

Reproduction

lapinsami commented 3 years ago

I am also getting the "Directory Not Writable" error when installing to a Steam library folder on my second SSD. Primary folder in ~/.local/share/Steam works fine.

evenfrost commented 3 years ago

After the last Flames of Ambition update game started crashing very frequently (there were no crashes before). Tried tweaking the params, changing Proton versions, drivers, game settings, every possible fix from the official guide, nothing helped. Did anyone get any luck with debugging/solving this?

DDoctorzeus commented 3 years ago

+1 having this issue as well.

Just tried to install and get an error complaining the directory is not writable.

oliverklee commented 3 years ago

With Proton 6.3, I cannot use the "^" key (on a German-layout keyboard) as a hotkey anymore. (I use this for weapon swap.) I think this used to work with Proton 5.13[next], but I'll re-check in a minute.

The ^ key works in in-game chat if I type ^ and space.

kisak-valve commented 3 years ago

Not that it helps, but it looks like the ^ key is to the left of 1 on a QWERTZ keyboard layout and is a modifier key (dead key).

kisak-valve commented 3 years ago

Possibly related to https://github.com/ValveSoftware/wine/commit/196aae1928f97bf64b644a0867632b4f36e3b913.

oliverklee commented 3 years ago

I've just retested with 5.13: Yes, this indeed is a regression in Proton 6.3.

ggallup commented 3 years ago

After the last Flames of Ambition update game started crashing very frequently (there were no crashes before). Tried tweaking the params, changing Proton versions, drivers, game settings, every possible fix from the official guide, nothing helped. Did anyone get any luck with debugging/solving this?

Same, insane amount of crashing since Flames of ambition patch. I've also tried twaeking all kinds of settings, Proton version, etc. And so far no luck.

Shallrath commented 3 years ago

I could work around the installer problems (unreadable error message in my case, but I guess it was the "Directory Not Writable" thing).

For some reason, the ESO installer wants to install the game to "Z:\Zenimax Online". "Z:" is linked to "/" which causes the installer to try to install to "/Zenimax Online". A normal user doesn't have write permission to the root directory so installation stalls with a flickering black box (i guess that's supposed to be said error message).

A workaround I saw on ProtonDB is to change the symlink "Z:" in your fake Windows to the location where you want to install ESO. Example: $ cd [YOUR STEAM LIBRARY] $ rm "steamapps/compatdata/306130/pfx/dosdevices/z:" $ ln -s ../../../../common "steamapps/compatdata/306130/pfx/dosdevices/z:"

Now when installing the game to drive Z: it will be installed in your steam library directory instead of /.

I don't like the idea of the drive Z: as it gives the game access to my entire root directory instead of keeping it inside a sandbox. But also, installing it to C: would install it into the compatdata directory which is not supposed to contain the full game. Maybe it would be an improvement to proton to create a separate drive that points to the actual install dir of the game instead of traversing the root dir through Z:

It also seems strange that there is no possibility to change the install destination in the ESO installer. You could manually find your path to your steam library going through drive Z: by something like "Z:\home\user\mySteamLibrary"...

And yes, "/" and "/home" reside on different physical drives on my system and I'm installing proton games inside my home directory. This scenario was described as a root cause for the problem by other people but I couldn't try installing it to my physical root drive because it is too small.

Just a side note, somehting else that seemed odd: The installer says 20 GB required but the game actually needs around 90 GB. Also, it said that on my root drive I had 7GB left when in fact there are 40 GB free.

ghost commented 3 years ago

I don't like the idea of the drive Z: as it gives the game access to my entire root directory instead of keeping it inside a sandbox.

Note that wine is not a sandbox, and drive Z: or not, nothing really prevents a windows app from accessing files anywhere it wants if a program's author really wanted to.

kisak-valve commented 3 years ago

Hello @Sha1rath, setting the game's launch options to PROTON_SET_GAME_DRIVE=1 %command% might trick the launcher into behaving a bit better.

Shallrath commented 3 years ago

Hello @Sha1rath, setting the game's launch options to PROTON_SET_GAME_DRIVE=1 %command% might trick the launcher into behaving a bit better.

I changed my Z: drive back to / and started the game with this option and it started directly without any reinstalling by the launcher.

Would be nice to know if that also fixes the issues when launching the game for the first time when the launcher does some installation work. Maybe someday I have the nerves to re-download the 95 GB just to see if this launch option is the workaround I should recommend at ProtonDB. Or someone else wants to...?

Shallrath commented 3 years ago

Update: After the game has been successfully installed, it runs without my described Z: fix and without the PROTON_SET_GAME_DRIVE option. So the problem can only be faced during the first run so a reinstall is needed to see if something actually fixes the problem or not.

Connor22 commented 3 years ago

I tried a lot of things to fix the installer bug, but had no luck (removed the Z: drive entirely with winecfg, put my entire steam library on one drive, changed Z: location)

Ended up installing through Lutris install script (and letting the launcher run/install), then moving over the Zenimax Online folder from the Lutris install to steamapps/common/Zenimax\ Online. Steam was able to detect the game and launcher folders, and the game ran perfectly fine from there.

(Proton version was either the default 6.3 or 6.1-GE-2 while testing this, and both had the same issues afaict)

evenfrost commented 3 years ago

@ggallup I was previously running ESO with vkBasalt and gamemode through PROTON_NO_ESYNC=1 ENABLE_VKBASALT=1 gamemoderun %command% launcher options, and there were no issues with that until Flames of Ambition.

After crashes started appearing I've removed all the launcher options, lowered graphic settings (specifically disabled antialiasing) and turned on vsync in-game, and played that way for a week without a single crash. Then I started gradually increasing graphical settings, turned off vsync (as it caused some UX issues), and still the game runs very stably since that. The only crash appeared yesterday, but it looks like a random one and wasn't in a battle.

I'm still playing without launcher tweaks though and using latest Proton GE. Hope that helps.

leinardi commented 3 years ago

Hello @Sha1rath, setting the game's launch options to PROTON_SET_GAME_DRIVE=1 %command% might trick the launcher into behaving a bit better.

@Sha1rath this actually worked for me, using Proton Experimental!

kaydenl commented 3 years ago

The game has been crashing frequently since ESO U29 (Flames of Ambition), on my system with an NVIDIA GTX 1080 Ti, and my friend's system with a GTX 1660 Ti. Fighting dragons or harrowstorms reproduces the issue very reliably (not 100% of the time, but you hit it very shortly), but I've also experienced it simply walking out of a house, or getting on a mount. ESO worked flawlessly toward the end of U28. I've tried NVIDIA drivers 455 and 465. Tried Proton 6.5GE-2, 6.4-GE-1, 5.10, and other Proton versions. Tried lowering graphics quality. Nothing works. I had hoped a game update would fix it, but none have come.

It seems to be worse in high-visual-effects scenarios, such as ground flame circle effects, red lightning, certain boss moves.

Running on Windows with the same settings, add-ons, and everything works fine.

I did try it on a laptop with Intel Tigerlake graphics and experienced zero crashes. It could be an NVIDIA issue, but my feeling is that it's some kind of race condition, and the Intel card is just not hitting that. I don't have access to an AMD system to test that, unfortunately.

kaydenl commented 3 years ago

I've now tried with AMD Vega 64 and radv master and confirm that it crashes very frequently as well. I think it actually crashes even more frequently than on my GTX 1080Ti. Intel Tigerlake still doesn't crash, for whatever reason.

oliverklee commented 3 years ago

I've also experienced a black screen and either hangs or crashes when the login screen should be loading. (The launcher usually works, though.) This is with Kubuntu 20.04 and 21.04 on an Nvidia 2060 card and Proton 6.3-3.

It has turned out that this is related to the version of the proprietary Nvidia graphics driver. Version 465 and 460 had the problem, as had the latest 455 and 450 version (that are transitional packages that depend on the 460 version). Pinning to the "real" 450 version has solved the crashes and hangs for me. It did this by adding a file /etc/apt/preferences.d/nvidia.pref with this content:

# This will avoid upgrade to version 460 and 465 (which breaks ESO)
Package: nvidia-*-450 libnvidia-*-450 xserver-*-nvidia-450 nvidia-*-450:i386 libnvidia-*-450:386 xserver-*-nvidia-450:i386 libnvidia-gl-450:i386
Pin: version 450.*
Pin-Priority: 1000
ghost commented 3 years ago

You could also just use nvidia-driver-450-server. They are the same drivers, they just don't upgrade into transitional packages for stability reasons.

kaydenl commented 3 years ago

Okay, I discovered something about all the crashes since U29 (Flames of Ambition): a lot of us had been running with PROTON_NO_ESYNC=1 due to past issues. I dropped that environment variable (so, re-enabling esync), and things have been rock solid so far. I can do harrowstorms with no crashing, whereas with esync disabled, it was crashing nearly every time.

So I can confirm that:

appears to be a viable way to play the game again.

kisak-valve commented 3 years ago

elder scrolls online steam proton crash

Issue transferred from https://github.com/ValveSoftware/Proton/issues/4838. @r3k2 posted on 2021-05-20T23:43:45:

Compatibility Report

System Information

I confirm:

Symptoms

Sorry for my bad English. Playing ESO is usually ok until a big fight on cyradell the open world pvp area. it was working fine up until November that I stop playing... just got back to play the game and now is crashing.. I downgraded proton version to have the same I had before 5.x and still crashing under same circumstances.

terzag commented 3 years ago

Hello, One year ago, I installed ESO on Steam through Proton with no issue but uninstalled it after a while.

I'm trying to reinstall it now and have been through several issues. I'm trying to install it on a second drive; I think it was already the case when it worked, as my main drive is a SSD with not much space but I'm not 100% sure.

After managing to workaround the installer saying I didn't have enough space with an older Proton version, then that I didn't have permissions by running the setup.exe through Wine and copying the Launcher dir to the right prefix, I can start the Launcher. I only have an "Install" button and when clicking on it, I get the error "Unable to decompress patch manifest data". I've tried to add the PROTON_SET_GAME_DRIVE option but still the same.

I'm a bit lost: is the manifest error related to the drive ESO is installed on and, if so, are there workarounds?

MadMagnetic commented 3 years ago

Replying to https://github.com/ValveSoftware/Proton/issues/556#issuecomment-873597812

So this may help you: Not enough space / Installation Path is not writable

You will encounter this error if you install anywhere but the default Steam home location. Quit the launcher. Go to /steamapps/common/Zenimax Online/

Run setup.exe through wine (right-click to open in Wine Windows Program Loader)

Complete the installation. It will say it will have to use 20GB of space but in reality it is only like 200MB for the Launcher, which is what we need. It should only take a few seconds to complete.

This should have installed the Launcher in ~/.wine/drive_c/Program Files (x86)/Zenimax Online/. Now copy the entire Launcher folder to steamapps/common/Zenimax Online/

Run the game from Steam again. Launcher will now run and update if needed.

terzag commented 3 years ago

These issues has been fixed for me, the launcher installation has been completed. The one remaining is that after starting the launcher, I have an "Install" button instead of "Play" (presumably because it has big updates that are not part of the base Steam installation) but when doing it I get a message saying "Unable to decompress patch manifest data" and it'll stop.

I'm wondering if that specific issue is related to having the game on a second drive and, if so, if there are workarounds. And if it's unrelated, any idea about what's causing it?

EDIT: ok, I managed to fix it. It might have been a mixup from the initial installation considered in Z: before adding PROTON_SET_GAME_DRIVE (that maps the installation dir to S:). Basically, I just deleted the Launcher dir in steamapps/common/Zenimax Online and reinstalled it without using Wine outside of Steam. So:

It reinstalled the launcher (noticed during the installation that it was doing it in S: as expected) and it went fine. After starting it, I don't have the manifest error anymore and can download the updates.

ghost commented 3 years ago

Would be nice to know if that also fixes the issues when launching the game for the first time when the launcher does some installation work. Maybe someday I have the nerves to re-download the 95 GB just to see if this launch option is the workaround I should recommend at ProtonDB. Or someone else wants to...?

I used PROTON_SET_GAME_DRIVE=1 %command% on a fresh install, and it helped things work properly without needing any other workarounds. The InstallAnywhere window had a tendency to be all black and I had to kinda just blindly click through it, but otherwise things seem fine.