战利品生成管理器

战利品生成管理器

一个强大的Minecraft Forge 1.16.5模组,用于管理基于坐标的战利品生成并带有DayZ机制。

战利品生成管理器

一款强大的 Minecraft Forge 1.16.5 管理工具,用于基于坐标的战利品生成——仿《DayZ》/《逃离塔科夫》风格。在世界中定义点,将它们绑定到战利品模板,让调度器在可配置的计时器上投放可配置的物品。一切通过游戏内 GUI 驱动;日常操作无需指令。

版本: 0.0.9 · Minecraft: 1.16.5 · Forge: 36.2.42 · Java: 8


亮点

  • 基于坐标生成 — 点是世界位置,而非方块
  • 5 种生成模式 — GROUND、RADIUS、ONLY_IF_EMPTY、REPLACE_OLD、ADDITIVE
  • 两种物品选择模式 — 几率模式(每件物品 0–100%)或权重池
  • 每个点自定义战利品 — 在单个点上覆盖模板的物品
  • 快速创建点 — 魔杖(右键)和区域画笔(批量模式)
  • 交互式地图 — 在可缩放坐标网格上查看所有生成点;拖拽重新定位;按模板过滤
  • 时间窗口调度 — 点仅在设定时段内激活(例如 22:00–06:00)
  • 模板优先级 — 当多个点在同一个游戏刻生成时用作决胜规则
  • 实时监控 — 事件流、每个点的统计信息、健康检查
  • 安全性 — 10 级撤销、一键备份恢复、管理员日志、权限委派、破坏性操作确认对话框
  • 多管理员感知 — 数据变更时其他管理员会收到提示通知
  • 可视化战利品网格 — 在模板编辑器中切换列表视图和图标网格视图;悬停查看统计信息
  • 按模板导出 — 一键将模板导出至 exports/template_NAME.json,不影响其所在组
  • 可扩展 — 分块同步(每个数据包 ≤10 个点)支持数万个点
  • 9 种语言,每个控件都带有悬停提示

快速入门

  1. 将 JAR 放入服务器的 mods 文件夹(服务端;客户端也需要它)。
  2. 以管理员身份加入游戏(OP 等级 2)— 你将自动获得访问权限。
  3. 按下 L 键(可在 选项 → 控制 中重新绑定)或运行 /lootmanager menu 打开 GUI。

基本流程

组  →  模板  →  物品        (生成什么)
                  ↘ 生成点   (在哪里生成)
  1. 创建一个组(例如 "军事战利品")— 用于组织模板。
  2. 在其中创建一个模板,并设置重生计时器。
  3. 添加物品 — 输入物品 ID,点击 从手中 获取你手持的物品,或从实时建议中选择。
  4. 创建点 — 站在世界中点击 "在当前位置创建",或使用魔杖。
  5. 绑定 点到模板。它们将开始按计时器生成。

游戏内工具

工具 获取方式 功能
战利品生成魔杖 工具标签页 → "给我一根魔杖" 右键点击方块创建点;Shift+右键移除最近的点
区域画笔 工具标签页 → "给我一个区域画笔" 右键点击两个对角 → 批量生成点(网格/随机/地面)
传送 在点卡片上点击 [T] 跳转到该点所在的维度
测试生成 在点卡片上点击 [?] 立即触发一次生成,忽略计时器
时间窗口 在点卡片上点击 [S] 设置活跃时段(预设:夜晚/白天/始终)
点战利品 在点卡片上点击 [I] 为该点赋予其自己的战利品表

GUI 地图

  • 主菜单 — 组列表、搜索、统计徽章、工具按钮
  • 组详情 — 组内的模板、批量计时器、复制 [Copy]、重命名 [R]、导出
  • 模板详情 — 三个区域:⚡ 生成行为 · 🎲 物品选择 · 📦 战利品池
  • 生成点列表 — 卡片布局:状态圆点、名称、徽章、操作图标;状态筛选、排序、搜索、维度筛选
  • 地图 — 所有点的俯视坐标网格;滚轮缩放;拖拽平移;点击点打开;拖拽点移动;通过图例按模板筛选
  • 工具 — 魔杖/画笔、撤销、移动点、按物品查找、导入、实时事件、健康检查、备份恢复
  • 添加物品 — 实时图标预览、有效性边框、"从手中"按钮、建议
  • 模拟器 — 运行 N 次生成,查看物品掉落百分比(带柱状图)
  • 粒子设置 — 按模板设置粒子类型 + 可见范围
  • 确认对话框 — 所有破坏性操作(删除组/模板/点、恢复备份)的模式叠加层

生成模式

模式 行为
GROUND 在精确坐标处生成
RADIUS 在最小/最大半径范围内随机位置生成
ONLY_IF_EMPTY 如果 2 格范围内已有物品则跳过
REPLACE_OLD 清空区域,然后生成
ADDITIVE 最多添加 maxItemsPerSpawn 件物品,保留已有物品

物品选择

  • 几率模式 — 每件物品独立随机判定(0–100%)。适用于多件物品一起掉落的真实战利品表。
  • 权重模式 — 从权重池中选取 maxWeightedPicks 件物品。权重越高,被选中的可能性越大。

每个点的自定义战利品使用该点自身的物品列表,但继承所绑定模板的模式和选取数量。


指令 (/lootmanager 或 /lm)

/lm menu                                  打开 GUI
/lm reload                                从磁盘重新加载数据
/lm group create <名称>
/lm template create <组名> <名称> <秒数>
/lm template additem <模板名> <物品ID> <最小值> <最大值> <几率>
/lm point create <名称>                   在你所在位置创建
/lm point bind <点名称> <模板名>
/lm point clear <名称>
/lm point list
/lm timer set <模板名> <秒数>
/lm timer setall <组名> <秒数>
/lm show all  |  /lm hide                 粒子可视化
/lm spawn test <点名称>
/lm perm grant <玩家名> <0-3>             NONE / VIEW / EDIT / ADMIN
/lm perm revoke <玩家名>
/lm perm list

权限

等级 名称 可执行操作
0 NONE 无操作
1 VIEW 打开和读取 GUI
2 EDIT 对组/模板/点的完全增删改查
3 ADMIN + 魔杖/画笔、撤销、权限管理、区域生成

OP 等级 2+ 隐式拥有 ADMIN 权限。通过 /lm perm grant 将权限委派给非 OP 管理员。


数据与存储

config/lootmanager/
├── config.json          可调参数(区域上限、数据包大小、保存间隔……)
├── groups.json          组定义
├── templates.json       带物品和设置的模板
├── points.json          点、绑定、自定义战利品、统计信息
├── permissions.json     委派的权限等级
├── logs/                adminlog_YYYY-MM-DD.txt
├── backups/             带有时间戳的快照(保留 20 份)
├── exports/             导出的组
└── imports/             将 JSON 文件放入此处以通过 GUI 导入

config.json 可调参数(首次运行时以默认值创建):maxRegionPoints(1000)· pointsPerPacket(10)· pointsFlushIntervalMs(30000)· scheduleSkipRetryMs(60000)· defaultParticleRadius(48)。编辑后运行 /lm reload — 或重启服务端 — 即可生效。

  • 原子写入(.tmp → 重命名)防止文件损坏。
  • 点保存有防抖动处理(约 30 秒),因此高生成率不会频繁写入磁盘;每次管理员操作和服务端停止时执行完整保存。

语言

🇬🇧 英语 · 🇺🇦 乌克兰语 · 🇩🇪 德语 · 🇫🇷 法语 · 🇪🇸 西班牙语 · 🇧🇷 葡萄牙语(巴西) · 🇨🇳 中文 · 🇯🇵 日语 · 🇵🇱 波兰语

将鼠标悬停在任意按钮或字段上可查看翻译说明。要添加语言,请复制 en_us.json 并翻译其中的值。


构建

需要 JDK 8(Forge 1.16.5 无法在更新的 JDK 上构建)。

$env:JAVA_HOME = "C:\Program Files\Java\jdk1.8.0_481"
.\gradlew build
# 输出: build/libs/lootspawnmanager-0.0.9.jar

性能与规模

点数 状态
最多约 500 轻松运行
500–2 000 流畅;分块同步 + 防抖保存保持轻量
2 000–10 000+ 可用 — 同步拆分为 ≤10 点的数据包,因此不会断开连接

请参阅 CHANGELOG.md 了解版本历史和下方的路线图了解计划工作。


路线图(0.0.8 之后)

  • 完全异步保存
  • DataManager 拆分为重点服务;单元测试覆盖
  • 可视化箱子网格战利品编辑器
  • 跨维度模板绑定
  • 导入原版数据包战利品表

许可证

按原样提供给 Minecraft 服务器管理员使用。