[quake3] Re: non-cheatable game

Nicolai Hähnle prefect_ at gmx.net
Tue May 15 12:08:52 EDT 2007


On Tuesday 15 May 2007 10:23:59 Tim Angus wrote:
> David Jackson wrote:
> > This is untrue, on many levels.
>
> No, it's entirely true. You can't prevent cheating in online games. You
> can possibly put protection in place which makes it harder to cheat, and
> you can potentially detect when unsophisticated cheats are being used,
> but there is no global panacea that will ever prevent cheating. Get over
> it.

I've always felt it useful classify cheats into different "cheat types" to 
make statements that are more precise than a simple "you can't prevent 
cheating". I prefer a classification into:

1) Game mechanics cheat
This is the kind of cheat that hacks the underlying "physics" part of the 
rules of a game world. Classic examples would be things like god mode, 
flying, increased speed, infinite resources, quicker building speed in RTS 
games, breaking the rules in chess, etc.

2) Knowledge cheat
This kind of cheat reveals some knowledge to the player that is expected to be 
hidden. Examples would include wall hacks, lifting "fog of war" in RTS, 
knowing the resource amounts available to opponents, etc.

3) Skill cheat / Doping
This kind of cheat enhances the player's natural abilities, such as her 
dexterity or problem solving skills. Examples would be aimbots or a chess 
computer that a player uses to calculate her next move.

Game mechanics cheats are easily stopped in client-server architectures (just 
verify everything on the server).

You can make Doping difficult, but you can never stop it completely. Period. 
As somebody mentioned in this thread already, a player could (in the extreme 
case) build a robot that connects to the keyboard and monitor and does the 
playing for him.

Knowledge cheats are a grey area. In theory, they can be stopped entirely in a 
client-server architecture by streaming the entire audio and video output in 
real-time from server to client. However, this is prohibitively expensive, 
and completely undesirable for twitch games due to latency issues that simply 
cannot be solved (speed of light, and all that). So in practice, one has to 
find a reasonable balance in what is exposed to the client.

~Nicolai



More information about the quake3 mailing list