Milestone 如何突破疫情封锁,准时发布 MotoGP™20

想象一下:你在一家游戏工作室开发一个广受欢迎的游戏系列,并到了最后的开发阶段。然后,百年内最为严重的疫情突然袭来,而你所在国家的致病率还位居全球首位,基本上全国人口都处于封控之中。

在这种严峻的情况下,如果你凭第一直觉取消或无限期推迟游戏的上线日期,这完全是可以理解的。但我们此次故事的主人公 —— 意大利 Milestone 工作室,却反其道而行,决定顺应新局势,继续按时推出其广受欢迎的游戏系列新作 MotoGP™20。

那么他们是如何做到的?他们是如何在疫情最严重的时期,在大多数人都居家办公的情况下,依旧顺利完成所有重要的修整工作的?

此次,我们有幸邀请到了 Milestone 的软件开发负责人 Gianluca Barbera 与我们进行了一次深入的交流。他还与我们分享了其团队克服重重挑战的独家妙招及实践经验。

以下就是 Milestone 在疫情期间顺利上线其 AAA 级游戏的 10 大妙招。

1.专注于流程

Gianluca 告诉我们:“按照正常流程工作是成功的关键。”即使在疫情期间,Milestone 也没有改变其游戏开发的计划,只是根据当时的情况进行了相应的调整。更重要的是,他们还开发了一个居家办公的工作流程,让所有开发者都按照这个流程来开展工作。

居家办公流程由 Milestone 各部门的专家共同制定(这些专家是当时唯一前往办公室的人,而其他员工为了保持最佳的社交距离,都已返回各自的家中),他们集思广益,在 2 天内设想了所有可能发生的居家办公场景,并制定了详细的工作流程以及一份可解决潜在问题的联系人名单。总体而言,制定新流程的宗旨在于只改变由于远程办公而需要调整的方面,并同时保证所有工作的完整性。

一旦工作流程建立起来,所有员工都必须遵循流程工作。“即使有疑问,也需要遵循流程,耽误点时间也没有关系。不要试着走捷径,有疑问就去找相关的负责人。”

2.尽可能避免发送电子邮件

使用电子邮件沟通,可能会导致信息延迟和传达有误的情况,Milestone 更倾向于使用 Microsoft Teams,创建 10 人一组的“智能工作”小组,实时解决大家的问题。每个小组都设定了不同的工作范围,并选定了组长,负责领导成员们开展组内讨论。当然,组长也是某一领域的专家。

3.充分发挥现有资源的作用

Milestone 共有 60 多名程序员和大约 100 位开发人员,均需使用 Unreal 引擎,并拥有巨大的代码库(构建和资产创建时间可达数小时的)。加快代码库和着色器的编译速度至关重要,为此,他们作为 IncrediBuild 的客户,将所有办公资源都添加到了 IncrediBuild 的基础设施中。如此一来,每台机器都能成为一台超级计算机,计算网络中的闲置 CPU 中能够无缝地提供数百个内核。最终,Milestone 大幅提升了其构建、着色器编译和其他流程的速度,进而大大缩短了他们在 Windows 和 Linux 系统上开发 PC 版、PS 版、Switch 版、Xbox One 版和 Stadia 版 MotoGP™20 的时间。

4.高效使用 VPN

部分 Milestone 员工(特别是艺术家)非常喜欢把工作带回家中,并常常遇到响应缓慢等与 VPN 有关的问题。在远程办公时,任何延迟都是一场恶梦。如果家庭网络连接不好,VPN 的速度就会更慢。

为此,Milestone 除了升级互联网的基础设施和使用 Perforce 等工具外,还打造了一个“网络流量”系统,以帮助员工实现高速流畅的网络连接。首先,Milestone 员工会尽量避免在高峰期通过办公室的 VPN 上传大量数据。如果实在需要在高峰期上传,他们可以将大型数据合理“分割”,分段上传。或者,他们也可以在午餐时间或晚上等“低流量”时段上传。为了顺利实施这个方法,Milestone 还会持续监测网络流量,并对超过流量限制的员工发出提醒。

5.或者不使用 VPN

在某些情况下,Milestone 还用 FTP 替代了 VPN。由于许多团队分散于不同的项目中,大家需要共享构建,因此,Milestone 没有通过公司网络上传,使 VPN 过载,而是利用 Steam 共享 PC 构建,使用了共享的 FTP。

然而,除了 VPN 和 FTP 之外,还可以选择另一种解决方案。

当前,虽然大多数 AAA 级游戏都支持跨平台联机,但市场上有一款游戏机具有鲜为人知的独特性,可以节省时间,非常适合居家办公时使用。Milestone 的开发人员通过使用 Google Stadia 游戏流媒体平台(了解更多关于 Google Stadia 的信息),以快速地看到整个开发过程中的变化。并且MotoGP™20 也打算在这个平台上发布。

6.实现全面的信息共享

为了确保所有团队成员都遵守工作流程,并了解最新的问题解决办法,Milestone 专门打造了 Confluence,并在其中创建了一个“常见问题”页面,详细介绍了最近遇到的问题及解决办法。例如,当 Milestone 员工居家办公时遇到了有关游戏手柄使用的问题时,或者各种需要修复的游戏漏洞时,团队成员就可以访问这个页面寻求答案。此外,每个构建组件的位置也可以上报到 Confluence 或 Steam 和 Stadia 中,从而方便他人的访问。

7.将自动化尽可能融入工作中

自动化技术可以节省大量的时间和精力。但你知道吗?它对居家办公的贡献更不容小觑。Milestone 的开发人员可以使用自动化技术将任务自动上传到不同的存储空间中。然后他们将上传功能整合到 Jenkins 的构建过程中,这样,每位开发人员就都可以选择是否要将构建自动上传到 Steam 或 FTP。上传完成后他们还会收到一封电子邮件,从而人工操作量,并提高了他们的工作效率。

8.不要停止招聘

疫情期间,Milestone 并没有暂停招聘工作,而是决定继续招贤纳士,还通过远程招聘了新的员工。这些新员工随后可线上入职,并采用上述工作流程开展工作。

9.平衡工作与生活

居家办公时,工作与生活势必“难舍难分”。如果你的办公室在卧室,那么什么时候是你的工作时间?什么时候又是你的生活时间?为了解决这个问题,Milestone 创建了一个明确的工作时间框架,以防止员工过度工作。当然,有时你需要推动这个框架的执行,但不需要每天都为此操心。

10.尽量避免更新软件

只不过更新一下 Windows 软件,这能有什么影响?事实证明,当办公室没有人能够重启受影响的机器时,软件更新可能会造成巨大的“损失”。 因此,Milestone 尽量避免任何不必要的软件升级或更新,以防止破坏系统的稳定性。如果确实需要升级,就得确保办公室里有能处理相关的突发情况的工作人员。

从个人角度来看,当我们与 Gianluca 进行交流时,我们对 Milestone 能够快速地适应新常态、甚至能够在这种充满挑战的时期成功发布高预算游戏的能力感到十分地惊讶。为此,我们要向工作室的全体成员表达诚挚的谢意,感谢他们愿意与整个行业分享他们的经验方法。我们真心地认为,他们的这些妙招可以为许多公司(不仅仅是游戏工作室!)提供帮助,所以如果你也认同这个观点,请分享这篇文章让更多的人看到。

如果您想进一步了解如何加速游戏开发,欢迎下载白皮书!
Milestone 如何突破疫情封锁,准时发布 MotoGP™20_第1张图片

你可能感兴趣的:(C++,游戏开发,Unreal,c++)