如何在虚幻引擎5中实现基于逻辑的服务器和客户端到服务器的旅行



我正在虚幻引擎中开发一款多人游戏,这里有一个大厅,玩家可以在这里开始并加入。当玩家准备好时,我有一个平台参与者,它是一个触发器,可以检测有多少玩家站在上面,它会增加游戏模式下的int变量(我知道这样做可能不正确,但我已经尝试了很多不同的方法(。在游戏模式的tick函数中,我有一个逻辑,基本上说,如果有两个以上的玩家,从int变量开始,它会启动服务器旅行,但当它启动时,会导致客户端崩溃,主机不会旅行。我如何实现这个逻辑并成功地启动服务器?有人知道吗?谢谢:(

我认为您可以通过在平台蓝图中使用Get Overlapping Actors函数来实现这一点。它获取所有参与者,您可以按类过滤这些参与者,这样您就可以选择Pawns或Player Pawns,然后从它返回的数组中获取元素数量。

另外,您知道RPC和多播吗?如果没有,我建议阅读它们,因为它们是多人游戏的必需品,尤其是如果是使用UE自己的多人支持。

根据角色蓝图中是否是服务器,创建一个服务器/多播RPC,然后从平台蓝图中的玩家Pawn 0(在游戏的特定实例中是客户端的角色(调用它(将其转换为用于角色的任何类(,您将有望获得代码的工作版本。

如果您不了解RPC和复制,并且正在阅读这篇文章,但对任何内容都不了解,我发誓在您阅读它们之后,这将是有意义的。这是一个复杂的概念,尤其是在所有服务器恶作剧的情况下,但这是必要的。

如果你不想打乱你的角色蓝图,你也可以使用接口,但如果不深入细节,就很难解释。

相关内容

  • 没有找到相关文章

最新更新