我想知道,在我们的游戏中是否有任何方法来检测像游戏卫士这样的速度黑客应用?
我在网上到处搜索,但没有得到令人满意的答案。
发布于 2019-03-27 10:11:55
我为我自己的项目找到了解决方案,即在线多人游戏,它适用于任何在线游戏。
为了解决这个问题,我们需要计算在服务器上的时间。例如,我们可以使用stopwatch并在客户端执行此操作..。在特定的情况下,我们可以通过网络对它们进行比较,如果它们之间有任何区别(比如超过3秒),那么就可以清楚地看到玩家使用的是速度攻击。
我在我的游戏中尝试过这个方法,而且效果很好。
发布于 2018-07-24 13:48:58
解决方案不是更多的软件在顶部。解决方案从一开始就不容易受到影响。
示例:
如果允许用户在世界地图上发送自己的服务器坐标(“我是蓝色播放器,因为我移动了我的全部零花钱,我现在是156/467"),对于某个人来说,写一个远程端口欺骗是微不足道的。只需发送不同的坐标,就可以传送。孩子们玩。
如果您只允许用户向您的服务器发送意向消息(“我是蓝色玩家,我打算向156/467的方向移动我的全部津贴”),并让您的服务器弄清楚这意味着什么(玩家允许移动,他的津贴是多少,蓝色玩家在一个单位的时间内能得到多大程度)并将结果发回,那么您就不会有这个问题。
不要信任客户端输入。游戏安全的第一条规则:,客户端在敌人手中。。
如果你一直信任你的客户,那么把越来越多的软件推到客户端上是没有什么意义的。只需停止和设计你的游戏,这样客户端可以发送意图和服务器决定结果。
发布于 2018-07-24 13:44:39
这取决于你的游戏,但你可以尝试检测速度黑客,只需检查球员的位置每一帧。
Time.deltaTime。它将是框架独立检查,因为您将使用最大允许的距离每秒。
https://stackoverflow.com/questions/51496582
复制相似问题