GlymeraBackpack

GlymeraBackpack

一个便携式54格箱子,可手提携带。手持时右键打开背包。由古代箱子+浓缩生命精华合成。内容物随物品一同交易、掉落及死亡时保留。

生活质量

GlymeraBackpack - 便携式54格箱子

一个紫色背包物品,右键点击后打开完整的54格物品栏。内容物随物品携带,死亡时不会丢失,并存储在背包本身内部。

当前版本仅适用于 Hytale 稳定版 5! 不要错过我的其他精彩项目——请查看 GlymeraCraft 的个人主页 Discord:https://discord.gg/s5NRFWfxgy


什么是 GlymeraBackpack?

Hytale 已经有了物品携带容器的技术基础——种子袋就使用了这一机制,但只用于存放种子。GlymeraBackpack 采用了相同的机制,并构建了一个通用便携箱:54格(相当于双箱容量),无物品类型限制,由真正的箱子加上浓缩生命精华制作而成。

拿起它,放入快捷栏,右键点击——一个标准的箱子界面直接从你的手中打开。放入任何物品。关闭它。走开。你所有的东西都在物品本身内部。


工作原理

制作

家具工作台(分类:存储)上制作——与制作普通箱子使用的工作台相同:

  • 1x 家具古代箱子(小型)
  • 1x 高级生命精华

一个小型箱子加上一束浓密的生命精华融合在一起,制成一个背包。

使用方法

  1. 将背包放入快捷栏。
  2. 选中它以便手持。
  3. 在世界中任意位置右键点击
  4. 一个54格容器打开——与普通双箱相同的熟悉界面。

放入物品、取出物品、拖动堆叠。一切如你所期待。

内容物随物品携带

物品栏以 BSON 元数据的形式存储在背包本身中,而非存储在独立的插件数据库中。这意味着:

事件 发生情况
你死亡时 背包保留在你的物品栏中(DropOnDeath: false),内容物完好无损。
你交易/给予其他玩家 背包转移到他们的物品栏中,内容物随之一同转移。
服务器重启 / 退出登录 内容物持续保留。
你将其丢在地上 它会变成一个携带内容物的掉落物品。重新拾起,一切仍在那里。

配置

文件:mods/de.glymera_GlymeraBackpack/config.json(首次启动时创建)

设置项 默认值 描述
craftingEnabled true 配方是否启用。设为 false 可在服务器范围内禁用配方;管理员仍可通过 /give GlymeraBackpack 获得背包。

功能特性

  • 54格(双箱容量),无内容物过滤——可存放任何物品
  • 内容物随物品持久保存,通过原生 ItemStackItemContainer BSON 元数据实现
  • 死亡时不会丢失DropOnDeath: false)——战斗失利也不会丢失背包
  • 自定义箱子风格模型,采用紫色配色
  • 由古代箱子 + 生命精华制作——获得便携形态的箱子
  • 递归防护——背包不能放入另一个背包内(否则会导致无限物品栏嵌套);插件会检测并还原此操作
  • 配方开关,通过配置文件为需要限制访问权限的服务器提供设置

安装方法

  1. GlymeraBackpack-1.0.0.jar 放入服务器的 mods/ 文件夹中。
  2. 启动(或重启)服务器。
  3. 所有内容均嵌入 JAR 文件中——无需外部资源文件夹。

已知限制:请勿放入箱子中

请勿将 GlymeraBackpack 放入普通的方块箱子中。 Hytale 当前客户端存在一个 bug,在另一个容器的槽位预览中渲染带有 BSON 容器元数据的物品时会出现问题——该 bug 同样影响原版的捕获板条箱。尝试将背包放入箱子中会导致所有查看该箱子的客户端崩溃,并且在服务器端移除背包之前,该区块在重新加载时可能再次导致客户端崩溃。

解决方法:将背包保留在你的个人物品栏中,在那里它可以正常使用。递归防护已经防止了将背包放入另一个背包中;我们选择不为方块箱子添加类似的防护,因为服务器端回滚发生在客户端已经看到损坏的渲染数据包并崩溃之后。

这是 Hytale 客户端的上游问题,而非插件 bug——我们希望未来的客户端更新能够解决此问题。


由 Glymera 为 Hytale 社区精心制作