Live data from Hacker News

Are We Anti-Cheat Yet?

areweanticheatyet.com

61–70 of 197 posts

Re: Are We Anti-Cheat Yet?

#61

One thing I don't understand and I would really appreciate if someone could explain this to me. Why do we need separate anti-cheat programs? Can't the operating systems simply have an option when creating a process that prevents all operations looking at the memory of the process (and maybe if such a process is about to be launched the user has to explicitly accept that by clicking a button)? Wouldn't that stop almos…

Cheats run on the cheater's machine, not on the other players' machines. Of course the cheater would always click accept because it's not an accident that the cheat is running on their machine.

Re: Are We Anti-Cheat Yet?

#62
post #17

Earlier quoted context omitted.

oh dang you should be a multiplayer engineer. Sounds like with barely even thinking about the problem space you've solved what thousands of extremely talented and knowledgeable engineers never could! Servers very much distrust the client. Obviously. That's literally rule #1. Don't trust the client! Comments like yours are extremely irritating. Please don't behave this way with your co-workers. Anyhow, there's all kin…

It was an honest and inquisitive question, calm down.

His arguing bad solutions in other replies suggests otherwise.

If you want to inquire then inquire. Don’t propose a bad solution as if it was an easy problem that you solved with nary a thought.

Re: Are We Anti-Cheat Yet?

#63
post #42
post #40

Earlier quoted context omitted.

Not delaying UI interaction; though conflict resolution (there are at least two involved clients, each with it's own lagged view of the other, and a server that knows it's own truth) might change the outcome of events. THAT is the part of multiplayer net code I know the least about, mostly because I don't think there is a perfect solution but I am not a subject expert on what works well as an approximation.

Then you have rollbacks and rubberbanding, and UI elements that fired which aren't valid once the physics interactions have resolved serverside. Jt doesn't take much for people to feel like the UI is untrustworthy and “broken”. No game wants to be a jank piece of ass, but theres no good solution here, believe me, we’ve tried.

My understanding is that it's popular now to use rollbacks in fighting games (in combination with delays so the rollback doesn't get too far). Perhaps something like that would be useful, though of course that would depend on the game (and how much data it needs to send between players).

Re: Are We Anti-Cheat Yet?

#64
post #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 t…

I think someday, almost all aimbots will be undetectable by anti-cheat systems.

Thanks to the neural network, we have made enormous progress in the computer vision domain. As a byproduct, it invalidates the method we use to separate machines from humans (the image-based CAPTCHAs).

I guess aimbots will switch to CV-based systems to detect enemies rather than dumping game memory to find the enemy's position. This change will force anti-cheat systems to perform an automated Turing test, which is hard. (Telling the bot and human apart only by watching the replay is much more challenging compared to the above CAPTCHA problem. And we are currently losing at the CAPTCHA frontline, too.)

Re: Are We Anti-Cheat Yet?

#65

Earlier quoted context omitted.

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.

Overwatch does this just fine and deadlock actually.

> deadlock actually how do you know? has there been a technical deep dive published?

Re: Are We Anti-Cheat Yet?

#66

One thing I don't understand and I would really appreciate if someone could explain this to me. Why do we need separate anti-cheat programs? Can't the operating systems simply have an option when creating a process that prevents all operations looking at the memory of the process (and maybe if such a process is about to be launched the user has to explicitly accept that by clicking a button)? Wouldn't that stop almos…

[dead]

Re: Are We Anti-Cheat Yet?

#67

One thing I don't understand and I would really appreciate if someone could explain this to me. Why do we need separate anti-cheat programs? Can't the operating systems simply have an option when creating a process that prevents all operations looking at the memory of the process (and maybe if such a process is about to be launched the user has to explicitly accept that by clicking a button)? Wouldn't that stop almos…

It's like DRM; on some level, the user is using computer how he is supposed to use it - interacting with memory and processor and the programs.

Of course nowadays DRMs are sort of baked-in, so I guess anti-cheats could be too?

Re: Are We Anti-Cheat Yet?

#68

One thing I don't understand and I would really appreciate if someone could explain this to me. Why do we need separate anti-cheat programs? Can't the operating systems simply have an option when creating a process that prevents all operations looking at the memory of the process (and maybe if such a process is about to be launched the user has to explicitly accept that by clicking a button)? Wouldn't that stop almos…

Cheats run on the cheater's machine, not on the other players' machines. Of course the cheater would always click accept because it's not an accident that the cheat is running on their machine.

It's not the cheat that has to be accepted, it is the game. The option prevents the cheats (or any other program) from being able to examine the game's memory.

Re: Are We Anti-Cheat Yet?

#69

One thing I don't understand and I would really appreciate if someone could explain this to me. Why do we need separate anti-cheat programs? Can't the operating systems simply have an option when creating a process that prevents all operations looking at the memory of the process (and maybe if such a process is about to be launched the user has to explicitly accept that by clicking a button)? Wouldn't that stop almos…

Usually cheat programs are employed by the user. So they would of course click accept .

It's not the cheat that has to be accepted, it is the game. The option prevents the cheats (or any other program) from being able to examine the game's memory.

Re: Are We Anti-Cheat Yet?

#70
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…

Then all the cheater would need to do is move close to the area of these ghosts and find out which the real player is. Its also going to be very taxing for the server to create realistic ghost players that move around dynamically.
Post reply on HN