6 ms·
> My understanding is there is no technical reason these anti-cheats cannot work via Proton, but the anti-cheat makers will ban if they figure out you're not on
by thewataccount 3y ago
> My understanding is there is no technical reason these anti-cheats cannot work via Proton, but the anti-cheat makers will ban if they figure out you're not on Windows out of some weird fear of people having root access to the system. I could be wrong, however.
So the big anti-cheat platforms VAC, EAC, BattleEye, etc. all support linux, however the developer has to enable it - last I checked Battlefield2042 could run on linux just fine (as BF1 and BF5 did) but they didn't enable the anticheat on linux.
I'm not sure how possible kernel level anti-cheat is via wine, the entire point of that is to be on the ring 0 layer where the best cheat software lives. Drivers generally get permissions to read/modify any memory anywhere using hooks that are difficult/impossible to detect from userland.
The reason you'll get banned on linux if they don't instantly nope-out on launch and don't want to support linux is because what anti-cheat software does is primarily two things: See what is hooked into the game, and see if all the memory is in an expected state. Obviously the compatibility tools don't match windows 1:1 and will look _bizzare_ to software comparing it to what you'd expect on windows. So the state doesn't match which it assumes means something is modifying it = cheat software.
tl;dr - idk if ring0 anticheat could ever work via wine, a lot of games use anti-cheat software compatible with linux but just don't enable it, if anti-cheat was somehow didn't instantly freak out on launch then it'll see a bizarre and heavily modified system compare to a real windows install, with unexpected behaviour.
EDIT: From my understanding DKVX for example presents as the direct3d/directx library which of course has very different behaviour and is very clearly modified/not actual direct3d/directx
- Alupis 3y agoThis all makes sense. I just don't see someone like Activision caring enough to make their kernel level anti-cheat work cross platforms... which has the effect of keeping people on Windows for no other reason but to play one or a couple games. To make this work, there has to be some compatibility layer good enough to fool kernel level anti-cheat into allowing the game to run. I don't know how that would be possible... but that would be the silver bullet, so to speak.
- thewataccount 3y ago> fool kernel level anti-cheat That's the problem though - if the compatibility layer can fool the anti-cheat then so can actual cheats. Both cheats and compatibility layers do the same thing - modify behaviour. Generally anticheat will take a "blanket" approach and ban or crash by default and whitelist specific types of behaviour. What we ultimately would need would be a kernel level interface/process that the game talks to if it identifies it's running under linux. Which is totally possible to do, linux users specifically would hate it, and it would be a lot of work. Without this you're stuck in userland. Honestly the only realistic hope is the steamdeck becomes a lucrative enough platform for developers to target. Valve has already made sure the popular anti-cheat software supports linux. Valve's stance has been to provide cheat mitigation through other things such as overwatch/trust factor in CSGO (which works well from my experience). VAC itself is actually very primative.