protonscr

Steam Play not launching games (Wine error)

protonclosed
ValveSoftware/Proton#1676 · opened 2018-10-02 by w1lford · updated 2020-04-09 · 26 comments · github
Ww1lford 2018-10-02 github

Steam play previously worked and I was able to run a lot of games quite decently within Linux. However, within the last few days I tried to start a windows game and none of them run. Every time I try to launch them they simply don't load. I launched steam through the terminal to see the debug output and this is the error I keep getting:

wine: cannot find '/home/[username]/.steam/legacycompat/iscriptevaluator.exe'
wine: cannot find '/home/[username]/.steam/legacycompat/iscriptevaluator.exe'
wine: cannot find '/home/[username]/.steam/legacycompat/iscriptevaluator.exe'

I recently installed Wine 3.0 from the official wine repository but uninstalled it later. But Steam uses it's own version of wine so I doubt could be the reason. I checked file path given above and the exe file exists in the exact path that it should. Any ideas what could be going wrong?

Kkisak-valve maintainer 2018-10-02 github

Hello @w1lford, 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. Additionally, please note which version of Proton you are using.

Ww1lford 2018-10-02 github
Ww1lford 2018-10-02 github

It may have something to do with the fact that my games are installed on a secondary NTFS hard drive shared with windows to store games, and Steam is installed on my primary hard drive with dual-boot Windows 10 and Linux Mint.

ZZero86Sk 2018-10-02 github

Proton seems to have issues with NTFS

RRotscha 2018-10-02 github

Make sure your user account has write access to the NTFS partition and its executable flag set.

Ww1lford 2018-10-02 github

I had the main issue previously however I was able to resolve it by editing my /etc/fstab file and adding the uid=1000 option so that I have ownership over the drive. My /etc/fstab file still has the correct options in it, but it no longer works.

XXavron 2018-10-02 github

One way to find out is to uninstall a game and then install it again from Steam linux and non-NTFS instead of wondering if it is or isn't. It seems like its resulted from OS sharing which they don't really support at this time from what I've read.

Therefore this may be a duplicate.

Ww1lford 2018-10-02 github

I just installed a game on my ext4 linux partition and tried to run it and the exact same issue occurred. I don't think it's a drive issue anymore. I think it has something to do with Wine. Maybe my official wine installation is conflicting with the Steam Proton files?

XXavron 2018-10-02 github

It should be a duplicate of this: https://github.com/ValveSoftware/Proton/issues/82

Ww1lford 2018-10-02 github

Well I tried both of the proposed solutions given in that other issue and neither of them solved my issue.

XXavron 2018-10-02 github

The error wine: cannot find '/home/[username]/.steam/legacycompat/iscriptevaluator.exe' is not enough to go on as you seem to have something else happening. Everything is just going to be guesses in the dark and lots of fails apparently.

Ww1lford 2018-10-05 github

So a quick update on this: This is the weirdest fix but I rebooted to the Windows 10 partition, ran Check Disk and Disk Defrag on the hard drive, and then rebooted back into the Linux partition and games are running fine now...I guess it may have had something to do with bad disk sectors.

Yyu-kai 2018-10-09 github

A common error that I usually have with wine:
Directory, HDD is not owned by you !!! And wine refuses to work. I had a hard time to find that this also is the case with Proton. If you mix three different volumes with different installations as I have, it's hard to find that. I remember that I had problems too with Nexus (mods) and this stuff. But can't remember what it was.
So, please try to own all of the Drives an directories.

Rrandom2324 2018-10-15 github

I had exact the same issue and I think I know now whats going on.
Short story: Delete the folder steamapps/compatdata/Steam_id_of_your_game and let Steam recreate everything with the next game start.

Part of the problem is that I have some of my games on an external hdd.
Now, proton creates fresh wine prefix for every game under steamapps/compatdata/Steam_id_of_your_game.
Under pfx/dosdevices are usually links for drive c and other stuff. However when I look in this folder I just see some symlinks for com1 to com4. So essential drive c is missing. I dont know why this happen but I could imagine that it has something to do with with changing drive names in linux where sdd1 sometime becomes sdc1. And since wine create links to e.g. sdd1 even though it becomes a different drive like sdc1, wine fails to find the exe.
Maybe it would be more clever to use UUIDs?

BBLaDZer 2018-11-03 github

On Proton 3.16-4 Beta now most of game won't start if they was installed with stable Proton.
Error:

err:file:init_redirects cannot open L"C:\\windows" (c000000f)
err:process:init_windows_dirs directory L"C:\\windows" could not be created, error 2
err:process:init_windows_dirs directory L"C:\\windows\\system32" could not be created, error 3
err:process:init_windows_dirs directory L"C:\\windows\\syswow64" could not be created, error 3
wine: cannot find '/run/media/blad/SteamLibrary/SteamLibrary/steamapps/common/Grim Dawn/Grim Dawn.exe'

I some cases Proton create empty log if using PROTON_LOG=1 so I can't see why game not started...

Switching back to stable version fix this problem. Removing "compatdata" for game also fix it in most cases(but seems there are some other bugs in proton beta).

@kisak-valve please register this regression and could you tell me why Proton 3.16-4 Beta may create an empty log file? (if game installed on older proton pfx version)

BBLaDZer 2018-11-04 github

@kisak-valve I think it's related bug to "new Proton" on "old pfx" is that:

Traceback (most recent call last):
  File "/run/media/blad/SteamLibrary/SteamLibrary/steamapps/common/Proton 3.16/proton", line 262, in <module>
    create_fonts_symlinks(prefix)
  File "/run/media/blad/SteamLibrary/SteamLibrary/steamapps/common/Proton 3.16/proton", line 242, in create_fonts_symlinks
    os.symlink(fname, lname)
FileNotFoundError: [Errno 2] No such file or directory: '/run/media/blad/SteamLibrary/SteamLibrary/steamapps/common/Proton 3.16/dist/share/fonts/LiberationSans-Regular.ttf' -> '/run/media/blad/Docs/SteamLibrary/steamapps/compatdata/102600/pfx//drive_c/windows/Fonts/arial.ttf'
JS method call SharedConnection.SubscribeToEMsg with 2 arguments
JS method call SharedConnection.SubscribeToEMsg with 2 arguments
JS method call SharedConnection.SubscribeToEMsg with 2 arguments
JS method call SharedConnection.SubscribeToEMsg with 2 arguments
JS method call SharedConnection.SubscribeToEMsg with 2 arguments
JS method call SharedConnection.SubscribeToEMsg with 2 arguments
JS method call SharedConnection.SubscribeToEMsg with 2 arguments
JS method call SharedConnection.SubscribeToEMsg with 2 arguments
JS method call SharedConnection.SubscribeToClientServiceMethod with 2 arguments
JS method call SharedConnection.SubscribeToClientServiceMethod with 2 arguments
JS method call SharedConnection.SubscribeToClientServiceMethod with 2 arguments
JS method call SharedConnection.SubscribeToClientServiceMethod with 2 arguments
JS method call SharedConnection.SubscribeToClientServiceMethod with 2 arguments
JS method call SharedConnection.SubscribeToClientServiceMethod with 2 arguments
JS method call SharedConnection.SubscribeToClientServiceMethod with 2 arguments
JS method call SharedConnection.SubscribeToClientServiceMethod with 2 arguments
JS method call SharedConnection.SubscribeToClientServiceMethod with 2 arguments
JS method call SharedConnection.SubscribeToClientServiceMethod with 2 arguments
JS method call SharedConnection.SubscribeToClientServiceMethod with 2 arguments
JS method call SharedConnection.SubscribeToClientServiceMethod with 2 arguments
JS method call SharedConnection.SubscribeToClientServiceMethod with 2 arguments
JS method call SharedConnection.SubscribeToClientServiceMethod with 2 arguments
JS method call SharedConnection.SubscribeToClientServiceMethod with 2 arguments
JS method call SharedConnection.SubscribeToClientServiceMethod with 2 arguments
JS method call SharedConnection.SubscribeToClientServiceMethod with 2 arguments
JS method call SharedConnection.SubscribeToClientServiceMethod with 2 arguments
JS method call SharedConnection.SubscribeToClientServiceMethod with 2 arguments
JS method call SharedConnection.SubscribeToClientServiceMethod with 2 arguments
JS method call SharedConnection.SubscribeToClientServiceMethod with 2 arguments
JS method call SharedConnection.SubscribeToClientServiceMethod with 2 arguments
JS method call SharedConnection.SubscribeToClientServiceMethod with 2 arguments
JS method call SharedConnection.SubscribeToClientServiceMethod with 2 arguments
JS method call SharedConnection.SubscribeToClientServiceMethod with 2 arguments
JS method call SharedConnection.SubscribeToClientServiceMethod with 2 arguments
JS method call SharedConnection.RegisterOnLogonInfoChanged with 2 arguments
JS method call SharedConnection.SendMsgAndAwaitResponse with 3 arguments
JS method call Storage.GetString with 2 arguments
JS method call SharedConnection.SendMsgAndAwaitResponse with 3 arguments
JS method call Storage.GetString with 2 arguments
JS method call Storage.GetString with 2 arguments
JS method call Storage.GetString with 2 arguments
JS method call Storage.GetString with 2 arguments
JS method call Storage.GetString with 2 arguments
JS method call SharedConnection.SendMsgAndAwaitResponse with 3 arguments
JS method call WebChat.GetOverlayChatBrowserInfo with 1 arguments
JS method call Parental.RegisterForParentalSettingsChanges with 1 arguments
JS method call Broadcast.RegisterForBroadcastStatus with 1 arguments
JS method call Broadcast.RegisterForViewerRequests with 1 arguments
JS method call SharedConnection.RegisterOnMessageReceived with 2 arguments
JS method call SharedConnection.SendMsg with 2 arguments
JS method call WebChat.GetPushToTalkEnabled with 1 arguments
JS method call SharedConnection.SendMsgAndAwaitResponse with 3 arguments
JS method call SharedConnection.SendMsgAndAwaitResponse with 3 arguments
JS method call Storage.GetString with 2 arguments
JS method call Storage.GetString with 2 arguments
JS method call SharedConnection.SendMsgAndAwaitResponse with 3 arguments
JS method call SharedConnection.SendMsgAndAwaitResponse with 3 arguments
Traceback (most recent call last):
  File "/run/media/blad/SteamLibrary/SteamLibrary/steamapps/common/Proton 3.16/proton", line 262, in <module>
    create_fonts_symlinks(prefix)
  File "/run/media/blad/SteamLibrary/SteamLibrary/steamapps/common/Proton 3.16/proton", line 242, in create_fonts_symlinks
    os.symlink(fname, lname)
FileNotFoundError: [Errno 2] No such file or directory: '/run/media/blad/SteamLibrary/SteamLibrary/steamapps/common/Proton 3.16/dist/share/fonts/LiberationSans-Regular.ttf' -> '/run/media/blad/Docs/SteamLibrary/steamapps/compatdata/102600/pfx//drive_c/windows/Fonts/arial.ttf'
installscript_posix.cpp (416) : Assertion Failed: Standalone evaluator returned error code for app 102600
installscript_posix.cpp (416) : Assertion Failed: Standalone evaluator returned error code for app 102600
Installing breakpad exception handler for appid(steam)/version(1539393410)
assert_20181104134508_36.dmp[4955]: Uploading dump (out-of-process)
/tmp/dumps/assert_20181104134508_36.dmp

Something about that new Proton's fonts wasn't found?

?ghost 2018-11-04 github

FileNotFoundError: [Errno 2] No such file or directory: '/run/media/blad/SteamLibrary/SteamLibrary/steamapps/common/Proton 3.16/dist/share/fonts/LiberationSans-Regular.ttf' -> '/run/media/blad/Docs/SteamLibrary/steamapps/compatdata/102600/pfx//drive_c/windows/Fonts/arial.ttf'

Something about that new Proton's fonts wasn't found?

Yes, the Fonts directory doesn't exist and/or unable to be created. I've seen this.

So something like "mkdir /run/media/blad/Docs/SteamLibrary/steamapps/compatdata/102600/pfx//drive_c/windows/Fonts" should work. Then run it again. Don't think you have to do anything with the font itself, but can if it has a problem with that.

Ggoarvic 2018-11-12 github

I have the same problem on openSUSE Tumbleweed and Proton 3.16-4 Beta:

FileNotFoundError: [Errno 2] No such file or directory: '/home/vickop/.local/share/Steam/steamapps/common/Proton 3.16/dist/share/fonts/LiberationSans-Regular.ttf' -> '/home/vickop/.local/share/Steam/steamapps/compatdata/379720/pfx//drive_c/windows/Fonts/arial.ttf'

TTheSHEEEP 2018-11-15 github

Same problem here. It seems to appear somewhat randomly.
One time, it was after an update to the Proton version, but this time, it happened after an update of Steam itself. Of course, it might not have to do anything with either case.

What I did to solve it was to completely uninstall the game, change the used Proton version (might or might not be optional) and re-download the game.

My system information: https://pastebin.com/NjU8irgJ

GGloriousEggroll 2018-11-21 github

I just came across this same bug with liberation fonts, the problem is it's trying to create a font symlink before the prefix gets created on a newly launched proton game. Hence why it cant find the folder to put the symlink in.

-edit-
update:
this is possibly the same bug as
https://github.com/ValveSoftware/Proton/issues/381
with the symlinking. I was trying to launch the games from an exfat partitioned external drive. my games not stored on that drive launched fine. I moved the games that were stored on that drive to an ext4 partitioned drive and they launched with no problem
@TheSHEEEP @goarvic @byte1024 @BLaDZer @random2324 @kisak-valve

again, moving to ext4 fixed it for me, may need confirmation

Ww1lford 2019-01-01 github

Small update to this. I changed the proton version from 3.7-8 to 3.16-4 and games are running now. I have my fingers crossed that I don't encounter the issue again.

BBLaDZer 2019-01-01 github

Yes, the Fonts directory doesn't exist and/or unable to be created. I've seen this.

So something like "mkdir /run/media/blad/Docs/SteamLibrary/steamapps/compatdata/102600/pfx//drive_c/windows/Fonts" should work. Then run it again. Don't think you have to do anything with the font itself, but can if it has a problem with that.

thnx @byte1024 it's working now

@GloriousEggroll game and Proton are installed on ext4. Not sure about other games and partitions

Small update to this. I changed the proton version from 3.7-8 to 3.16-4 and games are running now. I have my fingers crossed that I don't encounter the issue again.

for existed games this doesn't fix my problem

Rrawsp33d 2019-03-28 github

@w1lford I had the same problem, and thought I had tried every version of proton from 3.7-8 to 4.2. Apparently I had skipped 3.16-4 (but I had indeed tried 3.16-8 beta). Based on your comment I tried 3.16-4 "again" and it worked. Furthermore, after it worked I tried with 4.2 again and it also worked. Either something randomish going on or there might be some artifacting side-effects bleeding across different proton versions.

Rrealjumy 2019-07-13 github

As silly as it sounds, Installing Proton 3.16 fixes the problem in Manjaro Linux. This is all a bit ridiculous...

SscottAnselmo 2019-07-23 github

@rosshadden @realjumy Stupid question, but how does one get 3.16-4? Steam Client only seems to have 3.16-9 which doesn't fix games on an external HDD that ran fine via Proton a year ago (but have since the time around of 3.16 not even launched), at least for me. Technically there is no 3.16-4 tag on GitHub, but this is the one before 3.16-5 which I assume is the one folk are referencing: https://github.com/ValveSoftware/Proton/releases/tag/proton-3.16beta-20181031

Is there some way to import it into Steam so it shows up in the client UI?

?ghost 2019-07-23 github

@rosshadden @realjumy Stupid question, but how does one get 3.16-4? Steam Client only seems to have 3.16-9 which doesn't fix games on an external HDD that ran fine via Proton a year ago (but have since the time around of 3.16 not even launched), at least for me. Technically there is no 3.16-4 tag on GitHub, but this is the one before 3.16-5 which I assume is the one folk are referencing: https://github.com/ValveSoftware/Proton/releases/tag/proton-3.16beta-20181031

Is there some way to import it into Steam so it shows up in the client UI?

Its a good question actually. Valve seems to be taking eg 3.16-4 and if they get to 3.16-9 (whatever the highest version is) then they leave it there and that's what everyone can then get.

There seems to be no way to do anything else from Valve as the settings do not allow all historical versions and here on Github they seem to just do the above (they are not making new branches for each dash version.

That would leave searching all the forks to see if anyone has one of those, building it manually, and then using it which is a pain. At least I can see of no other way.

Edit: Just noticed after it was closed that I missed tags here on gitub. You could clone the git and use the tag to get the specific version, build Proton for that version. That's a pain though.

Proton versions

Launch options

Upstream links