pet_levelstats 表
pet_levelstats表定义猎人宠物和术士恶魔等召唤生物在不同等级时的属性值,包括生命、法力、护甲和各项属性。
表概述
pet_levelstats表为每种宠物类型定义了从1级到最高等级各等级的基础属性值。当宠物升级时,系统查询此表获取对应等级的基础生命值、法力值、护甲、力量、敏捷、耐力、智力、精神和伤害范围。
主键为 (creature_entry, level),每条记录对应一种宠物类型在特定等级下的完整属性配置。
表结构
| 字段名 | 数据类型 | 默认值 | 说明 |
|---|---|---|---|
| creature_entry | INT UNSIGNED | NOT NULL | 宠物生物entry ID,对应creature_template.entry |
| level | TINYINT UNSIGNED | NOT NULL | 宠物等级 |
| hp | INT UNSIGNED | 0 | 基础生命值 |
| mana | INT UNSIGNED | 0 | 基础法力值 |
| armor | INT UNSIGNED | 0 | 基础护甲值 |
| str | INT UNSIGNED | 0 | 力量属性 |
| agi | INT UNSIGNED | 0 | 敏捷属性 |
| sta | INT UNSIGNED | 0 | 耐力属性 |
| inte | INT UNSIGNED | 0 | 智力属性 |
| spi | INT UNSIGNED | 0 | 精神属性 |
| min_dmg | INT UNSIGNED | 0 | 最小物理伤害 |
| max_dmg | INT UNSIGNED | 0 | 最大物理伤害 |
重要字段详解
creature_entry (宠物类型)
定义宠物所属的生物类型。常见宠物类型:
- 1 - 通用宠物(默认猎人宠物基值)
- 狼、熊、猫等具体生物entry
- 术士恶魔 - 小鬼、虚空行者、魅魔、地狱猎犬等
基础属性 (hp, mana, armor, str, agi, sta, inte, spi)
每个等级的基础属性值,实际宠物属性会在此基础上根据宠物类型和主人属性进行加成计算。
宠物实际生命值 = 基础hp + 耐力加成 + 天赋加成
min_dmg / max_dmg (伤害范围)
定义宠物在对应等级的基础物理伤害范围。这是计算宠物自动攻击伤害的基准值。
实战案例
查询通用宠物(entry=1)所有等级的属性:
SELECT level, hp, mana, armor, str, agi, sta, inte, spi, min_dmg, max_dmg
FROM pet_levelstats
WHERE creature_entry = 1
ORDER BY level;
对比两种宠物在等级60时的属性:
SELECT creature_entry, hp, armor, str, agi, sta, min_dmg, max_dmg
FROM pet_levelstats
WHERE level = 60 AND creature_entry IN (1, 416)
ORDER BY creature_entry;
为自定义宠物添加等级属性:
INSERT INTO pet_levelstats (creature_entry, level, hp, mana, armor, str, agi, sta, inte, spi, min_dmg, max_dmg)
VALUES (99999, 1, 40, 60, 20, 10, 10, 10, 10, 10, 1, 2);
常见问题
Q: 宠物升级后属性没有变化,如何排查?
检查pet_levelstats表中是否有该creature_entry的所有等级记录。如果缺少特定等级的数据,宠物升级时属性不会正常更新。
Q: 如何调整所有宠物的属性倍率?
可以在worldserver.conf中通过宠物属性倍率配置项调整,或在pet_levelstats表中修改具体数值。