文件概述

SpellVisualKit.dbc 是法术视觉系统的核心组合表。根据 CHM 中文详解:"此DBC 作为视觉效果的补充。比如我们做了一个翅膀的视觉效果,在SpellVisualKitModelAttach.dbc里面已经跟SpellVisualKit.dbc关联,但是我还想在显示翅膀的同时显示别的视觉效果,那么这个DBC 就需要继续填写其他的模型。"

该表整合了三个维度:模型位置(头部/胸部/脚底/左手/右手/呼吸/左武器/右武器)、动画动作(调用AnimationData.dbc)、音频效果(法术音效)和 镜头抖动(屏幕震动效果)。

如果只需要显示 SpellVisualKitModelAttach.dbc 中定义的模型效果(如翅膀),只需填写与 SpellVisualKitModelAttach 关联的ID,其余列(除18-21处为-1)均写0即可。

列结构

列号字段名类型描述
1IDint编号。不可重复的唯一标识符
2StartAnimIDint起始动作ID(CHM:动作ID,调用AnimationData.dbc)。施法开始时播放的动画
3AnimIDint循环动作ID(CHM:动作ID,调用AnimationData.dbc)。施法过程中持续播放的动画
4HeadEffectint头部视觉效果(CHM:头部显示位置)。SpellVisualEffectName.dbc ID
5ChestEffectint胸部视觉效果(CHM:胸部显示位置)。SpellVisualEffectName.dbc ID
6BaseEffectint脚底视觉效果(CHM:脚底显示位置)。SpellVisualEffectName.dbc ID
7LeftHandEffectint左手视觉效果(CHM:左手显示位置)。SpellVisualEffectName.dbc ID
8RightHandEffectint右手视觉效果(CHM:右手显示位置)。SpellVisualEffectName.dbc ID
9BreathEffectint呼吸视觉效果(CHM:呼吸显示位置)。SpellVisualEffectName.dbc ID
10LeftWeaponEffectint左武器视觉效果(CHM:左武器显示位置)。SpellVisualEffectName.dbc ID
11RightWeaponEffectint右武器视觉效果(CHM:右武器显示位置)。SpellVisualEffectName.dbc ID
12-14Unknown_Float[3]float未知浮点参数。通常为默认值
15WorldEffectint施法者自身效果(CHM:作用于施法者本身的视觉效果,在施法动作完成后体现)。SpellVisualEffectName.dbc ID
16SoundIDint声效(CHM:法术的声音)。SoundEntries.dbc ID,控制法术音效
17ShakeIDint镜头抖动(CHM:镜头抖动,如放技能画面像地震一样抖动)。CameraShakes ID
18-21SpecialFlags[4]int特效标志位(CHM:未详细说明,通常设为-1)。控制特殊视觉效果的开关标志
22-30+CharProcs[8]int角色触发效果。特殊角色触发时的视觉效果ID系列,参考 SpellVisualEffectName.dbc

视觉效果位置分布图

角色8个显示部位对应关系

根据 CHM 中文详解,第4-11列分别对应角色身上的8个显示位置:

列号部位典型用途
4头部头盔特效、光环、BUFF指示
5胸部胸甲特效、护盾效果
6脚底光环、地面符文、范围指示
7左手左手施法特效
8右手右手施法特效、武器附魔
9呼吸呼吸/嘴部粒子效果
10左武器左武器附魔效果
11右武器右武器附魔效果

重要字段详解

StartAnimID / AnimID(第2-3列)

这两个列控制法术播放时的角色动画动作。CHM 指出它们"调用AnimationData.dbc"。第2列为施法起始动画(如举起手臂),第3列为循环动画(如持续施法姿势)。AnimationData.dbc 定义了角色的具体动作序列。

SoundID / 音效(第16列)

CHM 详解指出该列控制"法术的声音",引用 SoundEntries.dbc 中的音效ID。当法术施放时,系统根据此列播放对应的音频效果(如火焰法术的燃烧声、冰霜法碎裂声等)。

ShakeID / 镜头抖动(第17列)

CHM 描述该列为"镜头抖动",控制法术施放时屏幕的震动效果(如释放强力技能时画面像地震一样抖动)。通过定义抖动的强度和持续时间来增强法术的打击感和临场感。

使用技巧

制作翅膀效果的最简配置

如果只想要显示翅膀(不带其他特效),CHM 指出只需:

  1. 在 SpellVisualKitModelAttach.dbc 中定义翅膀模型及其显示位置
  2. 在 SpellVisualKit.dbc 中填入与 SpellVisualKitModelAttach 关联的ID
  3. 其他列(除了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引用)——最终与法术关联