swaywm / sway

i3-compatible Wayland compositor
https://swaywm.org
MIT License
14.72k stars 1.11k forks source link

Certain Steam games won't launch #5969

Open shoober420 opened 3 years ago

shoober420 commented 3 years ago

I tried using the Steam Runtime, and that did not fix the issue either. These games simply dont launch. I hope the log has something useful. Other games work great, like Hotline Miami, Turok, Hyper Light Drifter, and Ion Fury for example.

shoober420 commented 3 years ago

Considering my library of games, I tested some more and have logs that might help in getting them to launch. I did them in groups, so the logs would be more easy to understand.

CS1.6 (works) Crypt of the NecroDancer (fails) Gigantic Army (works) Shovel Night: Treasure Cove (fails) swayyyeee2.log

==========================================================================

Children of Morta (works) Jets'n'Guns Gold (fails) Mother Russia Bleeds (blackscreen flashes, then back to desktop, game stays running) Party Hard (blackscreen flashes, then back to desktop, game stays running) Shadowgate (blackscreen flashes, then back to desktop, game stays running) Terraria (needs launched manually) Rakuen (works) Undertale (works) Serious Sam Fusion 2017 (works) swayyyeee3.log

emersion commented 3 years ago

It would be nice to test these games in e.g. i3 or GNOME as well. If they don't work there, probably not a Sway bug.

shoober420 commented 3 years ago

I’m actually going to install a pure X11 system on another machine shortly, and can test them there. I’ll post back with findings soon.

tmccombs commented 3 years ago

Do you have SDL_VIDEODRIVER=wayland set? It seems some games (especially in steam) bundle a version of SDL that doesn't include wayland support, so you need SDL_VIDEODRIVER=x11.

rustonaut commented 3 years ago

SDL_VIDEODRIVER=wayland set?

In my case it is set.

But in my case I can't say if it's because of wayland "generally" or sway/wlroots specifically.

Terraria (fails)

In my case it works, but shaders where broken. This could be fixed by passing in /glprofile:es3 as command line parameter. (Also this problem seems to be more related to intel drivers then wayland/sway/wlroots as far as I can tell.). But the mouse is stuck. Which might be a libinput related problem?

Be aware that there is an independent problem with recent wine versions so anything you launched with wine might also fail independent of sway.

shoober420 commented 3 years ago

@tmccombs I did these tests without the runtime enabled, so it used my systems SDL2 fortunately. I tried that launch parameter out of curiosity though and the games still behaved the same whether the runtime was enabled or disabled.

@rustonaut I’m using the native ports of these games. No wine or proton for these tests.

Are you running Terraria through Proton or native?

rustonaut commented 3 years ago

It's using the Steam Linux Runtime (i.e. a bunch of LD_PRELOADED libs to have more controlled library dependencies) which did work in the past.

Just to prevent misunderstanding the Steam Linux Runtime is not proton.

I also tried running it under proton, in which case it completely does fail to start without error message.

As a counter example the Binding of Isaac does not start at all with the Steam Linux Runtime but does work with proton.

On Fri, Feb 5, 2021 at 12:04 AM Vincent Grande notifications@github.com wrote:

@rustonaut https://github.com/rustonaut Are you running Terraria through Proton or native?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/swaywm/sway/issues/5969#issuecomment-773660938, or unsubscribe https://github.com/notifications/unsubscribe-auth/AB2HJELNQUJ4CZ6GQMADICDS5MRYRANCNFSM4WQ72HEA .

shoober420 commented 3 years ago

I've found the time to do some research. The Binding of Isaac not launching on Wayland is a known issue, according to this Steam thread (https://steamcommunity.com/app/250900/discussions/0/133256240741213021/?ctp=6).

Interestingly though, I got Terraria running. I had to launch it manually by going to the Terraria directory (/home/$USER/.local/share/Steam/steamapps/common/Terraria), and launching the bin with ./Terraria. The other bin ./Terraria.bin.x86_64 works as well. Upon doing so, if you have Steam open, it acknowledges that Terraria is indeed running.

Forsaken Remastered does have supposed workaround posted on PCGamingWiki (https://www.pcgamingwiki.com/wiki/Forsaken_Remastered#Game_won.27t_run_on_open_source_driver_for_AMD_GPU_.28Linux.29). This does not work for me though, but it further proves that this game is not very friendly with AMD/Wayland.

Crypt of the NecroDancer and Shovel Knight might be completely unrelated to Wayland, and have something to do with libfmod. I get audio errors for both these games. Axiom Verge might be an issue with mono.

The others are still a mystery until I do that pure X11 install on another machine. I'll post back when I get around to that.

shoober420 commented 3 years ago

I've got my pure X11 machine running. Although it has an NVIDIA Geforce 1660 SUPER installed, it can still provide some test results.

The Binding of Isaac does launch and plays perfectly fine on X11 Forsaken Remastered also launches perfectly fine on X11 Jets'n'Guns Gold launches and plays great on X11

Mother Russia Bleeds (blackscreen flashes, game crashes, then back to desktop) Party Hard (blackscreen flashes, game crashes, then back to desktop) Shadowgate (blackscreen flashes, game crashes, then back to desktop)

Crypt of the NecroDancer and Shovel Knight both still crash because of libfmod.

I'll keep doing some testing and research to fully understand why these games dont launch and then try to get some logs for the games that should be launching on wayland / sway.

shoober420 commented 3 years ago

Ive decided to go through some games from this list. Here are the results.

Party Hard (works) Shadowgate (works) Mother Russia Bleeds (works)

The Binding of Isaac (fails) Forsaken Remastered (fails) Jets n' Guns (fails)

I honestly think the last three games are unrelated to Sway/Wayland. Could someone test these games out on their Sway machine?

shoober420 commented 3 years ago

Testing a few more games.

The Eternal Caste (works) Ion Fury (works) Pier Solar and the Great Architects (fails) Turnip Boy Commits Tax Evasion (works) Turok (works)

rustonaut commented 3 years ago

I can give some updates, basically after some updates:

Terraria now runs natively, the option above is still needed but that is most likely related to my GPU not sway, and there are some caveats around the mouse but this is a problem due to how certain input handling had been changed between X and Wayaland and as such not sways fault (it's to some degree XWaylands fault and there have been some improvements, if I play with native resolution there are no problems).

I can not say if it is due to updates in sway, Terraria or Steam libs.