Wednesday, 10 July 2019

Proton, Steam, Elite: Dangerous on Linux

I've been bit more interested in Steam/Linux gaming recently, but although the number of native Linux steam games has been on the rise, some interesting recent Windows games have been missing.

For some time, there has been an initiative called Proton, derived from wine, and this helps launch Windows-native games on Linux after installing them legitly from Steam. As this project is maturing, even mere mortals like me can get Windows games up and running on Linux.

After enabling Steam Beta, it's even possible to run games that are not even white-listed.

There's a collective effort to list experiences of working games at https://www.protondb.com/ with tips on how to get them running.

Promises of having Linux versions of Witcher 3, GTA V, No Man's Sky etc. made this look credible and I felt need to get on board too despite not wanting to play exactly these games.

Xpand Rally, perhaps a bit lame title, but it's a Steam-purchased Windows title running smoothly on Linux! 
I had a couple of Steam games from my Windows days, and Xpand Rally was one that worked immediately through Proton.

This was an encouraging experience, and although Lara Croft and the Guardian of Light did not work, learning it was a DRM issue was also reassuring.

Titan Quest
Edit: Titan Quest Anniversary Edition worked straight out of the box.

Prey
Edit 2: Prey seems to work too, and quite smoothly at that. That's nice!



Elite: Dangerous

One of the games that got me interested in gaming in the 2010s was Elite: Dangerous, the ambitious, Kickstarter-famous sequel to Elite and Frontier. But I never got around to playing it as I did not have a suitable Windows computer.

But now, with Proton it's possible. Elite is not one of the whitelisted games and judging by the community's efforts, it was not one that would run very easily, despite comments:

https://www.protondb.com/app/359320

But the bottom line here was that Proton itself need no longer be built from scratch for ED and the game itself can be run through Steam.

The game launcher window, prior to launching the actual game client window.
My initial experiences were not too promising. After installing wine and protontricks, although the game launcher, game intro and menus seemingly worked, the game itself started with a screen that quickly faded into black and I could only hear the game audio.

After I updated the nvidia drivers to version 430 (from 3xx), I could get something visible:

No, that's not a sun, just a ringed planet.
The joy was a bit premature, as the graphics were somehow too bright, and not consistently either. The over-bright gfx flickered on and off semi-randomly.

However at this point I was quite certain the game could be made to work. The above screen was a result of having a wrong (sub-4) version of wine installed, and generally not paying too much attention to the tips.


Sidetracked

In the meantime I messed up my Linux Mint 19 installation, wrecking Python 2.7. This I found out when trying to fix something that prevented 'apport' from upgrading in the update manager, losing the Mint main menu in the process.

I doubt it was the result of following the ED install instructions, it's probably I got the bright idea of removing some crucial package at some point.

At the darkest moment I considered reinstalling the whole system, but eventually I was able to remove and re-install enough packages by hand and with synaptic, to get the system on rails again.

What I learned from this that Linux Mint is quite dependent on Python in many places.


Getting it to work

After this, I went back and followed the instructions (https://github.com/redmcg/wine/wiki) more precisely, getting the right versions of stuff.

I installed wine-staging instead of wine, and then winetricks, needed by protontricks. I then ran protontricks 359320 dotnet40 win7 again in the terminal and now I got much better results:

Windowed, lower resolution
After this it was more a matter of adjusting the graphics parameters (there are many).

In its 1920 x 1200 glory, the game appears to work very well and smoothly on the 1050 GPU. Possible exceptions are some of the station/docking scenes where there is more stuff on-screen.

But Elite is by no means a new game anymore, so such good results could be expected. I'll probably talk about Elite: Dangerous more in the future, given that I can now compare it to my experiences with Everspace.

Full screen 1920 x 1200 resolution
So, whereas I would not agree ED "works out of the box" from Steam/Proton, it still can be run via Steam and when it works there have been no hiccups. Only thing is that it tends to refuse to run the intro some times, preventing the game from loading.

It may be helpful to reboot the computer but then again not, sometimes I felt I just needed to kill the process and run it again from the launcher. This is just to say that the "black screen" after the game launcher screen might not be decisive.

I wish I could have included a step-by-step history of all the tiny things that needed to be done to get this up and running, but I just can't remember it all anymore.

The instructions at the wiki seem innocent enough at first, but in order to install something, often a couple of other things needed fixing, installing or re-installing. This would initiate a cascade of activities that all needed to be done before the first step could be completed. But I can't stress enough that the instructions need to be followed quite precisely, or you may end up wasting time on a half-made install.

1 comment:

  1. Nowadays it seems a simple "protontricks 359320 -q dotnet40 win7" after the first failed running attempt is enough.

    ReplyDelete