spell_enchant_proc_data表

概述

spell_enchant_proc_data表是AzerothCore中定义武器附魔触发机制的核心表格。它控制着武器附魔在攻击、被攻击或其他特定事件时触发特殊效果的概率、冷却时间和触发条件,是武器附魔系统的重要组成部分。

表格作用

表格结构

字段名 数据类型 默认值 说明
EnchantID INT UNSIGNED 0 附魔ID
详细说明:武器附魔的ID,对应SpellItemEnchantment.dbc中的附魔定义。
常见附魔类型:
  • 武器附魔:火焰武器、冰霜武器、毒药等
  • 临时附魔:磨刀石、法术油等
  • 永久附魔:附魔师制作的永久性附魔
  • 特殊附魔:任务或特殊物品的附魔效果
Chance FLOAT 0 触发概率
详细说明:附魔效果触发的概率,以百分比表示(0-100)。
概率设置原则:
  • 高频触发:15-25% - 适用于低伤害或辅助效果
  • 中频触发:5-15% - 适用于中等强度效果
  • 低频触发:1-5% - 适用于高伤害或强力效果
  • 稀有触发:0.1-1% - 适用于极强或特殊效果

平衡考虑:
  • 触发概率与效果强度成反比
  • 考虑武器攻击速度的影响
  • PVP和PVE环境的不同需求
ProcsPerMinute FLOAT 0 每分钟触发次数
详细说明:每分钟期望的触发次数,用于更精确的触发频率控制。
PPM机制:
  • 动态概率:根据武器速度动态调整触发概率
  • 标准化频率:确保不同速度武器有相似的触发频率
  • 平衡设计:避免快速武器获得过多优势

常见PPM值:
  • 1-2 PPM:强力效果或高伤害附魔
  • 3-5 PPM:中等强度效果
  • 6-10 PPM:轻微效果或辅助附魔
HitMask INT UNSIGNED 0 命中类型掩码
详细说明:定义哪些类型的攻击可以触发附魔效果。
命中类型掩码:
  • 0x1 - 普通命中
  • 0x2 - 暴击
  • 0x4 - 未命中
  • 0x8 - 闪避
  • 0x10 - 格挡
  • 0x20 - 招架
  • 0x40 - 偏斜

常用组合:
  • 0x3 (1+2) - 普通命中和暴击
  • 0x1F (1+2+4+8+16) - 所有攻击结果
  • 0x2 - 仅暴击触发
AttributesMask INT UNSIGNED 0 属性掩码
详细说明:附魔触发的特殊属性和行为控制。
属性标志:
  • 0x1 - 可以在法术攻击时触发
  • 0x2 - 可以在远程攻击时触发
  • 0x4 - 可以在近战攻击时触发
  • 0x8 - 受到攻击时触发
  • 0x10 - 触发时不消耗充能

触发时机:
  • 主动触发:玩家攻击时触发
  • 被动触发:受到攻击时触发
  • 混合触发:攻击和被攻击都可触发

触发机制详解

概率 vs PPM

两种触发机制的区别:

触发条件组合

多重条件判断:

使用示例

查看所有附魔触发数据

-- 查看所有附魔的触发设置
SELECT EnchantID, Chance, ProcsPerMinute, HitMask, AttributesMask
FROM spell_enchant_proc_data
ORDER BY EnchantID;

添加新的附魔触发

-- 添加火焰武器附魔的触发数据
INSERT INTO spell_enchant_proc_data (EnchantID, Chance, ProcsPerMinute, HitMask, AttributesMask)
VALUES 
(1, 0, 6.0, 3, 4),  -- 火焰武器:6PPM,普通命中和暴击,近战攻击
(2, 15.0, 0, 3, 4); -- 冰霜武器:15%概率,普通命中和暴击,近战攻击

设置特殊触发条件

-- 设置只在暴击时触发的附魔
INSERT INTO spell_enchant_proc_data (EnchantID, Chance, ProcsPerMinute, HitMask, AttributesMask)
VALUES (123, 100.0, 0, 2, 4);  -- 100%概率,仅暴击,近战攻击

-- 设置受到攻击时触发的防御性附魔
INSERT INTO spell_enchant_proc_data (EnchantID, Chance, ProcsPerMinute, HitMask, AttributesMask)
VALUES (456, 0, 3.0, 3, 8);  -- 3PPM,普通命中和暴击,受到攻击时

附魔类型应用

攻击性附魔

防御性附魔

辅助性附魔

平衡设计考虑

武器速度影响

不同武器速度的平衡:

PVP vs PVE平衡

不同环境的考虑:

常见问题

为什么附魔不触发?

检查以下几点:

如何计算PPM?

PPM计算公式:

实际触发概率 = (PPM * 武器速度) / 60
例如:6 PPM的附魔在2.5速度武器上
实际概率 = (6 * 2.5) / 60 = 25%

相关表格