this post was submitted on 14 Nov 2025
644 points (96.8% liked)

Linux Gaming

22644 readers
123 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.

No memes/shitposts/low-effort posts, please.

Resources

WWW:

Discord:

IRC:

Matrix:

Telegram:

founded 2 years ago
MODERATORS
 

This is so funny because rust has one of the worst cheating situations and majority of their players are windows users, and theres lots of games that have anticheat that allows linux and have notably less significant cheating problems like marvel rivals. in reality rust doesn't take cheating very seriously because if they did they would have more server side software that detects illegitimate behaviour like tons of other games do successfully...... even most popular Minecraft servers have better functioning anti cheat that is completely server side than rust has while getting kernel access to your pc. its pathetic and lazy development tbh and this entire post from them reads like such extreme cope....

you are viewing a single comment's thread
view the rest of the comments
[–] TheMightyCat@ani.social 241 points 1 month ago (4 children)

It's almost like client side anti cheat doesn't work and if proper server side anti cheat is made it wouldn't matter what platform the client is on.

[–] eager_eagle@lemmy.world 185 points 1 month ago (6 children)

"never trust the client" is pretty much a motto of infosec, idk what the hell game devs expect

[–] sp3ctr4l@lemmy.dbzer0.com 54 points 1 month ago* (last edited 1 month ago) (2 children)

See, the wild thing is that I used to run with some actual hackers in GMod... and... I learned from the exploits that they did, how you actually design at least a game mode script that can't be fucked, can't be poked proded or queried directly.

Of course, if the actual exploit is lower level than what I'm writing at, well then I'm still fucked...

I can remember at least one GMod originated, lower level exploit, caused by Garry leaving some direct, unsanitized interface to Steam itself directly exposed via lua... which caused Steam/Valve themselves to step in and rewrite a part of all of Steam, because Garry is s fucking moron, and more or less allowed a virus/malware to propogate through Steam itself, independent of Garry's Mod...

Never did figure out if any of the goobers I knew had any direct ties to that or not.

But anyway, fucking yes, literally never trust the client with anything beyond their own GUI, and barely trust them with that, don't just let them click on anything in their screen space to see if its an item they can put in their inventory, do an actual server side vector ray trace, from the item to the playet, make sure the thing they clicked on is actually near them, put that all into a buffer that locks up if they're calling it at inhuman rates...

It was so easy to item dupe and stat boost and even hijack other players accounts in so many gamemodes I saw.

Fucking one of them had the user set and enter a login password to 'access' their various characters, pick one to spawn as.

Problem?

... That gamemode was actually doing the id check via SteamID, duh.

The username/password thing was a fucking phishing scam, that game mode had a forum, everyone used the same user names, a bunch of people got their hotmails or whatever fucked, by the dev of that gamemode.

... Anyway... yeah, I learned all this infosec type shit first hand, in an earlier 'FacePunch Studios' production.

Fuck Garry, fuck FacePunch, these people are idiot clowns.

Roblox exists now, the GMod roleplay communities independently invented their own ways of monetizing their gamemodes via syncing to their sites and forums with payoal widgets, ya'll missed the boat on that one, no one is going to play S&ndbox in anything close to GMod in its heyday numbers.

[–] AwesomeLowlander@sh.itjust.works 39 points 1 month ago (1 children)

Garry leaving some direct, unsanitized interface to Steam itself directly exposed via lua... which caused Steam/Valve themselves to step in and rewrite a part of all of Steam, because Garry is s fucking moron, and more or less allowed a virus/malware to propogate through Steam itself, independent of Garry's Mod...

That sounds entirely on Steam. The game is the client in this context, and Steam as the server shouldn't be trusting anything from the client.

[–] sp3ctr4l@lemmy.dbzer0.com 20 points 1 month ago* (last edited 1 month ago) (1 children)

This was like, over a decade back, I don't remember it in accurate detail, and also, Garry deleted all the old Facepunch forums, which I do remember having a lot of discussion about this...

But, best I can recall, it was something like a buffer overflow/memory space exploit, because Garry exposed a core Steam function, that normally is only called by other Steam functions, in c++...

Well, Garry decided to give basically a lua api / reference method of accessing it directly, allowing doing arbitrary code injection into it, from anyone running a GMod server or networked client.

So I mean yeah, you can say Valve should not have trusted Garry with low level access to Source and Steam, that that's their bad, they should have expected he would create a serious security exploit out of naivette/hubris, like the proverbial junior sql db admin who just does 'DROP ALL' on prod, as an 'experiment'.

Uh yep, I would agree with that.

... I think this may have had something to do with Steam's, fairly new at the time, achievements system roll out, but I'm not sure if that's correct.

EDIT:

For those that don't know, the vast, vast majority of what GMod is, is basically just opening up core Steam/Source calls done in C++, opening those up to Lua, by mapping them with reference methods, and then allowing Lua scripting via those methods.

Then on top of that, you draw like, the item spawning menu, tool menus, make a standardized template for making a new tool or weapon (SWEPs) or entities, or players or NPCs, etc.

So uh, yeah, if you're not careful with that, if you don't know what you're doing at the lowest level, that can be very dangerous and easily lead to uh, unforseen consequences.

[–] JackbyDev@programming.dev 3 points 1 month ago

I'm still confused why any game having a way to upload a worm into Steam is good and why it was uniquely a GMod problem. It sounds like a case of a problem waiting to happen and the first place it happened to happen was GMod.

[–] eager_eagle@lemmy.world 9 points 1 month ago (1 children)
[–] sp3ctr4l@lemmy.dbzer0.com 15 points 1 month ago* (last edited 1 month ago)

Fuck you, take my order, stupid hallucinating AI drive thru working off an 18 year old microphone!

Oh Wait!

You're closing half your locations after trying to push realtime adjusting prices.

Nah I'm good, I'm gonna be posted up at the abandoned Wendy's, screaming at it all day long.

Get those pigtails in a hairnet, and my fries in a bag, thanks very much.

[–] FishFace@piefed.social 10 points 1 month ago

And this naïve understanding of infosec somehow makes people forget that this is not infosec, and there is more to anti-cheats than ignoring a client which says its travelling at warp speed.

[–] FlowerFan@piefed.blahaj.zone 3 points 1 month ago

The Problem is that that would increase the load on the server as well as make latency-mitigation much harder.

As with everything, it‘s always a tradeoff.

[–] Strider@lemmy.world 3 points 1 month ago* (last edited 1 month ago)

It's not a motto. It's a given must design. (I have work context)

[–] Bronzebeard@lemmy.zip 1 points 1 month ago

The issue with pure client side is latency. At some point, you need some kind of predictive client side to smooth out the gaps to feel playable, but that also can lead to rubber banding and jumping around.

[–] FishFace@piefed.social 10 points 1 month ago (2 children)

If your objection to client-side anti-cheat is that it "doesn't work" what till you see what server-side anti-cheat fails to accomplish!

There's no way with a pure server-side implementation to even try to work out whether the client is using an aimbot or wallhack. No solution is perfect, which is why the best solutions try to combine methods.

[–] TuxEnthusiast@sopuli.xyz 6 points 1 month ago* (last edited 1 month ago) (1 children)

These people are delusional, don’t listen to them. Their cognitive dissonance drives them to jump through the biggest hoops to defend something that is simply flat-out wrong. You can't beat most cheaters with a server side anti cheat only, unless you do what World of Tanks does and have everything server-sided which isn't feasible for all games. Take CS2 or CS:GO for example. The game is riddled with cheaters, despite getting multiple VAC updates this year.

[–] FishFace@piefed.social 5 points 1 month ago

I don't think it's cognitive dissonance driving them, I think it's hatred of rootkit anti-cheat that bleeds into other client-side anti-cheat.

People aren't very good at separating different but related things, it seems.

[–] x00z@lemmy.world 3 points 1 month ago (2 children)

Why would you even send the location of players behind walls? You can just do the visibility check on the server first. But hey that's extra CPU cycles that they don't want to be spending on helping you.

[–] FishFace@piefed.social 7 points 1 month ago (2 children)

Visibility check of what?

  • The player and their shadow and all visible effects on the game world -> congratulations, now the server needs a GPU per player.
  • The player's geometry? -> shadows pop into existence when the player's arm appears around the corner, and the server is still way more expensive than it would be
  • A volume around the player? -> Still allows a significant advantage, still requires significantly more horsepower, and the client still can't do spatial audio

This amounts to making players use thin clients and putting all visual and audio rendering on the server if you want it to work and not suck. Will you be happy to save £1000 on your PC at the cost of having games cost £150 a pop? Thought not. Or did you think the "extra CPU cycles" were just free?

[–] glog78@digitalcourage.social 2 points 1 month ago* (last edited 1 month ago) (1 children)

@FishFace @x00z my small thought -> i think today no solution can prevent "cheaters" because you can't differ "cheaters" from users anymore if they want to.

Here is why ->
One PC is running the game -> a second PC emulates Keyboard and mouse inputs using a CAM (Capture Card) / Sound (microphon / digital capture) and an on the Game trained AI.

So what does any "cheat protection" offer if they don't protect against serious cheating ?

PS: "The only still working protection is lan play with control over hardware / software and players like done on real events"

[–] FishFace@piefed.social 4 points 1 month ago

Yes, there is no way to prevent all cheats. However, to prevent as many as possible, you need to use all available methods. It's quite reasonable that kernel-level anti-cheat should not be available, as it it's an overreach and a security risk. However, client-side anti-cheat is not that.

[–] x00z@lemmy.world 1 points 1 month ago* (last edited 1 month ago)

Many of the cheater ridden games don't even do a simple CPU based PVS check on the server side. You don't need a GPU for this because it's super fast.

An example of strictness in protection using PVS: https://www.youtube.com/watch?v=8w1ICIBO3D4

Tarkov for example doesn't even do a super simple check.

Oh and there's many more performant methods such as https://github.com/87andrewh/CornerCulling

[–] CptBread@lemmy.world 4 points 1 month ago

It's a very hard thing to check for though especially with how complex the world can be in games today. Even if it was feasible you don't know where a client will be in a few frames so you basically need to do a "what players can be seen from this general location" check. The higher movement speed the bigger of a volume is your possible viewpoint.

This is also ignoring all the things you need replicated even when you can't see the player such as footsteps or them shooting or interacting with something.

[–] Honytawk@feddit.nl 1 points 1 month ago (1 children)

You use both server and client side anti cheat.

Using only one will not work the way it should.

That, or cloud gaming needs to replace it.

[–] xep@discuss.online 1 points 1 month ago* (last edited 1 month ago)

All client anti-cheat have server components, otherwise they will be bypassed.

[–] urandom@lemmy.world 1 points 1 month ago (1 children)

I don’t pay multiplayer. That said, what if there is no anticheat? Would that level the playing field? Let everyone aimbot if they want to.

[–] xep@discuss.online 3 points 1 month ago

It will ruin the experience for anyone playing competitively in a ranked mode, which means invalidating that mode entirely. This drives players away from competitive games like CS, Valorant, etc. which is why those games all use anti-cheats.

Similarly if there is a persistent world or some state that the game relies on to make the game fun for everyone, e.g. extraction shooter, MMORPG, etc then if the game state's integrity is compromised it loses meaning entirely. Imagine playing chess but your opponent can move the pieces any way they like; it stops being a game.

I do agree that games where everyone agrees on cheating should allow it.