IG:堆叠大小调整器

IG:堆叠大小调整器

堆叠数量调整器赋予您对物品堆叠上限的完全控制权。可在运行时动态调整武器、护甲、方块及消耗品的堆叠数量。

依赖 Fabric API Java 25 许可 Minecraft 26.2+

📦 堆叠数量调整器

🎮 版本兼容性

本模组正在积极维护并持续更新:

  • Minecraft 26.2+:完全支持,并具有开放式向前兼容性。
掌控你的物品栏。自定义限制,无边界。

厌倦了物品栏杂乱无章?或者你想创造一个更硬核、限制更严格生存体验?堆叠数量调整器赋予你对物品堆叠上限的完全控制权。在运行时动态调整武器、盔甲、方块和消耗品的堆叠数量。

属于即时满足集的一部分——尊重玩家时间的模组。


✨ 特性

🎚️ 基于类别的自定义

配置原版 Minecraft 三种标准物品类别的限制:

  • 64 堆叠限制:标准可堆叠物品(方块、生食、矿石、建筑材料)。默认值:128。
  • 16 堆叠限制:半可堆叠物品(末影珍珠、雪球、鸡蛋、告示牌)。默认值:32。
  • 1 堆叠限制:不可堆叠物品(武器、工具、盔甲、药水、炖菜、床)。默认值:1。

🔢 原始整数值

不再有虚假的上限!将限制动态调整为从 1 到 2,147,483,647 之间的任意整数值。

  • 溢出保护警告:配置界面具有动态警告提示,如果设置的限制高于 39,768,215,会发出警报。此阈值专门用于防止在装满相同物品类型的容器时发生总容器溢出。自行承担更改风险!
    • ⚠️ 性能说明:移动或排序极大物品堆叠(数百万或数十亿)可能会因 CPU 计算负载而导致短暂的游戏卡顿或帧率卡顿。
    • 🎒 模组容器/背包安全公式:如果你使用自定义容器或模组背包,可以使用以下公式计算安全的最大堆叠大小,以避免溢出填满整个容器:

      安全堆叠限制 = 2,147,483,647 / [容器总槽位数]

    • 100 槽位背包:每个槽位最大 21,474,836
    • 200 槽位背包:每个槽位最大 10,737,418
    • 安全参考列表(针对相同物品):
    • 漏斗(5 槽位):每个槽位最大 429,496,729
    • 发射器/投掷器(9 槽位):每个槽位最大 238,609,294
    • 单个箱子/潜影盒/木桶(27 槽位):每个槽位最大 79,536,431
    • 双箱子/大型箱子(54 槽位):每个槽位最大 39,768,215
    • 关于不同物品的说明:如果在同一容器中存放不同类型的物品,每个槽位可以安全地达到绝对上限 2,147,483,647,因为游戏是独立保存和跟踪不同物品类型的!
    • 平面存储与嵌套存储安全性:
    • 玩家物品栏(完全免疫):玩家物品栏以平面方式作为直接的独立标签保存在玩家 .dat 文件中。由于保存时不会对单个槽位计数进行求和,你可以安全地将玩家物品栏的所有 36 个槽位设置为绝对最大限制 2,147,483,647 个相同物品,而不会出现溢出或删除问题!
    • 箱子、木桶和潜影盒(易受溢出影响):世界容器(如箱子、双箱子和木桶)和嵌套容器物品(如潜影盒和捆包)容易受到影响。提示信息渲染器、物品整理器或游戏功能会对它们的内容进行求和。如果容器内相同物品的总数超过 21.4 亿,会触发有符号 32 位整数溢出并删除你的物品。确保这些容器中的槽位保持在安全槽位限制以下!
    • 存储网络与模组兼容性:在正常和中等偏高数值下,可与存储网络模组(如 Tom's Simple Storage 等)配合使用。在非常大的网络中设置极端限制(1亿+)可能会导致物品丢失,或由于第三方整数限制(外部模组逻辑中的截断)而触发提取循环。自行承担更改风险!

🔓 槽位容量绕过

告别标准槽位堆叠限制 99 个物品。堆叠数量调整器覆盖了默认的容器和堆叠序列化器限制,允许你在任何箱子、漏斗或物品栏槽位中持有大量堆叠(例如 640 或 1000)。

📐 动态字体缩小

担心大数字重叠槽位?当堆叠数量超过 99 时,客户端渲染器会动态缩小数字以完美适应槽位边界,确保文本永不重叠。

🛡️ 容器破坏保护与物品聚团

包含最大掉落实体游戏规则(stack-size-adjuster:max_drop_entities,默认值:8),并与物品聚团集成,在容器破裂或玩家死亡时限制生成的掉落物实体数量,防止严重的服务器和客户端卡顿。

🎯 拖拽拆分与合并精度

在 QUICK_CRAFT 和 ItemStack 合并过程中,使用双精度数学覆盖容器拖拽拆分操作,以防止在整理大量堆叠时出现物品复制或不同步错误。

🛠️ /give 命令整数溢出保护

使用 long 类型数学运算和安全的数值钳制到 Integer.MAX_VALUE 重新路由 /give 命令的计算,使玩家即使启用了极端堆叠限制也能安全地使用 /give 命令。

🔌 编程式附加组件覆盖 API

暴露了 StackSizeManager.registerOverride(...) 方法,允许第三方附加模组(如药水堆叠附加组件)动态注入自定义堆叠规则,而无需混合冲突。

🔒 向前兼容性与版本保护

预配置了 "minecraft": ">=26.2-" 的开放式边界,并具有零依赖的 ModVersionGuard 启动保护功能,以防止在不支持的游戏版本上导致世界存档损坏。


⚙️ 配置(原生游戏规则)

⚠️ 重要提示:配置文件 vs. 游戏内游戏规则
全局配置文件仅定义新世界在创建时的默认值。 如果你已经创建/打开了一个世界,更改配置文件将不会生效。你必须使用编辑游戏规则界面或 /gamerule 命令在游戏内更改设置。

使用 /gamerule 或在集成的 YACL 配置界面中配置选项:

  • stack-size-adjuster:items_64_limit(默认值:128)
  • stack-size-adjuster:items_16_limit(默认值:32)
  • stack-size-adjuster:items_1_limit(默认值:1)
  • stack-size-adjuster:max_drop_entities(默认值:8)

📦 安装

  1. 安装 Fabric API。
  2. 安装 物品聚团(物品实体压缩的必需依赖项)。
  3. 下载模组 jar 文件并将其放入你的 mods 文件夹中。
  4. 启动游戏。

☕ 支持

如果你喜欢即时满足合集,请考虑支持开发!

Ko-fi SocioBuzz Saweria

🇮🇩 印度尼西亚用户: 如果你不想使用 PayPal/Ko-fi,SocioBuzz 和 Saweria 支持本地支付方式(Gopay、OVO、Dana 等)!

📦 模组包许可与分发:
你可以在任何平台的任何模组包中自由包含本模组。但是,模组本身必须从其在 Modrinth 或 CurseForge 上的官方分发页面下载。除非创作者明确允许,否则严格禁止将模组 jar 文件重新上传或分发到第三方网站。

许可与分叉:
由于源代码以 GNU GPLv3 许可发布,你完全有权分叉代码仓库、进行修改、构建自己的版本,并在 GPLv3 条款下分发它们。禁止第三方分发的禁令仅适用于原始创作者(Dasik/Rifaditya)发布的官方编译版本/jar。分叉版本必须作为独立项目发布,而不是官方构建版本的直接重新上传。

📜 鸣谢

角色 作者
创作者 Dasik (Rifaditya)
合集 即时满足集
许可 GPLv3

献给 Minecraft 社区的 ❤️

属于即时满足集的一部分