Flash手游《孤膽英雄》獨立開發(fā)者專訪
《孤膽英雄》是一款采用Flash技術開發(fā)的回合制RPG游戲,游戲打包成MRP功能機手機.APK游戲格式。孤膽英雄講述的是一位英雄去追找黃金大盜,在路 途中遇到各種各樣的人物與之戰(zhàn)斗的故事。游戲是以消除+回合制戰(zhàn)斗的模式,通過消除不同的色塊來進行不同攻擊方式,還可以使用技能和魔法。游戲中有不同的 成就需要玩家自己去獲得,通過提交積分可以知道自己的分數(shù)在所有玩家中的游戲排行。
發(fā)布后,得到了5萬左右的功能機用戶下載。目前游戲只完成PVE戰(zhàn)斗模式,未來將加入PVP戰(zhàn)斗模式。
《孤膽英雄》獨立開發(fā)者 葉鑫
葉鑫,目前主要從事webgame開發(fā),AS3前端主程序。4年AS開發(fā)經(jīng)驗,開發(fā)過單機游戲、網(wǎng)頁游戲、SNS社交游戲,以及手機Air游戲,主要以AS開發(fā)游戲。
編程之路
08 年左右,剛剛開始推出開放平臺,那個時候的社交游戲都是文字形式,有些采用JavaScript代碼,葉鑫覺得采用Flash會有更好的表現(xiàn)效果,從那個時起開始學習AS。此前,葉鑫學習Java,雖然兩者開發(fā)方式不同、代碼相似,但開發(fā)思路卻大不一樣。通過多年的磨練,并實戰(zhàn)眾多項目后,幫助葉鑫逐漸健 全知識體系,最終擔任了AS主程的職位。
他表示學習語言或技術并無妙招可言,就是多看資料、多寫代碼、多做項目,他認為將軍不是軍校讀出來的,是戰(zhàn)斗中打出來的。
葉鑫曾獨立開發(fā)過一款Air手機游戲《孤膽英雄》,這款游戲是由他自己策劃、編程,目前下載量過五萬。
讓我們一起走進《孤膽英雄》獨立開發(fā)者、資深AS工程師葉鑫的世界,一同重溫他的開發(fā)之旅。
5件“正確的”事情 幫助游戲順利開發(fā)
1. 戰(zhàn)斗系統(tǒng)流程自動化
回合制戰(zhàn)斗中,人物根據(jù)各自的出手順序發(fā)起攻擊,當某一方受到攻擊后,采取防御,魔法來抵擋對方的攻擊。攻擊方也可以采用技能給對方造成更大的傷害。整個過程都是一氣呵成,自動而成。在游戲設計中需要引入這種流程自動化處理的解決方案。
2. 對象池技術的使用
游戲是根據(jù)消除色塊,然后決定給對方造成什么樣的攻擊,色塊的生成和銷毀非常的頻繁,如果不停的New和delete的話,其實對內存和cpu的要求是非 常高,游戲的性能不夠好,特別是在手機上運行。引入對象池的技術,先生成一定數(shù)量的色塊,需要的時候去里面取,不需要的時候放回到池中,池中的對象數(shù)量不 夠,臨時生成不足的數(shù)量。這樣可以很好的解決上述所提到的問題。
3. 回調函數(shù)的使用
游戲不僅僅是發(fā)布成apk的格式,還發(fā)布成了功能機可以運行的格式。功能開發(fā)環(huán)境不支持監(jiān)聽自己的事件,或者拋出事件這樣的事件模式,方案就是采用回調函數(shù)來處理。
4. 故事情節(jié)的自定義配置
RPG游戲存在很多的人物情節(jié)對話,這些對話文字需要做一個配置文件來定義,在某個關卡需要用到的時候,再調用相關的腳本來執(zhí)行。采用自定義的模式,非常適合以后的更新和增減。
5. 人物動畫的處理
人物的動畫處理是最傷腦筋的地方,要保證游戲整體大小,還要保證游戲的動畫品質,這個是個很煩的地方。采用flash的關鍵幀播放部分動畫,分2個部分來 處理。前面按照幀播放,后面把前面的動畫倒播一次,這樣可以使用更少的圖片,達到動畫效果。后來,我打算采用骨骼動畫來處理,但是功能機不支持,所以沒有 采用骨骼動畫的技術。
游戲上線后,浮現(xiàn)的5個“欠缺”
1. 游戲的策劃不到位
首先游戲是我自己策劃的,程序出身,沒做過策劃的工作。所以游戲做出來之后,玩家看到這樣的題材很有興趣,但是玩下來,很容易就過了關。沒什么道具需要 買,非常的簡單的玩完了這款游戲。PVE關卡總共才15關,實在是太少了。數(shù)值策劃也不到位,有些關卡發(fā)動幾次攻擊就贏了。
2. 道具收費點設計不夠好
玩家通過了第一關,就可以增加很多的屬性值,直接降低了后面關卡的挑戰(zhàn)難度,沒有用戶需要購買道具。道具只有2種,幾個技能道具和魔法道具。游戲的坑沒有挖好,所以沒有人往里面跳。
3. 模塊耦合度過高
開發(fā)的過程比較急,模塊劃分不夠清晰,而且耦合度非常的高,造成后面升級的一些麻煩,甚至是分工合作開發(fā)也關聯(lián)的太深。
4. UI布局不合理,操作流程不簡潔
游戲發(fā)布后,發(fā)給一些朋友去試玩,他們居然不知道怎么個玩,真是失敗了。說明游戲新手導航?jīng)]有做好,UI不夠簡潔。界面堆積的東西太多。
5. 趣味性不夠好
一個非常重要的一點就是,當時我們做游戲有點閉門造車。自己不去玩別人的游戲,只是一心自己在YY,出來的東西,啥不像。其實《孤膽英雄》很像日本的一款 游戲《Puzzle & Dragons》,戰(zhàn)斗模式上很像,那個時候《Puzzle & Dragons》在國內根本沒多少人知道,我就的《孤膽英雄》就發(fā)布了。其實我們在游戲的玩法上借鑒一下卡牌的玩法,說不定《孤膽英雄》就不是現(xiàn)在的《孤 膽英雄》了。
技術與效率
目前,葉鑫主要使用Adobe Flash CS5.5, 用Flash Builder 4.5來做開發(fā)。在采用FB來做AS代碼開發(fā),然后使用Flash cs5.5來做UI, 另外自己開發(fā)一個插件,flash cs5.5的插件(*.mxp)來將ui上的組件通過jsfl一個一個讀取出來,并生成AS代碼,縮短開發(fā)周期。游戲的資源都是通過代碼new出來的,這 樣可以最大化的利用重復的資源和節(jié)省大量的耗費在UI的開發(fā)周期。
他個人非??春肁ir,認為未來網(wǎng)頁游戲開發(fā)者轉向Air開發(fā),勢不可擋。通過Air生成多平臺的原生代碼,是Flash游戲開發(fā)者,僅僅關注Flash 開發(fā)本身,依然采用以前的開發(fā)模式,就可以開發(fā)手機游戲。Stage3D是個很火概念,2012年才出來的東西,涉及很多新的知識,我們flash開發(fā)者 必須跟進adobe公司的腳步。
趣味+創(chuàng)新=用戶
葉鑫最后談到,如果想讓你的游戲吸引更多的用戶,創(chuàng)新、自己的想法是必不可少的,還一切要從趣味性上出發(fā),一定會得到玩家的擁護和喜愛。