this post was submitted on 14 Nov 2025
661 points (96.7% liked)
Linux Gaming
22102 readers
2436 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:
- Linux Gaming wiki
- Gaming on Linux
- ProtonDB
- Lutris
- PCGamingWiki
- LibreGameWiki
- Boiling Steam
- Phoronix
- Linux VR Adventures
Discord:
IRC:
Matrix:
Telegram:
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Explain something to me. It’s a multiplayer game anything that affects all players should be handled on the server side, not the client. So if I make a cheat it can only be installed client side, not server side.
So if my hypothetical cheat looks at object placement and any time I sees a small object approaching at a high velocity it can say “I’m going to assume that’s a bullet based on what the server told me about it.” Then my cheat would say “your character moves from here to here until the bullet passes by, then moves back. I will tell the server you moved to the left 20 inches in the blink of an eye then moved back”
This works because the server just trusts what it’s told in this example.
So there are two options here to resolve this. Either the server sets thresholds and denies any placement changes look like the Flash is playing rust, or the server evaluates suspicious placement changes later when the cpu load it’s under is lower. The first approach stops much of this instantly but is computationally expensive and could not scale well for lots of players. The second would work well enough. You need to catch cheaters but it’s doesn’t have to be within the same exact cpu cycle.
In either case, these work because the server is taught to look for something that shouldn’t be possible. The enforcement happens server side. The client doesn’t fucking matter.
There is zero reason to put anti cheat on the client side when it’s not a P2P instance. Target a few servers, not thousands of players.
The client side anti cheat is a low effort hack that was good enough. Video game anti cheat devs are cheap as fuck because looking at client bits cost nothing compared to expensive machine learning pipelines that need to analyze all player performance. This is not a tech problem but a product/skill one.
You don't need machine learning for this we've had perfectly good server-side anti-cheat for a while now and none of it's been AI-based until recently. If we know the top speed the game should allow players to move any movement greater than that speed must be a cheat or lag, either way it shouldn't be allowed.
There's more to cheating than moving quickly.
Obviously. They gave one of a thousand examples. That doesnt mean their point is weak, it means they didn't have the will (reasonably) to make their comment 50000 characters long.
If you have a specific example that doesn't work to a reasonable extent, post that rather than this short, vauge retort.
It's a huge part of cheating though. Fast movement, auto aiming, and wall hacks are the three biggest problems in cheating and all three can be solved algorithmically, without resorting to AI which is inconsistent and processor intensive.
You check whether the movement is possible for the allowed speed in the game.
You count the hit to miss ratio per weapon and build up statistical averages, anybody using auto aiming is going to be consistently out of that average, obviously you do this with each weapon in the game separately, snipers are obviously going to have a better hit rate than LMGs.
Finally you don't send data for players that are out of sight. Wall hacks can't work if the client isn't given this information.
The great thing about all of these techniques is that it's method agnostic, it doesn't matter what method the cheaters are using to inject their cheats, because you're not looking for the injection, you're looking for the end result.
Battlefield 6 has kernel level anti-cheat and it's straight up doesn't work because the cheaters are always ahead of the game. It also doesn't help that the game is glitchy on its own.