As I go through this thread I see that YAL's way seems promising!
Cheating is critical only for games where online highscores or achievements are available.
For those you may want to have 'verification' variables along with all important ones.
So you would create a script(s) like:// score_set(value, skip) - changes score // value - new score value // skip - skip verification if (!argument1) if ((score ^ 77) != score_) global.is_cheating = true; score = argument0; score_ = score ^ 77;Replace '^ 77' by calculation of choice - be that division, lengthdir, or checksum.
This method leaves variable(s) well exposed, however you will know if player changed something, and take care - be that shutting the game down, resetting their score, or kicking them out just before the end of game (warning: may cause hate).
But after trying out his example I used Cheat Engine to use code injection on it and deleted the little pieces of code the made the checking and I changed it a will.
after that I think making an anti-hackable game is impossible!(except server-sided games)!