←back to thread

Anticheat Update Tracking

(not-matthias.github.io)
124 points not-matthias | 1 comments | | HN request time: 0.222s | source
Show context
varun_ch ◴[] No.44420989[source]
Forgive my ignorance, but why don’t game developers put more effort into limiting the amount of data accessible to the client (restricting it only to what’s reasonably necessary)? For example, couldn’t more movement physics be validated or handled server side? Cheats might still be able to read some data from the game process, but ideally, they’d be limited to issuing inputs like any other player, based only on the same visible output everyone sees. Is it cost? Does this model just not align with how the client/server split looks in games?
replies(7): >>44421072 #>>44421118 #>>44421970 #>>44422049 #>>44424067 #>>44425711 #>>44427400 #
1. lvturner ◴[] No.44421118[source]
It's been a while and it never was my exact area so forgive the high level and any innacuracies! (hopefully someone smarter can chip in further!)

It begins to fall down when you think in terms of interpolation and movement, if the server had to confirm your every movement it'd end up very jittery and feel awful as you ping back and forth between where your client state thinks you are and the server state thinks you are.

Even the client is kind of guessing (visually) where it is a lot of the time, at least until the next physics or update tick comes in and all this means that the server is going to be doing a hell of a lot of guess work about the state of the clients.

This article helps with reasoning around what a game is doing per-frame: https://gameprogrammingpatterns.com/game-loop.html

Certainly though, I think in this day and age, for slower games you could probably do a better job of this on the server though -- and I'm sure people are working on it.