character_skills 技能等级表

存储角色的专业技能和武器技能等级数据

官方文档来源

表概述

character_skills 表记录角色的所有技能(Skill)的当前等级和最大等级。包括两大类:专业技能(如采矿、炼金、附魔)和武器技能(如剑、斧、弓)。

每行代表一个角色的一个技能。联合主键 (guid, skill) 确保每个角色每种技能只有一条记录。value 表示当前技能点数,max 表示可达到的最大值,此表与 SkillLine.dbc 配合使用来确定技能的具体名称和类别。

value 不能超过 max,max 受角色等级限制。当提升技能等级时 value 增加;当升级时 max 随之提高。

表结构

字段名类型说明
guidINT UNSIGNED角色全局唯一标识符(联合主键)
skillSMALLINT UNSIGNED技能ID(联合主键,对应 SkillLine.dbc 的 ID)
valueSMALLINT UNSIGNED当前技能点数(熟练度)
maxSMALLINT UNSIGNED当前可达到的最大技能点数

核心字段说明

value 和 max 的区别

valuemax说明
175刚学了采矿(初级),当前1点,最高75点
250300采矿练到250/300
300375采矿到300并突破上限到375(外域阶段)
450450采矿已满级(450/450,WLK上限)

角色每升一级,技能 max 值会自动提升。例如角色5级时 max=75,20级时 max=150。300-375 和 375-450 分别需要购买突破技能书。

常用专业技能ID

技能ID技能名称类别WLK上限
129急救辅助技能450
164锻造主要专业技能450
165制皮主要专业技能450
171炼金术主要专业技能450
182草药学采集专业450
185烹饪辅助技能450
186采矿采集专业450
197裁缝主要专业技能450
202工程学主要专业技能450
333附魔主要专业技能450
356钓鱼辅助技能450
393剥皮采集专业450
755珠宝加工主要专业技能450
762骑术辅助技能300
773铭文主要专业技能450

常用武器技能ID

技能ID武器类型常见使用职业
43战士、圣骑士、盗贼
44战士、圣骑士、萨满
54战士、圣骑士、萨满
95防御战士、圣骑士
136法杖法师、术士、牧师、德鲁伊
162徒手所有职业
173匕首盗贼、法师、术士
228魔杖法师、术士、牧师

实际案例

查看角色的专业技能

-- 查询指定角色的专业技能,排除武器技能 SELECT skill, value, max, ROUND(value / max * 100, 1) AS 进度百分比 FROM character_skills WHERE guid = 1 AND skill IN (171, 333, 186, 164) ORDER BY value DESC;

设置角色的技能等级

-- 将某个角色的采矿技能设为满级(需离线执行) INSERT INTO character_skills (guid, skill, value, max) VALUES (1, 186, 1, 450) ON DUPLICATE KEY UPDATE value = 450, max = 450;

统计服务器中满级专业角色的数量

-- 统计采矿达到450满级的角色数量 SELECT COUNT(DISTINCT guid) AS 满级采矿角色数 FROM character_skills WHERE skill = 186 AND value >= 450;

常见问题

Q1: value 超过 max 值是否正常?
通常情况下 value 不应超过 max。但某些种族/职业的初始技能加成可能造成短暂的不一致。发现 value > max 应通过游戏内机制(如遗忘再学习)来修复。
Q2: 为什么有些角色的技能 max 值不同?
max 值主要取决于角色等级。1-300 段每升一级提升5点上限;300-375 和 375-450 分别需要购买外域和诺森德的专业技能书来解锁。
Q3: 一个角色最多能学几个主要专业技能?
魔兽世界限制每个角色最多2个主要专业技能(锻造、制皮、炼金等)。辅助技能(钓鱼、烹饪、急救)和骑术没有数量限制。如果通过数据库强行添加超过2个,服务器核心可能会在角色登录时检测并修正。