我正在开发一个简单的游戏,但是使用GamePlayer(在Cydia上,cheat-engine
之类),我能够找到,跟踪和修改我的分数。
我想知道如何防止这种欺骗......我试图在它改变时创建一个新的元素实例,例如:
score = Int(score + 1)
我还尝试将var重置为nil并重新分配:
let tmp = score + 1
score = nil
score = tmp
但它不起作用...... 我的第一个问题是:是否可以在swift中更改变量的地址?它会阻止地址跟踪吗?
我的第二个问题是:另一件可行的方法,即对我的分数进行编码,但这是值得的吗?
答案 0 :(得分:0)
您可以将score
变量放在struct
中并使用写时复制。然后,当您更改值时,您将获得score
的新副本。这里描述了可能性以及写时复制的工作原理:copy-on-write
与解决方案相比,您实际上是否加密了它有优缺点的数字。只是其中一些来自我的头脑(我很好奇你的观点是什么)