表概述

playercreateinfo_cast_spell表控制角色创建后自动施放的法术。使用raceMask和classMask进行种族/职业位掩码匹配,spell为自动施放的法术ID。不同于playercreateinfo_spell(学会法术),本表是施放法术(如出生动画效果)。

表结构

字段名数据类型默认值说明
raceMaskINT UNSIGNED0种族位掩码
classMaskINT UNSIGNED0职业位掩码
spellINT UNSIGNED0自动施放的法术ID
noteVARCHAR(255)NULL注释说明

重要字段详解

raceMask / classMask (位掩码匹配)

使用位掩码进行种族/职业匹配。raceMask=0表示所有种族,classMask=0表示所有职业。具体种族/职业到掩码的对应关系:

  • 种族掩码:人类=1, 兽人=2, 矮人=4, 暗夜精灵=8, 亡灵=16, 牛头人=32, 侏儒=64, 巨魔=128, 血精灵=512, 德莱尼=1024, 地精=2048
  • 职业掩码:战士=1, 圣骑士=2, 猎人=4, 盗贼=8, 牧师=16, 死亡骑士=32, 萨满=64, 法师=128, 术士=256, 德鲁伊=1024

实战案例

为所有兽人角色创建时播放出生动画
-- raceMask=2(兽人), classMask=0(所有职业)
INSERT INTO playercreateinfo_cast_spell (raceMask, classMask, spell, note)
VALUES (2, 0, 83600, '兽人角色创建出生动画');
查询所有种族的创建施法
SELECT raceMask, classMask, spell, note
FROM playercreateinfo_cast_spell
ORDER BY raceMask, classMask;

常见问题

Q: 与playercreateinfo_spell有何区别?

A: playercreateinfo_spell是角色创建时学会的法术(永久加入技能书),playercreateinfo_cast_spell是创建时施放的法术(一次性效果,如动画)。

Q: 位掩码如何组合多种族/多职业?

A: 使用按位OR运算。例如人类(1)+矮人(4)+侏儒(64)=69作为raceMask,表示这三个种族都适用。