SpellVisualKit.dbc
法术视觉套件定义表。作为视觉效果的组合容器,将 SpellVisualKitModelAttach 和 SpellVisualEffectName 中的模型组装为完整的视觉套件,并定义动作动画、音效和镜头抖动。根据 CHM 中文详解,此表共30+列。
文件概述
SpellVisualKit.dbc 是法术视觉系统的核心组合表。根据 CHM 中文详解:"此DBC 作为视觉效果的补充。比如我们做了一个翅膀的视觉效果,在SpellVisualKitModelAttach.dbc里面已经跟SpellVisualKit.dbc关联,但是我还想在显示翅膀的同时显示别的视觉效果,那么这个DBC 就需要继续填写其他的模型。"
该表整合了三个维度:模型位置(头部/胸部/脚底/左手/右手/呼吸/左武器/右武器)、动画动作(调用AnimationData.dbc)、音频效果(法术音效)和 镜头抖动(屏幕震动效果)。
如果只需要显示 SpellVisualKitModelAttach.dbc 中定义的模型效果(如翅膀),只需填写与 SpellVisualKitModelAttach 关联的ID,其余列(除18-21处为-1)均写0即可。
列结构
| 列号 | 字段名 | 类型 | 描述 |
|---|---|---|---|
| 1 | ID | int | 编号。不可重复的唯一标识符 |
| 2 | StartAnimID | int | 起始动作ID(CHM:动作ID,调用AnimationData.dbc)。施法开始时播放的动画 |
| 3 | AnimID | int | 循环动作ID(CHM:动作ID,调用AnimationData.dbc)。施法过程中持续播放的动画 |
| 4 | HeadEffect | int | 头部视觉效果(CHM:头部显示位置)。SpellVisualEffectName.dbc ID |
| 5 | ChestEffect | int | 胸部视觉效果(CHM:胸部显示位置)。SpellVisualEffectName.dbc ID |
| 6 | BaseEffect | int | 脚底视觉效果(CHM:脚底显示位置)。SpellVisualEffectName.dbc ID |
| 7 | LeftHandEffect | int | 左手视觉效果(CHM:左手显示位置)。SpellVisualEffectName.dbc ID |
| 8 | RightHandEffect | int | 右手视觉效果(CHM:右手显示位置)。SpellVisualEffectName.dbc ID |
| 9 | BreathEffect | int | 呼吸视觉效果(CHM:呼吸显示位置)。SpellVisualEffectName.dbc ID |
| 10 | LeftWeaponEffect | int | 左武器视觉效果(CHM:左武器显示位置)。SpellVisualEffectName.dbc ID |
| 11 | RightWeaponEffect | int | 右武器视觉效果(CHM:右武器显示位置)。SpellVisualEffectName.dbc ID |
| 12-14 | Unknown_Float[3] | float | 未知浮点参数。通常为默认值 |
| 15 | WorldEffect | int | 施法者自身效果(CHM:作用于施法者本身的视觉效果,在施法动作完成后体现)。SpellVisualEffectName.dbc ID |
| 16 | SoundID | int | 声效(CHM:法术的声音)。SoundEntries.dbc ID,控制法术音效 |
| 17 | ShakeID | int | 镜头抖动(CHM:镜头抖动,如放技能画面像地震一样抖动)。CameraShakes ID |
| 18-21 | SpecialFlags[4] | int | 特效标志位(CHM:未详细说明,通常设为-1)。控制特殊视觉效果的开关标志 |
| 22-30+ | CharProcs[8] | int | 角色触发效果。特殊角色触发时的视觉效果ID系列,参考 SpellVisualEffectName.dbc |
视觉效果位置分布图
根据 CHM 中文详解,第4-11列分别对应角色身上的8个显示位置:
| 列号 | 部位 | 典型用途 |
|---|---|---|
| 4 | 头部 | 头盔特效、光环、BUFF指示 |
| 5 | 胸部 | 胸甲特效、护盾效果 |
| 6 | 脚底 | 光环、地面符文、范围指示 |
| 7 | 左手 | 左手施法特效 |
| 8 | 右手 | 右手施法特效、武器附魔 |
| 9 | 呼吸 | 呼吸/嘴部粒子效果 |
| 10 | 左武器 | 左武器附魔效果 |
| 11 | 右武器 | 右武器附魔效果 |
重要字段详解
这两个列控制法术播放时的角色动画动作。CHM 指出它们"调用AnimationData.dbc"。第2列为施法起始动画(如举起手臂),第3列为循环动画(如持续施法姿势)。AnimationData.dbc 定义了角色的具体动作序列。
CHM 详解指出该列控制"法术的声音",引用 SoundEntries.dbc 中的音效ID。当法术施放时,系统根据此列播放对应的音频效果(如火焰法术的燃烧声、冰霜法碎裂声等)。
CHM 描述该列为"镜头抖动",控制法术施放时屏幕的震动效果(如释放强力技能时画面像地震一样抖动)。通过定义抖动的强度和持续时间来增强法术的打击感和临场感。
使用技巧
如果只想要显示翅膀(不带其他特效),CHM 指出只需:
- 在 SpellVisualKitModelAttach.dbc 中定义翅膀模型及其显示位置
- 在 SpellVisualKit.dbc 中填入与 SpellVisualKitModelAttach 关联的ID
- 其他列(除了18-21设为-1)均写0即可
如果要在翅膀的基础上叠加其他视觉特效,则在对应的部位列中填入 SpellVisualEffectName.dbc 的ID。
- SpellVisualKitModelAttach.dbc(第2列 SpellVisualKitID)——定义挂载模型
- SpellVisualKitAreaModel.dbc(SpellVisualKitID)——定义区域模型效果
- SpellVisualEffectName.dbc(多处引用)——提供模型资源
- AnimationData.dbc(第2-3列)——提供动画动作
- SoundEntries.dbc(第16列)——提供音效资源
- SpellVisual.dbc(通过ID引用)——最终与法术关联