跳至主要內容

進階仇恨系統

EliteMobs 會為每一位對精英怪造成傷害的玩家追蹤兩個獨立的數值:每位玩家造成的原始傷害,以及一個仇恨值(原始傷害乘以該玩家的喧囂打擊加成)。

註:仇恨(aggro)是用來決定 BOSS 會以哪位玩家作為攻擊目標的機制名稱

目前的目標選擇是依據傷害;喧囂打擊的權重尚未串接

EliteMobs 確實會覆寫怪物的目標選擇:每當一隻有兩名或以上攻擊者的精英怪受到攻擊時,它會重新將目標鎖定為附近(35 格內)造成最多原始傷害的攻擊玩家。因此在目前的版本中,造成最多傷害通常確實會把 BOSS 引到你身上——目標選擇並非單純的原版行為。

目前尚未啟用的是以喧囂打擊加權後的仇恨值。獨立的 aggro 對照表(原始傷害 × 喧囂打擊加成)雖有被追蹤,但目標選擇程式碼並不會讀取它。讓仇恨與原始傷害解耦,使坦克能以較低傷害維持仇恨,是一項計畫中的功能(原始碼中所述的「decoupling aggro from damage to allow for tanking mechanics」)。喧囂打擊附魔已經存在,並且已經會提供數值給仇恨追蹤器,但它尚未改變 BOSS 會攻擊哪位玩家。

預期的設計是:所有精英怪都會在攻擊它們的那群玩家中,以仇恨值最高的玩家作為目標。喧囂打擊附魔會放大仇恨的產生量,讓坦克即使造成的傷害低於 DPS 玩家,也能建立威脅值。

這是為我們的實例副本所設計的,在那裡玩家被預期會擔任坦克與 DPS 的職責。實例副本甚至會有專為坦克職責設計的戰利品掉落。這些戰利品帶有一個名為喧囂打擊的特殊附魔,可提高玩家所攻擊的任何精英怪所產生的仇恨。

喧囂打擊如何運作

喧囂打擊附魔會提高擊中 EliteMobs 所生成實體時產生的仇恨。每件物品的喧囂打擊加成等於其附魔等級除以 3,而所有 6 個裝備欄位(頭盔、胸甲、護腿、靴子、主手與副手)的加成會加總起來。

公式: 產生的仇恨 = 造成的傷害 × 喧囂打擊總加成

單件物品計算: 喧囂打擊加成 = 附魔等級 ÷ 3

範例:

  • 一件物品上的喧囂打擊 III = 3 ÷ 3 = 1.0 加成
  • 全部 6 個裝備欄位都有喧囂打擊 III = 6 × 1.0 = 6.0 總加成
  • 以 6.0 總加成造成 100 點傷害 = 100 × 6.0 = 產生 600 點仇恨

這旨在讓坦克即使造成的傷害明顯低於 DPS 玩家時,仍能建立仇恨。請注意,若未裝備任何喧囂打擊,加成為 0,因此仇恨追蹤器完全由坦克裝備驅動(原始傷害另外獨立追蹤)。由於目標選擇目前讀取的是原始傷害對照表而非此仇恨值,喧囂打擊尚不會影響 BOSS 攻擊的對象。

技術細節

對於每位攻擊精英怪的玩家,EliteMobs 會記錄兩個獨立數值:

  • 造成的傷害:不含任何修正的純傷害數字
  • 產生的仇恨:傷害乘以該玩家的喧囂打擊總加成(所有 6 個裝備欄位的 level / 3 之和)

以喧囂打擊加權的仇恨值目前有被儲存,但目標選擇程式碼並不會讀取它,因此它尚不會改變 BOSS 會攻擊哪位玩家。目前的目標選擇是由原始傷害對照表驅動:當一隻有兩名或以上攻擊者的精英怪受到攻擊時,它會重新將目標鎖定為附近累積原始傷害最高的攻擊者。一旦坦克目標選擇功能完成,BOSS 將改用仇恨值,讓喧囂打擊裝備即使在 DPS 玩家造成較高傷害時也能維持威脅值。

常見問答

問:如果我造成最多傷害,BOSS 是否一定會以我為目標? 答:在目前的版本中,當一隻精英怪有兩名或以上攻擊者時,它會重新將目標鎖定為附近造成最多原始傷害的玩家,因此造成最多傷害通常確實會把 BOSS 引到你身上。喧囂打擊尚不會覆寫此行為——以喧囂打擊加權的仇恨值有被追蹤,但並未用於目標選擇。那項以仇恨為基礎的覆寫是計畫中的功能。

問:我需要多少喧囂打擊才能有效擔任坦克? 答:一旦仇恨目標選擇啟用後,這將取決於坦克與 DPS 玩家之間的傷害差距。在全部 6 個欄位都裝備喧囂打擊 III 會產生 6.0 倍的仇恨加成。目前喧囂打擊會提供數值給仇恨追蹤器,但不會改變目標選擇。

問:我能看到我目前的仇恨等級嗎? 答:不行。仇恨值不會在遊戲內顯示。