在完全权威的服务器上使用非权威服务器进行多人网络连接的缺点/注意事项/限制是什么?

时间:2018-06-01 04:59:57

标签: unity3d networking server multiplayer

我们的团队正在开发快节奏竞技场FPS 游戏,每场比赛最多10名玩家(5v5)移动平台使用 Unity 。  对于是否使用非权威或完全权威的服务器,我们真的处于两难境地。

非权威方法:每个玩家只是将有关当前位置的快照发送给其他玩家,并且会针对特殊事件(如射击武器或触发爆炸)调用远程过程调用。物理学是在本地模拟的。

考虑使用 Photon Unity Networking(PUN) 来实现此方法,因为成熟的API和主客户端模型高级继电器

权威方法:客户端只需将输入快照发送到专用服务器,然后使用输入模拟游戏,并将游戏状态发送回客户端,客户端只需渲染它。 / p>

考虑使用 Photon Bolt 进行此方法,因为内置 客户端预测延迟补偿,这在使用专用服务器时至关重要。

所以,除了让骗子们很容易破解我的游戏之外,使用非权威服务器而不是权威服务器有什么缺点/局限?移动游戏中是否需要服务器权限?对于我们想要制作的游戏类型,您的推荐是什么?

此外,在专用服务器(无头模式)上运行 Unity实例的开销有多糟糕(或不好)?

谢谢!

1 个答案:

答案 0 :(得分:3)

  

所以,除了让骗子很容易入侵我的游戏之外,还有什么呢   使用非权威服务器的缺点/局限性   权威人士?

去同步是一个相当大的缺点。如果本地模拟的物理不会影响游戏的功能结果,那就没关系了。

然而,例如,如果发射器的火箭轨迹是用物理在本地模拟的,并且它是否会击中另一个玩家也是在当地决定的,那么尽管看似<,你最终会被玩家杀死/ em>没被一个人击中。

在更严重的情况下,您最终可能会遇到在其机器上遇到完全不同的比赛结果的玩家。

  

移动游戏中是否需要服务器权限?

不一定。

  

您对我们尝试过的游戏类型有何建议?   使?

对于多人游戏,通常建议使用权威服务器对重要事件进行计算(例如用子弹击中)。

为防止波动和动作,您需要实施某种形式的插值/预测/航位推算客户端,并在权威服务器回复时进行更正。

  

此外,运行Unity实例的开销有多糟糕(或好)   专用服务器(无头模式)?

我不确定您要比较的开销是多少,但通常Unity实例在没有图形的情况下运行,而在批处理模式下,服务器能够有效地处理10人的多人游戏。