🔒 WarZBagLock —— 现代化背包锁定插件 | 1.7–1.21+ | 支持 Folia | WarZ / RPG / 硬核生存必备

原创 付费 🔒 WarZBagLock —— 现代化背包锁定插件 | 1.7–1.21+ | 支持 Folia | WarZ / RPG / 硬核生存必备 2.1.5

请登录后获取
  • 修复部分服务端版本下 CustomModelData 不生效的问题,兼容旧版 ItemMeta 接口和新版组件式 CustomModelData API。
  • 修复 /baglock set [组名] 读取手持物品模型数据时可能静默失败的问题。
  • 优化重设锁定样式时的配置处理:如果手持物品没有名称、Lore 或 CustomModelData,现在会正确清理旧配置,避免残留数据导致显示异常。
  • 新增调试日志支持,在 settings.debug: true 时可输出 CustomModelData 兼容层的读取与写入诊断信息,方便排查版本兼容问题。
  • 修复了“重叠槽位解锁”场景下的权限问题。现在高等级背包会按 unlocks 的顺序自动补齐前面的权限,适配你这种“每升一级多解锁一个格子”的写法。
  • 修复了放入背包物品后又被顶回、像是“自己弹出来”的问题。附属插件在权限变化后会立刻通知主插件刷新该玩家背包,不再只等定时检测。
  • 增强了背包物品识别逻辑,除了材质和名称外,也支持 custom-model-data 匹配,减少误判。
  • 新增配置项 settings.cumulative-permissions: true,默认开启。
  • 支持在单个 unlock 里手动写 permissions:,可以显式指定要授予的完整权限列表。
  • README 和示例配置已更新,补充了“重叠 slots”这种配置方式的说明。
WarZBagLock 2.1.3更新内容:
1. 禁止丢弃 :

- 实现了 PlayerDropItemEvent 监听器,现在玩家 无法丢弃 任何被插件标记为“锁定物品”的道具(即使按 Q 键也会被拦截)。
2. 快捷栏锁定配置 :

- 在 config.yml 中新增了 hotbar-lock-behavior 选项。
- 默认值为 ALLOW_HOLD (允许手持但禁止丢弃)。
- 如果设置为 PREVENT_SWITCH ,当玩家尝试切换到被锁定的快捷栏槽位时,会被自动拦截(无法选中该槽位)。
本次更新主要集中在修复“锁定物品掉落”问题,并增强了物品识别的健壮性:

- 🛡️ 修复掉落漏洞 :
- 优先级提升 : PlayerDeathEvent 处理优先级提升至 HIGHEST ,确保最先处理。
- 双重清理 :死亡时不仅从掉落列表移除,还强制扫描并清空玩家背包中的残留锁定物品。
- 实体拦截 :新增 ItemSpawnEvent 监听器,作为最后一道防线,禁止任何锁定物品以实体形式出现在世界上(防止被捡起)。
- 🔍 智能识别增强 :
- 隐形水印 :为所有新生成的锁定物品添加不可见的颜色代码标签( §0§7§r ),实现 100% 准确识别,不再受物品改名影响。
- 无缝兼容 :插件会自动识别旧版锁定物品,并在更新库存时自动替换为带有新水印的版本。
更新内容总结 (v2.1.1)
1. 物品防吞机制 :
- 问题修复 :修复了当玩家权限变更导致背包槽位被锁定时,该槽位内原有的物品会被直接覆盖消失的问题。
- 退还逻辑 :现在插件在锁定槽位前会先检查是否有物品。如果存在物品,会优先尝试将其移动到玩家背包的其他空闲槽位。
- 掉落保护 :如果玩家背包已满,无法放入退还的物品,该物品将自动掉落在玩家脚下,确保财产安全。
🌍 新增功能:多世界控制
现在您可以精确控制插件在哪些世界生效。

1. 配置项 ( config.yml ) :
新增了 enabled-worlds 列表。

- 默认状态 :列表为空 ( [] ),表示在 所有世界 启用插件(保持原有行为,不影响老用户)。
- 启用特定世界 :将需要启用的世界名称填入列表。例如:
```
settings:
# 仅在 world 和 world_nether
世界启用背包锁定
enabled-worlds:
- world
- world_nether
```
- 未启用世界 :在未列出的世界中,插件将完全停止工作(不更新背包、不锁定槽位、不处理点击事件、不处理死亡掉落)。
本次更新主要修复了一个严重影响游戏平衡的 Bug。

- 🐛 修复:死亡掉落 Bug
- 问题描述 :在未开启“死亡不掉落”规则的服务器中,玩家死亡后,用于锁定背包格子的占位符物品(如屏障)会掉落在地上,导致玩家可以拾取甚至利用这些物品。
- 修复方案 :插件现在会监听玩家死亡事件 ( PlayerDeathEvent ),自动扫描并移除所有属于“锁定占位符”的掉落物。
- 安全性 :修复逻辑包含严格的物品匹配算法(同时匹配材质和显示名称),确保只会清除系统生成的锁定物品,绝对不会误删玩家的正常装备或战利品。
🚀 WarZBagLock v2.0 现代化升级日志
本次更新致力于打造“付费级”插件体验,实现了全版本兼容与现代化特性支持,同时大幅优化了性能与易用性。
1. 核心架构升级
- 🌐 全版本兼容 (1.7 - 1.21+) :重写底层逻辑,完美支持从 Minecraft 1.7.10 到最新的 1.21+ 版本,无需分版本下载。
- ⚡ Folia 深度支持 :新增对 Folia 多线程服务端的原生支持。自动识别环境并切换至 RegionizedServer 调度器,确保在高性能服务器下零报错、不卡顿。
- 🛠️ 智能反射机制 :采用反射技术动态调用 API,自动适配不同版本的 NMS 特性(如 CustomModelData),确保老版本服务器也能稳定运行。 2. 新增功能特性
- 🎨 CustomModelData 支持 :全面支持 1.14+ 版本的自定义模型数据 ( CustomModelData )。现在您可以配合材质包,为锁定槽位设置精美的 UI 图标,告别单调的屏障方块。
- 📝 Lore 自定义支持 :锁定占位符物品现在支持多行 Lore(描述)配置,支持颜色代码,可用于显示提示信息(如:“请升级背包解锁此槽位”)。
- 🎮 快捷设置指令 ( /baglock set ) :彻底解放双手!手持编辑好的物品(包含名称、Lore、材质、模型数据),输入指令即可一键保存为指定组的锁定样式,无需手动修改配置文件。
- 🔄 热重载指令 ( /baglock reload ) :支持游戏内直接重载配置文件,即时生效。 3. 体验与美化
- ✨ 品牌化控制台 UI :重新设计了插件启动与关闭的控制台输出,采用专业的 ASCII 风格排版,并植入了您的品牌联系信息(QQ、交流群),提升插件的专业感。
- 💬 消息系统重构 :所有提示消息均移入 config.yml ,支持完全自定义与颜色代码 ( & ),告别硬编码。 4. 安全性与性能
- 🛡️ 防刷物品机制 :优化了背包锁定算法,防止玩家通过快速点击或网络延迟将物品卡入锁定槽位。
- 🚀 性能优化 :改进了背包扫描逻辑,仅在必要时更新库存,大幅降低对服务器主线程(或 Folia 区域线程)的占用。
后退
顶部 底部