Hacker News new | ask | show | jobs
by kuschku 120 days ago
The reason client-side AC is used is not technical, but economical.

It's possible to calculate what information should be available to a client at a given time (and within of the motion range of the clients' latency), only send that data, and calculate the time delta between when a player should have been able to know something, and when they reacted to it.

A lot of games used to do that in the past, and some still do.

But it requires powerful servers. Gamers could self-host dedicated servers, but publishers put an end to that as it's not compatible with micro transactions.

Developers could host servers, but that's not as profitable as using p2p gaming where a random client is used as the server.

It's a self-made problem really, none of this was necessary.

1 comments

The way I read their statements is simply that the it's the binary classification problem (is the user cheating or not) that should be done server-side. There's still data collection going on client-side. Given this, actually sending more data to the client could be helpful because they could use that extra data for cheating, data that a legitimate player would never have access to.
Well, the end-goal is to stop cheating, not to detect it - detecting it is simply a means to an end. In that sense, sending more data is not ideal because even though you might be able to detect cheating more easily that way, cheaters would still have some period of time where they are able to cheat (and cheat more easily), thereby worsening the experience for legitimate players.