If you’d like to know more about this bug, I’ve had it before, here’s another post of mine showing it: https://lemm.ee/post/63660749
Oh maybe that’s why sometimes 7 Days To Die Crashed for me ;o
Welp this is nice.
That explains my experience in GunZ the other week…
GunZ is still around? I played that game back in the day. I remember the skill curve being somewhat vertical…
It lives on at Fgunz.net and I think there are some others. Skill curve the same, maybe more difficult because ppl are so good (not me).
So it’s probably pointless for a silver tier player like me to give the game a try then, huh?
It’s a fun game, and the movement system was not actually that hard to learn.
But the upper level players are all doing animation interrupts to put out crazy combos for much faster movement and attacks.
A beginner will learn these interrupts just by playing an hour or so, but chaining them? That takes skill and dedication beyond the norm.
I do remember winning the occasional match, but it was rare. Overall it was a fun game.
Okay yeah you’ve talked me out of it. I don’t want to play a game where you have to break/exploit the mechanics in order to compete. Thanks for the info.
Wonderful news! Can’t wait for the update to release
In the meantime, feel free to try the
LD_PRELOAD="" %COMMAND%
solution mentioned in the other post I linked.I’ve been doing that for a while yeah, it likes to break my steam overlay weirdly enough so it’s more annoying to invite friends lol, hence the hype around the update
Interesting. I have similar issues but it’s with streaming the game from PC to Deck etc. It will start to stutter and lag out, but if I turn off the device for a moment then back on it’ll reconnect and be fine thereafter
I was starting to think I had a hardware problem. At least I found out before replacing anything.
I can’t say that I’d noticed anything … but I’m always happy for fixes!
TLDR: mostly affected keyboard and mouse games that use X-input. Probably didn’t affect you if you didn’t use X-input like if you use SDL or WG-input. They haven’t released the fix yet but there are simple workarounds in the thread.
i had never heard of wg-input, and the one place that comes up when searching is the dolphin emulator repo. looks like a pretty new windows-specific API (they call it “GameInput”) that they say is a superset of all their earlier apis. don’t understand how that could then bork XInput if it’s already included.
My bad, I have no idea what other options there are in steam but I’m pretty sure you can use SDL for controllers which wouldn’t blow up xinput’s buffer
it’s an interesting case for sure. i’m assuming this is upwind of SteamInput because there’s no way to get the game itself to switch input stacks unless they’ve built in multiple ones.
my intuition tells me this happens because there are no event consumers for gamepads active when playing with keyboard, however that seems way too simplistic, all you need is a drain in that case.
Yay, I’d been having this issue in Baldur’s Gate 3.
And just after I unsubscribed because I got annoyed with the “I also have this issue” comments.Now to resubscribe and risk a bunch “I’m still having this issue - The fix isn’t released yet, wait until the next release”
Ohhhh, I noticed that in RDR2 I think … though I haven’t noticed it in weeks.
It’s happening to me in CS2 competitive. I suddenly have over 200ms ping for no reason.
Maybe that’s what I’ve been getting when I’m playing Cult Of The Lamb from Steam in Linux, which is a 2D game so hardly taxing my machine.
Didn’t notice anything like that on my GOG games started from Lutris.
This particular bug (from the OP) only affects games that use a lot of rapid mouse and keyboard inputs over the period of an hour or two.
And it only happens (weirdly) when you launch from steam, but have Steam Overlay turned off.
When launching from Steam, there is a layer that captures all keyboard and mouse inputs before they get to the game (for example, for capturing hotkeys to show the steam overlay). A separate layer called vulkan-steam-overlay (that is responsible for rendering the overlay over the game) periodically clears the input buffer so it doesn’t get too big. If steam overlay is disabled in settings, the input-capture layer is still used, but the vulkan-steam-overlay layer is not used. So the input buffer captures all inputs and never gets cleared, it gets so big it needs to start paging to disk. That is what introduces the lag spikes after an hour or two.
Launching from Lutris doesn’t use that input-capture layer, so that’s why it’s not affected.
I play Cult Of The Lamb with mouse and keyboard and the Crusades (basically sequences of fighting arenas) tend to be kinda insane in terms of the intensity with which you have to use them, so it makes total sense.
By the way, thanks for the very complete explanation.
My gut feeling told me it was some kind of memory leak (because those things tend to manifest themselves after some time of using the software, with some randomness on how long it takes for it to happen) but when I looked around I couldn’t find an explanation of its mechanism.
By the way the suggested workaround of adding LD_PRELOAD=“” in the Launch Options for the game seems to work.
Maybe the way those input capture layers work is by putting their input handling methods ahead of the default ones via LD_PRELOAD and forcing LD_PRELOAD to be empty means they’re not in the input processing pathway anymore?! (In all fairness, I can’t be arsed to dive into that codebase ;))
Didn’t notice anything like that on my GOG games started from Lutris.
Thanks for mentioning that.
As I consider getting back into Linux desktop despite 30 years of just using Linux via ssh, lutris seems to be part of my plan. It’s just GoG and WoW anyway, and I’m glad to know the perf may not be impacted by this bug. So thanks.
Does anyone have this issue where the steam login toast just nukes the fps of whatever you’re playing ? I completely have disabled the overlay because of that.
YYEEEAAAAAAHHHHHH!!
Hell yes, I’ve been having this issue for a while and didn’t know where to even start debugging it