输入至少两个字符

upgrades.yml

文档版本: v1.0.3

升级配置位于:

plugins/KaFurnace/upgrades.yml

首次启动会生成此文件。请在现有文件中修改价格,不要只用下方示例覆盖整份文件:熔炉、炉型、能力和每项等级都需要保留配置。修改后执行 /kf reload;若控制台报告配置错误,修正后再次执行。插件更新会补齐新增项,但不会覆盖你已有的价格。

价格格式#

每个收费节点都使用:

provider: "vault"
price: 1000.0

provider 只支持:

值 要求
vault 安装并启用 Vault,且存在已注册的 Economy 服务
playerpoints 安装并启用 PlayerPoints;price 必须为 0..2147483647 的整数

价格必须是有限非负数字,0 表示仍执行事务但不减少余额。Vault 与 PlayerPoints 均为软依赖;配置使用的提供者不可用时,该项不会按免费处理,而是拒绝购买。

熔炉购买#

furnace_purchase.prices.1 到 .10 分别表示购买第 1 到第 10 座熔炉的价格。initial-furnace-count 免费覆盖的序号不会进入购买事务;设置为 0 时,玩家购买第一座熔炉会使用 prices.1 的提供者和金额。

例如把第二座熔炉的价格改为 800 金币,在现有 furnace_purchase.prices 下找到 2 并修改(其余序号保持原样):

furnace_purchase:
  prices:
    2:
      provider: "vault"
      price: 800.0

类型切换#

type_switch.furnace、type_switch.blast_furnace、type_switch.smoker 是每次切换到对应目标类型的价格。选择当前类型不会扣款。成功切换要求全部虚拟槽为空且已点燃燃料耗尽。

永久能力#

unlocks 下的每项按熔炉独立购买一次:

键 效果
offline_smelting 离线继续熔炼
auto_output_delivery 在线时自动配送产物和经验
completion_notification 全部有效原料完成后通知一次

五类等级#

upgrades 下包含 input_slot、fuel_slot、output_slot、fuel_efficiency、smelting_speed。一级是默认状态,所以每项必须完整配置目标等级 2..6。例如:

upgrades:
  smelting_speed:
    levels:
      2:
        speed_multiplier: 1.2
        provider: "vault"
        price: 1500.0

价格是“从前一级升级到该目标等级”的单次费用。玩家不能跳级。

fuel_efficiency 的 burn_duration_multiplier 和 smelting_speed 的 speed_multiplier 必须是有限正数,并且不能低于前一级倍率。一级倍率固定为 1.0。倍率只作用于新点燃的燃料或新开始的熔炼轮次,热重载和升级都不会重写在途时长。

事务与退款#

购买流程先校验业务状态和余额,再扣款并等待关键数据库写入。数据库失败时,插件恢复内存状态并向原提供者发起一次补偿退款。若退款也失败,控制台会记录玩家 UUID、提供者、金额和原因的 SEVERE 日志;插件无法替代经济后端强制恢复余额,管理员必须按日志人工核对。

玩家操作流程、每项能力的准确触发时机和管理员管理边界见升级系统。