The fact that companies think client side anti cheat is a good idea is so insane. Maybe try designing your server better instead of blaming the operating system for not letting you control your users
Genuinely curious, because this isn't my area of expertise, but how do you design a server to be "better" if it has to trust data from a remote client?
Example, if the client is compromised - because as they've said, they have no way to "attest" that the kernel is not compromised - how would the server know any better?
If my Apex client tells the server I got a perfect headshot, how would the server know I didn't fake the data? Is there a real answer to this problem or are we just wishing they come up with an impossible solution?
My general understanding is that EA is 100% correct. Now, on the other hand, maybe the should just limit plays between Linux <-> Linux so people can at least still enjoy the game (I'm moving to Linux soon so I'll basically no longer be able to play the game, which is, as my primary gaming addiction, a huge loss I'm willing to take).
There's compromises EA could take, but I think the Linux market share is just too small for them to care to spend any resources - even though they're raking in billions (~$3.4 Billion) and could spare a few resources to find a good middle ground. Capitalism at it's finest.
How do they know you haven't trained an AI to get headshots? The cheats often break the bounds of what is realistic in games, whether it is allowing you to see through walls (server shouldn't be sending enemy positions that aren't in view), going too fast (server should speed check pplayer positions), getting items they shouldn't have (server should do inventory sanity checks), etc. Other than that, look for signs of automated movement/things unrealistically precise for a human to do. Eventually the cheating will just be moved to a separate air gapped computer running AI on the video feed. Client side is an invasive, broken, and malicious concept.
If my Apex client tells the server I got a perfect headshot, how would the server know I didn't fake the data?
Any game that works like that is fundamentally flawed and AC is nothing but an attempt at a cheap bandaid at best.
The client should be doing nothing but rendering and sending player actions to the server and the server should be managing the game state as well as running its checks on those actions. And when one client sends actuons that are weird and doesn't line up with it's internal game state it should kick the client immediately always deferring to what ITS game state is telling it, not the client.
Genuinely curious, because this isn't my area of expertise, but how do you design a server to be "better" if it has to trust data from a remote client?
Check the data on the server ("oh no, incredibly expensive"). Don't give any data to the client it doesn't need, like enemies around the corner ("oh no, now my game is so very laggy because caching and future position assumption just became impossible")
Example, if the client is compromised - because as they've said, they have no way to "attest" that the kernel is not compromised - how would the server know any better?
Now the server doesn't need to care. There's input? Validate and use it.
If my Apex client tells the server I got a perfect headshot, how would the server know I didn't fake the data? Is there a real answer to this problem or are we just wishing they come up with an impossible solution?
Now the client can go pound sand. Server decides if it's a headshot. Client only sends coordinates of origin and target. Lag? Sucks to be you, with or without cheat.
My general understanding is that EA is 100% correct. Now, on the other hand, maybe the should just limit plays between Linux <-> Linux so people can at least still enjoy the game
That would only create more work for the developers, all for the defacto expulsion of Linux users (Way less players at all times). The best course of action here would be the actual expulsion of Linux users. Also, EA is at most 25% correct. (Not a rational argument, I just very much dislike them)
(I'm moving to Linux soon so I'll basically no longer be able to play the game, which is, as my primary gaming addiction, a huge loss I'm willing to take).
Damn, sorry to hear that. It's always bad to leave something one knows because something's become unbearable. I wish you best of luck on your journey! (I'm assuming a lot, but why else would you switch despite your choice of use of free time?)
There's compromises EA could take, but I think the Linux market share is just too small for them to care to spend any resources - even though they're raking in billions (~$3.4 Billion) and could spare a few resources to find a good middle ground. Capitalism at it's finest.
On the other hand: I quite like it. It forces them to keep their grubby little hands from my kernel.
I do not like anything anti cheat. But I also don't really like cheaters, especially in online games, so anti cheat could be tolerated. The only thing is: nothing trumps my systems integrity. Definitely not online player satisfaction.
The fact that this thoughtful comment was downvoted, while the computer illiterate reply was upvoted, speaks to the hive mind on this subreddit. We all detest EA, but this guy has a legitimate point.
Keeping untrusted clients in their own ecosystem is an interesting idea, and would let people access the game without affecting anyone in the "trusted" chain, but you will all be lumped in with the obvious cheaters with blatant speed/flying/aiming bots.
If you were playing without cheats on Linux, I'd imagine you'd stop soon after.
The best idea would be to let people run their own servers and then allow or IP ban cheaters themselves, but I guess with everything needing to make money from skins and paints or whatever the fuck Apex sells, that's out of the question and has been since about the Xbox 360 era.
They should just use the same approach big minecraft servers use, the game itself has no anticheat, but the server makes sure the data it's getting from the client makes sense and kicks clients sending weird data. Doing any checks client side will always be insecure and a nuisance to players
I see you all over this thread and I want to share something you might find interesting.
You keep mentioning the server can't handle the anti cheat because it needs to trust client data. Here's an interesting thought: how is client anti cheat supposed to work when it needs to trust input data?
Look up direct memory access cheats. TL;DR Two computers are hooked up such that PC 1 runs the game, PC 2 reads memory from PC 1, and can then output keyboard/mouse inputs, as well as wallhacks/esp. How is the client side anti cheat supposed to know that the keyboard and mouse inputs are legitimate? How is the client side anti cheat to know wallhacks are being used when they are being rendered on an entirely different machine?
Aside from better server side detection, which is I agree is severely underdeveloped, I'd say that the next big step should be a much bigger reliance on reputation-based matchmaking, ideally across games. It would need to be built in a way that's not abusable by devs or trolls and should be as privacy-respecting as much as possible (as in, not having to validate with your ID South-Korean style), which isn't an easy task. Working properly however, it would keep honest players from seeing any cheaters at all with no client-side anticheat required at all, which would be nice.
If you accidentally ban linux users in three[1] different[2] banwaves[3], then linux was only halfway supported in the first place, even if they overturned (almost) all of those bans.
I think the real reason they did it was EA's financial situation. Since money is tight, the amount of resources they were willing to put into real linux anti-cheat probably dropped to "none at all," and now we're here. Otherwise other cheater-prone games like Counter Strike, Overwatch, Halo, The Finals, DayZ, Hunt Showdown, etc would have probably dropped/blocked linux by now too.
Hell, I'm mad Apex Legends did it and I have very little time invested in that game.
I really wish game developers would stop with this kernel level anticheat nonsense that doesn't even work. Everyone in every gaming community just points the finger, people that play games using Easy Anticheat say Battleye sucks and vice versa.
If kernel level anticheat actually worked, there would be a definitive answer to which games have good anticheat.
Ik the 2 major games that supports linux is apex(not anymore unfortunately) and i bet overwatch and titanfall will do it next, additional note: dont mind rust not allowing linux I find it fair for the devs,atleast rust gives you a choice of a mac.
Does this have anything to do with the other Steam related headline I read in a post earlier: " Games now have to disclose kernel level anticheat on steam?"
Idk my sole interaction is through these headlines lol, I don't have steam, and haven't really even played anything since like RDR2 (well, not counting my GBC, I play with that all the time, currently playing Earthworm Jim (GB).)
It's not P2W though, right? I thought they only sell cosmetics w/o competitive advantage (outside a mistake here and there), everything that actually impacts competitiveness is provided equally to everyone.
If that's not the case, could you link something that indicates that?
How much fucking harder/extra work is it to maintain a Linux version of something? God damn, I don't even really use Linux outside of servers and I still think it's bullshit how little support it gets because it's like a Catch 22. Nobody works on it because nobody uses it; but nobody uses it because nobody works on it! (For gaming, anyway)
It's amazing how much actual change this one piece of hardware has done to bolster Linux's share of things, but it's still also just kind of a drop in the bucket.
It's also keeping people from even considering linux for gaming so I don't share your sentiment. Like it or not, these games are insanely popular. My gaming buddies won't even think of switching to linux until 100% of the games they play are working on it, and that include "shitty MMO Battle Royale" I'm sorry to say.
One of the few ea games I played,what a shame ig my luck truly died down.
Edit after reading the article it's that same excuse, too muc hakers,dude isnt your game full of hackers wayy before linux users.(I wrote it like that to make fun of companies that say linux is a way for hackers)
But this is the time to quit all greedy companies.
Edit 2 this article is actually written poorly,it isn't a emulator it's a compatability layer.
These fucka banned me 2 years ago and I never even played the damn game. My brother convinced me to download this and when I opened it, bam, already banned.
They new I was just too good and would win every game.
Literally the only game I've ever been banned from.
Hahaha, how bad does your anticheat have to be that it bans people who haven't even played the game yet? Or maybe its so good that it bans people BEFORE they cheat. "Good news, we dropped the cheating rate to 0%! We only had to ban the entire playerbase to do it!"