📖 表说明
法术仇恨表定义了法术产生的仇恨值修正。仇恨系统是魔兽世界战斗机制的核心,决定了怪物的攻击目标选择。这个表允许服务器管理员精确调整各种法术的仇恨产生,以实现更好的游戏平衡。
数据来源: 本文档基于AzerothCore官方Wiki和官方数据表借鉴.sql编写,确保字段定义的准确性和权威性。
📊 表结构
| 字段名 | 数据类型 | 属性 | 键 | 默认值 | 描述 |
|---|---|---|---|---|---|
| entry | int UNSIGNED | 不为空 | 主键 | 法术ID,对应Spell.dbc | |
| flatMod | int | 可为空 | NULL | 固定仇恨修正值 | |
| pctMod | float | 不为空 | 1 | 仇恨百分比修正系数(伤害/治疗的仇恨倍数) | |
| apPctMod | float | 不为空 | 0 | 攻击强度仇恨修正系数 |
主键: entry
🔑 核心字段详解
🆔 entry - 法术ID
详细说明:需要修正仇恨值的法术ID,对应Spell.dbc文件中的法术记录。
取值范围:对应Spell.dbc中的法术ID
- 主键字段,标识法术仇恨配置
- 必须对应Spell.dbc中存在的法术ID
- 通常是治疗法术、伤害法术或增益法术
- 用于定义法术的仇恨修正系数
示例:
- entry=19750 - 快速治疗(牧师治疗法术)
- entry=133 - 火球术(法师伤害法术)
📊 flatMod - 固定仇恨修正值
详细说明:法术产生的固定仇恨值修正。
取值范围:整数,可为负数
- 定义法术产生的固定仇恨值
- 正值表示增加仇恨
- 负值表示减少仇恨
- 用于调整特定法术的仇恨产生
示例:
- flatMod=100 - 增加100点固定仇恨
- flatMod=-50 - 减少50点固定仇恨
📈 pctMod - 仇恨百分比修正系数
详细说明:法术伤害或治疗产生的仇恨百分比修正系数。
取值范围:通常为0.0-2.0之间的浮点数
- 定义伤害/治疗转换为仇恨的倍数
- 默认值1表示标准仇恨(1点伤害=1点仇恨)
- 治疗法术通常使用较低的系数(0.5)
- 用于平衡不同法术的仇恨产生
示例:
- pctMod=1.0 - 标准仇恨(伤害法术)
- pctMod=0.5 - 低仇恨(治疗法术)
- pctMod=2.0 - 高仇恨(坦克技能)
其他字段说明
apPctMod: 攻击强度仇恨修正系数,定义攻击强度对仇恨产生的额外影响。主要用于物理技能或混合职业的技能。
💡 实际案例
仇恨 治疗法术低仇恨配置
配置治疗法术产生较低的仇恨值
-- 治疗法术低仇恨配置
DELETE FROM spell_threat WHERE entry = 19750;
INSERT INTO spell_threat VALUES
(19750, NULL, 0.5, 0);
效果: 快速治疗(spell=19750)产生的仇恨值为治疗量的50%,防止治疗者过早吸引怪物攻击。
仇恨 坦克技能高仇恨配置
配置坦克技能产生更高的仇恨值
-- 坦克技能高仇恨配置
DELETE FROM spell_threat WHERE entry = 12345;
INSERT INTO spell_threat VALUES
(12345, 100, 2.0, 0);
效果: 坦克技能(spell=12345)产生固定100点仇恨,并且伤害产生的仇恨倍数为2.0,帮助坦克维持仇恨领先。
⚡ 快速参考
仇恨系数类型
| 法术类型 | 典型pctMod值 | 说明 |
|---|---|---|
| 伤害法术 | 1.0 | 标准仇恨(1点伤害=1点仇恨) |
| 治疗法术 | 0.5 | 低仇恨(1点治疗=0.5点仇恨) |
| 坦克技能 | 1.5-2.0 | 高仇恨,帮助坦克建立仇恨领先 |
| 减仇恨技能 | 0.0-0.25 | 极低仇恨,防止吸引怪物攻击 |
表关系
- 法术表: spell_dbc - 法术数据表
- 关联字段: entry → spell_dbc.ID
🔗 相关表格
- spell_dbc - 法术数据表
- spell_bonus_data - 法术加成数据表
- spell_proc - 法术触发表
❓ 常见问题
Q1: 如何降低治疗法术的仇恨?
设置pctMod字段为较低的值(如0.5)。治疗法术通常使用0.5的系数,意味着1点治疗只产生0.5点仇恨。
Q2: 如何增加坦克技能的仇恨?
设置pctMod字段为较高的值(如1.5或2.0),并设置flatMod字段为正值(如100)。这样技能会产生更高的仇恨值。
Q3: 如何创建减仇恨技能?
设置flatMod字段为负值(如-100),或设置pctMod字段为极低值(如0.0)。这样技能会减少或几乎不产生仇恨。