游戲AI開發(fā)很早以前就開始使用狀態(tài)機(jī)聂薪,這個思想到現(xiàn)在也依然在創(chuàng)造非常有趣的游戲滤港。
游戲中的AI行為都是由程序員事先寫到代碼中的眯勾,也就是說它不會隨機(jī)應(yīng)變湃番。為了使游戲中的AI看起來和一個玩家一樣席吴,我們就需要考慮好它應(yīng)該存在哪些可能性的策略赌结,也就是可能性圖。
做AI開發(fā)的早期孝冒,我總是把AI的行為當(dāng)做狀態(tài)柬姚,如走路狀態(tài)。當(dāng)然它可以是一個狀態(tài)庄涡,如果你還有一個狀態(tài)是跟走路無關(guān)的量承,比如睡覺。但是現(xiàn)在依然認(rèn)為不恰當(dāng)穴店,走路應(yīng)該只是一種行為撕捍。
狀態(tài)應(yīng)該是像這樣的:
單身、戀愛泣洞、結(jié)婚
單身的時候忧风,逛街,吃飯球凰,打游戲
戀愛的時候狮腿,逛街腿宰,吃飯,看電影
結(jié)婚的時候缘厢,帶孩子吃度,吃飯,打游戲
相同的行為會發(fā)生在不同的狀態(tài)贴硫,但是狀態(tài)是不會交叉的椿每,這樣的設(shè)計(jì)方法論才比較合適。
事先想好很多的狀態(tài)英遭,然后挑選出幾個關(guān)鍵的狀態(tài)作為游戲狀態(tài)拖刃,設(shè)計(jì)過程就完成了。
如果不清楚應(yīng)該有哪些狀態(tài)那么就把行為列出來贪绘,然后分類總結(jié),