進階仇恨系統
EliteMobs 會為每一位對精英怪造成傷害的玩家追蹤兩個獨立的數值:每位玩家造成的原始傷害(用於戰利品與獎勵貢獻度),以及一個仇恨值——決定精英怪要攻擊誰的仇恨帳本。
註:仇恨(aggro)是用來決定 BOSS 會以哪位玩家作為攻擊目標的機制名稱
目標選擇如何運作
每當有玩家對精英怪造成傷害時,EliteMobs 就會增加該玩家的仇恨值,並立即重新評估精英怪的目標。AdvancedAggroManager 會挑出累積仇恨值最高、且符合下列條件的玩家:
- 在線上、存活且有效
- 處於生存或冒險模式
- 與精英怪處於同一個世界
- 位於精英怪的 35 格範圍內
挑選目標時刻意不會參考原始傷害,因此一位傷害較低、但裝備喧囂打擊的坦克能夠維持住 BOSS 的注意力。當精英怪首次生成,以及當仇恨值從召喚者繼承而來時,目標選擇也會重新刷新。
這些檢查會在重新評估目標時執行,並不持續監控距離。如果沒有符合條件的玩家擁有有限的仇恨紀錄,管理器會保留現有目標,而不是清除目標。
喧囂打擊如何運作
喧囂打擊附魔會提高擊中 EliteMobs 所生成實體時產生的仇恨。每件物品的喧囂打擊加成等於其附魔等級除以 3,而所有 6 個裝備欄位(頭盔、胸甲、護腿、靴子、主手與副手)的加成會加總起來。
公式: 傷害產生的仇恨 = 造成的傷害 × (1 + 喧囂打擊總加成) × 職業仇恨係數
當玩家的進階戰鬥職業處於生效狀態,且根職業系為 spellcaster 時,職業係數為 0.8;否則為 1。嘲諷等直接增加仇恨的行為不會增加傷害貢獻,也不使用此公式。以下範例均使用職業係數 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,沒有坦克裝備的玩家仍然會正常累積仇恨——喧囂打擊是疊加在其之上,而非取代它。
隨附的 elitemobs:loud_strikes 定義將附魔上限設為 10(maxLevel),物品價值 parameters.value 為 6,且 parameters.procedural: false。明確設定的超上限等級會保留。請使用目前的共用附魔格式,而不是已停用的 maxLevelV2 和 maxEnchantmentLevel 欄位。
玩家狀態畫面的裝備面板顯示裝備倍率 1 + 喧囂打擊總加成,不包含 Spellcaster 職業係數或直接增加的仇恨。
從召喚物繼承仇恨
會召喚增援的自訂 BOSS 可以把自己的仇恨表傳遞下去。當召喚物設定了 inheritAggro=true 時,該增援會複製召喚者的仇恨帳本(但不會複製其傷害/獎勵貢獻度),並立即從中挑選目標。這能讓增援持續攻擊坦克,而不是立刻黏上最靠近的玩家。
技術細節
對於每位攻擊精英怪的玩家,EliteMobs 會記錄兩個獨立數值:
- 造成的傷害:套用仇恨倍率之前記錄的戰鬥傷害。用於戰利品資格、貢獻度與獎勵。
- 產生的仇恨:傷害乘以
1 + 該玩家的喧囂打擊總加成(所有 6 個裝備欄位的level / 3之和),再乘以上述職業係數。直接增加的仇恨也記入此表。僅用於目標選擇。
非有限或負的喧囂打擊數值會被夾制為 0,而在挑選目標時會跳過非有限的仇恨項目。清除精英怪的戰鬥狀態(clearDamagers)會同時清空兩張對照表,以免傷害與仇恨產生偏移。
常見問答
問:如果我造成最多傷害,BOSS 是否一定會以我為目標? 答:只有當你是符合條件的玩家中仇恨最高的,且沒有有效嘲諷優先指定目標時才會。傷害排名與仇恨排名僅在各玩家倍率相同且沒有單獨增加仇恨時一致。喧囂打擊可以讓傷害較低的坦克超過傷害較高玩家的仇恨。
問:我需要多少喧囂打擊才能有效擔任坦克? 答:多到足以讓你的仇恨倍率超過與 DPS 之間的傷害差距為止。全部 6 個欄位都裝備喧囂打擊 III 可產生 6.0 加成,也就是 7.0 倍的仇恨倍率——意味著你只需造成大約無裝備玩家七分之一的傷害,就能維持仇恨。
問:我能看到我目前的仇恨倍率嗎? 答:裝備區塊顯示裝備倍率,不包含職業係數、直接增加的仇恨或累積仇恨總值。
問:如果我跑出範圍會怎樣? 答:在下一次目標更新時,超過 35 格的玩家會被排除。管理器會選擇符合條件且仇恨最高的玩家;如果沒有這樣的玩家,則保留現有目標。
有效嘲諷優先於累積仇恨,前提是目標在線、存活、處於生存或冒險模式、位於同一世界且距離不超過 35 格。目標不再符合條件時會清除強制目標。職業系統詳見[Alpha] Advanced Combat System。