A Solution to Online Game Cheating
Cheating in online games has become a problem, which makes the games less fun for those who are playing by the rules. Games companies have introduced a number of measures to try and combat this but these have often revolved around verifying the execution environment that the game code runs in. This has introduced difficulties for people who run games in non-standard ways, such when using minority operating systems such as Linux or when using virtual machines as the developer only bothers to support the most common environments in which users run the game. The software the game developers use to detect cheating can also be quite invasive, expecting low level access to the hardware which can introduce security concerns.
An alternative may be to design the online game experience with the expectation that cheating will occur. I read about a clever solution for online chess gaming. Cheating in online chess is an endemic problem as widely accessible chess software is now essentially unbeatable by even the finest of players. Any kid can download a chess computer that can beat a grand master and wipe the floor with everyone in a competition. Cheating can be detected to some extent by comparing a player’s moves against what common chess software would do in the same situation. If the player makes too many “perfect” moves relative to what chess software would do, then they may be suspected of cheating. However, cheating is only ever a suspicion, it cannot be proven absolutely, the player might just genuinely be very good. Banning the player on a suspicion may therefore be unfair.
One solution to this is instead of banning players who might be cheating, to simply pair up players who have a high probability of cheating to play against each other. Therefore cheats end up mostly playing against other cheats, which doesn’t spoil the experience for everyone else who is not cheating. If it turns out the high performing player was not cheating and was just very good, then at least they get a worthy opponent!
Online games might be designed such that players can be segmented by performance metrics. If a player has unusually high performance in the game by some metric, then they will be paired up to play only against other players that have similar unusual performance. For example an online war game may record metrics as to how often a player scores a perfect shot relative to the distance of the target they are shooting against. If the player scores a perfect shot every time, then they may pair up that player in the future to only compete against other players with a similar perfect shot metric. This should eventually cause cheats to gravitate into the same region of the game, leaving the rest of the space available to honest players.