First time seeing Devs respond to a lack of anti-cheat support on Linux
First time seeing Devs respond to a lack of anti-cheat support on Linux
Link to the response: https://steamcommunity.com/id/takinalisa/recommended/1934780/
First time seeing Devs respond to a lack of anti-cheat support on Linux
Link to the response: https://steamcommunity.com/id/takinalisa/recommended/1934780/
Talk is cheap. It's been "planned" for Tarkov since before I started using Linux.
Tbf most devs probably want to do it, they just can't justify it financially. Most games' programmers are computer nerds, and they would be the ones in charge of implementing that kind of stuff. They'd happily do it because obviously, as computer nerds they love Linux, but even if they accept to do some unpaid overtime just because they really want to implement this, it might get blocked by the publisher because they don't want that kind of stuff to bypass QA especially since it has a chance of affecting all users, and when looking at the numbers, it's just not profitable to them.
Now the steam deck could change that dynamic because it has a decent market share, and I would love to see the actual numbers but I'd be willing to bet that most deck owners buy more games than the average player.
Source: am games' programmer, computer nerd, and steam deck owner
Tarkov is in a different much more complex situation. It uses some Battleye addons that are custom made for the game that Battleye will not port to work on Linux.
If it was an issue on the user's end then it's possible 3rd parties could fix it (as Wine/Proton has for every game not designed for GNU+Linux). BattleState Games have decided they don't want to host servers without BattlEye for us to play on and that we're not entitled to host our own servers.
I did consider installing Windows on a machine just for Tarkov but install and using modern Windows looks like hell. I'd rather install Windows XP than Windows .
I want to be optimistic, bit honestly this to me reads like the non-commital "thanks for your concern, we'll look into it" consumer service style non-answer.
I hope it ends up somewhere, but I can also see it remaining in their ticketing system for eternity.
I think the Steam Deck is a platform that devs are aware of, and I'm sure they don't want to alienate that segment of their sales. They also want to avoid negative reviews.BattlEye is also supported in other games on Linux, including native versions, so it shouldn't be a big deal to ensure its functionality.
Isn't Balleye on Windows kind of a rootkit? How does that work on Linux? You have to run it as root?
“We’ve looked into it and decided we don’t give a shit”
The issue isn't even that BattlEye doesn't work under Linux, because it does. It's that a lot of studios that use it, namely Bungie and Ubisoft, explicitly refuse to enable support for it. Somehow they allowed Division 2 to run, but even then it only appears to be the Steam version, because my Uplay copy does not have the necessary files in the bundle
This might be a stupid question but is it possible to copy the files you need to your Uplay install? It doesn't guarantee that the game will use them but worth a try I suppose.
Also you have Division 2 on Uplay and Steam? Why?
No, I don't. I got it on a whim through Epic, when it was on like a 90% sale, and that's the only game I own there, but it's installed through Uplay itself. The reason I know about the files, is because they appear in a steamdb manifest
Theoretically would you've said could work, but since we're talking about modifying critical files, they might just slap me with a ban, and I don't really feel like doing that. They probably check the hashes of the included bundle immediately
The Division 2 uses Easy Anti-Cheat (EAC) not BattleEye
Yeah I'm aware. By they I meant Ubisoft, not the BattlEye dev
the year of me being able to run literally any game on linux is fast approaching.
Some places do eventually listen. Crytek stealth dropped easy anticheat support for Hunt Showdown a few versions ago.
I think we can thank the steam deck for that
NEXON...
Perhaps don't rely upon client side to do all the heavy lifting and problem solved without having to install malware?
I've seen this argument pop up but I'm confused with technical details on how it would work. Wouldn't the client still need to download the game? Modifying the game files is a vector for attack. If it's fully online on their servers then it would be pretty slow wouldn't it?
The client is nothing but a display. All it downloads is vid and all it up loads is control. The only actual issue is potential for lag. ag is solvable by designing with it in mind.
Think about things like stadia. If they are viable so is actually running the game on the server. This way all the activity is server side and everything coming from the client is validated.
The actual issue is that the game servers and networking would be more expensive. And that is the real reason they do it with DRM, it is cheaper for them. Your experience is not important to them.
The lag issue is really one of design and cheap server side infrastructure. A shooter would use a time stamp to allow position validation for when the shot was fired. Simply reduce the micro management and you've resolved most of it to start with.
I am genuinely curious how anti-cheat works on an open source OS. I don't know a whole lot about how it works to be honest, but is there no problem with cheaters being able to manipulate the entire stack down to the kernel level?
Like I'm aware cheaters can decompile code so closed source isn't necessarily that much better. Did I just answer my own question or is there more to it?
This is why client-side anti-cheat is a terrible idea. It gives you the illusion of control, but really it doesn't prevent a motivated party from cheating, and it opens up everyone else to kernel-level vulnerabilities when the anti-cheat software inevitably has a bug.
Client side anti-cheat should merely discourage low effort attacks, and the real cheat detection should always be server side looking at patterns of behavior. Unfortunately, it's a lot easier to reach for client side anti-cheat than build an effective server side anti-cheat.
This is a really good answer, thanks! I like to imagine what a fully open-source future would look like and I imagine server-side anti cheat is the solution.
Not all anti-cheats are kernel-level though, only the most invasive ones are. BattlEye, the one used in this game, is not one of them, though I don't know the specifics of how it works.
I'll do my best to explain:
Firstly, not all code executed on an open source OS needs to be open source. For example: Epic Anti-Cheat, which comes with a Linux-compatible mode, is fully closed source. So right off the bat we're going to put to bed the notion that somehow the platform of choice makes it easier for bad actors to pull apart and examine anticheat software.
Secondly, yes, there is a problem with cheaters being able to hide from anticheats on Linux. This is because on Windows it's relatively easy to run kernel-level code via drivers -- this is why most anticheats require admin permission to install a monitoring driver before the game will run. The anticheat is effectively rootkitting your system in order to circumvent other rootkits that may be concealing epic cheatz.
On GNU/Linux, almost all device drivers come prepackaged in the Linux kernel, so there's no direct equivalent to the Windows approach of allowing users to install third-party code into the most protected rings of the OS. It's still possible through the use of kernel modules (see NVIDIA drivers), but as evidenced by how annoying it is to use NVIDIA devices on Linux, this is a huge PITA for both the developer & the user to deal with.
So that's the rub. On Linux, anticheats just have to trust that the kernel isn't lying. This has been a perpetual thorn in the side of developers like Google, who'd really really like it if they could prove beyond a shadow of a doubt that a given Android device is not rooted (see SafetyNet). Google's solution to this has been to introduce hardware-backed attestation -- basically a special hardware chip on the device that can prove that the kernel software has not been tainted in any way.
I'm sure you agree with this, just wanted to add:
It's also true that the ease with which a program can interact with kernel level drivers in Windows opens up a whole host of potential exploits including but not limited to recording all internet traffic, all keystrokes, listing all files & programs, accessing memory of other programs and more. AAA client-side anticheats require some pretty incredible trust in the vendor to not be either evil or incompetent.
This is because on Windows it's relatively easy to run kernel-level code via drivers
Buuut there is nothing stopping a person from using virtualization.
Right so on a technical level it is actually harder to do client side anti-cheat?
Thanks for the information. That hardware backed attestation reminds me of Little Brother by Cory Doctorow, where hardware DRM was introduced and then forcibly deprecated when it was found to be vulnerable... so of course the vulnerable hardware was now worthless except on the black market where it was worthwhile to pirates because it was known to be already cracked.
I am geniunely curious how anti-cheat works on an PC with physical access, where user can plug their mouse loaded with cheats.
For every malware anti-cheat there will be sandboxing cheat.
That's a good point. I realise my question partly plays into a misconception about the security of closed source software, that it's somehow harder to mess with.
I mean people are training neural nets to look at the screen and aimbot by modifying the mouse inputs, which is just an impossible thing to detect.
Is this finally the beginning of anti-cheat games coming to linux? I'd love official ports for stuff like League or Honkai Star Rail.
League of Legends does work but it's painful. I use an AUR package called leagueoflegends-git which was the only way I could get it to work on my setup.
https://leagueoflinux.org/ has been invaluable. It used to be a subreddit but it's been made private since the API debacle.
I disagree on the painful part. The lutris install is basically 1-click.
Honkai unofficially works on Linux, but it requires bypassing the anti-cheat, there are a few methods to do so
Bypassing the anti-cheat will get you banned if it gets detected, wouldn't it?
why do so many anticheats not allow linux?
What I've heard is that they don't think that it's a big enough market to have to fix bugs that might happen only on linux and such, so they just don't allow us to play.
It'd be nice, but from what I see most devs against this suggest Linux gamers are a bunch of dirty hackers and it's somehow much easier to cheat there.
They just conveniently forget that Valve offered to fix any bugs themselves that are specific to Linux/Proton...
Some require kernel level access, which is a big security risk.
I didn't expect the dev to be Nexon
That profile pic looks cool, though
Thanks, it's a modified VRChat avatar called Rindo
this is awesome. i like this dev. i give it 5 more years to expext most games and graphics drivers work with an easy setup