Jump to content
Dante Unbound: Share Bug Reports and Feedback Here! ×

Question to developers regarding steam's new "Steam Play" on linux!


GloriousEggroll
 Share

Recommended Posts

2 hours ago, Ananace said:

Decided to have a go at a Wine-friendlier launcher as well, so wrote a simple one in C++ just to avoid having any issues prop up due to switching between bash scripts and PE applications when run with Wine/Proton.

https://github.com/ananace/wf_proton_launcher

 

Some issues remain, mainly my lack of actually being able to test it on Linux, something's broken with my Wine setup and I haven't quite gotten down to figuring that one out yet.

But as it works as intended in my Windows VM, I'm going to go ahead and release it like this for now.

It's not running at all for me. I'm using Ubuntu 18.04.1 using nvidia driver 396.54 with a GTX 1080. Tried with both Proton 3.7-3 and 3.7-4 Beta. Python and Vulkan are installed, other games run fine with Proton.

On Windows, it seems to work fine, though the game hasn't finished updating so I haven't actually tried launching the game with it just yet.

Edited by Tenshar
Link to comment
Share on other sites

18 hours ago, Volt said:

As a long time Veteran to this game, I would be Elated if DE were to introduce Linux support, as this is one of the final games on Windows that are tying me down from using Linux as my main system. You've got my thumbs up. 👍 

You & me both. I love warframe but I really :sadcry: miss my antergos xfce setup. 

Link to comment
Share on other sites

I would love if there was an official linux version, but if it ran on steam play without #*!%ery if would be good enough. It would be the last game I play that needs it, then I can finally ditch windows.

 

I already run linux on my laptop and my home servers.

  • Like 2
Link to comment
Share on other sites

On 2018-08-22 at 7:31 PM, GlaikitMayflies said:

Never understood why programmers in general don't use Linux more.

Market share. If I'm trying to make a living off my work, I need to reach as broad of an audience as possible. That means Windows, iOS, and Android. 

Everything else is merely nice to have.

Edited by Erytroxylin
Link to comment
Share on other sites

I run Antergos myself, people saying windows is edge, I hope you know the New ATARI console, is a Linux box, its raised 3 million dollars already, will come day one with steam installed. SO that means that console starts day 1 with 5000+ Linux games, then steam Play/Proton gives you the ability to instal thousands more. Its not a small market, its always growing, as you can tell from Glorious it has the best community out there, always willing to go out of their way and use their time to help others. If DE only needs to fix the launcher self checking itself in a loop, all they need to do is tell it to do it x amount and stop or something I imagine. None of us are expecting full Linux support. But as Steam keeps hiring more Linux developers every month and pushing harder, pretty obvious even they are tired of Microsofts crap.

Also if your trying to reach  broader audience as Erytroxylin stated and aim for android, thats Linux, so if by this persons own statement they are supporting a forum fo Linux.

Edited by DarkMavrik
Android
Link to comment
Share on other sites

On 2018-08-27 at 10:56 PM, DarkMavrik said:

I run Antergos myself, people saying windows is edge, I hope you know the New ATARI console, is a Linux box, its raised 3 million dollars already, will come day one with steam installed. SO that means that console starts day 1 with 5000+ Linux games, then steam Play/Proton gives you the ability to instal thousands more. Its not a small market, its always growing, as you can tell from Glorious it has the best community out there, always willing to go out of their way and use their time to help others. If DE only needs to fix the launcher self checking itself in a loop, all they need to do is tell it to do it x amount and stop or something I imagine. None of us are expecting full Linux support. But as Steam keeps hiring more Linux developers every month and pushing harder, pretty obvious even they are tired of Microsofts crap.

Also if your trying to reach  broader audience as Erytroxylin stated and aim for android, thats Linux, so if by this persons own statement they are supporting a forum fo Linux.

I assume the boot loop is why the launcher doesn't even start for me when I try to run it on antergos. I can install warframe, run it but the launcher doesn't even appear.

Link to comment
Share on other sites

16 hours ago, JimmieTheApe said:

I assume the boot loop is why the launcher doesn't even start for me when I try to run it on antergos. I can install warframe, run it but the launcher doesn't even appear.

Pretty much, you can use eggrolls script through lutris though, warframe works pretty decent that way, no advanced lighting though.

Link to comment
Share on other sites

Windows 7 extended support ends January 14, 2020. Mainstream support ended January 13, 2018.

When I can no longer run windows 7. I will be moving to linux permanently. (windows 10 is an abomination)

The only reason I run windows 7 now, is gaming. I'm absolutely certain I'm not alone. I do hope that linux is officially supported by that date. 

 

  • Like 2
Link to comment
Share on other sites

On 2018-08-25 at 11:16 AM, GloriousEggroll said:

I've been working non stop on getting this working. My launcher script works, and I've ironed out the bugs (and fixes) and reported them to the proton devs:
https://github.com/ValveSoftware/Proton/issues/167

 

the only major issue is xaudio2_7 needs to be fixed on proton/wine's end. the other minor bugs already have patches that can be pulled from wine-staging. a workaround for xaudio2_7 is to use Direct X's native xaudio2_7. The rest is easy peasy. My launcher bash script works well as a workaround, but itd be nice if we had an official one by DE.

Confirming it works with me (Ubuntu MATE 18.04.) beautifully (on ultra settings, constant 60fps) but:

- like you said - works for about 7-8 minutes then abruptly exits
- forgets it did optimizing the cache so it does it again
- uxterm cannot find Launcher.exe.bak to delete, reports it isn't there (it is)
- forgets the full screen mode and resolution (other settings are there)

It would be perfect for DE to recognize this and create its own, as it would be awesome for anyone to fix the abrupt exit. 

Hyped for more updates and news! 😁😁😁

 

Link to comment
Share on other sites

11 hours ago, SonAdamu said:

Confirming it works with me (Ubuntu MATE 18.04.) beautifully (on ultra settings, constant 60fps) but:

- like you said - works for about 7-8 minutes then abruptly exits
- forgets it did optimizing the cache so it does it again
- uxterm cannot find Launcher.exe.bak to delete, reports it isn't there (it is)
- forgets the full screen mode and resolution (other settings are there)

It would be perfect for DE to recognize this and create its own, as it would be awesome for anyone to fix the abrupt exit. 

Hyped for more updates and news! 😁😁😁

 

just a heads up in the meantime you can install the standalone version or the wine steam version in lutris with no extra fuss or problems. both use my launch script and work fine

Edited by GloriousEggroll
  • Like 1
Link to comment
Share on other sites

2 hours ago, GloriousEggroll said:

just a heads up in the meantime you can install the standalone version or the wine steam version in lutris with no extra fuss or problems. both use my launch script and work fine

I tried Lutris and the game is choppy, laggy, and most settings do not work properly. Steam Proton is the best, just needs a fix to not quit the game.

Link to comment
Share on other sites

I've been able to sit down and play for a few hours now using Proton, it's still rather choppy, and about an hour and a half in audio broke slightly as well. But it is playable - if not as enjoyable as it could be without the various issues.

Edited by Ananace
Link to comment
Share on other sites

the choppyness is probably the shader cache filling up. once it fills, the game is fine. I have no problem with that

the audio issue in proton is because you need xaudio2_7 set to native. you can open user.reg in the prefix and search it and change it

Edited by GloriousEggroll
Link to comment
Share on other sites

4 hours ago, Ananace said:

I've been able to sit down and play for a few hours now using Proton, it's still rather choppy, and about an hour and a half in audio broke slightly as well. But it is playable - if not as enjoyable as it could be without the various issues.

Did you use your script to start steam proton (https://github.com/ananace/wf_proton_launcher)? I want to try it. How to install it?

Link to comment
Share on other sites

1 hour ago, GloriousEggroll said:

the choppyness is probably the shader cache filling up. once it fills, the game is fine. I have no problem with that

That particular choppiness is not the major issue for me, my issue is a stream of 100-350ms freezes that happen every few seconds, and in fact slowly get worse the longer I play.

Not bad enough to make the game unplayable at any point, but annoying enough that I don't particularly feel like attempting any high-level missions.

1 hour ago, GloriousEggroll said:

the audio issue in proton is because you need xaudio2_7 set to native. you can open user.reg in the prefix and search it and change it

Already have that set, and audio indeed works perfectly fine for an hour or two of gameplay, but at some point after that the audio quality takes a nosedive. It sounds much like it did when I had a too small pulse buffer set for VFIO, where audio will play at a faster pace only in small choppy segments with rapid bursts of silence interspaced between them.

 

32 minutes ago, SonAdamu said:

Did you use your script to start steam proton (https://github.com/ananace/wf_proton_launcher)? I want to try it. How to install it?

It should just be a case of downloading the EXE and DLL, dropping them into your Warframe/Tools folder, and replacing the Launcher.exe with the WF_Proton_Launcher.exe application. And adding -32 to the launch options, to avoid the 64-bit audio issue.

Though you'll still need to install DirectX into the prefix, and apply the patched wininet DLLs in order for the game to launch. GloriousEggroll's script does both those things quite well with its --firstrun option.

Link to comment
Share on other sites

@Ananace for the audio issue try launching the game with

PULSE_LATENCY_MSEC=60
and also maybe setting this in /etc/pulse/default.pa:
load-module module-udev-detect tsched=0

try just the latency option first.

for the network issue try disabling upnp and nat-pmp in the gameplay options

in lutris change the wine runner to esync-3.15-x86_64, youll have to install it from the runners list via lutris>manage runners>wine>manage versions, then change the runner in the game's config in lutris. I've already updated this on the install script

Edited by GloriousEggroll
Link to comment
Share on other sites

You know I just got to thinking (strange I know.) While wine and lutris work as we already know what bout running warframe through say vmware workstation player as an option solely for warframe (no I don't mean a pci passthrough.) Sounds like another option to consider while the scripts and fixes get worked on or am I overestimating the ability of vmware?

Link to comment
Share on other sites

1 hour ago, JimmieTheApe said:

You know I just got to thinking (strange I know.) While wine and lutris work as we already know what bout running warframe through say vmware workstation player as an option solely for warframe (no I don't mean a pci passthrough.) Sounds like another option to consider while the scripts and fixes get worked on or am I overestimating the ability of vmware?

vmware is not a viable option due to latency and lack of graphical capability.
with something like qemu and gpu passthrough you have direct hardware access, with vmware and virtual box it's all virtualized.

Link to comment
Share on other sites

6 hours ago, GloriousEggroll said:

more info regarding stuttering:

https://forums.lutris.net/t/solved-warframe-stuttering/3232/5
 

in a nutshell, turn compositing off

Turning off compositing solved that stuttering, thanks.

Should've probably tested that earlier, but tend to not think of doing so as most games block compositing by default.

 

I've been using the plains as a stress test for various settings now, and in my case it seems like halving the pulse buffer down to 30ms solves the sound underrun issues.

Though I managed to completely freeze the game again, filling the log with hundreds of lines of;

Quote

338.987 Gfx [Warning]: D3DAssert: Dx11Texture::Create2DTexture(2048, 2048, 12, 1, 77, 0, 0x00000000, 0x00000000) returned 0x80004005 (DXGI_ERROR_E_FAIL)
338.987 Gfx [Error]: Unable to create texture copy!
339.033 Gfx [Warning]: D3DAssert: Dx11Texture::Create2DTexture(2048, 2048, 12, 1, 77, 0, 0x00000000, 0x00000000) returned 0x80004005 (DXGI_ERROR_E_FAIL)
339.033 Gfx [Error]: Unable to create texture copy!
339.076 Gfx [Warning]: D3DAssert: Dx11Texture::Create2DTexture(2048, 2048, 12, 1, 77, 0, 0x00000000, 0x00000000) returned 0x80004005 (DXGI_ERROR_E_FAIL)
339.076 Gfx [Error]: Unable to create texture copy!

Going to play around with the texture quality setting and DXVK, see if there's something that can be improved there.

Link to comment
Share on other sites

5 minutes ago, Ananace said:

Turning off compositing solved that stuttering, thanks.

Should've probably tested that earlier, but tend to not think of doing so as most games block compositing by default.

 

I've been using the plains as a stress test for various settings now, and in my case it seems like halving the pulse buffer down to 30ms solves the sound underrun issues.

Though I managed to completely freeze the game again, filling the log with hundreds of lines of;

Going to play around with the texture quality setting and DXVK, see if there's something that can be improved there.

I've been running pulse_latency_msec=60 for the last 3 years or so, it's always been solid for wf.

for those errors check your dxvk version (DXVK_HUD=version in proton user_settings.py), if it's not 0.70 you can download the latest release from github.com/doitsujin/dxvk and drop them in the corresponding x32 and x64 folders in proton/dist/lib/wine/dxvk and dist/lib64/wine/dxvk

Edited by GloriousEggroll
Link to comment
Share on other sites

1 hour ago, GloriousEggroll said:

for those errors check your dxvk version (DXVK_HUD=version in proton user_settings.py), if it's not 0.70 you can download the latest release from github.com/doitsujin/dxvk and drop them in the corresponding x32 and x64 folders in proton/dist/lib/wine/dxvk and dist/lib64/wine/dxvk

The Proton 3.7 beta already contains DXVK 0.70, though I did download the 0.71 binaries and tried out replacing with them instead.

Stability-wise that didn't do much of a difference, though now the game crashes in a similar place only with an out-of-memory error instead of the spam of texture creation failures.

Dropping texture quality to medium seems to solve that issue, though transitioning to the plains with a bounty seems to be guaranteed to freeze the game. (Even when in a solo party)

Link to comment
Share on other sites

3 minutes ago, Ananace said:

The Proton 3.7 beta already contains DXVK 0.70, though I did download the 0.71 binaries and tried out replacing with them instead.

Stability-wise that didn't do much of a difference, though now the game crashes in a similar place only with an out-of-memory error instead of the spam of texture creation failures.

Dropping texture quality to medium seems to solve that issue, though transitioning to the plains with a bounty seems to be guaranteed to freeze the game. (Even when in a solo party)

How much memory does your gpu have? i have no issues on either of my 8gb cards
you might also try using a dxvk.conf file: https://github.com/doitsujin/dxvk/wiki/Configuration

and enable allowMemoryOvercommit in it

Link to comment
Share on other sites

I've updated my version, this should work for most people that want to use steamplay, you'll need to plug in a controller. follow the readme, it's very easy.

https://gitlab.com/GloriousEggroll/warframe-linux/tree/steamplay-proton

I've also been working with ananace to get his version working in the same way.

My version includes patched wininet, patched dxvk and config, and pulse audio latency fix

Edited by GloriousEggroll
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...