跳转到内容

奖励配置

QueDP 提供两种奖励配置文件:rewards.yml(直接发放奖励)和 chest_rewards.yml(箱子UI选择奖励)。

rewards:
通关奖励:
items:
- type: item
id: DIAMOND
amount: 5
- type: mythic_item # MythicMobs 物品
id: legendary_sword
amount: 1
money: 1000 # 金钱,需要 Vault(键名 money 或 金钱)
exp: 500 # 经验(键名 exp 或 经验)
commands: # 控制台命令,%player% 替换为玩家名
- "give %player% golden_apple 3"
rewards:
随机宝箱:
type: random
options:
普通:
weight: 70
items:
- type: item
id: IRON_INGOT
amount: 10
稀有:
weight: 25
items:
- type: item
id: DIAMOND
amount: 3
传说:
weight: 5
items:
- type: mythic_item
id: epic_weapon
amount: 1
money: 5000
类型说明
item / minecraft原版 Minecraft 物品(Material 名称)
mythic_item / mm_itemMythicMobs 自定义物品

随机奖励可以加一段 保底:抽了 N 次没出指定项,第 N 次必出。计数按玩家保存,跨副本、跨重启保留。

rewards:
随机宝箱:
type: random
保底:
次数: 30 # 第 30 次必出
必出: 传说 # options 里的某个 key
options:
普通: { weight: 70, items: [{ type: item, id: IRON_INGOT, amount: 10 }] }
传说: { weight: 5, items: [{ type: mythic_item, id: epic_weapon, amount: 1 }] }
键(中/英)必填默认说明
次数 / hard是—硬保底次数
必出 / target是—options 里的 key,不存在会在加载时 warn 并忽略保底
软保底起始 / soft_from否0从第几次开始提权,0 = 不启用
软保底增幅 / soft_step否2.0从起始次数起,每次未出目标项权重乘以该值
计数域 / scope否副本副本 = 按 副本ID:奖励名 计数;全局 = 同名奖励跨副本共用

抽中必出项时计数清零。没有 保底 段的随机奖励走纯权重随机,和以前一样。

编辑器里:/dg edit 主界面 → 掉落保底,列出本副本的随机奖励,开关保底、调次数、从选项里点选必出项,直接写回 rewards.yml(注释会丢,其余内容不动)。

相关:

位置说明
dungeon.getPity(player, '随机宝箱')脚本查询当前未出次数
%quedp_pity_随机宝箱%当前未出次数
%quedp_pity_left_随机宝箱%距硬保底还差几次
/dg admin pity <玩家>查看全部计数
/dg admin pity <玩家> reset [计数键]重置,不带键清全部

多个副本共用一套奖励:把奖励写进 plugins/QueDP/loot/ 下的任意 yml(目录不存在就没有这个功能,不会自动创建):

# plugins/QueDP/loot/通用材料.yml
id: 通用材料 # 可省略,默认用文件名
奖励:
材料包:
type: random
保底: { 次数: 40, 必出: 稀有材料 }
options:
普通材料: { weight: 80, items: [{ type: item, id: IRON_INGOT, amount: 8 }] }
稀有材料: { weight: 20, items: [{ type: item, id: DIAMOND, amount: 2 }] }

副本 rewards.yml 顶层加一行引用,库里的奖励名就能直接被 action.grant_reward 和箱子 UI 使用:

引用: [通用材料]
奖励:
通关奖励:
money: 1000
  • 副本自己定义的同名奖励优先于库,加载时打一条 info
  • action.grant_reward('@all', '通用材料:材料包') 可以显式指定库
  • 引用了不存在的库会在加载时 warn 并指出副本名;库不能再引用库
  • 库里随机奖励的保底默认按「引用它的副本」分别计数,想跨副本共用写 计数域: 全局
  • /dg admin loot list 查看已加载的库,/dg admin loot reload 只重载库

箱子奖励以 GUI 界面的形式让玩家选择奖励。

chests:
普通宝箱:
title: "&6&l✦ 普通宝箱 ✦"
rows: 3 # GUI 行数(1-6,默认 3)
mode: single # single = 只能选一个(默认 single)
max_select: 1 # multiple 模式下可选数量上限(默认 1,single/all 忽略)
background: BLACK_STAINED_GLASS_PANE # 背景填充材质(可选)
options:
- slot: 11
icon: DIAMOND
name: "&b钻石奖励"
lore:
- "&7获得 5 颗钻石"
reward: 钻石奖励 # 关联 rewards.yml 中的奖励名
- slot: 13
icon: GOLD_INGOT
name: "&6金币奖励"
lore:
- "&7获得 1000 金币"
reward: 金币奖励
- slot: 15
icon: EXPERIENCE_BOTTLE
name: "&a经验奖励"
lore:
- "&7获得 500 经验"
reward: 经验奖励
模式说明
single只能选择一个选项(默认)
multiple可以选择多个,数量受 max_select 限制
all获得所有选项
字段中文键默认值说明
slot槽位0物品所在槽位(0-53)
icon图标CHEST显示的物品图标(Material 名称,无效时回退为 CHEST)
name名称&7奖励显示名称(支持颜色代码 &)
lore描述空描述文本列表
reward奖励空关联 rewards.yml 中的奖励名