遊戲中如何實現 NPC 協同圍攻玩家?大概有哪些策略?

時間 2021-06-01 23:12:18

1樓:小孩爬窗

給npc中放乙個類似隊長的角色,隊長負責給附近npc發指令,比如一起放a技能,一起放b技能,利用迴圈讓npc站成xx方陣或者一起跑路啥的

2樓:吳睿

1,額外創造乙個虛擬的父物件容器,把這些NPC全部放在這個容器裡,容器內擁有乙個列表,列表中包含:a、NPC標識;b、釋放技能名/概率,釋放技能名2/概率2。按照列表順序釋放技能。

這個方法主要是看列表是如何生成的,如果是通過技能之間的契合度給出乙個演算法自動生成,那麼這個演算法的複雜度比較高,開發難度較大。如果是直接根據固定NPC型別,固定技能人為的給出乙個列表,工作量是十分大的而且要考慮到差異化,整個列表都可以看作是乙個樹形結構了,複雜度太高。優點是可視可控,利於除錯。

2,額外創造乙個虛擬的父物件容器,把這些NPC全部放在這個容器裡,每一次技能的釋放都會給父物件容器掛上乙個觸發器,由觸發器決定下一次釋放技能的NPC以及這個NPC釋放的技能。

這個方法主要看觸發器如何編寫,每個觸發器均會涉及到以下內容:上一次釋放技能的NPC以及其技能,下一次釋放技能的NPC以及其技能。這個方法也有乙個問題與解法1一樣就是兩個技能之間的契合度演算法複雜度問題。

優點是簡單,易實現(如果不考慮技能契合度演算法的話)。

3樓:徐喬

關鍵是看AI的複雜度。

簡單的實現,可以通過設定條件來進行觸發。比如,A的攻擊技能是MP大於50%就施放;B的回覆技能是夥伴HP低於50%就施放等。這種方式怪物的行為模式會比較單一,但勝在製作較為容易,所以大部分的遊戲都會採取這種做法。

另外乙個路子就是採取啟發式演算法。這個就比較複雜了,簡單地講就是給各種情況設定分數,怪物對自己能夠做出的行為進行評分,採取分數最高的乙個。多個怪物之間就需要考慮所有行動,差不多是O(n^2)的複雜度(大概)。

但是這樣做怪物的行為會更加靈活。

4樓:飲血止渴

1、對立陣營是基本的,設定好路徑,NPC重新整理出來後直接按照路徑尋路。

2、協同是AI控制的,互相間的應援、群動、技能輔助,有個高階的AI編輯器是必要的。

5樓:謝毅

感覺蠻簡單的。難道我想的深度不夠?

類似暗黑僱傭兵~先寫個僱傭兵系統。主要行為是跟隨玩家。

再寫個僱傭兵AI。協助玩家做某事,比如打怪,根據玩家行為去做一些配合性的行為。。

遊戲中的幻獸,寵物做法其實也是差不多的吧。。。只是設計者把NPC做成寵物了而已。。原理應該是一致

如何讓遊戲中NPC的AI更智慧型?

李小跳 AI的傻與不傻很多時候取決於你的底層架構對AI行為複雜的接受度,這個用人話去說就是你的專案打底層的時候可能根本沒想到AI會這麼複雜,用了一套只能應付簡單AI的底層,你一旦套用高階的AI,運算量會呈現指數上公升,並且無法消化,伺服器CPU直接炸。回頭還埋怨你設計不好,就不能用簡單的AI去實現麼...

如何看待玩家在單機遊戲中偷 NPC 東西的行為?

麥克蠟蚊 老rpg確實是挨家挨戶偷東西 但那些新遊戲 偷東西完全是玩家自己的行為。其實很多crpg都有這種設定,你當面拿的話是會被抓的 德瑪西亞之力 遊戲絕不是簡簡單單越真實越好,因為過多的真實性往往會犧牲一定程度的娛樂性。大部分遊戲其實是在真實性 娛樂性之間找乙個平衡點。而這種 拿到就是我的 就屬...

如何使用Unity實現「饑荒」遊戲中的效果?

楊楊 我想說的用2d來實現3d效果是完全可以的,但是並不是必要的,複雜的設計會讓遊戲開發遇到更多的困難,而歐美遊戲設計師很懂這個道理. 秋淵 我經常玩饑荒,仔細觀察和思考了下,模型應該就是立在場景上,向著攝像機的2d麵片,而不是純2d的。這樣物體的前後關係 透視,攝像機變化等都很明朗了。 Jiang...