gpt4 book ai didi

android - 基于Cocos2dx的离线游戏如何防止时间作弊?

转载 作者:太空狗 更新时间:2023-10-29 13:11:03 25 4
gpt4 key购买 nike

最近在做一款基于Cocos2dx-lua的移动端离线游戏。

我在 Google Play 上找到了一款名为 GameGuardian 的应用程序,它可以设置时间速度。应用程序可能会修改 libc.so 中的方法 gettimeofday()。我尝试了很多 API,例如 os.time()SystemClock.elapsedRealtime(),但都失败了。

有人可以给我一个避免应用程序影响的方法吗?

最佳答案

唯一可靠的方法是让您的应用联系您游戏的服务器以确保时间。许多安卓游戏都是这样做的。 “The Battle Cats”就是一个例子。
比如,您可以在应用启动后立即检查时间有效性,如果没有可用连接,您可以允许在允许的时间内生成资源。例如,距上次确认时间不超过 1 小时。

其他想法可能是检查当前 fps。硬件无法加速,因此当启用 VSync 时,帧将在大致相同的时间内渲染。如果您发现渲染单帧所花费的时间比应有的时间多得多,并且如果它发生在许多帧上,则可能表明存在作弊的可能性。但这不是稳定的解决方案,因为您必须确保您的 fps 通常不会在弱设备上下降,并且它不会告诉您游戏未运行时所花费的时间。

极端情况可能包括完全删除应用程序的状态,如果您发现时间自上次保存的未确认时间后跳回超过 1 小时(以防用户调整 DST 等)。

但通常您无法保护完全离线的游戏免受时间操纵。

关于android - 基于Cocos2dx的离线游戏如何防止时间作弊?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40992853/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com