Skip to content

奖励.yml

奖励.yml 负责副本通关结算。

这一页管四件事:

  • 每个人固定拿到什么
  • 副本自己的掉落池抽什么
  • 多人队伍的掉落分配
  • 通关后还要补什么脚本奖励

结算顺序

源码当前的结算顺序是固定的:

  1. 先发 固定奖励
  2. 再按 分配模式 处理 掉落池
  3. 最后执行 奖励脚本

奖励脚本 会对当前副本里在线玩家逐个执行,不是整队只跑一次。

一份能直接改的示例

yaml
固定奖励:
  金币: 1000
  经验: 300
  物品:
    - 物品ID: 'mc:DIAMOND'
      数量: 3
    - 物品ID: 'ni:副本宝箱'
      数量: 1
  命令:
    - 'lp user {player} permission set dungeon.clear.example true'

掉落池:
  普通池:
    抽取次数: 2
    不重复: false
    物品列表:
      - 物品ID: 'mc:GOLD_INGOT'
        数量: 8
        权重: 50
      - 物品ID: 'mc:DIAMOND'
        数量: 1
        权重: 10
  稀有池:
    条件: '@dungeon.elapsed <= 600'
    抽取次数: 1
    物品列表:
      - 物品ID: 'ni:竞速奖励箱'
        数量: 1
        权重: 1
    保底:
      计数上限: 20
      保底物品: 'ni:竞速奖励箱'

分配模式: 每人独立

奖励脚本: |
  消息.发送("&6通关奖励已发放")

顶层字段

字段说明
固定奖励每个在线结算玩家都能拿到的保底奖励
掉落池这个副本专属的掉落池
分配模式多人掉落分配方式
奖励脚本结构化奖励发完后,对每名在线玩家再执行一次脚本

固定奖励

固定奖励 当前支持这几种内容:

字段说明
金币发经济插件货币
经验发原版经验
物品物品列表
命令控制台命令列表,支持 {player}

物品 列表字段

字段说明
物品ID物品引用,支持原版和接入物品源
数量发放数量

固定奖励和分配模式无关。

只要玩家在结算时在线,固定奖励就会照常发到每个人头上。

掉落池

奖励.yml 里的 掉落池,和全局掉落方案用的是同一套池结构。

也就是说,这里的池同样支持:

  • 抽取次数
  • 不重复
  • 条件
  • 物品列表
  • 保底

池里单个物品条目的字段,也和全局掉落方案保持一致。

详细字段说明可以直接看 全局掉落方案

分配模式

当前实际可用的分配模式有三种:

每人独立

每名在线玩家各自抽自己的一份掉落池。

适合:

  • 日常本
  • 刷材料本
  • 不想抢奖励的多人本

这是最稳的一种模式,也是默认模式。

轮流分配

掉落池结果按玩家顺序轮流发下去。

固定奖励仍然是每个人都有,只有掉落池部分走轮流。

适合:

  • 小队合作本
  • 想减少重复掉落、又不想手动分配的副本

队伍共享

源码当前会把队伍共享掉落先抽出来,暂存在待分配列表里。

仓库里已经有分配 GUI 类,但当前通关结算流程没有自动把这个 GUI 打开出来。也就是说,普通配置下它不会像 每人独立轮流分配 那样直接完整走完。

正式服现阶段更建议用:

  • 每人独立
  • 轮流分配

奖励脚本

奖励脚本 的执行时机在结构化奖励之后。

它的特点有两个:

  • 是对在线玩家逐个执行
  • 有玩家上下文,适合发消息、补变量、记成就、加外部仓库物品

这类内容适合放在奖励脚本里:

  • 个人提示
  • 个人成就变量
  • 通关次数统计
  • 需要玩家对象的外部发奖逻辑

这类内容更适合放在结构化奖励里:

  • 稳定保底物品
  • 通关金币
  • 基础经验
  • 常规掉落池随机

在线结算规则

源码当前发奖时只处理“结算那一刻还在线的玩家”。

这会影响三部分:

  • 固定奖励
  • 掉落池奖励
  • 奖励脚本

如果有人在通关结算前已经离线,这一轮不会自动把这些奖励补发给他。

多人本做奖励设计时,最好先把这个前提考虑进去。

和全局掉落方案的关系

奖励.yml 适合放这个副本自己独有的掉落。

如果你服里有很多副本共用一套掉落池,更适合写进 掉落方案/

源码当前允许两者同时存在:

  • 全局掉落方案照常生效
  • 奖励.yml 里的副本专属掉落池也会一起生效

配置建议

  • 稳定奖励放 固定奖励,随机惊喜放 掉落池
  • 多人日常本优先用 每人独立
  • 想控制总掉落量,又不想手动发,就用 轮流分配
  • 复杂逻辑奖励放 奖励脚本,别把所有发奖都塞进命令列表。
  • 共享分配模式在当前版本先别直接当正式配置主力。

下一步阅读

TQ Minecraft Server Plugin Docs