背景
我已经有一段时间困扰玩家在我的Android游戏中作弊了。对于严格的单人游戏而言,这不是什么大问题,但是由于我的游戏包含多人战斗和全局高分榜,因此正当玩家由于作弊而停止游戏。
他们如何作弊
作弊者针对root用户使用名为Gamecih的应用程序。 Gamecih允许用户暂停应用程序,更改变量值,然后继续使用该应用程序。因此,就我而言,他们只是暂停游戏,将“健康状况”更改为74万亿美元,然后将多人游戏中的所有人都丢掉。这是一个video,显示Gamecih如何用于在《水果忍者》(不是我的游戏)中作弊。
考虑的方法
我想要的
可以认为,考虑使用的方法nr 2是我应该使用的方法,但是再说一次,它并不能防止黑客入侵,而只是使其变得更加困难。理想情况下,我想检测人们何时使用Gamecih作弊,显示一个弹出窗口,“告诉您,您是讨厌的黑客”,然后关闭该应用程序。我不希望依赖于服务器的解决方案,因为我希望播放器也能在离线状态下播放。如果可能的话,我也想避免代码混淆。
最佳答案
您可以将生命周期存储在X个变量中,实际值将是它们的总和(始终是动态计算的)。您随机选择要更新的那个。最重要的是,您可以添加一些一致性检查,作弊者很难意识到要进行哪些更改以及如何进行更改。
一致性检查可以是一个简单的规则,例如第1个,第2个和第3个变量按增长顺序排列,第4个最小。可能需要一些人才能使用此工具解决此问题。
Yoy还可以发挥更大的创造力,并在其中添加一些加密方法(您提到的方式)。否则,除非有人拥有您的代码,否则它变得无可比拟。
编辑:添加100个随机变量,这些变量始终随便使用随机名称(或数组中的位置,以使其更容易更改),然后为作弊者寻找合适的人提供好运。并使其具有动态性,因此每次它们都必须再次破解时。