Having never studied the problem, I can only speculate. I would the checks at run time, and honestly, I'd want a system that rechecks random while you play. Instead of using any information in the file headers, I'd compare the game's variables (weapon stats, map geometry, display configuration) against a known good state on the server. It's not your traditional checksum.Destructionator XIII wrote:Curious, how would you prevent the user from sending a fake checksum or version number that is the expected value while he still cheats?Arrow wrote:You know that the consoles are going to be running the same software, you just need to make sure that the PC version is running using files with matching versions and checksums.
This seems to me to be a great use for DRM technologies, actually, but I can't seem to think of any other way that is reliable, since it all depends on a trusted client as far as I know.
I have feeling Punkbuster does some of this, since it waits until you're ingame, and it can kick based off your configuration variables (such as the FOV parameter in CoD). Its not bullet proof, but it will stop most people. After than, its up to the server admins.