表概述

dungeon_access_template表是副本进入系统的核心模板表,定义了每个副本实例的访问模板。配合dungeon_access_requirements表,可以组合等级限制、装备等级限制和特殊条件(成就/任务/物品)。

主键为 id(自增),map_id关联instance_template,difficulty区分普通/英雄难度。

表结构

字段名数据类型默认值说明
idTINYINT UNSIGNEDAUTO_INCREMENT模板唯一ID(主键,自增)
map_idINT UNSIGNEDNULL地图ID(来自instance_template)
difficultyTINYINT UNSIGNED0难度级别
min_levelTINYINT UNSIGNEDNULL最低等级要求
max_levelTINYINT UNSIGNEDNULL最高等级限制
min_avg_item_levelSMALLINT UNSIGNEDNULL最低平均装备等级
commentVARCHAR(255)NULL副本名称/难度描述

重要字段详解

difficulty (难度级别)

副本难度编码:

  • 5人本:0=普通 1=英雄 2=史诗(未实装)
  • 10人本:0=普通 2=英雄
  • 25人本:1=普通 3=英雄
min_avg_item_level (装备等级门槛)

队伍平均装备等级必须>=该值才能排队进入。NULL表示不限制。英雄5人本通常设置180-200,团本根据阶段设置更高值(如ICC英雄25人需要251+)。

实战案例

配置英雄乌特加德之巅的进入条件
INSERT INTO dungeon_access_template (id, map_id, difficulty, min_level, max_level, min_avg_item_level, comment)
VALUES (30, 575, 1, 80, 80, 180, '乌特加德之巅-英雄模式');
查询所有英雄副本的配置
SELECT dat.id, dat.comment, dat.map_id, dat.difficulty,
       dat.min_level, dat.min_avg_item_level
FROM dungeon_access_template dat
WHERE dat.difficulty IN (1, 2, 3)
ORDER BY dat.id;

常见问题

Q: 如何设置仅特定等级可排?

A: 设置min_level和max_level。如果只设置min_level,无上限;只设置max_level,无下限。NULL表示不检查该项。

Q: 模板表和条件表的关系?

A: dungeon_access_template定义基本参数(等级、装备等级、难度),dungeon_access_requirements通过dungeon_access_id外键绑定额外的特殊条件(成就/任务/物品)。