《暗影之枪:战争游戏(Shadowgun War Games)》是一款具有主机级别画质表现的移动端多人FPS。游戏中有各色英雄,如医疗兵Sara、侦察兵Jet、坦克Revenant、狙击手Willow和机枪兵Slade,还包括单人游戏及5v5多人对抗等游戏模式,适合任何水平、类型的玩家游玩。
这款游戏由被誉为“手机上的暴雪公司”——MadfingerGames(狂指游戏)推出。这支拥有100名雇员的独立团队位于捷克共和国布尔诺。自2010年起,团队的口号就是“打造世上最好的移动游戏”,100名团队成员为此倾尽全力。
MADFINGER Games团队照片
2019年,团队的《Shadowgun Legends(暗影之枪:传奇)》赢得了Google Play的最佳画面奖。Madfinger打造的8款游戏累计有2亿6千万下载量,并在《Shadowgun:DeadZone(暗影之枪:死亡区域)》、《Dead Trigger(死亡扳机)》和《UNKILLED(尸行遍野)》中以独特的风格积累起一批忠诚的用户基础。
《暗影之枪:战争游戏》这款游戏基于Unity实时3D创作平台打造,用Multiplay建立游戏主机,不久后还将把Vivox整合进游戏,加入语音聊天的功能。
- Unity开发者工具让团队得以快速地构建原型、迭代和优化
- Multiplay提供了无缝的游戏服务器主机托管服务,可经受大规模的实战考验
- 新的Beta Matchmaker可实现玩家到服务器的亚秒级匹配
十年前,Unity和MADFINGER Games就已开始合作,当时,双方的规模都还比较小,是移动游戏业务的新人。现今,两家公司均得到长足发展,且关系依旧紧密,合作也延伸到了游戏生命周期中的各个关键领域。此前,针对基于Unity创作的《暗影之枪:战争游戏》时的经验与心得,我们对MADFINGER Games进行了一次采访。
MADFINGER Games采访全文
在采访中,Madfinger的CEO与联合创始人Marek Rabas与Unity谈论了团队所面临的挑战,以及Unity的多人游戏工具是如何帮助团队解决疑难的。
Madfinger工作室是一支充满进取心的团队,成员间合作紧密。为了与行业中的对手、甚至是领军级对手竞争,工作室需要尽量精简高效,这样的前提决定了技术的方向。Madfinger的CTO,Miroslav Ondrus表示:“我们根本没时间精力请10个人开发个引擎,再请10个人开发制作工具。相反,我们需要将所有的精力投入到自己的forté(强项)中,即游戏设计和精美画面的制作。”“二十年前,我开始制作游戏的时候,市面上并没有什么第三方引擎,我和朋友们不得不亲手构建、维护引擎。但现在,Unity功能丰富,有超过1000名编程的支持,我们得以专注于游戏开发本身,不必在引擎的构建和维护上花费大把时间了。”Madfinger的COO和CMO,Luciano Alibrandi赞同道:“十年前我们两家在对的时间相遇了,Unity和Madfinger都处于业务增长期。两方专攻的术业可以完美地结合在一起,于是在合适的时机下,我们之间建立起了长期合作关系,而我们此后便专注于擅长的游戏制作领域了。”
为开发团队铸造利剑
那在新游戏的开发确定后,Madfinger是如何将自己的游戏概念活灵活现地呈现出来的呢?
“ProBuilder是一个强大的关卡和资源构建工具,我们使用工具构建了许多关卡和资源的原型,快速地搭建起场景,不同团队可以迅速地修改、迭代,只需Unity就能完成所有工作,不再需要第三方工具,非常方便。”Ondrus也非常喜欢Unity的Animation动画编辑器,尤其是在最新版本中,Curves曲线模式下的Key manipulation关键帧调整功能。动画师可以在Autodesk的MotionBuilder中制作好动画,然后将片段导入,使用该功能同时选取、调整多个关键帧,更改帧的水平位置(即出现时间)或垂直位置(即出现时长)。功能虽小,但它提升了不少的效率。团队还特别青睐另一个功能:baked lighting mode(烘焙光照模式)。据Ondrus所说,功能具有这样两项优点:“即满足我们对游戏低功耗需求的同时,又可以在游戏中营造出精美的画面氛围。”Ondrus非常在意制作出的高清画质在玩家设备上的表现:“我们非常注意移动端的电池耗费问题,所有游戏的性能需要高度优化。为此,我们使用了包括Profiler性能分析器在内的许多Unity工具,查找定位不必要的内存分配和渲染调用,从整体上优化了代码。”此外,还使用了Frame Debugger(帧调试器)和Occlusion Culling(遮挡剔除)来确保游戏体积足够精简,能在任何设备上运行良好。Ondrus还提到了另一个Unity广受欢迎的特性:“对我来说,Unity的多平台支持让事情简单了不少。有了Unity后,我们可以在单个代码库基础上构建一整个游戏,不必再考虑要在哪些移动设备上运行了,只需更改一下设置,运行时的版本就能兼容目标平台。”为新游戏选择主机的组织方式和地点是一个必须面对的问题,选择多种多样,既可以用裸机也可以用云端服务器,每个选择都有各自的优劣。Madfinger将眼光放在了未来,认为像《暗影之枪:战争游戏(Shadowgun War Games)》这样的第一人称射击游戏,点对点(P2P)模式无法满足我们的需求。因此,需要使用专门的服务器来提供平滑、低延迟的体验。
而对主程序员Vladimir Zadrazil(下文称Zadr)来说,这个最佳选择的好处更是显而易见的。“我们希望《暗影之枪:战争游戏》的体验既有趣、又激烈,所以延迟、作弊和过长的匹配队列是不可接受的。幸而,Multiplay方案具有多个云端服务器与可拓展性,玩家不论使用的是何种设备、身处何处,都能有一致的体验。”由于Madfinger希望新游戏能进军电子竞技,所以必须使用专门的服务器,以防止玩家在对抗中作弊。Zadr表示:“在P2P模式中,主机是玩家的设备,所以作弊的可能性会比较大。而在专门的服务器上,我们有更多的主动权,可以轻易施行反作弊对策,如有必要,甚至可以关掉服务器。”
游戏顺畅发布,规模轻松扩展
任何一家工作室都知道,新游戏的发布总是充满了未知的困难,比如总玩家人数会是多少?玩家的位置会在哪?不过,在《暗影之枪:战争游戏》上线时,服务器的扩展非常平滑。Ondrus说:“多亏了Multiplay,我们从未遇到过服务器满载的问题。在正式发布后,玩家开始大量地下载、游玩,而我们能轻易扩展游戏服务器,没有任何玩家需要在游戏队列中长时间等待。”
Zadr则认为,延迟的高低是决定游戏体验好坏的最大因素。“这也是我们决定与Multiplay合作的原因。我们可以专注于游戏制作,还能为他们提供反馈,促进Multiplay技术的进步,造福大家,这是‘双赢’。”Ondrus还认为Unity的支持是提高开发舒适度的关键。“我们与Unity的交流非常的快速、顺畅。比如最近,我就在Slack频道里提了个问题,然后一位洛杉矶的人回复了我,帮我解决了问题。要知道我们之间隔了好多个时区!与Unity合作非常棒。”
用更好的匹配机制提高玩家参与度
对多人游戏来说,玩家能快速地匹配到旗鼓相当的对手是提高游戏体验的关键。Zadr表示:“我们面对的对手绝非等闲之辈,所以我们希望提供最棒的游戏体验,确保玩家能快速进入游戏,与同水平的对手对抗,不然玩家就会头也不回地退游。”在游戏开发时,Ondrus就表示他们在设计可靠的匹配机制。“那时候我们不知道Unity也在制作可扩展的匹配服务,只能亲手尝试,不过在得知Unity也有匹配服务后就直接用了起来。我们只需再加入自己的函数,就大功告成了。”在玩家加入比赛前,游戏客户端(即玩家的手机)会检测其与Multiplay全球数据中心的连接质量,生成服务质量(Quality of Service,QoS)数据。而Madfinger的服务器权威统计服务会搜集玩家的统计数据,防止作弊。这两种数据会与匹配设定一道,上传到匹配系统中区。匹配系统会根据Madfinger自己的匹配函数来快速搜寻比赛。整个流程几秒内即可完成。Multiplay的匹配服务还带有可拓展的多重云端服务器,玩家不仅能加入对的比赛,还能连接上速度最快的服务器。
用Vivox让玩家轻松交流
在现今的多人游戏中,实时的沟通对战斗结果有着非常关键的影响。语音通话可以让玩家们讨论队伍的目标和策略,提高组织性,是改善游戏体验重要的一环。
Madfinger在《暗影之枪:战争游戏》中初次使用了Vivox。整个流程非常简单,团队只花了两天时间研究了Vivox的SDK,就完成了功能整合。Ondrus说:“我们虽然遇到了一点小问题,但总体流程还是非常简单、轻松的。”如今Vivox负责游戏里所有的语音通话,而Madfinger也打算在不久后将其整合到《暗影之枪:战争游戏》中。如此一来,团队就能加快开发流程,专注于提高玩家参与度。Ondrus补充道:“Vivox团队提供24/7的服务,我们在遇到服务故障或者bug什么的问题时并不会有太大的压力,可以随时与Vivox团队联系,寻求帮助。”为了完善游戏内的聊天系统,团队还加入了emoji,并且计划在将来加入文本聊天功能。
Madfinger的未来计划是什么?
Ondrus表示:“我们非常高兴《暗影之枪:战争游戏》能成功上线。游戏能满足所有玩家的口味,不论是单排还是高水平的战队。随着玩家数量的增长,我们会考虑进军电子竞技。”这一点都不让人意外,毕竟,这家雄心勃勃的工作室在移动游戏领域一直都能超常发挥。
《暗影之枪:战争游戏》现已上线App Store,感兴趣的小伙伴下载体验这款基于Unity的具备高画质,较高流畅性的5V5模式战争游戏吧。未来,我们将继续为大家推荐使用Unity创作的优秀作品,分享Made with Unity的创作经验,让优秀的开发知识落地到更多开发者的实践中,共同见证基于Unity引擎开发的精彩世界。Unity Learn Premium旨在为广大开发者、创作者提供更为广泛、更为全面、更有针对性的学习资源。成为Premium用户之后,将能够获得Unity与Pluralsight合作的明星系列课程《持剑勇士》开发(Unity Game Dev Course)、Unity与Oculus合作的VR课程《Design, Develop, and Deploy for VR》等优质学习内容。
针对大中华区用户,Unity Learn Premium 4个月免费使用权益将持续至5月底。