3

我已经开始开发一个小型多人赛车游戏,显然我们正在使用半条命、雷神之锤和虚幻引擎使用的所有玩家预测、航位推算和延迟补偿技术——但是我们计划在游戏中也有几十辆人工智能汽车.

最初我们决定简单地向所有客户端发送一个随机种子,他们将计算 AI 位置等 - 但是,我们遇到了以下问题:

  1. 所有客户都会收到运行人工智能汽车的种子
  2. 客户端只会收到他们视线内玩家的动作更新
  3. 玩家 A 撞上 NPC 汽车
  4. 玩家 B 进入玩家 A 的框架

现在由于玩家 B 没有收到玩家 A 的移动,他会假设 AI 车仍在正常移动,并且不会计算玩家 A 撞到其中一辆汽车的事实……

长话短说 - 你如何同步受玩家影响的 AI 单位?

4

1 回答 1

1

据推测,您的服务器知道任何冲突。在这种情况下,只需将碰撞结果通知您的所有客户端——本质上是在碰撞点用新的方向、速度、RNG 种子等在客户端上重新播种 AI。

于 2010-12-07T16:33:13.157 回答