
战利品堆
该项目是一个战利品箱,带有冷却时间,并包含适用于任何物品组(任何权重)的配置文件。
查看大图战利品堆
NeoForge 模组,适用于 Minecraft 1.21.1,添加了带等级的战利品堆方块,具有全局冷却时间和注重性能的服务器架构。
特性
- 五个战利品堆等级:普通、稀有、史诗、传说
- 空手右键点击搜索堆并生成战利品
- 每个方块位置共享冷却时间(非玩家独立)
- 中心化
SavedData冷却管理器——无方块实体持续 tick - 可通过
config/lootpiles-server.toml配置冷却时长 - 管理员命令用于生成、重置和检查战利品堆
- Blockbench 方块模型,使用 64×64 基础纹理和等级染色(
tintindex: 0) - 冷却时显示扁平的枯竭模型,保留原等级颜色
- 物品栏和 JEI 中显示等级颜色物品名称(
CUSTOM_NAME数据组件) metal_scrap战利品物品- 可选的 JADE 悬浮提示和 JEI 信息页面(仅开发模式加载)
需求
- Minecraft 1.21.1
- NeoForge 21.1.64+
- Java 21
开发
./gradlew build
./gradlew runClient
./gradlew runServer
- 客户端 使用
run-client/(单人存档) - 服务端 使用
run-server/(专用世界+控制台) - 开发用户名在 NeoForge userdev 中固定为
Dev
测试服务器 OP 设置
- 首次启动时在
run-server/eula.txt中接受 EULA(eula=true) - 启动服务器:
.\gradlew.bat runServer - 玩家
Dev在首次运行时自动获得 OP(复制dev/server/ops.json) - 从服务器控制台手动授予 OP:
op Dev - 从客户端连接:多人游戏 →
localhost(需online-mode=false)
修复客户端 invalidplayerdata 错误
当 run/saves/ 下的世界损坏时会出现此问题(数据/进度存在但 playerdata/ 缺失)。
修复方法: 删除损坏的世界并创建新世界:
Remove-Item -Recurse -Force run\saves\Dev, run\saves\"New World"
# 或删除所有内容:
Remove-Item -Recurse -Force run\saves\*
在当前 Gradle 配置下,运行 runClient 后存档位于 run-client/saves/。
JADE 和 JEI 通过 localRuntime 加载,仅用于本地测试。
命令(OP 等级 2)
| 命令 | 描述 |
|---|---|
/scrappile spawn <等级> [x y z] |
放置一个战利品堆 |
/scrappile reset all |
清除当前维度所有冷却 |
/scrappile reset <x> <y> <z> |
重置指定战利品堆 |
/scrappile status <x> <y> <z> |
显示等级和冷却状态 |
别名:/lootpiles
配置
服务器配置文件:config/lootpiles-server.toml
默认冷却时间(tick):
| 等级 | Tick | 时间 |
|---|---|---|
| 普通 | 12000 | 10分钟 |
| 稀有 | 24000 | 20分钟 |
| 史诗 | 36000 | 30分钟 |
| 传说 | 60000 | 50分钟 |
| 传说 | 120000 | 100分钟 |
视觉设计
- 活跃堆: 完整 Blockbench 模型(
scrap_pile.json),使用lootpile_base.png(64×64 图集) - 枯竭堆: 扁平模型(
scrap_pile_empty.json),当depleted=true时通过方块状态切换 - 等级颜色: 通过方块染色索引和物品显示名称在客户端应用
| 等级 | 方块染色 | 物品名称样式 |
|---|---|---|
| 普通 | #909090 |
灰色 |
| 稀有 | #1EFF00 |
绿色 |
| 史诗 | #0070DD |
蓝色,加粗 |
| 传说 | #A335EE |
紫色,加粗 |
| 传说 | #FF8000 |
橙色,加粗,下划线 |
发布(CurseForge)
仓库密钥
| 密钥 | 描述 |
|---|---|
CURSEFORGE_TOKEN |
CurseForge API 令牌 |
CURSEFORGE_PROJECT_ID |
CurseForge 项目数字 ID |
通过标签发布
git tag v1.0.0
git push origin v1.0.0
发布模组到 CurseForge 工作流会构建 jar、上传到 CurseForge,并在没有对应版本文件时生成 GitHub 发布更新日志。
手动发布
从 Actions 标签运行 发布模组到 CurseForge 工作流,并设置模组版本输入(例如 1.0.0)。
更新日志
每个版本的更新日志位于 docs/changelogs/<版本>.md(例如 docs/changelogs/1.0.0.md)。当该文件存在时,会作为发布说明上传到 CurseForge。
版本类型自动推断:
*-alpha→ alpha*-beta→ beta- 其他 → release
许可证
MIT — 参见 LICENSE。
正在加载版本记录…
正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。