✔ 最佳答案
如何用10天開發一個遊戲APP
圖片參考:
http://media.tumblr.com/tumblr_m85i8uQ7y81rrvgwz.jpg
身為一個獨立遊戲開發者,時常會遇到對遊戲開發有興趣的朋友們對我說,他們也想寫自己的遊戲但總是沒時間。我自己的經驗是:要開發一款好遊戲很難,但開發一款遊戲卻很容易,然而大多數人卻都卡在後者。所以我自己做了一個實驗,測試開發一款遊戲所需要多久時間。最後的成果是:
成品:iOS APP 遊戲 『海盜尋寶』(英文名稱是 Pirate and Treasure)
總開發時間:10天
總花費:2萬新台幣(不包含我自己的工錢…)
這篇網誌記錄整個開發過程,希望能對獨立遊戲開發同好有所幫助。
第 1 天確立開發目標:1. 必須在一個星期之內完成一款遊戲。2. 必須是個 iOS APP 遊戲。因為我只會寫程式,所以之前的開發流程是先規劃遊戲,等規劃完成之後,美術和音樂等遊戲素材再和其他工作室合作。但這種做法需要密切溝通,有時只是改個小地方,一來一回就是一個禮拜。這次為了趕時間只好捨棄之前的開發流程,想了很久決定先由弱點著手,採用另一種開發方式,那就是:不事先規劃,先蒐集素材再由素材決定遊戲。首先我到圖庫網站隨意瀏覽,看到風格有興趣的圖先記錄下來 (圖庫網站都有light box功能,可以標註喜歡的圖)。然而圖庫最大的問題是缺乏主題,通常圖都只有一張,很難有足夠一系列的圖搭配整體 UI 和遊戲物件。所以我再以有興趣的圖案主題搜尋,即使不是相同作者,但若風格接近也把它記錄下來。最後雖然有幾個主題因為圖案數量不足被捨棄,但終於找到圖案數量足夠的主題:海盜。
第 2~3 天美術的問題算是解決了,再來就是音樂。剛好手邊有兩首之前一款暫停開發遊戲的音樂,加上時間有限我也懶得到音樂網站挑,所以直接使用。素材有了,但問題是素材無法要求修改或追加,所以開發決策變的很簡單,那就是選擇一個遊戲類型,而且只能利用現有素材把遊戲兜出來。一開始想過很多種遊戲類型:角色扮演、機智問答…等等,但都因為遊戲素材不足而作罷。最後終於想到:踩地雷。程式技術部分,因為 Cocos2D 我已經一陣子沒碰了,外加 踩地雷對動作性要求不高,所以決定採用我最熟悉的HTML5 + PhoneGap。開始寫程式! 這個階段因為時間很趕,所以我只要一確定方案可行就直接採用,根本沒有想過比較幾種方案的優缺點。
圖片參考:
http://media.tumblr.com/tumblr_m85hl2JN0W1rrvgwz.png
(一開始的遊戲畫面)
第 4 天因為沒有預設的遊戲規劃,有時反而會在開發過程中因為素材的搭配激發靈感。本來是設計類似 魔法寶石 的玩法,遊戲開始就進入關卡畫面,完成一關之後會直接進入更難的下一關。但在開發過程中,不斷看著關卡背景的尋寶地圖再加上背景音樂,突然覺得如果能在地圖上開著海盜船應該很好玩,衡量開發時間後,立刻改成類似 Puzzle Quest 的遊戲模式,可以在地圖上自由選擇關卡的機制。
另外一個例子就是插旗子。一般採地雷遊戲都可以標註旗子避免誤踩地雷,程式寫完後覺得旗子的圖案很單調,所以改成小海盜的圖,結果後來衍生為小海盜會陣亡,而且海盜人數可以買賣的機制。
圖片參考:
http://media.tumblr.com/tumblr_m85hn0fQnA1rrvgwz.jpg
(這個階段因為還不知道素材是否能搭配,所以圖案都是先套用圖庫網站上面的預覽圖,有很醜的浮水印)。
第 5~7 天遊戲流程大致完成。但圖案還是用預覽圖,而且因為沒有規劃程式很髒亂快要寫不下去了,所以正式購買圖庫的圖,外加決定程式重寫。程式重寫的過程中順便檢討遊戲機制,來不及的直接砍掉,不合理的補強。
第 8~9 天程式重寫終於完成,美術部分也改成正式授權圖案,開始請朋友幫忙測試。這段期間除了修改 Bug 之外,開始進行遊戲拋光(polish)的動作。把一些小圖示加上陰影、簡化流程、加上新手教學…等。另外因為文字數量不多,決定一起發行英文版,開始進行翻譯。雖然因為重寫超過了當初的時程規劃,不過也沒辦法…
圖片參考:
http://media.tumblr.com/tumblr_m85howRB5M1rrvgwz.jpg
(為了Debug,顯示除錯資訊)
第 10 天Bug 總算修完了,並針對試玩的建議調整難易度。終於可以打開 XCode, 用PhoneGap把遊戲包裝成APP。
圖片參考:
http://media.tumblr.com/tumblr_m85hx6QZ1P1rrvgwz.jpg
(最後修改的Bug: 雲會亂飄…)
心得雖然後來發生了因為被測試出無限洗錢密技,急急忙忙修改過重新送審事件,但總體而言這個遊戲一共花了10天完成。大家一定會有疑問:這麼趕的情況下,遊戲品質會好嗎?老實說這次我自己也覺得品質有很大的改善空間,但我還是很肯定這種開發方式,以下是心得:結論這次經驗我學到了很多,而且我相信下一次會表現的更好。也許每個人的狀況不同,但請給自己一個不可思議的時間限制,然後立刻動手。我想不論最後結果如何,都應該會有很多收穫。例如參加料理比賽,人人都覺得自己若端出鮑魚龍蝦就穩贏了,但現實生活中無法每次都有那麼多資源,通常你的材料只有剩菜剩飯,若無法有效利用那就連參賽的機會都沒有。任何事只要有了開始就會有希望。祝大家好運。
圖片參考:
http://media.tumblr.com/tumblr_m85ignr9651rrvgwz.png
若有人要試試 10天之內開發的遊戲品質如何,可以按這裡下載。