游戲技能系統(tǒng)全解析_第1頁
游戲技能系統(tǒng)全解析_第2頁
游戲技能系統(tǒng)全解析_第3頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、廣義的的說,和戰(zhàn)斗結算相關的內(nèi)容都算技能系統(tǒng),包括技能信息管理、技 能調(diào)用接口、技能目標查找、技能表現(xiàn)、技能結算、傷害結算、buf/法術場模塊 管理,此外還涉及的模塊包扌乩ai模塊(技能調(diào)用者)、動作模塊、尋路/移動 模塊以及人物屬性和傷害結算。先說下技能模塊每個部分的職責和原理:技能信息管理:管理unit所擁有的技能以及技能的等級、cd等。技能調(diào)用接口: ai或者ui操作觸發(fā)技能,觸發(fā)技能時可能選擇了一個目標 (ai),也可能并沒有目標。技能流程管理:一個技能可能由多個子技能以移動的執(zhí)行模式組合而成,而 每一個最終執(zhí)行的技能執(zhí)行過程也存在一個流程,一般包括:前搖過程結算點 后搖過程。技能在前

2、搖結束時進入技能真止的結算流程,結算流程可能創(chuàng)建了彈, 也可能觸發(fā)buf或者創(chuàng)建法術場。技能目標查找:若技能觸發(fā)時已經(jīng)設置了技能目標unit,則直接將其作為目 標unit,否則需要根據(jù)一定的策略選擇。此外,技能釋放的吋候還需要釋放方向 和釋放位置等信息,也在這個模塊獲取。技能表現(xiàn):技能釋放過程中,需要創(chuàng)建相應的特效以及執(zhí)行相應的動作。buf/彈道/法術場管理:buf掛在unit身上,可能影響unit的一些行為和狀 態(tài);法術場一般由場景管理,影響場景中某范圍內(nèi)的unit。彈道就是技能創(chuàng)建的 一個子彈,這個子彈可能以不同的路線移動(直線/拋物線/直接命屮等)0技能表17xuee首先說卜實現(xiàn)技能的基

3、木思路。實現(xiàn)技能的基本思路就是通過策劃 填寫表格,來配制成某些技能,在執(zhí)行某個技能的時候,分別去根據(jù)這些表格屮 的內(nèi)容,確定技能如何表現(xiàn)?;镜倪壿嬍牵?1.if skilltat>le.getc,技能動作"):02.03.paly動作04.05.if skilltable.get("特效”):06.07.播放特效08,09.if skilltable.get("法術場”):10.11.倉q建法術場12.13. 復制代碼1技能信息管理unit創(chuàng)建時,此模塊管理unit可使用哪些技能,比如游戲中玩家可以選擇使 用哪些技能。游戲中技能的升級、技能加點、技能池管理

4、都在這個模塊。此處包括處理技能升級/附文/裝備等外部模塊對技能參數(shù)的修改。2技能調(diào)用接口提供技能調(diào)用的接口供ai調(diào)用,調(diào)用時可以提供一個目標unit,也可以不 提供讓技能自己查找。提供三個接技能開始:開始執(zhí)行技能,若技能不循環(huán)進行,則技能可以自動結束。技能結束:有的技能不能自己結束,比如某些循環(huán)技能。當玩家松開按鈕, 調(diào)用技能結朿接口,告訴當前技能使其結束,此時技能到達后搖點時,技能不再 繼續(xù)執(zhí)行。技能停止:當技能被強制打斷時,如被攻擊、暈眩等,技能會被強制停止。此外,當前一個技能正在執(zhí)行時新的技能調(diào)用啟動,此時新的技能調(diào)用信息 會被保存。一般來說,并不會把所有新的技能調(diào)用信息保存下來,那樣就

5、成了一 個技能執(zhí)行的序列。我們游戲僅保存一個新的技能調(diào)用信息。3技能流程管理技能流程這里分兩點討論:一個技能可能由多個子技能以一定的模式組合起來。一個技能常常由多個子技能以一定的模式組合而成,比如三段擊、比如沖鋒 斬(先沖鋒、后斬)等,甚至還存在根據(jù)不同的環(huán)境選擇執(zhí)行不同的子技能。分 析發(fā)現(xiàn),技能可以分成一個樹形結構,這個樹形結構非常類似行為樹,同樣可以 將節(jié)點分為控制節(jié)點和執(zhí)行節(jié)點,甚至可以包括condition節(jié)點。為此,我們項 目引入一個技能樹概念來描述這種數(shù)據(jù)結構。一個具體的技能(技能樹執(zhí)行節(jié)點)也有一個固定的執(zhí)行流程。這個流程一 般為:前搖過程、前搖過程結束二技能結算吋間點、后搖吋間

6、點。3.1技能樹技能樹參考傳統(tǒng)行為樹的設計,使用樹形結構控制技能的執(zhí)行流程。 技能樹和行為樹在結構上比較類似,但是在運行邏輯上冇很大的不同。首先,技能樹的重點并不是根據(jù)上下文選擇一個合適的節(jié)點執(zhí)行,而是以一 定的策略將技能樹從頭到尾遍歷執(zhí)行一遍。其次,技能樹沒冇tick的概念,而是基于回調(diào)的,比如一個順序節(jié)點,順序 節(jié)點中一個了節(jié)點執(zhí)行完畢后,馬上通知順序節(jié)點,順序節(jié)點執(zhí)行下一個了節(jié)點, 直至順序節(jié)點的最后一個子節(jié)點執(zhí)行完畢,順序節(jié)點就會通知父節(jié)點(如果冇) 它已經(jīng)執(zhí)行完畢。此外,為了完成技能的一些需求,控制節(jié)點往往存儲更多的控制信息來控制 子節(jié)點的執(zhí)行流程。具體的信息根據(jù)策劃需求設置,比如順

7、序結點包括原子屬性 和循環(huán)屈性。如果一個順序節(jié)點具有原了屈性,則這個順樹節(jié)點在執(zhí)行的過程中 并不會被end,只冇全部子節(jié)點執(zhí)行結束才可以end。3.2執(zhí)行節(jié)點的技能流程一般來說,技能的執(zhí)行流程包括:前搖時間:技能開始,但是技能真正的結算流程還沒開始。技能開始以后, 機能相關的特效和動作就開始播放。前搖時間結束:技能前搖結束時技能開始真正的釋放以及結算,等技能前搖 結束以后,技能真正的釋放并結算。釋放包描創(chuàng)建相應的彈道/法術場和buf仁技能后搖點:技能播放到后搖點吋間吋,技能真正的結束。這時,技能對應 的特效以及人物動作可能還會繼續(xù)播放,但是技能流程已經(jīng)正式結束了。也就是 說,下一個技能可以執(zhí)行

8、。4技能目標查找技能釋放時,目標可能己經(jīng)由ai傳給了技能模塊,也有可能沒有一個目標, 如玩家控制單位。技能在釋放法術場、彈道的時候,重要的是技能的方向而不是技能fi標一般 來說,技能獲得一個目標對彖以后,技能的方向就是釋法者到目標的向量。此外,技能方向可能需要一些配置,如前搖鎖定(前搖過程中目標移動,技 能方向不變),ui可控制(技能釋放過程屮,玩家可以通過控制ui控制技能的 釋放方向)。5技能表現(xiàn)技能的表現(xiàn)包括動作、特效、shader.音效等。其中,特效比較復雜,需要 配置的內(nèi)容也比較多。比如,有些特效掛在模型上,有的特效掛在場景里。對于 法術場的特效,分別可以分為法術場開始、結算、結束特效

9、,分別在法術場開始 時、結算時、結束時顯示。對于buff也類似。6彈道、法術場和buff等技能創(chuàng)生體狹義的來說,技能模塊只是負責技能的執(zhí)行流程(技能樹管理以及技能流程 管理),而技能真正的結算主要是由其創(chuàng)生體結算的。當技能前搖結束開始生效 吋,技能創(chuàng)建相應的彈道和法術場,法術場彈道擊屮敵人吋又有可能產(chǎn)生相應的 buffo一般來說,法術場是一個場景的某塊檢測區(qū)域,每隔一段時間法術場檢測此 區(qū)威的敵人,并對其攻擊結算。彈道是一類子彈移動路徑的抽彖,創(chuàng)建一個彈道就表示一個子彈特效沿這個 彈道移動并檢測路徑上的敵人。buff就是掛在單位身上的一個具有持續(xù)時間的狀態(tài),狀態(tài)對單位產(chǎn)生-些正 面或者負面的影響,并且在此段時間內(nèi),每隔一段時間進行一次傷害結算。對于技能、發(fā)舒暢、buffz間的功能

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論