Comment by tombert
3 months ago
That’s fair. I do wonder if Valve has a plan to fix this at some point in the future for their Steam Decks.
3 months ago
That’s fair. I do wonder if Valve has a plan to fix this at some point in the future for their Steam Decks.
This is kinda on the game developer. There are anti-cheat systems which work fine on Steam Deck already, as long as the developer checks the box to allow it (as I understand it, it is just about that simple for EAC, one of the bigger anti-cheat options). But if the dev doesn't care, or actively doesn't want to support Linux like in the case of Epic, then Valve can't really patch around that.
Sadly, there is a fundamental incompatibility between successful anti-cheat systems and Linux, mainly that the user is fully in charge of their computer. Anti-cheats work by ensuring certain modifications aren’t made to the system the game is running on, and this relies on the operating system being trusted by the anti-cheat software. With Linux, a user is in full control and can just tell the kernel to lie to the anti-cheat system, completely bypassing it. In windows, there are things the user is not in control of and the anti cheat can be sure are correct.
Until anti cheat design changes entirely (and it may not be fully possible), the freedom and control Linux provides simply doesn’t work with them.
They could conceivably just restrict it to certain kernels and checksum stuff couldn’t they? Like restrict it to the last three Ubuntu LTS releases and the last N updates of the mainline kernel?
What I don’t know about this is a lot, so I will admit I am speaking out of my ass here.
1 reply →
I would assume the most likely solution would be that the game can only run in its own highly specialized virtual environment with its own suite of checks and memory verification.
You know, design better games.
This is just a cat and mouse game with cheat developers. You can’t design software that is perfectly able to determine that is only running in an unmodified environment. This is a form of the halting problem; any software check you do could be faked.
Windows anti cheat gets around this by using code signing and Trusted Platform Modules, which Linux would never be able to support without Linux users giving up control of their own operating system, which is not something a Linux user would do.
Unfortunately some devs have added anti-cheat solutions that check and enable game launch for Deck’s hardware specifically, while blocking desktop Linux. Which is arguably even worse
I find it frustrating too.
Only thing I can guess is, some Devs might see game support as being complicated by the many variations of Linux and not want to see those tickets.