移相器是否能够进行大型多人游戏?

时间:2016-08-29 11:20:23

标签: javascript phaser-framework isometric

新手在这里。我正在使用phaser,特别是等距插件。

我想知道是否可以在处理实时多重连接方面创建类似于draw overlay的移相器中的游戏,生成一个包含大约300个玩家的巨大地图,而所有这些都没有对游戏性能影响太大。我真的不知道如何处理多人游戏部分(可能是套接字,node.js),因为它可以很好地工作。至于生成一张非常大的地图,我也很空白。

  • 在移相器中,是否有可能创建一个等距型游戏来处理多个实时多人游戏和巨型地图,这些游戏是在用户到达可见"地图的边缘时生成的?怎么样?
  • 如果没有,我应该选择什么(js和其他应用程序中的游戏引擎)才能达到我的目的?

2 个答案:

答案 0 :(得分:5)

Phaser(至少在其2.0版本中)不适合实施实时游戏网络as explained here

如果您正在寻找Javascript多人游戏引擎,则应该查看专为此目的而编写的Lance。然后,您可以选择一个您选择的渲染器(例如,Pixi.js,如果您的目标是实现类似Agar.io的东西。它与Renderer Phaser使用的相同)

关于PhasedEvolution上面的评论 - 如果您正在进行基于回合制的游戏,Firebase是一个不错的工具。它不适用于实时游戏开发,因为它不允许对任何游戏关键功能进行低级访问,以减轻客户端大小预测,弯曲,插值和外推等延迟。

正确披露:我是Lance的共同创作者之一:)

答案 1 :(得分:4)

你没有问正确的问题,但你已经关闭了!

你的第一个猜测是正确的。你不会使用Phaser处理多人游戏,你可以使用网络套接字,nodejs或其他一些后端。所以Phaser并没有真正限制你在多人游戏方面所能创造的东西,因为没有一个网络代码与Phaser有任何关系。

处理大型地图的想法也取决于您如何优化图形,无论您使用何种平台或框架。例如,如果您有大量或无限的地图,您可以随时只显示屏幕上或屏幕边缘的内容,并使用对象池在玩家移动时显示地图的其余部分。

对于Nodejs中的多人游戏,请查看Socket.io。它真的很容易使用。我已经使用here设置了一个准系统示例。如果您觉得它有用,here's我在Phaser为Ludum Dare制作的一个开源游戏,有网络(这个只有p2p,所以它只能处理连接到每个的2个玩家另外,但就像我说的那样,这只是我使用的多人游戏框架的限制,在本例中是peerjs.com,与Phaser本身无关,它可以处理所有渲染和游戏逻辑需求。)

希望这有助于回答您的一些问题!