案例

《Mictlan》开发者总结WP7项目经验教训

  Phyne Games是位于墨西哥城的独立电子游戏工作室。工作室旨在制作表达本土文化的有趣作品。

  《Mictlan》诞生于某家星巴克,当时我和Yahir在此展开讨论,一天下来,钱柜娱乐,我们确定具体目标:制作我们的首款游戏。几个月后,我们完成这款作品。

  在项目开发初始,我们有三点非常明确:制作一款墙面防御游戏,基于“死人节”主题,瞄准手机平台。随后我们选定Windows Phone 7,这是游戏不多的新平台,最重要的是,我们具备制作游戏的工具,无需在此花费金钱。

  我之前有接触过XBox 360Windows的XNA(游戏邦注:实现跨平台的软件工具),我之前在大学的几个项目都是基于XNA,我觉得自己完全有能力在WP7采用同样的技术。如果我们选择iPhone,就需要花时间学习另一种技术。

  XNA采用C#编程语言,我有JAVA背景,所以C#算是个自然跨越。虽然C#遵循高层次的规则,但我们从未在手机平台遇到过严重的运行问题。

  正如iPhone一样,WP7的标准硬件规格让我们能够省下众多时间,无需调节游戏,以适应各种不同的平台。尽管做出承诺,但当《Mictlan》在Marketplace发行时,我们发现法国玩家无法顺利运行游戏(游戏在法国获得的评分是1/5星),有评论称游戏页面过于空白。调查后我们发现,其他开发者也存在相同问题,真是不可思议。

  在《Mictlan》中,XNA和C#堪称完美搭档,而且也几乎是唯一选择(Silverlight是另一选择)。在开发末尾,我们制作出若干基于Unity 3D的原型,我们很喜欢这个引擎,我们考虑未来在自己的iPhone/Android/Web游戏中都采用此引擎。遗憾的是,WP7不支持Unity 3D。

  初次看到《Mictlan》,玩家的反应是:“非常惊人”。在设计游戏时,我们非常清楚,视觉风格必须有墨西哥特色,但不要过于本土化,令外国玩家丧失兴趣。游戏包含许多微妙的墨西哥元素,我的意思是说,并非随处都有Mariachi Sombrero。

  游戏艺术旨在从不同角度和玩家分享死亡的乐趣,这个视角更加活跃、有趣和幽默。主角Luno是普通墨西哥儿童和当代典型儿童的结合体。

  我和Yahir在配合彼此工作安排上遇到很多问题,通常,重要谈话都是在星巴克或午餐时间进行。帮助我们保持联系的一个重要工具是Yammer,这是个免费网站,你可以通过社交网络、私聊信息及发帖之类的传统方式同团队保持联络。我们还通过Yammer上传素材。GTalk和Skyper也是很棒的工具,但我们沟通和分享内容的官方渠道是Yammer。

  我们将GitHub付费账户当作项目的资源库,通过每月支付不到10美元的费用,我们的项目得以安全地保存在云端。我是唯一使用资源库的成员,Yahir和Enrique将素材上传至Yammer,然后我将内容添加至项目中,然后发送至GitHub。重要的是,要记得对项目内容进行备份。

  在开发过程中,我们遇到过缺乏可行性或视觉效果很糟的内容,当出现这种情况时,我们随时都会去除或调整可能给游戏产生消极影响的内容。

  这种态度对于开发团队来说非常重要。之前在学校制作其他项目时,有些成员总是觉得批评具有攻击性,因此选择离开。配备优秀的美工、程序员、设计师和音乐家非常重要。但团队愿意尽自己所能创造出杰出的作品也非常重要。

  我们在有些阶段的工作效率出现下滑。由于学校或工作事务,我们的进展非常缓慢。我们参加了一个Game Jam和若干Super Happy Dev Houses活动,这有效提高我们的积极性。

  这些活动不仅扩宽我们的人脉,还让我们获得有关游戏和编程方面的回馈,他们的意见颇有价值。《Mictlan》通过这些活动得到很大突破。

  大家的一致建议是,你应该多参加这些活动,有很多东西需要共同学习和分享。我知道地下室是个编程的好地方,但和杰出人士接触也能够让我们受益匪浅。

  我们从开发《Mictlan》当中学到的第一点是:不应基于自己在开发初期不具备的设备设计游戏。显然这存在例外情况,例如,如果你瞄准iPhone制作Unity游戏,而手中只有Android设备,你也可以完成测试工作。问题是,你已投入3个月开发内容,但只是在电脑的模拟器上进行测试工作。当收到WP7移动设备,就所制作的内容进行测试时,我们发现多数内容在设备的屏幕上都显得过小,玩法会受到用户手指的影响。所以我们做出系列调整,以解决这些问题。

  拿到手机设备并无法解决所有问题,因为我是唯一能够每天就内容进行测试的成员,Yahir只能够每周测试几次。现在,给开发团队配备足够设备变成优先考虑事项,这样所有人都能够看到游戏。

  非常重要!这一问题在如今《Mictlan》入驻Marketplace后变得越发严峻。当我们发行游戏时,我们坚信自己无需进行宣传,因为这一类型的游戏数目不多。大错特错,虽然这点看起来平淡无奇,但我还是要强调,务必安排人员负责在网站、杂志、twitter和facebook等平台发布消息。

  举个例子,当《Mictlan》投放至marketplace2个月时,只有350位用户下载游戏,随后当我们腾出时间发布游戏相关消息时,1周内就有2500位用户下载这款游戏。

  刚着手《Mictlan》时,我们认为3个月内就能完成项目。这是我们的首个大型项目,我们不知道要如何安排开发时间。最糟的是,我们直到项目结尾才执行不尽人意的计划,因为在取得多次巨大进展后,我们认为自己只需再几个月就能够完成项目。

  现在,我们打算采用若干敏捷开发技巧。我曾在某公司接触了9个月的SCRUM,这定能够给《Mictlan》带来有效帮助。这里,我推荐设计师们阅读两本书,一本是《Agile Game Development with SCRUM》,书中详细论述SCRUM在游戏开发中的应用,另一本是《Practices of an Agile Developer》,书中提供很多宝贵意见,告诉开发者如何多快好省地做事。

  我们的QA工作有些不足,主要集中在项目末尾(游戏邦注:在项目完工前3个月)。朋友、家人和同事都帮我们发现漏洞,进一步就内容做出完善。例如,早先的GUI(图形用户界面)有些令人困惑,所以我们就将特效和新元素添加至hud,旨在让游戏变得更易于理解。

  此外,我们还需要将用户反馈方式设置成自动化模式,因为Marketplace的评论不足以追踪漏洞,也许可以考虑向网站服务发送报告。我正在考虑Get Satisfaction,《Draw Something》也采用这一服务,这将是个可行选择。

  游戏的首个版本过于随意,改变角色行为的方式太少。下个版本将截然不同:游戏平衡方面将包含更多灵活性,这些参数源自XML文件,任何人都能够进行修改。

  我们希望能够在无需安排新人员的情况下完成游戏平衡工作。至少就测试而言,游戏要能够连接至网络服务,检索XML文件,然后通过邮件或其他东西,测试者能够发送反馈信息,我们只需要调整文件数据,重新启动游戏。

  《Mictlan》是我们的首款作品,我们对于玩家的反应非常满意,其中包含很多正面反馈,对此我们非常开心,但同时也有许多负面评论,这令我们意识到,我们还需要采取更多举措,方能制作出完美的游戏。

  现在我们变成一个稳固团队,其实我们有邀请外部人员加入。我们对于未来发展充满期待,我们希望尝试新东西。基于我们积累的经验,我们非常期待采取下步举措,着手更大规模的项目。

  个人来说,我想要邀请若干墨西哥游戏开发同伴分享他们的经验,这样我们就不会犯下相同错误。墨西哥有很多杰出人才,现在大家是时候该团结起来了。(