Live data from Hacker News

Are We Anti-Cheat Yet?

areweanticheatyet.com

1–10 of 197 posts

Re: Are We Anti-Cheat Yet?

#2
I don't know enough about 'real time' netcode for games. However I have read several HN articles over the years so I've got at least a basic understanding.

Why can't the servers distrust the clients? What should a 'client side anti cheat' actually prevent?

The way I think I'd tackle such things is to have multiple copies of each character model moving in different locations and different ways. Such that trying to spy on the state of the game from one client's viewpoint yields mostly false data. New 'threads' would fork off of the existing threads and would only be culled when there are too many or they're about to make a side effect that would be visible if they were real. In that way the server would be responsible for feeding misinformation to clients but maintaining the state of the true game as a secret to itself.

Re: Are We Anti-Cheat Yet?

#3
post #2

I don't know enough about 'real time' netcode for games. However I have read several HN articles over the years so I've got at least a basic understanding. Why can't the servers distrust the clients? What should a 'client side anti cheat' actually prevent? The way I think I'd tackle such things is to have multiple copies of each character model moving in different locations and different ways. Such that trying to spy…

Not trusting the clients and redoing all calculations server-side would require massive processing on the server side. Your idea then multiplies the load on the server.

Re: Are We Anti-Cheat Yet?

#4
post #2

I don't know enough about 'real time' netcode for games. However I have read several HN articles over the years so I've got at least a basic understanding. Why can't the servers distrust the clients? What should a 'client side anti cheat' actually prevent? The way I think I'd tackle such things is to have multiple copies of each character model moving in different locations and different ways. Such that trying to spy…

The client need to have more state info than the player to render accurately, for example, to render an opponent passing through a window without lag. And also, there are also cheat that doesn't need to spy on the state, like aim assist tool or HUD improvement.

Re: Are We Anti-Cheat Yet?

#5
post #2

I don't know enough about 'real time' netcode for games. However I have read several HN articles over the years so I've got at least a basic understanding. Why can't the servers distrust the clients? What should a 'client side anti cheat' actually prevent? The way I think I'd tackle such things is to have multiple copies of each character model moving in different locations and different ways. Such that trying to spy…

> Why can't the servers distrust the clients? What should a 'client side anti cheat' actually prevent?

There are two issues. One is the user seeing things that the server is hiding, such as enemies hidden behind obstacles, by going into "wireframe mode". The other is superhuman performance via computer assistance, or "aimbot hacks".

The first is a performance issue. The server can do some occlusion culling to avoid telling the client about invisible enemies, but that adds to the server workload. The second is becoming impossible to fix, since at this point you can have a program looking at the actual video output and helping to aim. (You can now get that in real-world guns.[1]) Attempts to crack down on people whose aim is "too good" result in loud screams from players whose aim really is that good.

[1] https://talonprecisionoptics.com/technology/how-it-works/

Re: Are We Anti-Cheat Yet?

#6
post #2

I don't know enough about 'real time' netcode for games. However I have read several HN articles over the years so I've got at least a basic understanding. Why can't the servers distrust the clients? What should a 'client side anti cheat' actually prevent? The way I think I'd tackle such things is to have multiple copies of each character model moving in different locations and different ways. Such that trying to spy…

well because realtime online multiplayer game need to be "FAST", I mean really fast

sure if you develop platform today we can check token user now with hashtable we have in database but in games ?? You cant verify calculated damage numbers users gave, not fast enough

Re: Are We Anti-Cheat Yet?

#7
post #2

I don't know enough about 'real time' netcode for games. However I have read several HN articles over the years so I've got at least a basic understanding. Why can't the servers distrust the clients? What should a 'client side anti cheat' actually prevent? The way I think I'd tackle such things is to have multiple copies of each character model moving in different locations and different ways. Such that trying to spy…

Not trusting the clients and redoing all calculations server-side would require massive processing on the server side. Your idea then multiplies the load on the server.

How much though, i mean you're basically doing vector work, and only when its visible within range, and then when its visible within the player and the player hitbox is.... oh I see.

Re: Are We Anti-Cheat Yet?

#8
post #4
post #2

I don't know enough about 'real time' netcode for games. However I have read several HN articles over the years so I've got at least a basic understanding. Why can't the servers distrust the clients? What should a 'client side anti cheat' actually prevent? The way I think I'd tackle such things is to have multiple copies of each character model moving in different locations and different ways. Such that trying to spy…

The client need to have more state info than the player to render accurately, for example, to render an opponent passing through a window without lag. And also, there are also cheat that doesn't need to spy on the state, like aim assist tool or HUD improvement.

* Pass through a window without lag - That's why the server is sending multiple copies of potential movements and paths through the level for each character, but terminating the ones that are about to reveal their effects (no longer be culled by walls / objects) when they'd send false information to non-cheating players.

* Aim Assist - what's that supposed to work with for the assist? I guess it might help someone target a player once they're exposed, or once they've locked on. For that I think that extremely top tier players might behave within fuzzing distance of tool assist, at least some of the time. Dodging might have similar issues. I could even see ML assisting inputs just based on frame-grabs off the screen video output. -- So I'm not sure what client side anti-cheat is supposed to do here.

* HUD improvements - like what?

Re: Are We Anti-Cheat Yet?

#9
post #2

I don't know enough about 'real time' netcode for games. However I have read several HN articles over the years so I've got at least a basic understanding. Why can't the servers distrust the clients? What should a 'client side anti cheat' actually prevent? The way I think I'd tackle such things is to have multiple copies of each character model moving in different locations and different ways. Such that trying to spy…

The first rule in any software backed by a server, but especially multiplayer games is, you never trust the client. You could have a perfectly deterministic game where every action is validated on the server, be defeated by running the game at half speed.

Re: Are We Anti-Cheat Yet?

#10
post #2

I don't know enough about 'real time' netcode for games. However I have read several HN articles over the years so I've got at least a basic understanding. Why can't the servers distrust the clients? What should a 'client side anti cheat' actually prevent? The way I think I'd tackle such things is to have multiple copies of each character model moving in different locations and different ways. Such that trying to spy…

Not trusting the clients and redoing all calculations server-side would require massive processing on the server side. Your idea then multiplies the load on the server.

We do have massive processing on all sides. And the actual processing done for the game stuff is not really that big. Mostly it goes to graphics, sounds and so on.
Post reply on HN