点对点游戏的锁步是什么?

时间:2018-09-13 17:17:19

标签: networking game-engine p2p peer

我正在研究游戏的对等网络架构。 我从多个来源了解到,对等模型使人们很容易被黑客入侵。发送有关游戏角色的错误数据,无论是错误的位置还是拥有的健康点数量。

现在我已经读到,使对等网络更加安全的一件事是在游戏中添加一个防作弊系统,该系统可以控制以下内容:某人从点A移到点B的速度有多快,或控制某人的健康点是否没有无故的急剧变化。

我还阅读了有关Lockstep的信息,它被描述为对等网络中所有客户端之间的“握手”,其中客户端承诺不做某些事情,例如“移动得比X快或不移动”。可以跳到高于Y”,然后将其动作与“握手”中设置的规则进行比较。 对我来说,这似乎是一个反作弊系统。

最后我要问的是:对等模型中的Lockstep是什么,它是反作弊系统还是其他东西,以及该系统应放置在对等系统中的什么位置。如果不是所有的玩家计算机都可以在每台玩家计算机中使用它,或者该系统是否可以工作,这个系统应该控制整个游戏还是仅控制其中的一部分?

1 个答案:

答案 0 :(得分:0)

我不小心在谷歌搜索结果中偶然发现了这个问题,我想我不妨在多年后回答。为了后代,你知道:)

Lockstep 不是反作弊系统,它是用于在游戏中实现在线多人游戏的常见 p2p 网络模型之一(尤其是在策略游戏中)。基本概念相当简单:

  1. 游戏模拟分为相当短的时间框架。
  2. 在每一帧之后,玩家从该帧收集输入命令并通过网络发送这些命令
  3. 一旦所有玩家收到所有其他玩家的命令,他们就会在下一个时间范围内将这些命令应用到本地游戏模拟中。
  4. 如果模拟是确定性的(对于锁步工作应该如此),在应用命令后,所有玩家将拥有相同的世界状态。实现确定性权利可以说是最难的部分,尤其是对于跨平台游戏。

作为一个 p2p 模型锁步对于骗子来说本质上是弱的,因为网络中没有可以完全信任的代理。例如,与服务器权威网络模型相反,在这种模型中,开发人员可以信任托管游戏的私有服务器。 Lockstep 本身不提供任何针对作弊者的特殊保护,但它当然可以设计为更少(或更多)容易受到欺骗。

如果有人需要具体的例子,这里有一个古老但仍然 good write-up 的关于帝国时代系列中使用的锁步模型。