AFK是國(guó)產(chǎn)的海外熱門手游,自己也是從TapTap上找到這款游戲的,開始因?yàn)槭菄?guó)際服,沒怎么用心玩,不過(guò)入坑之后發(fā)現(xiàn)這款游戲還是挺耐玩的,因?yàn)楫?dāng)年玩過(guò)《刀塔傳奇》,雖然一別五年,改成了豎屏,但是其核心玩法還是原來(lái)的味道。當(dāng)然游戲肯定也會(huì)存在各種問題,以后慢慢和大家細(xì)說(shuō)。
?
本期作為開篇第一期,不想說(shuō)太多的攻略,也不想談氪金問題和肝的問題。主要是想說(shuō)一下,自己為何要玩三個(gè)號(hào),至于公測(cè)時(shí)候要不要在玩一個(gè)號(hào)。
國(guó)際服AFK第一個(gè)號(hào),隨手注冊(cè)的,目前在電腦模擬器上玩,不要問我手機(jī)游戲?yàn)楹卧陔娔X上玩,因?yàn)槠綍r(shí)電腦處理各種事情,偶然沒事的時(shí)候,從后臺(tái)切出來(lái),隨便點(diǎn)點(diǎn),算是換個(gè)心情吧。核心養(yǎng)的就是亡靈的恐虐尸傀-伊索爾德,開始覺得這個(gè)英雄自己大招能夠回血,能坦能輸出,比較不錯(cuò)就一直養(yǎng)著,不過(guò)到了后期就感覺稍微有些乏力。然后有養(yǎng)了流放之矛,增加一些陣容的傷害。當(dāng)然目前還有幾個(gè)英雄也已經(jīng)到史詩(shī)了,打算到了161開始轉(zhuǎn)型用哀慟女妖。
?
因?yàn)槟J饺ド系馁~號(hào)沒有綁定,所以怕哪天卸載后數(shù)據(jù)就沒了,于是重新在手機(jī)上玩了一個(gè)號(hào),綁定了國(guó)際服賬號(hào),這次抽卡運(yùn)氣比較好,前面幾次十連抽,來(lái)了幾個(gè)比較強(qiáng)勢(shì)的英雄,目前用耀光祭司貝琳達(dá)為主核心,耀光之盾和綠蔭使者為輔助,其他會(huì)上賦靈侍女和永恒時(shí)針,陣容成型快,推圖也比較輕松,后期還是會(huì)面對(duì)資源不足的情況,畢竟國(guó)際服沒用氪金。
?
IOS服是在一月四號(hào)開始的,而自己以為安卓要8號(hào)才能玩,錯(cuò)過(guò)了第一天,不過(guò)也沒啥大大影響,畢竟作為養(yǎng)成類游戲慢慢玩就可以。抽到了狂野追獵者和耀光之盾還有蠻血戰(zhàn)神,基本已經(jīng)形成初期陣容,重點(diǎn)培養(yǎng)羊頭,前期真的厲害。接下來(lái)抽幾個(gè)輔助英雄就可以長(zhǎng)期玩下去了,當(dāng)然后期還是要走女妖的。
?
這款游戲的核心就是英雄陣容和資源,要么需要大量的時(shí)間,要么就需要一定的氪金,小編選擇了普通月卡,高級(jí)月卡還在考慮中,而成長(zhǎng)基金性價(jià)比也很高,這些加起來(lái)就有些小貴了,差不多可以在Steam上買款游戲了。
?
如果運(yùn)氣好,前期幾發(fā)十連一發(fā)入魂,拿到核心陣容就可以不用去氪金,如果是感覺有些乏力,可以小氪一下,但并不一定能夠改變命運(yùn),如何合理的搭配資源才是重點(diǎn)。接下來(lái)幾期小編會(huì)和大家分享一些新手前期的攻略以及中后期進(jìn)階玩法,坐等安卓上線吧。
戲葡萄原創(chuàng)專稿,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載
10月28日,在Cocos開發(fā)者大會(huì)(秋季)上,《刀塔傳奇》的主程張振新做了客戶端技術(shù)經(jīng)驗(yàn)分享。他們選擇的是Cocos2d-x結(jié)合小巧高效的Lua,它提高了開發(fā)效率,對(duì)手游面臨的復(fù)雜版本更新問題也頗有助力。
《刀塔傳奇》是張振新與團(tuán)隊(duì)從端游轉(zhuǎn)入手游開發(fā)的第一款產(chǎn)品,在他的演講中,還提到一些眾多初創(chuàng)手游團(tuán)隊(duì)可能都會(huì)遇到的“坑”。
比如:“刀塔傳奇是在win環(huán)境下面開發(fā),早期經(jīng)常碰到一個(gè)問題就是開發(fā)環(huán)境下面功能都o(jì)k,可到版本一發(fā)布,在手機(jī)上面就各種不對(duì),也不知道是哪里錯(cuò)誤。”他們使用錯(cuò)誤信息框的方式來(lái)解決這種調(diào)試問題。
又比如一個(gè)數(shù)據(jù),他們每次用全量包更新,當(dāng)日DAU就會(huì)大概減少10%。優(yōu)化方案是,制作低清版本來(lái)解決包大小的問題,或者在游戲內(nèi)集成下載器,在啟動(dòng)游戲的過(guò)程中,完成全量包的下載和安裝。
更多張振新的分享,見以下整理內(nèi)容。
大家好,我叫張振新,來(lái)自莉莉絲科技,我從2009年開始負(fù)責(zé)PC端游的開發(fā),2013年非常榮幸的進(jìn)入莉莉絲科技,參與了《刀塔傳奇》的開發(fā),這是我開發(fā)的第一款手游,非常的高興。下面給大家分享一下《刀塔傳奇》客戶端技術(shù)經(jīng)驗(yàn)。
首先介紹一下《刀塔傳奇》的一個(gè)客戶端的整個(gè)結(jié)構(gòu),我們?cè)贑ocos2d-x下面分裝了一個(gè)數(shù)據(jù)模塊,一個(gè)是數(shù)據(jù)模塊,還有一個(gè)網(wǎng)絡(luò)模塊,最大的一塊就是業(yè)務(wù)邏輯模塊,里面分UI系統(tǒng)、戰(zhàn)斗系統(tǒng)和事件系統(tǒng),大家玩的游戲都是通過(guò)這些模塊搭建起來(lái)。
我們這個(gè)模塊除了Cocos2dx是在C++層面實(shí)現(xiàn)的,《刀塔傳奇》很大程度上都是通過(guò)Lua實(shí)現(xiàn)的。
Lua是一個(gè)小巧的成本語(yǔ)言,它的設(shè)計(jì)目的是為了嵌入應(yīng)用程序中,從而為應(yīng)用程序提供靈活的擴(kuò)展和定制功能。它有以下幾個(gè)特點(diǎn)。
一個(gè)是輕量級(jí),官方版本只提供了一個(gè)精簡(jiǎn)的核心和最劇本的庫(kù),因此Lua體積小,啟動(dòng)速度快,因此非常適合嵌入在別的程序里。
二是可擴(kuò)展性,Lua并不象其它許多"大而全"的語(yǔ)言那樣,包括很多功能,比如網(wǎng)絡(luò)通訊、圖形界面等。但是Lua提供了非常易于使用的擴(kuò)展接口和機(jī)制:由宿主語(yǔ)言(通常是C或C++)提供這些功能。
三是非常容易上手,而且簡(jiǎn)單靈活,這一點(diǎn)對(duì)用戶有幫助,因?yàn)樗鼘W(xué)習(xí)比較方便,操作靈活。
Lua是一門解釋性語(yǔ)言,沒有編譯和鏈接生產(chǎn)二進(jìn)制代碼的過(guò)程,它是由lua虛擬機(jī)直接解釋執(zhí)行的。開發(fā)中,修改完代碼后,直接運(yùn)行程序即可看見效果。因此可以節(jié)省大量的開發(fā)時(shí)間,項(xiàng)目越大,效果越明顯。
刀塔傳奇支持游戲過(guò)程中動(dòng)態(tài)加載lua代碼,省去重新打開程序的時(shí)間。我們?cè)谀_本層封裝了一個(gè)reload函數(shù),用于在游戲運(yùn)行時(shí)重新加載lua代碼,實(shí)現(xiàn)原理也非常簡(jiǎn)單:先將先前required過(guò)的module從刪除,然后重新require該所有module,相當(dāng)于重新初始化腳本代碼。這樣我們又省去了關(guān)閉和重新打開程序的時(shí)間。刀塔傳奇的UI場(chǎng)景是使用cocos2dx的場(chǎng)景scene,并在腳本層維護(hù)了一個(gè)scene的stack,reload的時(shí)候?qū)⒃鹊膕cene先pop,然后使用reload后的代碼和資源重新創(chuàng)建新的scene,還原原先的場(chǎng)景,省去了重復(fù)操作的時(shí)間。
除了開發(fā)效率,Lua給我們《刀塔傳奇》帶來(lái)的好處就是版本更新。版本更新是手游上市之后的非常重要的環(huán)節(jié),直接影響到手游產(chǎn)品的質(zhì)量。手游版本的更新比PC更加的惡劣,因?yàn)閕OS的AppStore有一段忽長(zhǎng)忽短的審核期,而Andriod更糟糕,渠道眾多,版本分發(fā)流程復(fù)雜。刀塔傳奇在立項(xiàng)的階段就考慮到版本更新的問題,程序的整個(gè)框架也給版本更新帶來(lái)一些便利性。
1) 線上熱更
loadstring:功能非常簡(jiǎn)單,效果非常明顯。先前做PC游戲的時(shí)候,每次發(fā)現(xiàn)線上緊急問題,采取的辦法都是緊急停服,然后出更新包,測(cè)試,發(fā)布,周期長(zhǎng),體驗(yàn)差。曾經(jīng)無(wú)數(shù)次線上緊急問題都是通過(guò)這個(gè)方式修復(fù)
刀塔傳奇在程序啟動(dòng)的時(shí)候,會(huì)從服務(wù)器上面拉一段代碼下來(lái),然后執(zhí)行這段代碼。由于這個(gè)邏輯是在發(fā)生在lua代碼加載之后,于是就可以用拉取下來(lái)的代碼段覆蓋版本里面的lua代碼。
注意:用loadstring只能覆蓋全局域下面能訪問到的函數(shù),從程序設(shè)計(jì)方面來(lái)說(shuō),一個(gè)模塊應(yīng)該對(duì)外暴露盡可能少的接口,但是從線上熱更來(lái)看,應(yīng)該讓全局域下面能訪問到盡可能多的函數(shù),這樣可以提高線上熱更代碼的覆蓋率。
2)游戲內(nèi)更新包
這是刀塔傳奇的常規(guī)更新方式,一般用來(lái)更新大特性版本。更新的內(nèi)容包括lua腳本,美術(shù)資源,策劃資源。由于代碼都是lua腳本,更新完成后,可以通過(guò)重新初始化整個(gè)lua state,達(dá)到更新包在游戲運(yùn)行時(shí)生效。
注意:更新包不能用于解決更新流程之前的bug;當(dāng)一個(gè)版本有連續(xù)幾個(gè)比較大的更新包之后,可以考慮出一個(gè)非強(qiáng)制更新的全量包給到渠道,這樣有助于提高新進(jìn)玩家的轉(zhuǎn)化率。
3)全量包更新
這個(gè)是我們最不愿意采用的版本更新方式,有一些時(shí)候不得不用。比如《刀塔傳奇》剛剛上線的時(shí)候跨服藍(lán)牙堆棧功能。
這邊每個(gè)數(shù)據(jù)跟大家分享一下,每次完整包更新的時(shí)候,當(dāng)日的日活躍大概會(huì)少10多萬(wàn)。它的優(yōu)化方案,制作低清版本,解決包大小的問題,還有一種是在游戲內(nèi)準(zhǔn)備繼承一個(gè)下載器的功能,就是在游戲啟動(dòng)過(guò)程當(dāng)中,跟游戲更新包類似,在游戲啟動(dòng)過(guò)程當(dāng)中完成一個(gè)全量包的下載和安裝,達(dá)到優(yōu)化更新體驗(yàn)的目的。
Lua的開發(fā)者經(jīng)常會(huì)碰到的感覺,就是開發(fā)效率極快,一下子做起來(lái)了,但是維護(hù)特別的困難,其中很重要的原因就是調(diào)試?yán)щy,很難找到bug。
除了常規(guī)的print和log的方法,刀塔傳奇使用lua的debug庫(kù)開發(fā)了一個(gè)DEBUG函數(shù),作用類似ide環(huán)境下面的斷點(diǎn)。該函數(shù)會(huì)先輸出當(dāng)前的調(diào)用堆棧,并進(jìn)入循環(huán)等待用戶輸入調(diào)試語(yǔ)句,在該狀態(tài)下,通過(guò)debug庫(kù)提供的getinfo等函數(shù)可查看指定level堆棧下的local和upvalue。
錯(cuò)誤提示框
我們還做了一個(gè)游戲錯(cuò)誤框,類似這樣的效果圖。我們《刀塔傳奇》是在PC下面開發(fā)的,等版本發(fā)布出來(lái),到Andriod、iOS一跑就各種問題,也不知道出現(xiàn)了什么問題,然后到各種下面去查非常的麻煩。然后我們就在手機(jī)發(fā)布上面去添加了這么一個(gè)框,當(dāng)有錯(cuò)誤的時(shí)候它可以以這個(gè)形式展現(xiàn)過(guò)來(lái),我們?cè)诎l(fā)布內(nèi)部的測(cè)試版方面,我們發(fā)這么一個(gè)框,可以很容易的定位到手機(jī)版本的問題,他們提交的bug單可以讓我們找到錯(cuò)誤的信息,這對(duì)bug來(lái)說(shuō)是很方便的事情。
Snapshot:解決Lua腳本內(nèi)存泄漏
使用lua開發(fā)也會(huì)存在內(nèi)存泄漏的問題,snapshot可以對(duì)當(dāng)前的Lua State做一個(gè)完整的快照,并記錄對(duì)象的引用關(guān)系,我們可以在不同的手機(jī)端對(duì)Lua進(jìn)行兩次快照,通過(guò)兩次的對(duì)比可以的出新增加的內(nèi)存處于何處。
它在第一行做了一個(gè)快照,分配了一個(gè)Test1,然后他又做了一個(gè)S2,這對(duì)我們定位的內(nèi)部發(fā)生了斜路都有很好的解決。特別是對(duì)Lua問題發(fā)生的不太容易發(fā)現(xiàn)的,通過(guò)添加這種方式可以解決。
把性能瓶頸相關(guān)的代碼用C或C++實(shí)現(xiàn)。
為了解決draglist渲染效率低下的問題,添加了可見性裁剪的功能,將不在顯示區(qū)域的item項(xiàng)設(shè)置為不可見。第一版的做法是通過(guò)通過(guò)lua導(dǎo)出接口,在lua層實(shí)現(xiàn)裁剪,確實(shí)減少了draw call的調(diào)用,不過(guò)卻增加了cpu的負(fù)擔(dān),主要是因?yàn)楫a(chǎn)生了大量的lua調(diào)用導(dǎo)出接口原因。第二版就直接在node層面上現(xiàn)實(shí)自動(dòng)裁剪,在visit的函數(shù)里面判斷是否可見。
對(duì)table預(yù)先分配大小,減少rehash。
當(dāng)我們把新的鍵值賦給table的時(shí)候,若數(shù)組和哈希表已經(jīng)滿了,更會(huì)觸發(fā)一個(gè)再哈希(rehash),再哈希的代價(jià)是高昂的,首先會(huì)在內(nèi)存中分配一個(gè)新的長(zhǎng)度的數(shù)組,然后將所有記錄再全部哈希一遍,將原來(lái)的記錄轉(zhuǎn)移到新數(shù)組中。
Lua的創(chuàng)新跟其他的腳本實(shí)現(xiàn)方式不太一樣,它采用了內(nèi)例化的實(shí)現(xiàn)方式,所有的字符串在Lua中都只儲(chǔ)存一份拷貝,并且都以引用的方式保存。這邊可以考慮一下,Lua保存的方式可以用table保存。
我的分享結(jié)束,謝謝大家!
塔傳奇日服上架后,許多玩家玩家就被日服圖鑒上精美的人設(shè)所吸引。國(guó)服有沒有可能使用日服圖鑒呢?現(xiàn)在方法已經(jīng)找到了!小編今天就為大家?guī)?lái)《刀塔傳奇》日服圖鑒替換方法攻略詳解。
刀塔傳奇日服上線了,從玩法來(lái)說(shuō),日服的版本還停留在2.0的階段,沒有挖礦、沒有覺醒。不過(guò)圖鑒這塊,喜歡日系風(fēng)格的相信還是占大多數(shù),許多玩家都想知道有沒有辦法替換掉游戲內(nèi)的圖鑒,在此,小編就詳細(xì)的介紹一下(已經(jīng)會(huì)的還請(qǐng)路過(guò))~~
第一步:你要有一臺(tái)電腦,而且要安裝類似iTools、同步推之類的軟件;
第二步:AppStore搜索SoulClash(別問我為啥,反正日服的游戲,在中國(guó)區(qū)也能下載到);
第三步:用iTools打開設(shè)備,在應(yīng)用中找到SoulClash,點(diǎn)文件共享,進(jìn)入/Library/Caches/3.0.1.2/patch/UI/art/。
選擇你喜歡的圖鑒然后導(dǎo)出。
第四步:對(duì)IOS而言,用工具打開刀塔傳奇,找到文件夾/dgame.app/UI/art,將圖鑒導(dǎo)入其中并且替換。昔往的設(shè)備是越獄的,暫時(shí)未知沒越獄的能不能搞定。
第五步:打開刀塔傳奇,可以看到,游戲內(nèi)部的圖鑒已經(jīng)被換成日服的了。
就是這么簡(jiǎn)單~~~~同樣的,也可以替換成自己喜歡的任何圖片,只要保證大小格式正確就行。
PS:安卓版本的有些不同,需要在電腦上直接打開APK文件(有點(diǎn)像打開rar的壓縮包),然后同樣在UI/art文件夾中把圖鑒替換掉。不過(guò)修改過(guò)的APK是會(huì)安裝失敗的,因?yàn)闆]有簽名,需要在手機(jī)上下載一個(gè)簽名工具,比如zipsigner,在手機(jī)上從工具中給刀塔傳奇安裝包進(jìn)行簽名才可以正確安裝。
以上就是小編今天為大家?guī)?lái)的《刀塔傳奇》日服圖鑒替換方法攻略詳解,希望對(duì)玩家們有所幫助。
標(biāo)簽: 刀塔傳奇 刀塔傳奇攻略 刀塔傳奇日服 刀塔傳奇日服圖鑒 刀塔傳奇英雄圖鑒 ( 責(zé)任編輯:techmaster)