小团队开发J2ME游戏的阶段划分

转载自www.j2megame.cn

目前,开发手机游戏的厂商如同雨后春笋般的冒了出来,有大有小,甚至几个朋友在一起就能攒出一个小公司,进行开发。每个公司,也都有“具备自己特色”的开发过程,好一些的,直接套用传统的软件工程的理论,差一些的,也只能闷头苦干了。我在这里想谈的是对于小团队开发游戏的一种高效的开发方法和阶段划分。

  游戏开发的阶段划分,我认为可以划分为5个阶段,叙述如下:

  第一阶段:提案

  这一阶段要做的主要工作是明确要做什么样的游戏,游戏的名称是什么,采用何种表现方式(2D,2.5D,3D等),游戏的卖点(特色)何在,实现在什么样的平台上,人员如何搭配。

  无论是公司还是小团队做游戏的最终目的都是为了盈利,所以做为游戏设计者就应该针对市场来设计游戏,而不能针对个人的喜好而设计游戏。能被大多数人接受的游戏才是一款好游戏,才能更好的盈利。所以在决定做什么游戏之前要先确定主要针对什么样的玩家来做这个游戏,是男孩还是女孩,是老少皆宜还是20多岁的年轻人,这个目标确立了之后才能更好的挖掘这类玩家的心理,使游戏的设计更充分的满足这类玩家心理和精神上的需求,这样游戏才能被更多的玩家接受,团队才能更好的盈利。

  根据已选择针对的玩家群体,就该选择适合这个玩家群体的游戏题材,一个游戏题材的选取也非常重要,一个好的题材有助于设计者表现游戏的特色,使玩家很快的了解游戏背景,游戏能够很容易上手,更好的被玩家接受。有三大类游戏题材比较容易被玩家接受:1发布地区人人皆知的历史或宗教;2与常识相关的;3与某有名的故事或电影相关的。总之,在所选玩家群体大部分玩家都熟悉的题材上做游戏会更容易被玩加接受。

  然后就是有关游戏概念的设计,需要确定的是游戏的类型(例如:RPG、策略、格斗等),游戏的表现方式(例如:2D、2.5D或3D),在什么平台上实现以及游戏的特色。这些问题都要根据团队的技术实力、市场需求的紧迫程度、开发成本等各方面因素来决定。在确定了游戏的类型、表现方式和实现平台之后,就要在这三个条件的限制之下尽可能的发挥策划的创造力,在游戏特色上尽可能的下功夫,并写出两份文档:一份游戏策划案的提纲和一份立项建议书。在策划案提纲中要让技术人员能够看明白游戏需要具有什么样的功能。在立项建议书中要写清游戏针对的人群,游戏类型,游戏表现方式,游戏实现平台,游戏卖点,实现所需的大致时间,以及人员安排。

  完后,招集市场、技术、美工等人员进行集体评审,根据这份立项建议书,客观的评价技术实力,开发周期,市场效应等问题,最终决定是否要做这个游戏。

  这个阶段的工作目标就是确定将要做的是一个能被市场广泛接受的游戏并确保游戏的可行性。一个不能被市场接受的游戏或者根本无法实现的游戏设计在这个阶段都会被否定,或做设计上的修改或放弃做这个游戏。尽可能的减少项目实施以后所要承担的风险。

  第二阶段:设计

  游戏的设计过程中需要策划、程序、美术、市场共同协作完成,一个游戏做得好坏,这个阶段起到了决定性作用,下面将对这四种职责的工作内容分别进行阐述:

  策划:

  根据策划案的提纲进行游戏的详细设计。比如:用什么样的道具,各种物品、角色的名称,游戏用图的尺寸、大小,人物的各种行为、属性、地图或者场景的设计等,可以不用具体的游戏用图,用一些简单的图形表示即可。策划应该先不考虑平台的限制,尽可能的发挥创造力去设计游戏,当游戏设计完之后再根据平台的限制对游戏策划进行修改以达到具有可行性的最终策划案。

  程序:

  根据策划案提纲,完成物理引擎的设计,针对游戏类型和游戏表现方式设计或修改游戏引擎(如果已经有可用的引擎,则可以省去这一步)和游戏开发需要的工具,例如:脚本解析器的设计,地图编辑器的设计等。并完成编码,测试通过,程序中没有灾难性的bug。

  美术:
 
  美术人员需要经常与策划进行沟通,根据策划的描述开始设计游戏中的各种角色、物品、场景的原型并做出原画设计。美术人员应该对游戏中美术部分的设计起主导作用,而不仅仅是像工人一样策划怎么说就怎么做。

  市场:

  市场人员要经常与外界沟通,需要做两件事:1.经常与策划沟通,搜集与项目开发有关的资源;2.关注类似游戏的市场效应。在游戏开发中不一定所有的部分都要自己开发,有些地方也可以用一些别人做好了的东西,例如:在程序部分上,如果在网上能够找到基本满足需求的源代码,完全可以拿过来改一改,这样可以大大提高开发效率;在美术上,对于游戏中不是很重要的元素完全可以找些别人做好的图来改一改,这样也可以提高开发效率。关注市场上已经发行的类似题材的游戏,找到每个游戏的卖点特色和它的营销策略,仔细的分析这些游戏哪里做得好哪里做得不好,问题出在哪里?并完成一份市场调查报告,从市场的角度来审视我们的游戏策划和原画设计,尽可能避免前人犯过的错误。

  这一阶段的工作中,要以策划为中心,四种角色要经常沟通协作才能高质量的完成任务。如果条件允许的话应该由策划主持每天开一次例会,项目组内所有人员都要参与,解决工作中遇到的问题并对新的想法和设计进行讨论评估。

  这一阶段的工作目标:1.游戏引擎基本制作完成;2.站在程序的角度去看策划案,确认这份策划案是可行的;3站在玩家的角度去看策划案和美术设计,确认游戏的设计符合思维逻辑,内容足够丰富,美术设计足够细质;4.站在市场的角度看,与市场上同类型游戏相比要有一定的竞争力。如果游戏不好玩或者品质不够在这个阶段就会被修改完善,根据团队的实力最终确定游戏要达到一个什么样的品质,在下一个阶段就要根据这样的品质来制作游戏。

  第三阶段:实现

  这个阶段的任务主要就是根据策划案来实现游戏,这个阶段的工作量是整个开发周期中最大时间最不好控制的。在游戏开发过程中各职责之间存在着很强的依赖性,工作的时序性很强,如果没有做好开发计划,团队中会经常出现等工的现象,浪费时间。所以,在开始工作之前所有项目相关人员要先开个会,以天为单位做一个详细的开发计划,在开发计划中要对这四种职责分别量化工作内容。工作的时序要安排得当,尽量避免出现等工现象。以下对这四种职责的工作内容分别进行阐述:

  策划:

  在这个阶段策划最主要的工作是做好项目管理。项目管理的工作内容包括:1不断激励开发人员,使团队具有高昂的士气并保持一种和谐的开发气氛;2经常与各部分人员沟通,协调好每个人每天的工作,控制好开发进度;3安排好每天的数据备份,尽可能避免团队的努力因不可抗力而白费;4严格审核美术人员制作的图片和声音,保证达到游戏要求的品质;5协助团队其他人员做一些力所能及的实际工作(例如:用地图编辑器画地图、根据剧情写游戏脚本、制作游戏截屏动画等)。

  策划不但要做好项目管理还要做两件非常重要的事:1随着游戏开发进展不断的审视游戏,及时发现游戏设计的不足,修改策划案但不改变开发计划仍然要按照原策划案继续开发游戏,修改后的策划案在下个阶段用;2编写数值设定初步方案并在游戏中实施此方案。

  程序:

  根据策划案,设计游戏相关的算法(如:AI、碰撞、交易系统等)。做好游戏的版本控制。在初期的设计过程中可能美术的图还没有做好,不过没关系,程序员可以先用一些类似的图形代替,等美工做出图后再替换进去,这样可以节省很多时间。在开发过程中不要写太多的技术问档,技术文档主要的目的是利于开发人员交流,可在一个小团队里每个项目基本上就一个程序员,所以没必要把技术文档写得太繁琐。尽可能把技术文档作为注释体现在程序中,这样既节省时间又有利于程序的阅读。程序员在开发的过程中有可能想到一些对游戏设计有建设性的意见,这时应该及时跟策划讨论,决定是否修改策划案。

  在整个开发过程中程序员应当在技术上起主导作用,除了写好程序外还应当指导美工按照程序的需求做图,指导策划或其他人员用游戏开发工具。

  美术:

  根据策划案的美术需求列表的要求做图和动画,根据声音总表的要求制作声音文件,根据市场人员的要求设计海报和其他宣传品。为了提高游戏品质和开发效率,建议把游戏动画和声音交给专业外包小组来做,由美术和策划人员验收,这个要根据团队的技术实力和经济实力来决定。

  市场:

  制定市场宣传策划,提出需要设计制作的宣传品的列表,交由程序和美术制作。经常与策划沟通,更多的了解游戏内容和游戏的开发进展,以便于决定什么时候开始做宣传,投入多大的宣传力度。如果是一款在市场上比较有竞争力的游戏,当游戏完成alpha版后就可以立刻做一个Demo,联系些客户来看,这个时候可以听取客户的意见,从客户的角度看游戏的不足之处,然后团队开会决定是否根据客户的意见修改策划案。也许这个时候就会有客户决定预定这个游戏了,这个时候就要写合作建议书,合同拟定草案,并维护好与客户之间的合作关系。

  这一阶段的工作中工作量最大的是策划和程序。策划应当对整个游戏的开发有整体的把握,控制好开发进度。程序员要在解决技术问题上起主导作用,尽可能为大量的重复劳动制作工具,简化游戏资源的更换和数值调整,并指导其他人来做这些工作。美工应当在游戏的艺术表现上起主导作用,在这阶段开始的时候没工会很忙,到后期图基本上做完了美工的工作也就轻闲下来了,这时要辅助策划和程序员做些力所能及的工作。市场人员不参与游戏开发,担任的角色是团队对外部的接口,要做好游戏的宣传和销售工作。

  团队至少每周开一次例会,各部分人员在会上总结上一周的工作,并根据实际情况调整工作计划,制定下一周的工作任务。在工作中遇到的问题可以在会上提出来,大家一块儿讨论解决。

  这一阶段的工作目标:1游戏Bata版完成,要求程序无致命BUG;2游戏宣传品设计完成。

  第四阶段:评审

  对游戏进行评审,审核游戏的品质,是否需要修改,再次考虑游戏的可玩性及市场效应。

  考虑是否需要进行再次开发,以提高游戏的品质。比如:游戏的平衡性、数值设定是否合理,游戏用图是否需要修改,是否需要增加或删减某些功能。

  简单来说,就是进一步提高游戏的可玩性,但需要注意的是:要考虑清楚进行再次开发所需要的开发周期,以及人员搭配。

  如果确认进行二次开发,则根据修改要求,重复上一阶段的工作直到达到满意的效果为止。

  如果不需要或者不具备再次开发的条件,则进入下一阶段。

  第五阶段:完成

  进行最终的数值调整,每次调整后都需要进行测试,力争达到消除所有BUG,同时制作产品说明书及相关文档。根据市场需求,制作一些宣传用品,以及一些周边产品,如DEMO(这个DEMO是为了做市场宣传而用的)、手机屏保、PC屏保等,并进行市场宣传。产品上市!

  这里说到的相关文档,包括最终的策划文档,游戏用图列表和游戏用图,以及攻略、使用说明书等周边文档。建议程序的详细设计文档在此阶段进行整理。传统的软件工程中要求在初期编写详细设计文档,是为了开发大型项目,原因是在大型项目开发中,需要多人进行协作去开发一个系统,以确定最终的解决方案,避免由于开发人员的思路不统一,而使项目出现灾难性的错误。如果是中小型项目,完全可以将详细设计文档整合在代码的注释中(要求程序的注释一定要写的非常详细),因为在详细设计阶段,也要牵扯到部分代码的编写,所以从敏捷开发的角度来说,可以在一开始不用编写详细设计文档,而在第五阶段,通过注释,整理出详细设计文档,以提高开发效率。

  以上就是我总结出的小团队游戏开发的5个阶段。我提出的只是一个框架,并不是每一个项目都要完全按照这些内容去做,每一个项目都要根据情况来灵活的确定每一个阶段具体应该做些什么