lfg_dungeon_rewards 表
lfg_dungeon_rewards表配置随机地下城查找器(LFD)的奖励任务,区分首次奖励和后续奖励。
表概述
lfg_dungeon_rewards表定义了随机地下城系统的奖励机制。每条记录按副本ID和等级上限区分,firstQuestId为当天首次完成随机副本的奖励任务,otherQuestId为后续完成的奖励任务。
主键为 (dungeonId, maxLevel),奖励通过任务系统的隐藏任务实现。玩家不会在任务日志中看到,但会收到奖励弹窗。
表结构
| 字段名 | 数据类型 | 默认值 | 说明 |
|---|---|---|---|
| dungeonId | INT UNSIGNED | 0 | 副本ID(主键,来自LFGDungeons.dbc) |
| maxLevel | TINYINT UNSIGNED | 0 | 等级上限(主键,≤此等级可获得奖励) |
| firstQuestId | INT UNSIGNED | 0 | 当天首次完成随机副本的奖励任务ID |
| otherQuestId | INT UNSIGNED | 0 | 同一天后续完成随机副本的奖励任务ID |
重要字段详解
dungeonId (副本类型)
来自LFGDungeons.dbc的ID,标识副本类型。常见值:
- 258 - 随机巫妖王经典5人本
- 259 - 随机巫妖王英雄5人本
- 261 - 随机大地的裂变5人本
firstQuestId vs otherQuestId
firstQuestId提供丰厚奖励(金币+勇气点数/英雄纹章),每天仅一次。otherQuestId提供少量奖励,可多次获得。两者都是隐藏任务,通过quest_template配置具体奖励物品。
实战案例
为巫妖王英雄本配置奖励
INSERT INTO lfg_dungeon_rewards (dungeonId, maxLevel, firstQuestId, otherQuestId)
VALUES (259, 80, 65001, 65002);
-- 65001: 当天首次完成获得2个凯旋纹章 + 金币
-- 65002: 后续完成获得金币
查询所有副本类型的奖励配置
SELECT lr.dungeonId, ld.name AS dungeon_name,
lr.maxLevel, lr.firstQuestId, lr.otherQuestId
FROM lfg_dungeon_rewards lr
LEFT JOIN lfgdungeons_dbc ld ON lr.dungeonId = ld.ID
ORDER BY lr.dungeonId, lr.maxLevel;
常见问题
Q: 随机副本完成后没有奖励?
A: 检查lfg_dungeon_rewards表中该副本类型和玩家等级范围是否匹配。firstQuestId/otherQuestId对应的任务必须在quest_template中正确配置奖励。同时确认instance_encounters中lastEncounterDungeon已标记最终Boss。
Q: maxLevel如何工作?
A: 玩家等级<=maxLevel的记录才会参与匹配。如果同一个dungeonId有多条记录对应不同maxLevel,系统选择maxLevel最小但>=玩家等级的那一条。这允许不同等级范围获得不同奖励。