帖子 总积分0

最新动态

版主:

  • 今日发帖数
  • 论坛总发帖数
  • 会员总数

[端游专区] 迷失的巨兽——《星际公民》的坎坷之路(二)

lv.1 发表于 2016-10-25 16:01:37
电梯直达

转自游戏时光,本文译自Kotaku专稿:Inside the Troubled Development of Star Citizen
http://www.kotaku.co.uk/2016/09/23/inside-the-troubled-development-of-star-citizen




外包困境



 那些CIG自己的工作室以外的外包工作室也遇到了很大的问题:与CIG严重缺乏沟通。也就是说,他们犯的许多错误会有时会被漏掉,而开发可能向着错误的方向持续进行数月都无人发现,最后那些错误和方向的修正又要耗费数月。那些外包公司的开发者坦言说那实在令他们困扰不堪。

  2013年,CIG与位于丹佛的Illfonic公司签订外包合同,开发《星际陆战队》模组和《星际公民》所需的第一人称系统。《星际陆战队》是《星际公民》的第一人称部分的多人游戏演示版。和《竞技场指挥官》一样,这成为了一个多人迷你游戏,玩家可以用它来预先体验一下CIG正在开发的最终成品。对CIG来说,这个模组是作为第一人称游戏部分的测试平台存在的。

  《星际陆战队》第一版展示的是一张叫Gold Horizon的地图。这是个位于太空深处的海盗基地,战斗双方要在上面决一胜负。

  我们计划用“环境开发包”来制作飞船和空间站的内部。一个内部员工说,“要做出这种包,你必须使用符合所有艺术风格模块化零件。比如门,无论是用在月球基地还是火星基地里,这些门都必须是同样的规格尺寸。如果你要创作一个全新的环境和新的美术素材,你就必须把它们标准化,模块化,这样在制作其他同样风格的环境时就能直接使用,更加方便高效。”

  CIG想用Illfonic工作室做的环境素材来制作“Gold Horizon空间站”,并以此作为一个环境开发包。可是当CIG把那些素材套入关卡中时,却发现没有一样东西是匹配的——比例尺错了。某匿名者透露说,在Illfonic为Gold Horizon地图忙碌了一年多之后,CIG想让他们推翻重做一遍来满足《42中队》团队的需求。“这他妈算怎么回事。”他抱怨道。

  “我为此一直很困扰。”在我向Roberts问起这类问题时,他回答,“2013年8月,我们召集所有人一起开了个会。我以为我们的沟通顺畅节拍一致,可事实上在一些环节上并非如此,在听说环境设计方面有人抱怨‘这东西匹配不上’后,我这才意识到交流很成问题,这也是缺乏管理的结果。”

  简单来说,他们缺乏一个在错误变得难以挽回之前就去发现它的人和职位。这不仅白白浪费了好几个月的工作,更是得同样花好几个月去修正这个错误。”Illfonic已经参与《星际陆战队》项目近两年了,但像上述这样的问题意味着他们许多工作全白干了,他们做的大部分工作都是由CIG的人返工的。

  Roberts认为,现在这类问题已经基本不存在了。2014年法兰克福工作室开张,这是一个由前Crytek开发者组成的队伍,他们都对上家拖欠数月工资的做法忍无可忍了。CIG终于有了一支属于自己的《星际公民》人才队伍。这也是CIG公司最后的一次大规模扩张——至少目前为止是这样。

  “去年这时候,我们的团队规模已经相当可观了。”Roberts回忆道,“本来我们大量依靠外包,但随着我们自己的制作流程制定、各负责人也各自就位后,外包的优势就越来越小,甚至效率太低了。从此我们的工作内容开始不断从外部向内部转移。”

  在任何情况下,想让数百名从未一起合作过的散兵游勇一起开发一款野心勃勃的游戏都是极其困难的。一切新的工作室都得在磨练队伍和培养文化上花费大量时间,可是CIG的这个阶段是在公众眼皮子底下做的,单单是出钱的就有超过百万人。即便《星际公民》成长的烦恼都已经过去,可造成的不利影响却挥之不去。一些缺乏经验的工作室的效率底下,或者说甚至是帮倒忙,造成了严重的开发延误,并给CIG带来困扰。那段时期里,人员、开发和管理方面的各类问题都在消磨着CIG每个工作室开发者的意志和生命。

  这一切都在消耗大量的时间。对游戏开发来说,时间就是金钱。




捉襟见肘



  2012年Kickstarter上介绍的《星际公民》和现在正在开发的这个游戏已经大不一样了。最早的目标是先做出一个单人战役,而多人游戏世界是作为延展目标存在的。但CIG后来改主意了:不先把单机做完,而是把单机和多人内容并重同时开工。

  除了同事开发《42中队》(原计划的单机模式)和不断在扩大的恒久宇宙外,CIG还在不停地给那些已经放出的模组修正bug和添加新功能。(你在《星际公民》官网能看到每个已经发布的模组的详细信息,但它们充其量都只是游戏中的某些特性的演示而已:比如《竞技场指挥官》就是《星际公民》里多人狗斗的一个迷你演示。)

  许多人告诉我这种开发模式是错误的:CIG将团队和资源分得太散,以至于它在不得不同时维护多个已经放出的模组的同时还得研发游戏本体。

  “聪明人会选择一个接一个问题地去解决,可我们现在每个人都在同时解决所有问题,这样不但事倍功半,浪费钱,还会遇到巨大的技术障碍,导致你需要更多的人去解决。问题的根源从一开始就埋下了,同时做那么多事实在不是什么聪敏的选择。”

  同时制作那么多系统的弊端之一就是CIG工程师力量过于分散。工作室有的许多工程师因为自己手头需要的技术还没做完而只好干等,而负责做那个技术的工程师也在疲于奔命干别的。工程师们的时间被数不清的工作榨干,人手越来越紧张。

  “我们的单机部分需要大量的技术支援,可是全公司三分之二的工程师都被开发在线恒久宇宙的工作占用了。”一个员工回忆。“恒久宇宙是个庞然大物,要建设服务器,要搞定维护支持,还要开发能支撑整个游戏的平台……暴雪当年也是因为这个花了数年的时间才让《魔兽世界》成为可能,然后又花了五六年的时间来确保《魔兽世界》能正常运作。”

  技术开发上的延误导致英国组《42中队》的开发举步维艰,“我们在单机上的开发就像撞到了一堵墙,”一个员工说,“要是我们用的引擎有网络代码,并且支持多玩家联机,那做出一款多人游戏是又快又轻松的。可单人游戏不一样,你还得考虑游戏的节奏,你想让什么事在什么时候发生,剧情什么时候介入,要如何展示它们,还要把这一切都融为一体。没有技术,那就什么都干不了。“当时的单机组撞墙后,几乎无所事事的状态一直在持续,根本望不到头。”

  “我敢说,我们所有人里最头疼的应该是设计师。因为他们没了工程师提供的工具就寸步难行。”Roberts是这么认为的,“工程师们负责开发工具,可技术研发是最不可预测的部分。”美术和设计本来是可以严格按照时间表工作的,可工程师却经常因为某些意外导致延误,那样以来就影响到所有人的进度。“所以设计师经常在那里干等工程师研发,等到了才能继续开工。”

  “这也是为什么我们一直在拼命招募工程师。我们队伍在壮大,但招聘的速度永远赶不上你的计划时间表。不是说我们挑剔,而只是因为太难找到合适的人。”

  从2013到2014年的工程师短缺时期是个无可救药的恶性循环。“一个工作室会在更小的组件上下功夫来“证明”这是一个值得做的东西,”某匿名者解释道,“一旦那个组成功向Chris证明自己的组件很不错,于是就成了一条指令:会有个新组成立去提供支援,让其他的团队人力更加稀缺。”用这个匿名者的话说,这就在各工作室之间形成了一种“权力争夺”的文化。“他们的办事原则就成了‘只要能吸引到Chris的注意,那我们工作室就更有权力。’”

  “一年前,我们的人数要少得多,人力严重不足,人人都感到压力山大。”Roberts承认,“即使是现在,软件开发方面我们还是人手不足,所以我们一直在招聘,只是比以前好点了。以前我们为了有人手同时做多人部分和单机部分,就得拆东墙补西墙,可始终难以为继。现在我们人手总算有了更大的团队,不但能明确分工多人和单人,还有人手做已经发布的模组的维护工作。相比之下,去年实在太难熬了。”

  Robert这段话里还带到了另一个问题:游戏本体的工程师资源经常被调度去解决已经放出的数个模组的问题。

  “玩家对体验版本的需求导致许多顶尖人才都去干那个了。”Roberts说,“要是你单纯把工程师们花在本职工作上的时间累计起来,那其实都不会有什么延误。可我们需要他们不停地抽身去搞定那些已经放出的模组里的问题。”

  “不过,CIG的这种做法其实是有好处的。CIG制作模组时用的都是同一个共享的代码库,所以,为模组开发的工程成果是能直接被工程师运用到游戏的其他地方的。”Erin Robert解释道。这个工作室可以直接调用另一个工作室的成果来继续自己的那一部分工作,所以不会出现美工、设计师或者工程师重复劳动的问题。




另辟蹊径?



  关于《星际公民》这种逐步分模块放出的方式引起了诸多不满,许多人觉得应该学《精英:危机四伏》(Elite Dangerous)那样做。在官方论坛里你可以搜到许多众筹参与者的相关讨论,2016年1月就是一个例子:

  在《星际公民》的Kickstarter众筹结束前不久,Frontier Developments公司创始人兼广受赞誉的经典太空游戏《精英》(Elite)缔造者David Braben,为他那款32年前的作品的续集开始了众筹。Braben承诺的是一款充满庞大星系、空间站、海盗和贸易商人的庞大宇宙世界,玩家可以与朋友一起在里面自由驰骋。顷刻间人们就开始把它和《星际公民》做对比了。


▲《精英:危机四伏》和《星际公民》的比较是自然出现的,而前者最大的优势?它真的做出来了

  《精英:危机四伏》 众筹获得了成功,但除了官网上的预售外,这游戏的预算、众筹扩充目标以及游戏核心的规模都是锁定的。Frontier公司在2014年12月正式发售前还放出了游戏的Beta让玩家测试。在《精英:危机四伏》发售后,Frontier还在不断推出补丁和增加新功能。后来还放出了数款大型资料片。就拿《地平线》资料片来说,它增加了星球着陆功能。尽管《精英:危机四伏》的内容不像《星际公民》计划的那么丰富,可它好歹已经做出来了。可玩,而且好玩,更重要的是,在接下去的几年里它还会不断改进和扩张。



  “那只是一种方法。”在我提起《精英》时Roberts是这么说的,“在我看来,Frontier的做法只是多种办法中的一种,它以最基础、最迷你的形态发售(你只能在游戏里贸易赚钱来升级飞船),和一个20年前的游戏毫无区别。Frontier用的是每次解决一个问题,或者添加一个功能的方法,而我们CIG的做法则是完全另一种尺度上的难度,不可同日而语。”

  “我认为现在就开始把那些技术难点全部解决,要比以后一步步慢慢来要好。”Roberts说,“这么做肯定更难,但对长期来说它能建立一个更好的基础。”在把《星际公民》和《魔兽世界》或《EVE》这样的MMO对比时如是说,“要是最后成功了,那这游戏就能存货相当长的时间,比如十几年。而要做到这一点,就需要一个坚实的基础,为以后的尺度调整、持续维护以及添加新功能提供很大的便利。要是你不提前这么做,你就得在接下去的时间里不断地付出技术成本。”

  Roberts承认在《星际公民》的技术公关的过程中“设计和美术那边的确经历了许多不愉快,度日如年,因为没有技术支撑他们寸步难行,”但他同时坚称,“但接下来你会看到《星际公民》势如破竹的研发提速,因为那些技术壁垒已被攻克。”

  对自己的批评者,Roberts表示:“比赛还没有结束。得等冲破终点线后,再让他们来评判当初的选择是对还是错。 ”




引擎难关



现在回到早先的那个话题:引擎的选择上。多位员工都表示,用一款为第一人称射击游戏打造的引擎来做一个大型多人在线飞行游戏,是个天大的难题。他们甚至坦言,从这点来说,从头开发一款全新的引擎都比这个来的更高效。

  “CIG从头一天开始就遇到了CryEngine的问题,”某员工说,“它对做FPS来说是一款好引擎,可用来做《星际公民》,这简直是找死。”

  很多情况下,重写部分引擎确实是必要的:CryEngine在网络方面的代码是为小规模多人游戏设计的,而非数千人的多人游戏;原生的AI代码也无法支撑《星际公民》那复杂多变的世界的需求;它的渲染系统也是给地球的光照环境设计的,而非为太空。

  但其他方面,有些员工就有点无法理解了。“他们想要一个全新的第一人称系统。你要知道,CryEngine从头到脚就是为第一人称射击游戏而生的,可他们居然在这么一个引擎里愣是又写了一个全新的第一人称系统,”Foundry 42匿名员工抱怨道,“那实在太蠢了,蠢透了。”

  “记得在许多次会议里我们都说‘我们现在有些任务需要第一人称系统来实现。’然后我们发现社区有些会员从我们公布的模组里提取出游戏元素放进CryEngine里,利用它原生的第一人称射击系统做出了一些简单的关卡。那段时期我们的粉丝群体居然能凭他们手头的工具做得比我们还好。我们常叹息,‘就算那不是我们最后会用到的技术,可假如我们能有他们的那些本事,我们起码还能做点像样的东西出来。’可惜我们没有。那时候真是太丢人了。”

  从CryEngine里剔除原生的第一人称系统看起来是个垃圾透顶的决定,但Roberts认为,这对他统一第一和第三人称视角的计划是至关重要的。“绝大多数第一人称游戏里,第一人称看到的两只手的画面,和第三人称时看到的所使用的是完全不是同一套的动画和元素。”他解释道,“这对第一人称游戏,尤其是单机第一人称游戏来说是没问题的。这也是为什么像《孤岛危机》(Crysis)这种游戏的单机战役里的动画和多人游戏中的不一样。《使命召唤》(Call of Duty)也是如此。”

  换句话说,你以第一人称视角看到的动画,与其他玩家从他们角度看你时所看到的,是完全不一样的东西。从下面这个GIF图中你可以看懂Roberts的意思,这是《防火员》(Firewatch)游戏的第三人称视角动画:

  但在《星际公民》里,Roberts想要实现将第一和第三人称的动画和模型融为一体,也就是做到无论你选哪种视角,你看到的自己都是同一副模型和动画。“这是一项很大的技术难关,”他说,“极少有人会这么做,而直接用CryEngine或者虚幻引擎的软件开发工具包也是做不到的。”

  造成延期的一大原因就是对CryEngine的基础性修改:要把32位计算提升到64位。这样做能使引擎在一个巨大开放环境的游戏空间内大大提高追踪一个物体的精确性。原先当CIG尝试在32位的追踪下制作那么大的游戏环境时,问题接连不断。“我们遇到了一大堆麻烦,比如HUD撕裂、飞船会满屏乱跳等等,”Foundry 42的创意总监Nick Elms回忆道。

  “有些技术难点的代价是巨大的,比如定位精确度从32位到64位的转化。这在目前的引擎之下是个大得吓人的工程,”Elms又说,“不过这一技术进展让,我们总算得以把之前我们用来测试《竞技场指挥官》的那个芝麻似的狭小空间,变成了你能自由翱翔的浩瀚太空。不久之前那还是痴人说梦。”

  由于引擎需要做如此大的改动,各工作室也在不断收到新的任务,这意味着大量的工作需要返工。“你已经干完的事又需要改动或者有问题,你就得一遍又一遍返工,”一位员工抱怨道,“这就是为什么你必须在开始制作游戏之前就确定你使用的工具是最终版。”不过他同时承认,“不过这么批评CIG其实是不公平的,因为世界上任何一个游戏工作室都会遇到同样的问题。对我们来说,只是因为游戏的尺度太大,导致需要返工的量也相应得变大了。”

  “我已经尽了全力想办法把这些技术封装成能用的工具,想起码能为自己的工作弄一个概念证明,结果一切都是徒劳。有的人上班什么都不干,那是他不喜欢这工作;有的人喜欢自己的工作,可却什么都干不了,那就是另一回事了。 ”

  这对英国工作室的许多人来说是个不小的冲击,尤其是对这位前TT Fusion员工来说。“我们之前一直是做乐高游戏的,也就是说我们平均每4-6个月就出一款新游戏。”Erin Roberts回忆。“以前在TT的工作完全是另一番景象,我们用的是一款经过千锤百炼的老引擎,在每个游戏开发的前3个月我们甚至不用对它做任何改进。而现在,我们每天都在改引擎,不停拓展它的能力极限来适应新的需求。”

  “某天你来上班,突然发现自己的工作因为引擎问题进行不下去了。这在TT工作过的人眼里简直无法想象。这要发生在TT的话,技术部门会有人被拖出去枪毙的。可在这里,你就得去习惯——进行不下去,你就找点别的事做做,比如拿支笔在纸上搞搞设计什么的。”

  “当时有两个人进公司后,发现不太喜欢在做游戏的时候还得研发新技术,所以就回去继续做乐高游戏了。”Elms回忆道,“他们喜欢用一个现成的完整引擎做游戏,因为这样便于明确自己的目标。”

  虽然Chris Roberts知道这会困扰设计师,但他坚持要他们完成这些工作。“压根就不存在一个能满足我们需求的引擎。”他说,“要是有,我们早买授权了。现在我们必须完全重构。我们的需求是要能让玩家在百万公里的区域内旅行,穷极视野能达到十万公里之外,这些在一个32位引擎里是无法实现的,不论你是用虚幻还是CryEngine或者Unity,都不可能做到。因此重构引擎是无法避免的。你固然可以只用CryEngine引擎现有的那些功能来做出一些东西,用虚幻和Unity也一样,可要想实现我们的计划,那是不可能的。”

  “我不认为要是我当初选择了虚幻4引擎会好些。”Roberts继续说道,“我很清楚有些人对把32位升级为64位引擎的过程十分反感,但我不会回头后悔说‘要是用虚幻引擎该多好啊’。无论选择了什么引擎,我们都必须经历这段过程。多数游戏从业者,包括我们自己公司的人,我们的设计师和美工,都不懂这些,他们只知道手里需要工具。”

  随着预算和规模的增长,一位匿名者觉得CryEngine对整个游戏的意义越来越小。《星际公民》本来是想用50万美元和CryEngine来制作一款怀旧性的《银河飞将》精神续作的,那时候整件事看起来还是相当合理的。可后来钱越来越多,Chris Roberts竟然向媒体做一些空头许诺,可他在许诺前根本没和开发组商量过。我不知道他到底有没有计划,我们只知道他在PAX和其他一些访谈里都做了许多承诺,可当时的开发组根本没有能力实现。”

  “很显然,CryEngine是无法胜任的。”匿名者接着说,“当他们只想用50万美元去做游戏的时候,这引擎还能用。用这点钱你无法做出自己的引擎,但你用一亿美元是可以做到的。要让《星际公民》成为现实,专利技术是必须的。可现在,为了让满足游戏的需要而重写CryEngine,这严重拖慢了整体进度。”

  某匿名者告诉我:“CryEngine的另一个问题是,代码多得让人恶心,而且还有许多历史遗留代码完全无法理解,也没有任何注脚。我们拿那些旧代码怎么办?如果加入我们自己的代码,旧代码会不会产生负面影响?感觉就像是一家工具商店刚被龙卷风席扫过一样混乱,你知道一定能找到一把锤子,可你得在一大堆废墟垃圾里翻找。”

  CryEngine有相当一部分被重写了。比如它的网络组件目前就在被彻底重做。不过并不是每个匿名者都觉得CryEngine是个错误的选择。有人就同意Roberts说的,觉得Unity和虚幻都会产生同样的麻烦问题。CIG应该制作他们自己的引擎,可在项目之初,游戏的尺度还很小,那时候想原创一个引擎是不现实的。

  “我以前做过引擎,在Digital Anvil时我们就从零起步开发了一款引擎, 更早在Origin公司的时期也是如此。”对此,Roberts反驳道,“可这样的话,在我们做出拿得出手的样品之前,起码得耗费两年的时间。《星际公民》起步时我就决定我不想在这上面浪费两年的时间。”

  “我认为人们很容易把事情怪罪到CryEngine头上,就算选了其他两个引擎也一样。如果我们做的只是个FPS游戏,那我们根本不会有眼前这些问题,可我们不是在做FPS。我们众筹到这么一大笔钱也不只是为了做个简单的东西;我们筹到那么多钱是为了开疆拓土。”




产品开发的煎熬



  随着CIG员工的日益增多,他们也开始同时制作《星际公民》中的更多内容,产品开发中的的问题也逐渐暴露出来——不仅仅是研发计划的问题,还有管理和责任委派的问题。过去两年多的时间里,CIG发生了一次跨全公司的结构重组,目的是为了能更顺畅地继续做游戏。

  一些来自不同工作室的匿名者告诉我,《星际公民》研发初期,研发路线图还是很清晰的,可却没能将路线转化为具体任务计划。“如果用里程碑式进度计划的项目管理架构来划分的话,你就能知道这是第一优先级,必须在4周内完成;这是次优先级;那些是第四第五优先级,剩下的可以放弃或者被归入扩展目标里,作为下一个里程碑的内容来处理。”某匿名者说。

  然而那样的计划分级没能成为现实,这就意味着任何任务都可能会是高优先级。“如果一切任务都是优先的,那就等于没有优先级。而要是没有了优先主次,那所有任务就完全没有了完成期限,里程碑式进度计划就失去了意义。”

  第二个问题是:团队野心过大,心高手短,每个月都在给自己添加新的目标。通常,这类失控的现象会被制作人控制住,可在CIG,这问题解决不了:“许多协调者和制作人都没有这种规模的开发经验,所以他们无法评估哪些目标可行,哪些不可行。”某匿名者承认道。

  “要是一位美工、工程师或设计师说‘干这个需要2天’,可实际上会需要一个月,此时制作人会无法自己预估完成时间,而他对任务内容不甚了解,或者他对执行者不熟悉,对他的执行能力和速度都没有一个概念,那他就会说,‘好,你说2天能完成,我记下来。’”

  做《星际公民》这么大规模的游戏,是一桩复杂而细致的差事,没有开发者能独立于其他人各司其职。也就是说,如果一项任务没能按计划的时限完成,那这种延误势必会影响到一连串的人。《星际公民》中的每一艘飞船,都是由一批人合力完成的,从概念美术到3D美术再到技术设计师以及其他各种职能缺一不可。角色、道具、环境等等的制作也都如此。因为这样的流水线问题,有段时期里原本只需3个月的角色模型制作,愣是花了近6个月。

  “还有数不清的文档。”某匿名者说,“实在太多了,就像个他妈的文档数据组成的巨型怪胎,内容互相之间还有矛盾冲突。有的文档是早就作废的,有的是别人早就干完可又被人重做了一遍的。甚至有时候还会有两个人同时在干同一件事,俩人都没意识到有人在跟自己干同一个活儿,最后结果就是他们俩为同一个差事,做出了两个不同的东西。这种事在每个工作室都时有发生。”

  任何游戏开发在开始阶段会有个完美的生产流水线,一般都是在实践中摸索后才建立的。可是用Jones的话说,对CIG来说那是一场完美风暴。我们公司不断在成长,越来越多的新技术,不断增多的工作室。我们要做各种尝试,把一个项目分工到身处不同时区的不同工作室手中,简直谈何容易。

  Roberts告诉我说,快到2014年的时候,他和他弟弟Erin讨论出这么一个结论:“要是再这么硬做下去,恐怕是不行了。”

  兄弟俩回过头,审视公司整体上遇到的产品开发问题,“要是打分的话,英国方面的工作更稳定而有章法,”Chris Roberts回忆道。他仔细观察了Erin是如何运作英国工作室的,意识到他们是多么严格地遵守产品时间表,他们的产品部又是如何时刻紧盯开发部的工作的。尽管Foundry 42是新成立的工作室,但里面的核心成员全部来自TT Fusion。“他们做了那么多乐高游戏……办事超有组织性。”Roberts说,“每6个月就能出一个产品是什么样的效率啊。”


收藏
分享
该帖子暂无评论!
登录