The techniques they use will always be a little secret-sauce, though, because anti-cheat is adversarial. The best public anti-cheat mechanisms I know of are not technical anyway:
- Play with friends or a small community that you trust not to cheat
- Structure the game to remove incentives for cheating. This is the entirety of how daily games like Wordle prevent cheating, but limits how competitive your game can be
- Closely control and monitor the environment in which the game is played. This is sometimes done at the ultra high end of competitive esports: "We provide the computer you will use. You don't have the unsupervised access necessary to install a cheat." The most common version of this, however, is in casinos.
About the only cheat you can really identify is glass-walling, because usually people who do it eventually slip up and aim/shoot perfectly at someone they plainly cannot see.
Oh boy, this absolutely does not work for chess at high levels. Endless debates and arguments.
Like this:
https://www.reddit.com/r/chess/comments/1ctj85n/viih_sou_upd...
A very good player invented a stupid opening and then somehow won a lot of games against top players with it, and chess.com decided he was cheating (without presenting evidence) and banned him. It really seems like he wasn't.
> It sounds like if you want the answers you desire then you'll need to contact a lawyer and figure out if you have any right to them.
What legal recourse would there even be here? Some sort of civil action?
As a private entity, chess.com is within its rights to admit or reject people for any reason it wants, except on the basis of certain protected classes (which cheating is not one of them). Furthermore, the terms of use for an account probably says something to the effect of "we have the right to ban you for whatever reason we feel like, and you have no real recourse." One could still attempt to sue, but the almost certain result is to flush tens of thousands of dollars in the toilet just to get thrown out on the motion to dismiss for lack of a case.
Magnus himself said this. If he were to cheat, he'd only get 1-2 moves per game, and sometimes not even the moves explicitly, but merely the notion that "there is a very good / critical move in this position". That would be statistically impossible to accurately detect.
But it's pretty impossible to point to a single move and say "that's definitely a cheat move".
Cheating still happens.
Then once the game puts you with people closer to your skill level, the best of them feel like they're cheating (and to be clear, some definitely are, but to the people you were stomping you also probably seemed similarly clairvoyant with impossible aim and movement)
Skill based matchmaking is controversial, but the truth is more games have been killed by an infinite loop of skilled players stomping new players so badly that the new players never become skilled players, than the opposite.
It’s all tuned to keep you playing and want that dopamine hit of a win that’s always just around the corner.
At the start of the hand, the rules were announced, and there was a very long wait (10-20 minutes), so everyone had a lot of time to process what was going on.
I was dealt into two of these hands. In one, I raised all in and everyone folded. In another, someone else did this, and everyone except me folded.
That convinced me that almost everyone was a bot. There was no rational explanation for this behaviour.
I can't really blame game developers for giving up on trying to fight cheaters for that reason. In an ideal world they'd be able to dedicate all their time/resources to game content itself giving us more to enjoy instead of having to waste an unreasonable amount of man hours and money on anticheat solutions that are only temporary anyways.
I would hope that we all know that the person who wrote the A* pathfinder code probably isn’t making choices at the product level.
Escape from Tarkov had/has something vaguely similar to this. They'll put a very valuable piece of loot in an inaccessible room under the map or inside a locked car and monitor which accounts pick it up. I think Call of Duty warzone did it as well with the fake enemies that only accounts suspected of cheating will see
This tends to stand out like a sore thumb once you start looking at things from the perspective of the frequency domain. Even if you use an RNG to delay activity, the properties of the RNG itself can be leveraged against it. You may think taping a pencil to a desk fan and having that click the mouse button is being clever wrt undetectable RNG, but you must realize that the power grid runs at 50/60hz and induction motors are ~fixed to this frequency.
There is also the entire space of correlation. A bot running on random pixel events with perfectly human response times, while appearing "random", is not correlated with anything meaningful outside that one pixel being monitored. You could check for what are effectively [near] causality violations to determine the probability that the player is actually human.
I’ve thought that trying to make a bot for personal fishing use would be a delightfully fun project, and this is how I pondered evading such anti-cheat heuristics.
> A bot running on random pixel events with perfectly human response times, while appearing "random", is not correlated with anything meaningful outside that one pixel being monitored
So would a human who is tunneled-vision at the center of the screen.
The main issue, I guess, is they’ll have lopsided aiming proficiency (due to the boost) vs game knowledge. But that’s basically a crapshoot anyway in mass-market “competitive” gaming.
Games "feed" less skilled players to higher skilled players - just enough that the less skilled players don't ragequit. Higher skilled players don't actually want to play in a lobby full of people their skill. They want a few people their skill, and then a lot of people they can stomp.
<Bitterly laugh-cries in Rocket League>
The chances that the cheater is able to anticipate the statistical state of everything logged server-side is negligible. There is no way to "sandbag" performance on purpose if you don't know how your performance is being measured.
There is also the problem (solution) of sample size. The players' performance in one or ten games is ideally not relevant to the heuristic. There is a threshold that is crossed after hundreds of rounds of dishonest play. Toggling cheats within a match or tournament series would be irrelevant.
Problem is, theres always some difference between valid and invalid target, and if the game knows it, cheat extracts that information and acts "dumb" around those honeypots. It wont shoot targets that the game doesnt render because the bot checks that attribute. It wont loot that honeypot because its in manualy upkept white/blacklist.
Its just another level of cat and mouse game.
Now, good cheat detection won't ban you immediately, it will allow you to build up a novel of sins and then ban so it's difficult to determine what action provoked it. Unfortunately that does mean those people are on the servers for some amount of time.
This information does not necessarily need to be made available to the client. Latency compensation can treat the phantom just like the real deal and the server can silently no-op any related commands (while recording your naughty behavior).