Every Dota 2 player faced a cheater at least once. Recently, their number has increased significantly. Cheaters appear not only in a public games but even on a semi-pro stage. We can no longer be indifferent to this situation, that’s why we started to develop our anti-cheat system.

Try it out and check if you’ve played with cheaters.

At the time of writing this article we analysed approximately 200k matches that were played by about 1 million unique players. Here we share with you some stats and tell how this system works. Further we will tell you how the anti-cheat works and share some stats.

Cheats for Dota 2, are you serious?

There are a lot of them, see this review. For the beginning we have implemented algorithm that detects cheats that could be identified by tracking mouse movements and clicks in replay.

Camera hack

Having enabled this cheat, unprincipled player is able to look at the distant places on a map with less mouse clicks and movement and faster respond to events taking place outside the screen. Note that the wide monitor does not make you a cheater, because the allowed extension of the view only works in width.

This is the most popular cheat, we found its use in 12.24% (sic!) of all matches. Approximately 1.1% of all players abuse this hack and 76% of them play with unacceptable zoom in each game.

6uCbhF4TqD (1).gif
The player clicks outside the standard camera view, an additional click appears. Match ID: 3754671634

We found zoomout (camera distance) in 12.24% of all matches. Unique users with cheats - 1.02%, 76% of them used zoomout in each game.

Automatic creep blocking

Creep blocking is an important technique that allows mid-lane player to farm effectively at the start of the game. But what if the program will instantly click for you in a right place to stop creeps without any of your attention? Obviously, this kind of automatization is unfair.

Good news, there are only 0.1% of players (one of 1000) who use this cheat in public matches, but you can meet cheater in 0.5% of matches (one of 200).

Look at fast clicks to distant points. Match ID: 3754671634

Automatic items dropping

Quick drop and pickup of some items under certain conditions could give your hero additional bonus. For instance, dropping and picking back Arcane Boots having Soul Ring gives the hero 75 freebie mana points, but actually to do so you have to spend a time to move mouse to the inventory bar and return it to the map.

At least 0.035% (350 of one million) players make those actions automatically, without real mouse movement. This adds injustice to 0.328% of matches.

The player automatically throws items from the bag to get an additional bonus from pressing certain items. Match ID: 3730565232

How anti-cheat works

To detect cheating we extracted mouse movements and all the actions player perform on a map from replays. To analyse player behavior we aggregate several statistics like the distance between the mouse position on a screen and the place where the player’s real action was registered. Then we use machine learning technique called anomaly detection: the algorithm learns from a sample of “pure” matches (manually checked by our Dota 2 experts for the absence of cheating) and then able to detect “suspicious” deviations from the norm.

To classify cheating behavior and estimate the accuracy of our detection we asked our experts to review random “suspicious” matches manually and make a strong decision — whether there was cheating or not? Statisticians call this technique an acceptance sampling. According to our current estimates, the detector has less than 3% of false positives (situations when the system erroneously blames player for cheating).

An ideal algorithm is hard to build because of the large number of unique situations. We offer our deepest apologies if your play will fall into those erroneous 3%. If it will, let us know by sending a feedback through “This is wrong” button. As mentioned before, our algorithm learns on the labeled replays. So, the more feedback you will send — the more accurate our anti-cheat will be.

Let’s collaborate

We see a big problem with cheating behavior in public games, but we are not going to wait until #valvefixit. So here’s our offer to the Dota 2 community, tournament platforms and other third-party developers: we are ready to give an access to our closed API for cheat-checking. If you are interested, please contact Kirill Chuvakov <k@gosu.ai>.

We’re going to make Dota 2 great again!

Try it out and check if you’ve played with cheaters.

P.S. follow us in Twitter.