战利品注入器

战利品注入器

这个模组增加了一项功能,可以在自定义箱子或自定义的模组/原版结构中添加自定义的原版/模组物品!

冒险

战利品注入器

通过简单的 JSON 配置文件,向游戏中任何箱子(原版或模组)注入自定义战利品。无需编写代码。


✦ 功能特性

  • 注入任何战利品表 — 地牢、堡垒、要塞、村庄、沉船、模组建筑、生物掉落、钓鱼战利品等
  • 兼容所有模组 — 采用 Forge 注册表多阶段查找机制,支持所有模组的物品
  • 加权概率 — 每个物品在每次打开箱子时拥有独立的掉落几率(0.01%–100%)
  • 浮点数数量 — 最小/最大堆叠数支持小数(例如 1.5 平均值为 2)
  • 完整 NBT 支持 — 可为物品附加任意 SNBT 标签;适合使用泛型物品配合 NBT 变体的模组
  • 自定义战利品箱 — 定义具名箱子配置并通过指令给予玩家;每次给予时预生成物品
  • 游戏内 GUI 编辑器 — 无需接触文件即可浏览、添加、编辑和删除战利品规则
  • 实时 JSON 预览 — 原始 JSON 标签页显示编辑时的精确文件内容
  • 热重载 — 通过 /structureloot reload 应用配置更改,无需重启服务器
  • 导入/导出 — 通过 /structureloot export 和 import 以 ZIP 配置文件形式分享配置集
  • 验证指令 — /structureloot validate 扫描所有物品 ID 并即时报告错误
  • 调试指令 — /structureloot debug items <模组id> 列出任意模组的所有物品;debug item <物品id> 测试单个物品的查找

✦ 工作原理

将 .json 文件放入 .minecraft/config/structureloot/pools/ 目录,模组会在运行时将你的物品注入对应战利品表——无需数据包、无需 /reload、无需重启。

{
  "target_loot_table": "minecraft:chests/simple_dungeon",
  "enabled": true,
  "inject_items": [
    { "item": "minecraft:diamond",  "weight": 10.0, "min_count": 1.0, "max_count": 3.0 },
    { "item": "examplemod:rare_sword", "weight": 2.0, "min_count": 1.0, "max_count": 1.0,
      "nbt": "{display:{Name:'{\"text\":\"Ancient Blade\"}'}}" }
  ]
}

weight 字段是 每次打开箱子的百分比几率(而非权重池)。weight: 10.0 表示每次打开该箱子时有 10% 的几率出现。


✦ 自定义战利品箱

在 config/structureloot/chests/ 中定义一个具名箱子配置,然后通过指令将其给予任意玩家:

/structureloot chest get mythic_chest

玩家将获得一个内含预生成物品的具名箱子。GUI 允许你管理配置、添加物品、设置抽取次数,以及直接编辑所有内容,无需编辑文件。


✦ 指令

所有指令需要 OP 等级 2。

指令 描述
/structureloot reload 重载所有 JSON 配置
/structureloot list 列出所有活跃的池规则
/structureloot validate 检查所有物品 ID 是否存在错误
/structureloot export <名称> 将配置导出为 ZIP
/structureloot import <文件> 导入 ZIP 配置文件
/structureloot chest get <配置名> 给予一个自定义战利品箱
/structureloot chest list 列出所有箱子配置
/structureloot debug items <模组id> 列出指定模组的已注册物品
/structureloot debug item <物品id> 测试特定物品 ID

✦ GUI 编辑器

按下 K 键(可在控制 → Structure Loot Injector 中重新绑定)打开。

编辑器提供完整的三面板界面:

  • 战利品池 — 管理每个战利品表的注入规则
  • 条目标签页 — 通过权重条和数量范围添加/编辑/移除物品
  • 原始 JSON 标签页 — 实时语法高亮的配置文件视图
  • 自定义箱子 — 管理具名箱子配置,包含必出和加权随机物品池

✦ 查找物品 ID

  1. 在游戏中按下 F3+H 启用高级提示
  2. 鼠标悬停在任意物品上——注册表 ID 会显示在提示底部
  3. 对于使用 NBT 物品变体的模组,完整 NBT 标签也会一并显示

或者使用内置指令:

/structureloot debug items <模组id>

✦ 兼容性

  • Minecraft 1.20.1 · Forge 47.2.0+
  • 仅服务端(客户端无需安装模组)
  • 兼容所有使用标准 Forge 物品注册的模组
  • 采用 Forge 的全局战利品修改器系统——不会与其他战利品模组冲突