Comment by jekwoooooe

5 months ago

The last missing piece for full Linux gaming is anticheat. Last I looked into it, the major vendors don’t want to support it due to lack of kernel security and the ones that do, game devs refuse to allow it (destiny for example)

One we can play AAA games I am literally ditching windows forever. Steamos is the best thing that has happened to gaming

Anti-cheat today is a stop-gap measure at best. For various reasons such as improved OS security and security concerns with this software, ring zero anti-cheat won't be around forever. Besides, it's a cat and mouse game where the vendor is the mouse.

We already have the technology now to do it better. A combination of only sending what info a client should have, and server-side checks. As soon as something like UT ships with that built in we can hopefully forget about this horrible hack we currently have to check for cheats.

  • > Besides, it's a cat and mouse game where the vendor is the mouse.

    The goal of anti-cheat isn't to stop the world's most advanced cheaters. Those are already unstoppable because they now use Direct Memory Access over the PCI-E bus, so the cheats don't even run on the same computer anymore. However since those cheaters are few and far in-between they can be handled through player reports.

    The goal is to stop the mediocre cheater who simply downloaded a known cheat from a cheating forum. If you don't stop those you'll get such a large wave of cheaters that you can't keep up with banning them quickly enough.

    • With the emergence of AI cheating, cheats don't even need access to memory anymore. The cheat can entirely run on mouse and screen peripherals and the computer will have totally no idea what's going on. The best you can do is behavior analysis. But it always comes with chance of misreports.

      6 replies →

    • DMA hardware and cheats are getting more and more accessible. It's not just chosen few anymore

    • > Those are already unstoppable because they now use Direct Memory Access over the PCI-E bus, so the cheats don't even run on the same computer anymore.

      Working on mostly server platforms, I had forgotten that IOMMU enablement (and, where relevant, enforcement) was not the default.

      Consumer hardware and software is terrifying.

      8 replies →

    • > they now use Direct Memory Access over the PCI-E bus

      Do you have any good resources with keeping up with this kind of thing? Seems like a fun topic to learn about

  • As long as games are running on user hardware/OS, you'll always deal with cheating. Server-side checks and computation can only go so far.

    For example: in competitive shooters (where cheaters are most prevalent) you can't have things appearing out of thin air. The client needs to know about things ahead of time to play sounds and to give other environmental hints.

    • Exactly, nothing short of streaming the entire game fully rendered from the server will stop cheats. And even then you can probably still do aimbotting with modern day computer vision.

      3 replies →

    • Surely the server can tell the client what sounds to play and what other environmental hints to do, just as well as the server can choose to tell the client where the other players are when they are in sight.

      4 replies →

    • I've always thought the line about whats cheating, and what's not is unfair and arbitrary. How is it ok that some players can play 4k 200fps and others 1080p at 30fps.

      The only way to be really fair is for everybody to Stream the game at the same res, frame rate and latency.

      3 replies →

  • > Anti-cheat today is a stop-gap measure at best. For various reasons such as improved OS security and security concerns with this software, ring zero anti-cheat won't be around forever.

    I think that traditional kernel-level anticheat is going away. But the reason is more that when CrowdStrike caused mass outage, Microsoft stated that they want to provide standard interfaces for security sensors, and forbid kernel-level access otherwise (and anticheat can be considered a kind of security sensor too).

    If these interfaces become standardized then Valve/Linux could in principle implement them too.

  • It might be a cat and mouse game, but that doesn't mean we shouldn't be trying.

    Any anti-malware software ends up ultimately being a cat and mouse game, but that doesn't mean we stop updating our signature updates.

  • The goal isn’t to stop 100% of cheats but the majority of them and that’s fine. Either way, it’s the only thing stopping me from playing the rest of my games on steamos.

Multiplayer games without dedicated servers is dead end anyways. I dont need a "anti-cheat" daemon hooking into kernel scanning files and other memory while playing a game. Communities in dedicated servers are much more efficient at moderating the player base than centralized match making ever will be.

  • This is where I'm at with gaming. Even outside of cheating, it's not fun to me to be dumped in a game with screaming children/manchildren. If I'm playing a game I want it to be with my actual friends. And then I don't have to worry about them running cheats because I trust them.

    Once you get to match making, global ranks, etc it's just getting too sweaty and ruined by cheating/low trust/etc.

    • At least in TF2 the sweats are all on the community servers. I can get like 3 kills a round on skial servers. I’m trash there. When I use the valve matchmaking servers I dominate the lobby about half the time.

  • Communities with dedicated servers include anti-cheat though. Most people aren't interested in spending time moderating a player base: they'd rather just play the game. So server admins use anti-cheat.

    You can see this in existing games with current games with community servers. GTA V's modded FiveM and CS2 Face-IT include more anti-cheats, not less.

  • Yeah, but it's very time consuming/impossible to find similarly skilled players for a fun lobby. The only competitive game I care to play on Linux is Rocket League, which is nearly impossible to cheat at, so it doesn't currently have anti-cheat, but I wouldn't be surprised if Epic decides to put their beloved EAC in it at some point anyway, maybe even just because they hate Linux so much.

    • EAC has a Proton-compatible version, actually. Even if they enable it, if they use that version, it'll work fine via wine/Proton.

  • They really aren’t. I used to think that but I actually enjoy skill based matchmaking. It makes game availability better and faster and I don’t have to deal with 1 outlier absolutely stomping or overzealous admins or whatever. I like both approaches though for something like battlefield I think dedicated servers are better but for things like cod, siege, etc we need sbmm

  • Ho do you do proper matchmaking and ranking up and progression etc with dedicated servers?

    I want good balanced matches with players of my similar skill level via matchmaking.

It's also an anticompetitive red herring, at least for Epic.

They say they don't support Linux because it's too complicated to be worth the ROI. Really, it's that they don't want to boost a platform where Steam is far and away the default store.

  • This is especially relevant to note because Epic bought and owns Easy Anti-Cheat (EAC) one of the currently most popular anti-cheats in AAA.

    ETA: EAC still supports Linux gaming today, but the rumors remain that Epic could remove that at their whim.

This is problem for me and my brother right now. He's up at a remote job site and we want to play Siege or Apex together¹, but both require anti-cheat and don't support Linux. And I'm loathe to devote space on my SSD to Windows.

¹: Rainbow Six: Siege and Apex Legends, respectively.

>the major vendors don’t want to support it

The two most popular ACs by far are Easy anti cheat and Battle eye which have natively supported Linux for years, but it is entirely up to the game devs to enable it.

About 40% of all games with AC are working areweanticheatyet.com

There are rumours of next xbox generation supporting steam platform and 386 architecture. I know it's a bit off topic, but it could be an elegant solution to the cheating problem, gradually move to standardised consoles. This could solve the dma problem too

AFAIK most anti cheats such as BattlEye actually work under Proton, but the Game Developers have to write to the Anticheat vendor that they want to opt-in into allowing Proton.

Don't forget the ancillary applications that gamers want. If you follow Discord's website, you're gonna end up installing a DEB file manually. Then, every couple weeks, Discord won't launch until you go download another DEB file and install that. Oh, and good luck getting Discord screen sharing working on Wayland. I tried for hours, gave up, and switched to X11. So, just in Discord, we've already run into two hideous workflows that no Windows native is going to take in stride.

  • And certain types of games have a _ton_ of ancillary applications. For flight simulation, I rely on 2-3 additional contollers, some of which I am fairly certain either won't have driver support, or at the very least will have some major issues with the GUI and configuration.

    Then, there are things like head tracking which are either another dedicated peripheral which may or may not get drivers, or a set of apps which feed from a webcam and output the signal to a standard driver that games know to check for.

    Finally, most 3rd party add-ons have custom installers, and I'm guessing most of them won't have a working Linux version. So, while I'm sure it's possible to run, say, a vanilla X-Plane on a non-Windows installation with no peripherals/apps/add-ons, I just see a mountain of work to get a normal, heavily custom installation working.

  • Discord is shipped in a number of package managers (I don’t know the status for mainline apt repos).

    I know that this isn’t an easy solution/doesn’t go against your argument, because it isn’t download-and-run simple, but discord’s version can be modified with no consequences in a build_info.json file. I used to do it manually, back when they updated it every once-in-a-while, but due to their current tendency to push updates every few days or so, I’ve made a few-line bash script to fetch the latest version (thank you httptap) and patch the file for me. For screen sharing, I use whatever current discord client on GitHub supports it for Wayland, which usually has the added benefit of not limiting quality and framerate options.

    But yes, you do have a point, it’s not just ‘as simple’ as it is under Windows - when Windows works properly.

  • ...why? Discord is available via flatpak.

    It Just Works.

    • Tell Discord that!

      Think about it from the POV of a Windows user, especially one who has never used Linux before, and especially one who doesn't know what HN is. To install a program, the first thing you're going to do is type "discord" into your browser, and go to their website. Discord's website doesn't suggest that there's a better option. It just gives you a DEB file.

    • Made the mistake the poster above did with discord did for years.

      The package system is very important to learn in Linux. People have 12 ways to install an app, and they are far from equal.

It's funny because one of the OG draws to Steam back in the day was because Counter-Strike (et al) had the superior Valve Anti-Cheat (VAC) in Steam copies than the myriad of raw CD installs of HL1 plus the mods to run Counter-Strike.

This missing piece is sort of a fun "whatever happened to VAC and why hasn't it kept up with the times?"

It seems like Linux would be a good excuse to reinvest in VAC and make it a bigger competitor to the current favorites like Easy Anti-Cheat (EAC).

interestingly, I have no issues with the anti-cheat within Marvel Rivals; however, games that embedded an anti-cheat prior to the steam deck popularity don’t work as you described (PUBG, apex legends).

Don't discount peripheral support. I've got some pieces of hardware that are only kinda-sorta supported in Linux.

Not a big issue if you're just using kb/mouse/controller but you can get into the weeds with VR, flight sticks, wheels, etc.