
传奇物品栏
永久修复模组包中的库存杂乱问题。
告别槽位管理。永远。
Legendary Inventory 将槽位系统改为基于重量的系统。槽位空间不再是限制。
以前,玩家必须通过 36 个固定槽位(带护甲为 41 个)来管理自己的物品栏。 这个数字与现代玩法并不相符。Minecraft 多年来添加了许多新物品,而模组让物品栏无法以高效快捷的方式管理。
这就是背包和存储类模组如此受欢迎的原因。
Legendary Inventory 一劳永逸地解决了这个问题。通过其全新的动态扩展槽位系统,让你可以收集超过 36 组物品,现在你依赖的是集成到菜单中的重量条。

它是如何工作的?
通常,在处理物品栏时,模组作者不得不将 GUI 替换为一个复制版本,从而破坏菜单与其潜在附加组件(其他模组的按钮、按键绑定等)之间的所有连接。
Legendary Inventory 则不同。它挂接到现有菜单上,检测物品栏行,并在其之上应用动态系统。这种方法使该模组默认即可与任何物品栏配合使用(原版和模组)。它还会裁剪槽位纹理以始终匹配视觉效果,这也使得资源包默认即可正常工作。
行数并非无限,因为物品栏中的每个条目都意味着更多要读取的数据,但其默认扩展物品栏增加了 +50 行,从 3 行(27 个槽位)增加到 53 行(477 个槽位)。一切都是可配置的。

这个模组是增强还是削弱?
都不是。该模组通过集成到你 UI 中的重量系统自动平衡。无限的行数是对物品栏的直接增强,但受重量条限制,这起到了削弱的作用。引入"pods",即你游戏中每个物品的计量单位。
默认情况下,玩家拥有 1000 pods 可用。每个物品都有以 pods 为单位的重量。最轻的为 1 pod,而较重的物品(铁砧、铁块等)自身就可能占据你重量条的相当一部分。为什么是 1000 pods?以下是其设计方式:
- 原版 Minecraft = 36 槽位 * 64 物品 = 2304 物品。 这意味着在原版 Minecraft 中你最多可以拥有 2304 个物品。
- Legendary Inventory = 1000 pods。 这意味着你可以拥有 1000 根羽毛,或 25 个铁块,或 5 个铁砧,或 40 个胸甲。
为什么这不是削弱?
- 在标准玩法中,玩家很少携带 36 组满满的物品,除非他们在收集建筑材料。因为日常冒险涉及的是多样性而非最大堆叠数量,基于重量的系统比传统槽位限制提供了更实用的效用。
- 重量数值现在是一个属性。这意味着它可以通过我们散布在 Minecraft 地牢箱子中的重量石板来提升。(其 API 也对模组作者和整合包作者开放,让他们添加自己提升最大重量值的方式)
- 你可以超过 100% 的容量,但超过的每一步都会让你付出代价:
- 100%:你开始减速,每拾取一个物品都会让你更慢。
- 120%:重量条变为沉重颜色,你的跳跃变短。
- 150%:你无法再疾跑。
- 200%:你被固定住,无法跳跃,也无法从地面拾取任何东西。
所有四个阈值都是可配置的。
重量条为王!

随时在你的物品栏中查看你的重量条,或通过按 TAB 键在你的玩家 UI 中查看(会暂时替换你的经验条) 随时将鼠标悬停在你的重量条上查看你的状态。你的容量会告诉你一切所需信息。

这死亡时如何运作?墓碑模组兼容吗?

视情况而定。对于原版死亡,你会将原版行中的物品掉落到地上,而扩展行中的所有物品将被放入"袋子"中,这是一个新物品,当你收集它时会归还你其余的物品。袋子是一种为优化而采取的措施。整个模组的创建都考虑到了性能,因此物品栏不会无缘无故地 tick,服务器也不会每秒请求你的整个物品栏。关键在于仅在相关时更改数据。
对于使用墓碑模组的死亡,一切都按照墓碑模组的条件运作。物品会回到护甲、武器、快捷栏的对应槽位中,物品栏会将动态行合并在一起,不会丢失任何东西。其行为符合预期。
那背包模组呢?它们现在没用了?

不。就此而言,它们实际上与 Legendary Inventory 配合时更加强大。该模组对背包物品栏有特殊功能。放入背包中的所有物品都没有重量,它们像常规 Minecraft 一样使用槽位。这会激励玩家使用背包来运输其中的重物、收集建筑方块等……对应的代价是,背包、潜影盒和容器类物品默认具有更重的重量(潜影盒为 400)。
添加模组时以及移除模组时,我现有的世界会怎样?
添加模组只会给你新的物品栏系统。你的旧物品栏会直接与之融合。 没有危险。 移除模组将移除你扩展行中存在的所有物品。在这样做之前,请将你的物品栏放入箱子中。
杂项
- 物品栏有一个搜索栏,可快速找到你的物品。
- 可以切换滚动条来查看你的物品栏
- 排序按钮可将物品合并在一起 + 按重量排序
- 超载会阻止你使用坐骑(载具仍然可用)
- 满重量时无法使用传送石
- 与 Trash slot、JEI、Mouse Tweaks 的额外兼容
- 重量是数据驱动的。使用 config 中的 weights.json(游戏内可用命令 /inventory set...)
对于模组作者和整合包作者
API 是一个单一的静态入口点,com.krampus.legendaryinventory.api.LegendaryInventoryApi,以及同一包中的两个接口。将该模组添加为 compileOnly 依赖;无需其他操作。
- 读取数值:
getItemWeight(stack)、getStackWeight(stack)、getCarriedWeight(player)、getCapacity(player)。 - 更改容量:携带容量是一个原版风格的玩家属性(
legendaryinventory:carry_capacity,由getCapacityAttribute()暴露),因此装备、药水和附魔可以像任何其他属性一样对其应用属性修饰符。对于像重量石板那样的永久增加,使用addCapacityBonus(player, amount)/setCapacityBonus(player, bonus);该加成会随玩家存储。 - 更改重量:实现
IWeightProvider并使用registerWeightProvider(...)注册它,以动态地称量物品(通过 NBT、内容物,随你需要),或调用setDefaultWeight(itemId, pods)来覆盖单个物品。无需代码,整合包作者可以编辑生成的weights.json中的逐物品重量以及基于标签的层级。 - 访问扩展行:
getExtendedInventory(player)返回一个IExtendedInventory,这是一个标准的IItemHandlerModifiable,因此任何已经支持物品处理器的内容都可以与之配合使用。 - 菜单控制:
excludeMenuFromAugment(menuClass)使菜单远离该系统,allowAugmentedSlotClass(slotClass)让自定义槽位类型被检测为物品栏行,isAugmented(menu)告诉你菜单是否获得了这些行。
免责声明:
Legendary Inventory 是一个抢先体验模组。请报告你能找到的任何 bug。处理该模组时请务必创建备份。
正在加载版本记录…
正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。