单机游戏如何防止类似八门神器这类的内存修改器的篡改办法

当下由于八门神器这类的存在,好多的单机游戏开发程序员都听蛋疼,今天看到伟哥实现了一个办法。。。。

大体的思路是:

1、实现一个类似与由一个值可以生成唯一的另一个值的函数(类似于C++ 的 std::hash<std::string>)hashFunc

2、本地保存两个相对的成员变量(this->coin, this->hash_coin)

3、每次对 coin赋值总会一起用 hashFunc对 hash_coin来赋值

4、当读取的时候判断 hash_coin 和 hashFunc(this->coin) 的值是否一样,一样的话说明是正常的值,否则为经过篡改过的值

5、当发现某个值经过篡改了,应该还实现一个方法来根据 this->hash_coin 来逆向得到正确的值。。。

原文地址:https://www.cnblogs.com/cg-Yun/p/4074746.html