目前,開發手機游戲的廠商如同雨後春筍般的冒了出來,有大有小,甚至幾個朋友在一起就能攢出一個小公司,進行開發。每個公司,也都有“具備自己特色”的開發過程,好一些的,直接套用傳統的軟件工程的理論,差一些的,也只能悶頭苦干了。 我在這裡想談的是對於小團隊開發游戲的一種高效的開發方法和階段劃分。
游戲開發的階段劃分,我認為可以劃分為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個階段。我提出的只是一個框架,並不是每一個項目都要完全按照這些內容去做,每一個項目都要根據情況來靈活的確定每一個階段具體應該做些什麼。