this post was submitted on 31 Oct 2024
280 points (99.6% liked)

Linux Gaming

15189 readers
710 users here now

Discussions and news about gaming on the GNU/Linux family of operating systems (including the Steam Deck). Potentially a $HOME away from home for disgruntled /r/linux_gaming denizens of the redditarian demesne.

This page can be subscribed to via RSS.

Original /r/linux_gaming pengwing by uoou.

Resources

WWW:

Discord:

IRC:

Matrix:

Telegram:

founded 1 year ago
MODERATORS
top 50 comments
sorted by: hot top controversial new old
[–] Presi300@lemmy.world 1 points 7 minutes ago* (last edited 5 minutes ago)

Would've cared... If the game had gotten any good updates for the past... Year? Probably more at this point.

[–] jjlinux@lemmy.ml 18 points 4 hours ago

Cool, fuck EA.

[–] ArcaneSlime@lemmy.dbzer0.com 6 points 3 hours ago (1 children)

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?"

[–] blackfire@lemmy.world 1 points 2 minutes ago

It is nice timing but I believe apex is already well known for its anticheat so they wouldnt be disclosing whats not already known

[–] Microplasticbrain@lemm.ee 4 points 3 hours ago

They just can't stop killing this game, the last few updates have been dog shit and now they do this.

[–] hitagi@ani.social 8 points 5 hours ago

Lame. :/ Guess I'm changing my review then.

[–] Mango@lemmy.world 27 points 9 hours ago

K bye.

Who am I kidding? I never bothered with that crap.

[–] JoeKrogan@lemmy.world 74 points 12 hours ago (2 children)

Just a reminder you can add a publisher to your steam ignore list such as EA or Ubisoft.

[–] killabeezio@lemm.ee 2 points 3 hours ago

Wtf. I did not know this. Thx

[–] SwordandArt@lemmy.world 5 points 6 hours ago

Whaaaaaaat!?

[–] turbowafflz@lemmy.world 172 points 14 hours ago (2 children)

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

[–] nekusoul@lemmy.nekusoul.de 17 points 8 hours ago

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.

[–] KLISHDFSDF@lemmy.ml 21 points 13 hours ago* (last edited 13 hours ago) (13 children)

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.

[–] myersguy@lemmy.simpl.website 1 points 4 hours ago* (last edited 4 hours ago)

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?

[–] KomfortablesKissen@discuss.tchncs.de 9 points 9 hours ago (2 children)

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.

[–] Object@sh.itjust.works 5 points 6 hours ago

The server already determines if a shot's valid or not though. Once a client receives information on where the enemy is at, then the client can send message to the server that they are shooting exactly at that location.

[–] KLISHDFSDF@lemmy.ml 2 points 5 hours ago

Check the data on the server

I believe this already happens to some degree.

Don’t give any data to the client it doesn’t need, like enemies around the corner

Enemies around the corner still make noise/peek/shoot/etc. You can't just hide data of nearby enemies from the client because their actions still have in-game consequences that need to be reproduced across all active/nearby players.

Now the server doesn’t need to care. There’s input? Validate and use it.

How do you validate data that is within the realm of possibilities? if my head shot would have been 1 pixel too far to the left to hit and my hacked client sends it 1 pixel to the right so it makes a hit, how does the server know this isn't fake?

Server decides if it’s a headshot.

If my fake data doesn't look out of the ordinary i'm still hacking the system and tricking the server-side validation.

Client only sends coordinates of origin and target. Lag? Sucks to be you, with or without cheat.

The math to send the perfect headshot isn't difficult if you know where you are, where the enemy is and you can only send origin & target coords, I'm not sure this solves anything.

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)

Agree with you 100%.

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?)

Thanks! I'm a huge open source supporter and only ever installed Windows on my desktop to play games, still using Linux on my laptops. Thanks to Valve, Proton, and Wine, I'll be able to go back to Linux and maybe discover some new games.

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.

Kinda agree with you on this. Although I have my desktop as a strict "gaming" machine, I wouldn't mine an EA rootkit on my Desktop Linux system if all I did on it was game. But yes, they can keep their hands off my kernel on my "work" devices.

[–] yeahiknow3@lemmings.world 11 points 10 hours ago* (last edited 10 hours ago) (7 children)

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.

load more comments (7 replies)
[–] CalcProgrammer1@lemmy.today 43 points 13 hours ago (6 children)

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.

[–] Drathro@dormi.zone 16 points 13 hours ago (2 children)

Just tracking trended data in general would be sufficient to defeat a LARGE number of common cheats. One of the very few use cases "AI" might actually work for in a positive way. But that puts the burden on the developers and server hosters, and it's much easier to just burden the players directly instead.

load more comments (2 replies)
load more comments (5 replies)
[–] cm0002@lemmy.world 20 points 12 hours ago (2 children)

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.

[–] KLISHDFSDF@lemmy.ml 1 points 5 hours ago

And when one client sends actuons that are weird and doesn’t line up with it’s internal game state

What if my hacked client sends actions that are not weird, completely plausible, but didn't happen and instead were faked? E.g. I take a headshot and would have missed, but my client sends data that I actually shot them dead center, because I wasn't completely off? How would the server know it wasn't me?

[–] ampersandrew@lemmy.world 8 points 11 hours ago

The cheat in this case would send legitimate actions. Like maybe you, the human, would have missed the headshot, but your cheat corrected to the inputs that would have landed one.

[–] conciselyverbose@sh.itjust.works 33 points 13 hours ago* (last edited 13 hours ago) (9 children)

Your core premise is broken. Relying on trusting anything from a remote client cannot possibly result in a fair game.

[–] Evotech@lemmy.world 5 points 10 hours ago (1 children)

It's not that simple. Especially not for real time shooters, latency is a killer.

[–] conciselyverbose@sh.itjust.works 5 points 9 hours ago* (last edited 5 hours ago)

It is exactly that simple. You already have to account for latency because everyone but one player (who you also can't trust no matter how many rootkits you install) is not the server. Having a proper server doesn't change that in any way.

Client side validation cannot possibly provide any actual security, but even if that wasn't the case and it was actually flawless, it would still be unconditionally unacceptable for a game to ever have kernel level access.

load more comments (8 replies)
load more comments (7 replies)
[–] sp6@lemmy.world 39 points 11 hours ago (1 children)

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.

[–] Dark_Arc@social.packetloss.gg 1 points 4 hours ago

I would be so upset if Hunt Showdown did this.

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.

[–] helios@social.ggbox.fr 79 points 14 hours ago (2 children)
load more comments (2 replies)
[–] granolabar@kbin.melroy.org 40 points 14 hours ago (20 children)

GET THAT REFUND!

NO TUX, NO BUX

load more comments (20 replies)
[–] Kroxx@lemm.ee 24 points 13 hours ago

Is this not the game I saw an article about like yesterday saying EA had missed revenue forecasts and EA stated a major overhaul is needed?

I guess step one is to restrict the player base more.

[–] Harvey656@lemmy.world -2 points 4 hours ago

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.

[–] Pavidus@lemmy.world 27 points 14 hours ago

This must be the drastic change to increase monetization they were talking about just yesterday.

load more comments
view more: next ›