Open zany130 opened 5 months ago
Could be related to the new Wayland backend. Steam Overlay does not support Wayland (see ValveSoftware/steam-for-linux#8020) and afaik Steam Input relies on the Steam Overlay.
Running from ValveSoftware/gamescope@14a1db3a57612e5cfbba6d4c19688eafdc6c4043 may fix the issue.
Happens on the arch stable package as well though which is before the new back end I believe
EDIT: it is before that commit https://github.com/ValveSoftware/gamescope/tree/3.14.2
I have this same problem and I also tried downgrading gamescope to the previous minor release (3.13.19) but the problem persists.
I also switched over to Plasma 6 today from Gnome, so that could factor in. I typically didn't use gamescope on Gnome (currently testing KDE's HDR support) but I do remember the controller working properly under Wayland recently. I'll probably quickly switch back later and check.
Same issue on Plasma 6 Also, happened on latest 5.27 a couple days ago, but been fixed after reboot or system update (before plasma 6)
@Joshua-Ashton could this be a plasma bug? Is it better to report there?
I haven't swapped back to Gnome yet to check, but Steam Input does work in Plasma if Steam itself is run in Gamescope or if Gamescope isn't used. It seems to specifically be an issue when Gamescope is in-between Steam and the game.
Just tested on Gnome (Wayland) and found that it worked when using gamescope -- %command%
in regular desktop Steam. However, switching to Big Picture Mode presented the issue. I then switched back to Plasma and observed the same thing - works outside of BPM, not inside it. It does not appear to matter if I start directly in BPM using the -gamepadui
flag or if I swap back and forth using the button in the desktop Steam interface. So this seems to be some weird interaction there, maybe with the Steam Overlay? I do have "Use the Big Picture Overlay when using a controller" checked in the settings, but something is clearly different.
It's probably the Wayland backend not having stuff play nicely with xtest stuff Steam is doing. I'll investigate.
I also found an issue related to Steam input + gamescope.
Step 1: connect controller ( PlayStation 4 Controller for me ) .
Step 2: run Elden Ring with gamescope -w 2560 -h 1440 -f gamemoderun mangohud %command%
Step 3: When enemy hit me, my controller "rumble" ( as it should ), but my fps drops from 60 to 30-20fps for a second. More hits -> the longer fps stay at low. Inputs from controller not working with gamescope also.
Tested on plasma 6 and Hyprland. Starting game without gamescope make inputs from controller working and "fps issue" go away.
FWIW, I tried https://github.com/ValveSoftware/gamescope/commit/14a1db3a57612e5cfbba6d4c19688eafdc6c4043 (the commit right before the Wayland backend) and https://github.com/ValveSoftware/gamescope/releases/tag/3.14.2 both in Steam big picture and desktop mode.
Also tried messing with the steam overlay and steam input settings.
I am unable to use gamescope with a controller when running Steam games
found 2 workarounds for this bug
first, launching a game scope window and then pointing the game to that window, as described here https://github.com/ValveSoftware/gamescope/issues/835#issuecomment-1661360202 fixes the issue
I have also been just running all of Steam in a nested Gamescope session like this.
gamescope -e -- steam
that also works.
In my case, input on steam does not work only in the -bigpicture mode. Running Steam through gamescope in desktop mode does not cause any input problems.
In my case, input on steam does not work only in the -bigpicture mode. Running Steam through gamescope in desktop mode does not cause any input problems.
launching steam in big picture within gamescope doesn't work for you? That how I am currently playing P3R with gamescope and a controller
This solved my input problems with gamepad (i use dualsense):
steam -gamepadui -steamos3 -steampal -steamdeck
This solved my input problems with gamepad (i use dualsense):
steam -gamepadui -steamos3 -steampal -steamdeck
Are you running Steam inside gamescope or gamescope inside Steam for individual games via launch options? We know that the former works, this ticket is about the latter.
This solved my input problems with gamepad (i use dualsense): steam -gamepadui -steamos3 -steampal -steamdeck
Are you running Steam inside gamescope or gamescope inside Steam for individual games via launch options? We know that the former works, this ticket is about the latter.
For me, a simple "steam -steamos3" from a terminal in a wayland plasma6 session fixes this issue on Tumbleweed. So Steam is running outside of gamescope, but I launch a game within gamescope using launch options, then DualSense input works perfectly fine (at least with Armored Core VI). I can't seem to find any detailed info on -steamos3 however, so I have no idea what it actually does or why it fixes this problem (or if it might cause other issues).
I think I'm also affected by this. If I run my game from Desktop mode enabling gamescope as a launch option in a Lutris installed game everything works fine, Steam input works. However if I do the same from game mode I can't get any Steam Input events in these third party games. It seems that steam input is not passing events through to the nested gamescope session and I can't control the game.
You need an XWayland compiled with libei support.
You need an XWayland compiled with libei support.
Hi, care to elaborate? Just tried v21.1.99 Xwayland with both xwayland_ei
set to socket
and portal
. Nothing changed - nested gamescope(git) does not seem to have have controller available
You need an XWayland compiled with libei support.
cold you go into more detail?
Really hope this is fixed before Shadow Of The Erdtree.
Commenting to add that this is happening to me as well, using latest version of Manjaro or Bazzite as of the time of posting. I have to use gamescope to get Forza Horizon 5 to work, but enabling it causes my Dual Sense to not work, unless I start steam from with steam -steamos3
. It's only moderately annoying at most but would be nice to fix.
On a side note, while Steam Input works by doing this, Steam Overlay does not work with shift+tab. I think this is related?
Commenting here to note a current workaround I found to this issue. Based on the issue #1225 I was able to have steam input and overlay work, what I did was create a systemd user service at ~\.local\share\systemd\user\
which starts a gamescope session in the background every time I log in and systemd keeps it alive in case that it crashes for whatever reason, then I added the option DISPLAY=:2
to the games where I had issues with the input and now when I launch the games they properly have the Overlay and Steam Input applied.
However there are some issues with this approach.
journalctl --user
, gets the number that gamescope created for the display, and export it as a variable. Then just have the launch options call that variable instead of having to manually enter it.I also found out that games that natively support the controller you are playing with and where you can disable Steam Input work perfectly fine with gamescope, as they take the inputs directly from the controller, however steam overlay doesn't attach properly.
Replying to https://github.com/ValveSoftware/gamescope/issues/1180#issuecomment-2164038007
expanding on what you mentioned, here is a ruby script as a reference implementation to try it out. For me controller worked via this method https://github.com/valgusk/standalone-gamescope
Gamescope seems to break steam input
To reproduce
gamescope %command%
to the launch option for your game (tested a hat in time and trails into reverie)