HTML5游戲移植到iOS平臺(tái)案例分享
(手機(jī)頁(yè)游:《獵魔傭兵》)
1)游戲封包倉(cāng)促上線,產(chǎn)品定價(jià)遭遇冷臉;
項(xiàng)目會(huì)后我們把需求提給技術(shù)人員,起初大家并沒有把這個(gè)事情看的很難,因?yàn)槲覀兊腍TML5游戲引擎完全是自主研發(fā)的,而內(nèi)核采用的是Canvas 和Dom混合模式。我們預(yù)先設(shè)定的方案也是直接在蘋果平臺(tái)上用Xcode進(jìn)行打包,把自己的Javascript腳本,美術(shù)資源和webview組件封裝 在一起。經(jīng)過測(cè)試發(fā)現(xiàn)本地加載讀取是可行的,于是安裝包分分鐘就做好了。很快小編在蘋果商店做好了文字說(shuō)明,截圖以及安裝包上傳。正在為自己的高效工作沾 沾自喜,幾天后蘋果的測(cè)試結(jié)果就打回來(lái)了,拒絕上線,原因卻是游戲中仍保留了一封內(nèi)測(cè)的郵件。
所以不管是游戲內(nèi)部還是游戲描述,千萬(wàn)不要有“內(nèi)測(cè)”啊,test啊,demo啊, beta啊這些字樣,蘋果會(huì)以為你對(duì)用戶不負(fù)責(zé),拿用戶來(lái)測(cè)試你的產(chǎn)品。(可國(guó)內(nèi)的頁(yè)游為了規(guī)避政策不都這么做的嘛 =_=…)很快我們就刪掉了所有相關(guān) 字眼,仔細(xì)檢查后,懷著忐忑的心情,再次提交AppStore。
一周后,杯具繼續(xù)傳來(lái),我們又被拒了。
這次被拒絕的原因是游戲的內(nèi)置付費(fèi)問題。蘋果上網(wǎng)游的內(nèi)置付費(fèi)的道具的標(biāo)價(jià)很重要,單價(jià)千萬(wàn)不要超過99美金。我們的某個(gè)道具單價(jià)為648¥,完全 超過99美金。于是我們被打回,繼續(xù)埋頭修改,將單價(jià)降到 68¥,繼續(xù)提交,虔誠(chéng)的等待結(jié)果。(看來(lái)太過于貪婪真的是禍根呀…囧rg)
可是福不雙至,禍不單行,結(jié)果又被打回。蘋果說(shuō),你的道具一次性售出的總價(jià)也不能超過99美金。這個(gè)怎么理解呢?我們將道具單價(jià)將為 68¥,但是我們?cè)试S用戶一次性購(gòu)買10份,那總價(jià)就是680¥,結(jié)果又毫無(wú)壓力超出99美金。蘋果說(shuō)了,這還是不行啊,總價(jià)也不能超過99美金啊,于是 我們又哼哧哼哧修改,改好提交上去了。(分特,你早怎么不說(shuō)呢。對(duì)于游戲內(nèi)計(jì)費(fèi)的苛刻,蘋果也算是計(jì)較到了極點(diǎn),其實(shí)放在國(guó)內(nèi)的哪個(gè)商店或者平臺(tái)不是都希 望扣用戶錢越多越好呢~)
然后我們就在歡天喜地中又迎來(lái)了第四次被打回。這次依然是付費(fèi)問題。這一次比較小糾結(jié)。上回不是說(shuō)總價(jià)也不能超過99美金嘛,那好辦,當(dāng)用戶購(gòu)買5 份,以及以上的份數(shù),我們都不予他購(gòu)買。這是神馬意思呢,玩家點(diǎn)旁邊那個(gè) 加號(hào),加到5以后,他點(diǎn)購(gòu)買會(huì)沒有反應(yīng),但是加到5之前,都是正常購(gòu)買的。這不是為了響應(yīng)蘋果的號(hào)召,總價(jià)必須低于99美金嘛。但是蘋果又喊停了,為啥 呢?為啥我加到5沒反應(yīng)???這是bug! 既然你不允許玩家買5份,干嘛你又允許玩家加到5呢?于是我們無(wú)言以對(duì),又默默把 5以及 5以上的選擇都取消了,點(diǎn)加號(hào)只能加到4…(哇呀呀,心中無(wú)數(shù)只草泥馬奔騰而過呀~)
2)搬來(lái)高手精研學(xué)習(xí),評(píng)審經(jīng)驗(yàn)互通有無(wú);
接二連三的被打回,讓幾個(gè)老大們真的著急了。眼瞅著就要過年,大家實(shí)在都一籌莫展。實(shí)在不行就去找高手聊聊吧,于是幾個(gè)老大出面,請(qǐng)到了幾位據(jù)說(shuō)是 有著與蘋果豐富斗爭(zhēng)經(jīng)驗(yàn)的大牛來(lái)到公司座談交流。“三個(gè)臭皮匠,頂一個(gè)諸葛亮” 爾后大家針對(duì)我們的游戲產(chǎn)品給出了不少干貨的建議。他們建議關(guān)鍵字的選擇不要涉及版權(quán),建議盡量多的把文字寫在游戲截圖上,建議圖標(biāo)設(shè)計(jì)的需要把握的尺 度,不要貪心一次提交很多版本,同時(shí)也給了第一次接到蘋果審核的拒絕結(jié)果后兩個(gè)小時(shí)應(yīng)該有的反饋…林林總總這里就不一一贅述了。但這讓我想起了曾經(jīng)的高考 前夕,化學(xué)老師曾對(duì)小編說(shuō)過的那些話,七月流火,八月融金,數(shù)百高考判卷老師匯集火爐南京揮汗如雨給百萬(wàn)考生審卷,你們想想如果字跡不工整,卷面不整潔下 場(chǎng)會(huì)是如何?囧rg,我想蘋果的審核大神們估計(jì)也有同感吧。終于在同志們的春天般關(guān)懷下,我們終于把看似完美的包提交了上去,再次忐忑不安的等待著再次表 白的結(jié)果…
3)連受打擊屢敗屢戰(zhàn),咬牙切齒Web拒版;
最最不幸的事情終于發(fā)生了,我們的游戲在春節(jié)前最后一周接到了蘋果的「病危通知書」,他說(shuō)我們的游戲是基于web的游戲,建議我們提交給流量幾乎為 零的WebAppStore,宛如一桶涼水潑下來(lái),從頭到腳,這基本宣判了我們產(chǎn)品的死刑,(T_T)。我懷著沮喪的心情回家度過了難忘的2013年春 節(jié),強(qiáng)顏歡笑,食不知味…
那么后來(lái)我們到底是怎么讓我們的應(yīng)用通過審核上線的呢?
#p#
4)炮竹一聲辭別舊歲,來(lái)年新春路轉(zhuǎn)峰回;
春節(jié)收假后,大家重新回到了公司。心有不甘有木有,各種撞墻有木有,于是老大把項(xiàng)目組的人重新召集到了大會(huì)議室開小諸葛會(huì)。雖然桌上攤滿了各地帶回 來(lái)的特色零食,可是誰(shuí)也沒有心情吃,很快你一言我一語(yǔ)氣氛開始活躍起來(lái),討論目標(biāo)就是如何能讓《獵魔傭兵》正式上線。首先我們檢查了一下之前所碰到的各種 零零碎碎的問題,都可以得到了技術(shù)和產(chǎn)品的全面解決。我們又找到了AppStore上有一部分跟我們類似的原生與網(wǎng)頁(yè)混合打包產(chǎn)品,分析后得出的結(jié)論是, 無(wú)論從畫面,還是用戶操作,投入一些細(xì)節(jié)的設(shè)計(jì)和修改,我們是可以把Webapp產(chǎn)品做到原生的體驗(yàn),同時(shí)也捂臉之前圖快圖省事的想法。一方面我們也覺得 是否在于之前被打回來(lái)的次數(shù)過多,所以蘋果加強(qiáng)了對(duì)我們這款游戲的審核力度,導(dǎo)致最后杯具的結(jié)局。通過分析出這些原因,也就詳細(xì)的擬定了修改的方案,安排 技術(shù)大牛光哥又重新開始了我們的蘋果之旅。
這一次我們大大增加了原生代碼的數(shù)量,將游戲的登錄注冊(cè)選服加載客服等等界面都用原生代碼完成,適當(dāng)?shù)脑黾恿藙?dòng)畫特效,進(jìn)入游戲后,我們替換了底欄菜單和聊天部分,同時(shí)加入了游戲的背景音樂。新完成的安裝包,基本可以說(shuō)原生代碼和網(wǎng)頁(yè)腳本比例達(dá)到了3:7的程度。
最后我們重新注冊(cè)了蘋果賬號(hào),換了個(gè)馬甲,繼續(xù)提交(你懂的)。
結(jié)果很快下來(lái)了,Ready for sale,過了!
5)回首長(zhǎng)嘆經(jīng)驗(yàn)總結(jié),拋磚引玉造福社會(huì);
經(jīng)過這一番折騰,老大讓我總結(jié)一下這次的經(jīng)驗(yàn),不過我一直覺得最大的決定因素還是在于人品,人品值不行的還需要繼續(xù)修煉呀。(*^__^*)
1)蘋果的審核確實(shí)非常盡職盡責(zé),每一個(gè)可能的細(xì)節(jié)都不會(huì)放過。但感覺單機(jī)游戲如果只是下載收費(fèi)要比有內(nèi)置計(jì)費(fèi)的網(wǎng)游容易通過的多,所以網(wǎng)游開發(fā)的同學(xué)們一定要在計(jì)費(fèi)接口部分多下功夫,一定要嚴(yán)格遵守蘋果的規(guī)范呀!
2)在提交時(shí)候,不要貪心同時(shí)提交iPhone和iPad兩個(gè)版本,我們因?yàn)椤东C魔傭兵》是HTML5技術(shù)可以自動(dòng)適配屏幕分辨率于是全機(jī)型打鉤提交上去,結(jié)果被蘋果打回來(lái)的時(shí)候告知完全沒區(qū)別嘛,囧rg
3)HTML5的游戲開發(fā)應(yīng)該盡量使用Canvas來(lái)渲染畫面,而Dom可以用在菜單和一些文字輸入類控件即可。原生代碼則主要用來(lái)制作框架容器和 部分菜單,并且完成游戲進(jìn)入前的界面和各種動(dòng)畫特效,聲音聲效的播放以及對(duì)話框和聊天部分。所有游戲第一次進(jìn)入用到的圖像和聲音等資源打包為bundle 模式,全部放在本地,更多的地圖,副本的圖像聲音資源可以考慮分階段下載。最后我們完成的安裝包大小為33M,便于下載安裝。一句話,多加一些 Native的代碼讓你的HTML5游戲產(chǎn)品制作的更加接近原生體驗(yàn)吧!
4)蘋果對(duì)于Webapp的顧慮可能會(huì)在外鏈,第三方計(jì)費(fèi)控制等問題吧,所以我建議這方面還是老實(shí)一點(diǎn),不耍小聰明,萬(wàn)一上了線亂搞也有可能會(huì)被蘋果踢下來(lái)。因此我們也會(huì)繼續(xù)踏踏實(shí)實(shí)的做好游戲產(chǎn)品,遵守蘋果的規(guī)范,認(rèn)真服務(wù)于玩家。
5)在游戲的打包中我們也可以通過原生代碼不但增加了一鍵登錄同時(shí)也把第三方統(tǒng)計(jì)平臺(tái)加入進(jìn)來(lái),比如友盟,appcpa等等。
不過說(shuō)到這里恐怕會(huì)有不少看官質(zhì)疑,你們干脆用原生開發(fā)多好呀,干嘛非死乞白賴的用HTML5打包呢?我下面就闡述一下我們之所以選用HTML5技術(shù)開發(fā)手機(jī)游戲的理由:
1)用HTML5開發(fā)手機(jī)應(yīng)用和游戲的效率會(huì)稍高一些,成本也會(huì)略有降低。這主要體現(xiàn)在各種智能手機(jī)終端的移植上,我們前端都是javascript工程師,而打包移植的工作有1個(gè)人就可以快速搞定。不需要同時(shí)維護(hù)若干個(gè)團(tuán)隊(duì)和若干個(gè)版本。這是我們android版本下載地址。
2)用HTML5開發(fā),游戲升級(jí)版本更新會(huì)更方便,只要不涉及原生代碼的改動(dòng),我們都可以在后臺(tái)安排腳本更新即可,無(wú)需用戶再去下載安裝覆蓋等麻煩,也減少了因此而帶來(lái)的用戶流失。
3)用HTML5開發(fā)的網(wǎng)頁(yè)游戲跨平臺(tái)的能力較強(qiáng),可以運(yùn)行在PC,平板,手機(jī)等所有支持HTML5的瀏覽器內(nèi),這樣可以讓玩家無(wú)論是在電腦還是手 機(jī)都可以跨平臺(tái)體驗(yàn)游戲的樂趣,從后臺(tái)數(shù)據(jù)看,大部分用戶是愿意接受在不同的時(shí)段使用不同設(shè)備,電腦和手機(jī)來(lái)體驗(yàn)我們的游戲。隨時(shí)可以訪問我們的網(wǎng)站。
4)HTML5開發(fā)手機(jī)應(yīng)用和游戲相對(duì)來(lái)講會(huì)比較安全,由于瀏覽器的限制,我們是無(wú)法讀取用戶的隱私信息或設(shè)置暗扣陷阱。
5)雖然HTML5頁(yè)游有以上的好處,但目前HTML5游戲的市場(chǎng)環(huán)境還并不成熟,很多用戶還是比較習(xí)慣安裝app來(lái)玩游戲的習(xí)慣,所以我們也采用同時(shí)推安裝包和鏈接兩種方式來(lái)盡可能的覆蓋我們的用戶群,因此webapp的推廣方式還是非常靈活的。
我們作為一個(gè)HTML5頁(yè)游的創(chuàng)業(yè)團(tuán)隊(duì)已經(jīng)根植這項(xiàng)技術(shù)3年了,這期間我們從未對(duì)自己的方向有所懷疑,我們也欣喜的看到隨著瀏覽器發(fā)展越來(lái)越成熟, 我們的伙伴也越來(lái)越多,吾道不孤矣。我們也希望通過這篇小文,也帶給跟我們一樣在路上的伙伴們一些鼓勵(lì),一點(diǎn)幫助。加油!最后借此文感謝項(xiàng)目中一直努力奉 獻(xiàn)和付出的大牛光哥,躍強(qiáng),雪冰,高妹,Cae還有小寒,何葉等等同學(xué)們,沒有你們的百折不撓頑強(qiáng)努力,上線是不可能的!