playercreateinfo_skills 表
playercreateinfo_skills表定义新角色创建时初始掌握的技能,使用种族掩码和职业掩码批量配置。
表概述
playercreateinfo_skills表使用种族掩码(raceMask)和职业掩码(classMask)来控制新角色初始拥有的武器技能、专业技能和其他技能。
主键为 (raceMask, classMask, skill),通过位掩码方式可以一条记录覆盖多种种族/职业组合,实现高效批量配置。
表结构
| 字段名 | 数据类型 | 默认值 | 说明 |
|---|---|---|---|
| raceMask | INT UNSIGNED | NOT NULL | 种族位掩码 |
| classMask | INT UNSIGNED | NOT NULL | 职业位掩码 |
| skill | SMALLINT UNSIGNED | NOT NULL | 技能ID,对应SkillLine.dbc |
| rank | SMALLINT UNSIGNED | 0 | 初始技能等级 |
| comment | VARCHAR(255) | NULL | 技能说明注释 |
重要字段详解
raceMask (种族位掩码)
通过位掩码指定适用种族,一条记录可同时适用于多个种族:
1(0x001) - 人类2(0x002) - 兽人4(0x004) - 矮人8(0x008) - 暗夜精灵16(0x010) - 亡灵32(0x020) - 牛头人64(0x040) - 侏儒128(0x080) - 巨魔1024(0x400) - 血精灵2048(0x800) - 德莱尼1791- 所有联盟种族690- 所有部落种族
classMask (职业位掩码)
通过位掩码指定适用职业:
1- 战士2- 圣骑士4- 猎人8- 盗贼16- 牧师32- 死亡骑士64- 萨满128- 法师256- 术士1024- 德鲁伊
skill (技能ID)
对应SkillLine.dbc中的技能ID。常用初始技能:
- 武器技能 - 单手剑(43)、双手剑(55)、匕首(173)等
- 种族技能 - 人类剑专精、兽人斧专精等
- 语言技能 - 通用语(98)、兽人语(109)等
实战案例
查询所有职业的初始技能配置:
SELECT raceMask, classMask, skill, rank, comment
FROM playercreateinfo_skills
ORDER BY classMask, skill;
为所有职业添加新的初始技能:
INSERT INTO playercreateinfo_skills (raceMask, classMask, skill, rank, comment)
VALUES (4095, 2047, 999, 1, '新增通用初始技能');
为联盟所有职业添加新语言:
INSERT INTO playercreateinfo_skills (raceMask, classMask, skill, rank, comment)
VALUES (1791, 2047, 1, 300, '联盟通用语言');
常见问题
Q: 如何计算raceMask/classMask的值?
将需要包含的种族/职业对应的掩码值相加即可。如包含人类(1)和矮人(4)的raceMask = 1+4 = 5。
Q: 新建角色缺少某技能,如何排查?
检查playercreateinfo_skills表中raceMask和classMask是否覆盖该角色的种族和职业。