技能系統(tǒng)讀
https://zhuanlan.zhihu.com/p/147681650
這篇文章看了,只感覺自己對(duì)游戲開發(fā)仍然缺少很多。當(dāng)然隨便也吐槽一下游戲開發(fā)。
我覺得現(xiàn)在獨(dú)立開發(fā)簡(jiǎn)直就是一個(gè)空話。當(dāng)玩家看見你竟然一個(gè)月開發(fā)一款游戲時(shí),只覺得黑心。但是事實(shí)上,對(duì)于普通人來說,他們那兒有那么多機(jī)會(huì)成本去試錯(cuò)呢。
我本想做一些微信小游戲套現(xiàn)(養(yǎng)活自己),但是看著比自己更厲害的人都倒下了。讓我不由的開始思考,因?yàn)槌赡耆艘媛铮员仨毜膾赍X,哪兒來什么用愛發(fā)電。如果明明知道自己做的東西連上線都不可能,或者說上線后,根本賺不來錢,誰又會(huì)去做呢?在生活的面前,誰能用愛發(fā)電。誰能用自己的時(shí)間賭一個(gè)模糊的未來。這是我最近的焦慮。我找不到unity崗位,但是獨(dú)立開發(fā)的成本我沒有辦法支持?;蛘哒f我對(duì)游戲開發(fā)的熱愛不是那么高,如果掙不到錢,我也不知道為什么要做游戲。
吐完槽,看看這個(gè)技能系統(tǒng)吧。我一直想做出一個(gè)好的技能系統(tǒng),因?yàn)橛螒蛑泻诵牡耐娣ň褪羌寄?,通過技能驅(qū)動(dòng)玩法。
我一直沒有很好的處理好技能系統(tǒng)、技能組件、技能實(shí)體之間的邏輯和職責(zé)。
技能系統(tǒng)做什么事?
技能組件做什么事?
技能實(shí)體又做什么事?
這個(gè)邏輯劃分,我看網(wǎng)上的東西都沒講清楚。
我的劃分是、技能系統(tǒng)負(fù)責(zé)生成技能實(shí)體,而技能組件則歸為戰(zhàn)斗實(shí)體所有,是1-1的東西。技能組件(技能槽?)里裝有技能實(shí)體。AI可以直接調(diào)用組件里的技能。而玩家的技能則是通過AbilityUI來監(jiān)聽輸入。
最開始引用的文章,他描述的重點(diǎn)是什么呢?是一個(gè)輸入調(diào)用的技能的怎么執(zhí)行的。
技能里除去框架的東西,常用的是技能、buff、子彈。以及表現(xiàn)效果:運(yùn)動(dòng)、特效。同時(shí)偏重后端,也就是后端結(jié)算,前端做表現(xiàn)。具體就是,表現(xiàn)效果只是表現(xiàn)效果。
技能分為:被動(dòng)、主動(dòng)、激活、開關(guān)。
被動(dòng),激活,開關(guān)都可以看成一個(gè)buff的開關(guān)。所以重點(diǎn)仍放在主動(dòng)技能上。
主動(dòng)技能分為:一次性和持續(xù)性。但是共同點(diǎn)都是有前搖和后腰。區(qū)別是持續(xù)性有多段觸發(fā)的邏輯。
然后是buff。buff有兩個(gè)大類,修改屬性的,修改運(yùn)動(dòng)狀態(tài)的。具體的生命周期,可以根據(jù)項(xiàng)目需求增加。
但是在看了以后,發(fā)現(xiàn)由于需要同步,所以motion需要同步。同時(shí)特效也需要區(qū)分是否僅自己看見。所以看似一個(gè)常規(guī)的技能系統(tǒng)。一旦涉及到同步,就變得異常復(fù)雜起來了。考慮的情況也更多了。
所以網(wǎng)絡(luò)游戲的核心是什么?我認(rèn)為是提供給大家一個(gè)交互的平臺(tái)。但是一個(gè)buff可能都具備8、9個(gè)接口。讓我覺得這個(gè)網(wǎng)絡(luò)游戲是在復(fù)雜。這樣的一個(gè)技能系統(tǒng)做出來,可能需要就是多項(xiàng)目的互用,因?yàn)椴豢赡苊看味贾匦略?,如果重新造,還不如做簡(jiǎn)單一些。
如果真要做游戲,用開箱即用的插件就行了。把開發(fā)者從搭框架上解放出來。有效的降低開發(fā)者的成本,而不是抬高開發(fā)成本。做內(nèi)容,遠(yuǎn)比做技術(shù)重要。
游戲行業(yè)如果已經(jīng)不是風(fēng)口,不是是一個(gè)人就能在游戲行業(yè)里面戰(zhàn)斗出來的。
現(xiàn)在對(duì)于我來說,做游戲,可能用不用unity都并不重要了,因?yàn)楸磉_(dá)的中心是內(nèi)容。
說實(shí)話,能把一個(gè)技能系統(tǒng)設(shè)計(jì)好,很考驗(yàn)設(shè)計(jì)能力,以及技術(shù)棧。