進階仇恨系統
EliteMobs 會為每一位對精英怪造成傷害的玩家追蹤兩個獨立的數值:每位玩家造成的原始傷害(用於戰利品與獎勵貢獻度),以及一個仇恨值——決定精英怪要攻擊誰的仇恨帳本。
註:仇恨(aggro)是用來決定 BOSS 會以哪位玩家作為攻擊目標的機制名稱
目標選擇如何運作
每當有玩家對精英怪造成傷害時,EliteMobs 就會增加該玩家的仇恨值,並立即重新評估精英怪的目標。AdvancedAggroManager 會挑出累積仇恨值最高、且符合下列條件的玩家:
- 在線上、存活且有效
- 與精英怪處於同一個世界
- 位於精英怪的 35 格範圍內
挑選目標時刻意不會參考原始傷害,因此一位傷害較低、但裝備喧囂打擊的坦克能夠維持住 BOSS 的注意力。當精英怪首次生成,以及當仇恨值從召喚者繼承而來時,目標選擇也會重新刷新。
喧囂打擊如何運作
喧囂打擊附魔會提高擊中 EliteMobs 所生成實體時產生的仇恨。每件物品的喧囂打擊加成等於其附魔等級除以 3,而所有 6 個裝備欄位(頭盔、胸甲、護腿、靴子、主手與副手)的加成會加總起來。
公式: 產生的仇恨 = 造成的傷害 × (1 + 喧囂打擊總加成)
單件物品計算: 喧囂打擊加成 = 附魔等級 ÷ 3
範例:
- 完全沒有喧囂打擊 = 1.0 倍仇恨,因此仇恨值會完全等同於原始傷害
- 一件物品上的喧囂打擊 III = 3 ÷ 3 = 1.0 加成,也就是 2.0 倍仇恨
- 全部 6 個裝備欄位都有喧囂打擊 III = 6 × 1.0 = 6.0 總加成,也就是 7.0 倍仇恨
- 以 6.0 總加成造成 100 點傷害 = 100 × 7.0 = 700 點仇恨
這正是讓坦克能在傷害明顯低於 DPS 玩家的情況下維持仇恨的機制。由於基礎倍率為 1,沒有坦克裝備的玩家仍然會正常累積仇恨——喧囂打擊是疊加在其之上,而非取代它。
喧囂打擊的預設遊戲內顯示上限為等級 3(maxLevelV2),硬性 maxEnchantmentLevel 為 10,物品價值 value 為 6,並且不會被隨機賦予在程序生成的物品上——它只會出現在自訂物品上,這也是為什麼它是實例副本坦克戰利品的代表性特徵。
你目前的仇恨倍率會顯示在玩家狀態畫面的裝備面板上,數值為 1 + 喧囂打擊總加成。
從召喚物繼承仇恨
會召喚增援的自訂 BOSS 可以把自己的仇恨表傳遞下去。當召喚物設定了 inheritAggro=true 時,該增援會複製召喚者的仇恨帳本(但不會複製其傷害/獎勵貢獻度),並立即從中挑選目標。這能讓增援持續攻擊坦克,而不是立刻黏上最靠近的玩家。
技術細節
對於每位攻擊精英怪的玩家,EliteMobs 會記錄兩個獨立數值:
- 造成的傷害:不含任何修正的純傷害數字。用於戰利品資格、貢獻度與獎勵。
- 產生的仇恨:傷害乘以
1 + 該玩家的喧囂打擊總加成(所有 6 個裝備欄位的level / 3之和)。僅用於目標選擇。
非有限或負的喧囂打擊數值會被夾制為 0,而在挑選目標時會跳過非有限的仇恨項目。清除精英怪的戰鬥狀態(clearDamagers)會同時清空兩張對照表,以免傷害與仇恨產生偏移。
常見問答
問:如果我造成最多傷害,BOSS 是否一定會以我為目標? 答:只有在你同時擁有最高仇恨值時才會。若沒有人裝備喧囂打擊,仇恨與傷害成正比,因此傷害最高者會成為目標。但只要坦克疊起喧囂打擊,其仇恨值就可能超過傷害更高的玩家。
問:我需要多少喧囂打擊才能有效擔任坦克? 答:多到足以讓你的仇恨倍率超過與 DPS 之間的傷害差距為止。全部 6 個欄位都裝備喧囂打擊 III 可產生 6.0 加成,也就是 7.0 倍的仇恨倍率——意味著你只需造成大約無裝備玩家七分之一的傷害,就能維持仇恨。
問:我能看到我目前的仇恨倍率嗎? 答:可以——玩家狀態畫面的裝備區塊會顯示它。但不會顯示仇恨點數的原始總量。
問:如果我跑出範圍會怎樣? 答:距離精英怪超過 35 格的玩家不具備成為目標的資格,因此 BOSS 會退而選擇仍在範圍內、仇恨值最高的玩家。