你好,歡迎來到川北在線
微信
騰訊微博
新浪微博
游戲編程新手必看 怪物AI的基本設(shè)計(jì)要點(diǎn)
時(shí)間:2016-12-05 11:15   來源:GAD   責(zé)任編輯:毛青青

  游戲程序開發(fā)是游戲的基礎(chǔ),如何給游戲設(shè)定一個(gè)好編程將決定游戲的好壞。如果你還是游戲編程的新手,那么你可以從怪物AI的設(shè)計(jì)入手來深入了解游戲應(yīng)該如何編程。

  AI的設(shè)計(jì),如果從程序口中說,可能會(huì)跳出諸如“行為樹”“ 決策樹”“有限狀態(tài)機(jī)”之類的程序名詞,聽起來很專業(yè)有木有?但是策劃沒學(xué)過腫么辦?不要急,我們先拋開這些程序名詞,僅僅從策劃設(shè)計(jì)角度來梳理一下怪物AI的策劃設(shè)計(jì)。當(dāng)然,如果理解有錯(cuò)誤,希望大家指出,共同學(xué)習(xí)進(jìn)步。

  怪物AI應(yīng)該說是這是一個(gè)程序問題,如果從策劃的角度來說,作為設(shè)計(jì)者,則需要了解怪物AI整體的設(shè)計(jì)流程,這樣才能提出自己的需求,從而讓游戲戰(zhàn)斗的整體體驗(yàn)符合設(shè)計(jì)預(yù)期,畢竟怪物AI也是屬于戰(zhàn)斗和體驗(yàn)的重要部分。

  1、什么是怪物AI?

  在策劃意義上來說,怪物的AI實(shí)際上是一種交互體驗(yàn),換句話說就是怪物或NPC等虛擬角色在面對(duì)玩家操縱的角色的時(shí)能夠給出合適恰當(dāng)反應(yīng)。實(shí)際上,在游戲?qū)嶋H的設(shè)計(jì)中并不是一味地需求怪物的AI越高越好越真實(shí)越好。在游戲中,我們的目的是讓玩家和怪物或NPC的交互能夠產(chǎn)生一種近似真實(shí)的可對(duì)抗性,這種接近真實(shí)的對(duì)抗才是怪物AI設(shè)計(jì)的目的,這樣才能吸引玩家去繼續(xù)戰(zhàn)斗,甚至不斷的提示自己的裝備屬性和能力,引入進(jìn)一步的對(duì)抗。

  怪物的弱小和強(qiáng)大,聰明和愚蠢其實(shí)都是設(shè)計(jì)的需求。

  所以說,怪物的AI設(shè)計(jì)目的是期望和玩家的交互中可控的,平衡的以及具有誘導(dǎo)性的。

  2、怪物的ai包括什么?

  怪物的AI說白了就是多種狀態(tài)之間的轉(zhuǎn)換,這種轉(zhuǎn)換是基于邏輯的,符合常理的逾期。

  在怪物的狀態(tài)則是基于怪物的特色本身來設(shè)定的。

  我們以《暗黑破壞神2》的骷髏怪AI為例:

  在暗黑2中,在MonStats.txt這個(gè)文件中有aip1~aip8中這幾列設(shè)定怪物的ai行為參數(shù),暗黑2的檢定方式為隨機(jī)數(shù),即是以隨機(jī)取一個(gè)0到100的數(shù)字來和表中的參數(shù)數(shù)字比較,如果小于或者等于該數(shù)值則視為檢定成功,否則失敗。

  Skeleton (骷髏)

  描述:骷髏戰(zhàn)士是一個(gè)遲鈍的AI,它發(fā)現(xiàn)敵人后會(huì)試圖接近,有敵人在攻擊范圍內(nèi)時(shí)則持續(xù)攻擊,但是它經(jīng)常會(huì)毫無理由的停止動(dòng)作一段時(shí)間,站著發(fā)呆。

  1. 當(dāng)肉搏范圍內(nèi)沒有敵人時(shí),繼續(xù)接近敵人的幾率

  2. 當(dāng)肉搏范圍內(nèi)有敵人時(shí),攻擊敵人的幾率

  3. par1,par3檢定失敗后等待的時(shí)間(單位:幀)

  4. 攻擊時(shí),以A2代替A1的幾率

  5. n/a

  6. n/a

  7. n/a

  8. n/a

  通過這幾條我們可以看到在暗黑2中骷髏的行為方式實(shí)際上比較簡單,只有接近敵人,失敗等待以及攻擊等幾種簡單的狀態(tài),一旦隨機(jī)數(shù)進(jìn)行判定,也只會(huì)從這幾種狀態(tài)中進(jìn)行反應(yīng)交互。

  實(shí)際上來說暗黑2的ai設(shè)計(jì)思路主要還是以隨機(jī)數(shù)判斷加上條件行為為主,這個(gè)實(shí)際上也是目前絕大部分游戲采用的方式。

  這種思路來說,雖然比較原始和傳統(tǒng),但是優(yōu)點(diǎn)在于簡單好維護(hù),理解和調(diào)試比較簡單, 當(dāng)然缺點(diǎn)也比較明顯,就是容易出現(xiàn)怪物行為單調(diào),千人一面,因此也對(duì)怪物設(shè)計(jì)和條件的設(shè)定提高了要求。

  如果來拆解暗黑3的AI,我們可以看到有這么幾條是必需的。

  1、怪物AI的判定方式。一般采用隨機(jī)數(shù),也就是擲骰子的方式,這是比較常見的手法。用來判斷ai是否開始執(zhí)行。

  2、怪物的范圍設(shè)定。

  怪物的范圍簡單來說就是怪物的戰(zhàn)斗范圍,實(shí)際上也可以 的說是怪物的聽覺視覺,如果要說細(xì)一點(diǎn),那還會(huì)分為戰(zhàn)斗前和戰(zhàn)斗中兩個(gè)階段,在戰(zhàn)斗前會(huì)有游蕩范圍,聽覺警戒范圍和視覺警戒范圍,而在戰(zhàn)斗中會(huì)區(qū)分為追擊范圍,近戰(zhàn)攻擊范圍、魔法攻擊范圍和呼喊范圍。

  聽覺警戒范圍為360度,視覺警戒范圍為120到180度不等,二者可以共享半徑,也可以讓半徑不同。

 ∵體拆分如圖所示:

  設(shè)置這些范圍有什么用處呢?這些范圍實(shí)際就是處理各種不同的AI行為條件的基礎(chǔ)了。

  3、AI行為條目

  AI的行為條目是只怪物所能夠采取的行為策略,在實(shí)際上,怪物的一個(gè)完整的流程是指怪物的從出生到死亡的整個(gè)過程。

  出生,是指怪物的創(chuàng)建生成情況,這個(gè)比較好理解,這時(shí)對(duì)應(yīng)的戰(zhàn)斗前范圍。怪物的狀態(tài)可能是游蕩,巡邏,靜止等各種行為條目,這些就屬于第一類的AI行為。

  而后的情況,則是怪物面對(duì)的戰(zhàn)斗情況,即如何進(jìn)入戰(zhàn)斗?一般來說,游戲會(huì)設(shè)定一個(gè)“仇恨值”或者主被動(dòng)的設(shè)定。

  仇恨列表相當(dāng)于另一個(gè)系統(tǒng)了,這里就不展開說了,而對(duì)于AI來說,有了仇恨值,則可以進(jìn)行一系列基于仇恨的行為了,比如進(jìn)行攻擊,釋放技能,是否追擊,是否呼喊召喚支援等等。

  最后就是怪物進(jìn)入瀕死階段的一些特殊行為,這些是基于特定條件的比如HP血量下降到一定程度,怪物會(huì)有潰敗逃跑、呼叫救兵或者使用特殊技能比如“自爆”等其他行為。

  以上就是基于條件行為相關(guān)的一類基礎(chǔ)的怪物AI行為的設(shè)計(jì)邏輯。屬于比較基礎(chǔ)的AI設(shè)計(jì),當(dāng)然也是比較好用的一類設(shè)計(jì)。

  主要可以用表格或者文本來制作,當(dāng)然具體的實(shí)現(xiàn)和調(diào)試則需要策劃和程序大神一起共同完善了。

  隨著游戲制作技術(shù)的進(jìn)步,關(guān)于怪物AI的制作也越來越工具化了,感謝程序大神們的提供的各類高端工具,這里也順便介紹一下,希望后續(xù)能和大家交流。

  一類是基于編輯器的怪物AI編輯。比如暴雪一般會(huì)提供一個(gè)功能相當(dāng)強(qiáng)大的游戲編輯器,在編輯器中則會(huì)有專門關(guān)于怪物AI的編輯內(nèi)容。

  比如星際2中的編輯器,推薦大家學(xué)習(xí)使用,這里就不展開說了。

  其次是怪物AI的行為樹編輯。行為樹這個(gè)概念也是比較久的一個(gè)工具,不少商業(yè)引擎都支持行為樹的編輯,比如Spore(孢子),Crysis2(孤島危機(jī))都是采用行為樹來制作對(duì)應(yīng)的AI模型。

  如圖示意(示意圖來源為網(wǎng)絡(luò),僅做示意)

  上圖所示為一個(gè)怪物的行為樹,作為策劃來說,需要關(guān)注的是上圖中幾類不同的顏色區(qū)分,代表了不同的行為,條件和控制節(jié)點(diǎn)。

  在我看來,行為樹最好的方面在于如何去控制AI攜帶者的行為的路從初始到最終實(shí)現(xiàn)是如何走的,在行為樹上來有多個(gè)節(jié)點(diǎn)以及一系列控制條件幫助攜帶者的做出正確及時(shí)的選擇,這種選擇過程是充滿樂趣的。

  相比之前的在excel表上的寫寫畫畫,這無疑是打開了新的一扇門。

  從根節(jié)點(diǎn)從左往右可以看,怪物的每一步選擇以及判斷都會(huì)有對(duì)應(yīng)的行為分支來控制,猶如一顆樹一樣枝繁葉茂,每一條分叉都有對(duì)應(yīng)的行為和條件,就這樣多條分支的執(zhí)行來搭建成一個(gè)完整的行為模型。

  因?yàn)槲覀兊淖罱K展現(xiàn)的仍然是怪物所執(zhí)行的行為結(jié)果,即為行為節(jié)點(diǎn)的內(nèi)容,不同是執(zhí)行行為節(jié)點(diǎn)的判斷以及行為過程的控制力度,行為樹可以增加任意多的節(jié)點(diǎn)選擇分支,這就給怪物的行動(dòng)判斷加多了更多的可能性,制作人員在理解上也會(huì)方便很多,當(dāng)然更重要的優(yōu)點(diǎn)是程序上處理的優(yōu)勢(shì),這里就不展開討論了?偠灾治顰I制作博大精深,這里只是粗淺描述,難入窺門子徑,唯望可抱磚引玉,共饗同好。

   投稿郵箱:chuanbeiol@163.com   詳情請(qǐng)?jiān)L問川北在線:http://m.sanmuled.cn/

川北在線-川北全搜索版權(quán)與免責(zé)聲明
①凡注明"來源:XXX(非在線)"的作品,均轉(zhuǎn)載自其它媒體,轉(zhuǎn)載目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé),本網(wǎng)不承擔(dān)此類稿件侵權(quán)行為的連帶責(zé)任。
②本站所載之信息僅為網(wǎng)民提供參考之用,不構(gòu)成任何投資建議,文章觀點(diǎn)不代表本站立場,其真實(shí)性由作者或稿源方負(fù)責(zé),本站信息接受廣大網(wǎng)民的監(jiān)督、投訴、批評(píng)。
③本站轉(zhuǎn)載純粹出于為網(wǎng)民傳遞更多信息之目的,本站不原創(chuàng)、不存儲(chǔ)視頻,所有視頻均分享自其他視頻分享網(wǎng)站,如涉及到您的版權(quán)問題,請(qǐng)與本網(wǎng)聯(lián)系,我站將及時(shí)進(jìn)行刪除處理。



圖庫
合作媒體
金寵物 綠植迷
法律顧問:ITLAW-莊毅雄律師