Thereās one thing bots arenāt very good at: Common sense.
Instead of making a simple ātype the letters that appear in the boxā captcha, you could make a captcha that consists of several trivial yes/no questions to be answered by the player.
For example:
- A player is spamming on the chat to prove his point, is he correct to do so? (Yes/No)
Note that, even question answering is still a topic covered and widely used by machine learning projects. But when the questions include in-game player knowledge and common sense (such as telling if being a scammer is right/wrong), then things start to get really complicated.
The set of questions could consist of 10 questions that a player has to answer every 24h of in game time, with a silly reward in case they get it right. If the bot were to try answering them āby brute forceā (that is, guessing the right answer with 50% chance), there would be a (1/2)^10 = 0.097% chance to get all 10 of them correctly. This means around 1 out of 1000 bots would get through, but still, it would reduce the number of bots by 1000x.
The biggest flaw of this system, however, is that questions can be datamined and have their answers memorized by the bots. This means the questions would have to be updated and changed with certain frequency, which would be a big annoyance to the developers.
EDIT: Special note on the 24h in game time delay between set of questions: The system would have to be prepared for every situation possible before triggering the bot-check. Popping a 10 questions set to answer while youāre in the middle of a boss fight isnāt fun. Things like that would have to be taken into consideration and well thought by the developers.