我们完全沉迷于PlayerUnknown的战场。 这是一款具有竞争力的生存射击游戏,数百名玩家在不断缩小的战场上竞赛,寻找额外的武器和装备,同时互相暗杀直到只有一个幸存者幸免。 当您开始时,您什么都没有。 当你死了,你就出去了。
我们热爱游戏的理念,它不仅是射击技巧,更是一场智慧之战,这是一场纯粹的狩猎战,是《孙子兵法》,它是耐心和对喷雾和祈祷的远见。 视觉效果确实是富有诗意的,数十个人决定在生机勃勃的林地和闪闪发光的钻石死亡圈子包围中的生死攸关的决定。
这也证明我们真的很喜欢互相残杀。
而且我们也想在手机上继续互相残杀。
我们刚刚建立了一个竞争性的生存射击游戏,忠于战场的战术理念,当死亡圈在地图上逼近时,多达16位玩家相互搏斗,在iOS和Android上都以最后一名获胜。
看哪! SSG大逃杀!

我们想看看我们是否能在短短几周内制作出高质量的游戏,重点在于避免其他移动大逃杀尝试的不必要的复杂性,使用户界面混乱,并避免获胜者成为拥有最佳wifi的人时间。
多亏了Unity Engine,它支持的SDK和在线支持的水平,我们的生产力才是疯狂的。 我们甚至都不是游戏开发人员,但是这是喜欢javascript的移动开发人员创建Battle Royale的方式。

推动游戏发展
我们使用了跨平台游戏引擎Unity。 使用Unity,您可以仅通过一个代码库为27个平台开发视频游戏。 太奇妙了。
借助令人鼓舞的游戏开发社区为Unity初学者提供免费教程和支持,它为诸如《刺客信条:身份》,《太空堡垒卡拉狄加在线》和《神庙逃亡》之类的大型游戏提供支持,同时又成为独立开发者的天堂。
启用并发游戏
如果用户没有同时进行相同的战斗,那不是一场大逃杀,如果它也不能处理同时运行的多个战斗,这不是一个好游戏。 但是实现这些现场战斗所需的联网方法并不是那么简单。 UNet是Unity的内置客户端-服务器体系结构网络解决方案。 因为它严格使用客户端-服务器体系结构,并且我们不想依赖于托管自己的游戏的客户端,所以我们需要为客户端开发服务器管理器,以查找可用的服务器,以使多个游戏可以同时运行。 因此,我们决定让自己的生活更轻松,并坚持我们擅长的领域。 我们转向Node.js。
我们想出了如何从Unity内部建立到Node.js服务器管理器的WebSocket连接。 然后,Unity服务器将向服务器管理器报告其可用性,以确保在游戏开始之前或达到最大玩家数量时将玩家拒之门外。 命中“播放”的客户端向服务器管理器发送Web请求,服务器管理器向其报告他们可以加入的第一台可用服务器。 我们不习惯这种思维方式,所以这是一个挑战,但最终我们想出了办法。

视觉效果
我们没有专职的设计师来从事该项目,但是有大量宝贵的资源可以在没有任何设计技能的情况下创建一个新世界。 我们将opengameart.org/用于灌木之类的艺术品,并使用Tiled构建了地图:www.mapeditor.org/。
我们最初尝试使用Unity的IMGUI(即时GUI模式)来构建GUI,后来我们发现它是一个过时的旧版GUI系统,但是它不能适应那里的各种移动屏幕。 例如,它无法毫不费力地缩放字体大小。 当诸如散弹枪之类的重要内容传播出来时,没人会花时间进行字体缩放。 因此,我们必须使用Unity基于Canvas的UI系统来重构整个UI来解决此问题。

困难的事情:
看到这个死亡圈子吗? 这是哈阿阿德。 我们必须研究矢量数学,物理学并将结构问题作为图形挑战与编码挑战一样多。
我们设法使用一种z缓冲区深度相机技巧开发了一种解决方案,所以实际上发生的是,观看者正在通过不断减小的球形“镜头”向下观察到下面的精灵和贴图。 就像西方世界,没有不必要的暴力和安东尼·霍普金斯。
但是,开发人员之间最大的冲突在于游戏控制。 它最初以围绕玩家的圆圈开始,各种迭代包括按下并在玩家精灵周围移动手指以瞄准,然后释放开火。 但是,这仅意味着我们用胖手指覆盖了玩家精灵并降低了可见性。 因此,我们选择了双重控制,您可以在此处看到,一个移动,另一个旋转/发射。

惊喜
我们对Unity引擎的强大功能感到震惊。 通过使用大量的SDK,我们能够在几周内创建稳定的视频游戏。 规模最大的公司之一是Google的Firebase,它现在是如此之好,以至于它把竞争对手都淹没了。 我们将其用于注册(身份验证),排行榜和统计信息(实时数据库),分析和推送通知(云消息传递)。
当然,我们对下载量感到满意。 我们根本没有发布过该游戏,但我们平均每天平均下载约30次,并且具有良好的保留和评价。
下次…
当再次尝试这种方法时,我们会研究其他可用于Unity的网络插件,而不是使用Unity自己的网络系统UNet。 时间会证明UNet随着下载量和游戏数量的增长而表现良好,尤其是当游戏开始达到最大容量时,所以这里会有一个问号。
我们认为我们也可能已经改变了视图和艺术风格,通过稍微倾斜角度来获取俯视图,而不是纯粹的俯视图2D。 这对于添加可以提供有限遮盖力的物体(例如灌木丛)更好,这是战术生存射击游戏的重要特征。 在将来的版本中,我们希望添加更多的精灵,例如岩石和房屋,在这里倾斜的角度会更有意义。

我们仍在为游戏开发新的更新,因此,如果您有任何建议和要求,请在此处下载游戏,杀死一些人并告诉我们,以便我们学习如何使游戏变得更糟。
但是接下来要采取的真正有趣的步骤是,将ARkit添加到组合中,并与Unity一起创建AR游戏,以便有一天很快,我们可以在Shoreditch的Ozymandiac反乌托邦中扮演战术生存射击手。
我们一直在开发新项目,并且现在有一些事情 要解决,请 在 Twitter上 关注我们, 以便在我们将其公开展示后立即查看这些新内容。