Less fun for non-cheaters Damages your game economy Shortens the lifespan of your game What about offline games?
Make it difficult to cheat Make sure it’s too much trouble to cheat. Encryption White box cryptography Send extra information. Use parallel protocols Honeypot Delayed ban
Types of data: Number of enemies killed Play time Number of clicks Etc.
Handle incorrect data Plain-text highscores Incorrect extra info Incorrect syntax Etc.
When detecting a false submission Show it in the highscore table Only for the cheater Other players don’t see it Cheater thinks he succeded He might stop trying.
Multiple cheating methods available Ban at a random time e.g. between 1-2 weeks after detection What got him caught? Potential danger?
Never trust the client The client might not even be a client Always check some data Performance vs Security Where to do physics?
User can change their game client Usually to gain more information. ▪ Make walls transparent ▪ Make camouflage bright ▪ Make models bigger ▪ Etc. Check hashes of game data files.
A program that plays the game for you. Scripts that send input into the game client Stand-alone programs ▪ Sending packets to the server like the real client Types: Aim bots Player bots Gold/EXP farmers
Bot’s don’t break the game laws They just automate player actions The only thing we can do is detect them And ban them of course!
Traditional approach – CAPTCHA Websites use it, it works great!
Something more user friendly. Detection by behavior Bots act … weird ▪ It’s very hard to exactly simulate human behavior ▪ Especially the movement
Analyze data you already have Position Orientation Etc. Compare bots to humans Define features Train a neural network to detect bots. ????? Profit!
Data we use for our analysis Position Orientation Features ▪ On/off time ▪ Movement speed ▪ Path smoothness, detours, zig-zagness ▪ Rotations 30°, 60°, 90°
Simple learning algorithm 95% detection rate With 200 seconds of game info This %$ works! See Game Bot Detection Based on Avatar Trajectory for the article
Repetitions in path Very few detours Capture position data Make a simplified path Count segment passes Count repeating sub path length Draw conclusions