跳到正文
烈焰甘蔗Wiki

结构升级

基本信息

属性 值
注册名 JABBA:upgradeStructural
最大堆叠 16
附魔适用 否(setMaxDamage(0))
变体 7 种,物品 metadata i 对应材质等级 i+1

功能

结构升级把桶的材质等级往上提一级。等级决定桶能装多少核心升级(槽位数), 间接决定能装多大的存储升级。

材质等级(metadata → 等级 → 槽位)

元数据 材质(ore dict) 材质等级 最大核心槽位 = 2^等级 - 1
0 Ore.plankWood 1 1
1 Ore.ingotIron 2 3
2 Ore.ingotGold 3 7
3 Ore.gemDiamond 4 15
4 Ore.obsidian 5 31
5 Ore.whiteStone 6 63
6 Ore.gemEmerald 7 127

等级 0 是没有材质的素桶(material = null),槽位 0,没有对应物品。

材质列表由配置项 materialList 决定(默认上表 7 项,上限 18 项)。 maxCraftableTier(默认 = 材质数量 = 7,且被 Math.min(18, ...) 夹紧) 控制为前多少级生成合成配方。

使用方式

使用方式 触发条件 使用效果 条件/限制
潜行右键点击桶 手持结构升级 levelStructural += 1 物品 metadata 必须恰等于当前等级;有 BSpace 链接时拒绝
潜行右键(metadata == 当前等级 − 1) 已有同级升级 拒绝,提示 UPGRADE_EXISTS —
潜行右键(metadata < 当前等级) — 拒绝,提示 DOWNGRADE 结构升级不能降级
潜行右键(metadata > 当前等级) — 拒绝,提示 UPGRADE_REQUIRED 不能跳级
潜行右键持桶形锤子(STRUCTURAL 模式) 等级 > 0 levelStructural -= 1 并掉落对应结构升级 新等级的槽位数不够放下已装核心升级时拒绝(UPGRADE_REMOVE)

合成配方

addStructuralUpgrade 模板:

PBP      P = tierUpgradeItem(配置项,默认 minecraft:fence 原版栅栏)
B B      B = 该等级的材质
PBP

i 从 0 到 min(LEVELS.length - 1, maxCraftableTier) - 1,即默认生成 metadata 0~6 共 7 种配方。

RecipeHandler 启动时若找不到配置指定的物品,会回退到原版栅栏并记一条 ERROR 日志。

相关条目

审计订正记录

[!WARNING] 2026-10-01 回源码核对,以下为已订正的事实错误

原文 正确值 证据
最大堆叠 64 16 ItemUpgradeStructural.java:21 setMaxStackSize(16)
材质等级表「元数据 0 木板 → 最大槽位 0 / 1 铁 → 1 / 2 金 → 3 / 3 钻石 → 7 / 4 黑曜石 → 15 / 5 圆石 → 31 / 6 绿宝石 → 63」 槽位列整体错位一级。正确:0 木板 → 1、1 铁 → 3、2 金 → 7、3 钻石 → 15、4 黑曜石 → 31、5 圆石 → 63、6 绿宝石 → 127。「0 槽」属于没有材质的素桶(等级 0),没有对应物品 ItemUpgradeStructural.java:27,38,45-47(metadata i → LEVELS[i+1]);StructuralLevel.java:12-13,27-30,45-48
「每级增加 1/2/4/8/16/32/64」列 该列是 2^等级,即槽位公式的推导中间量,非「每级增加量」;已删除以免误读 StructuralLevel.java:30
「降级需要使用桶形锤子的 NORMAL 模式」 降级用锤子的 STRUCTURAL 模式(NORMAL 模式确实也会一路降到等级 −1,但它先拆核心升级和存储升级) BarrelCoreUpgrades.java:167-169,213-233
「SHIFT+右键:只能升级,不能降级」 正确,且必须 metadata 恰等于当前等级才生效,否则按 UPGRADE_EXISTS / DOWNGRADE / UPGRADE_REQUIRED 分别拒绝 BarrelCoreUpgrades.java:344-355
「最大可升级到配置 maxCraftableTier 指定的等级」 maxCraftableTier 只控制合成配方的生成范围;实际可安装等级由 materialList 长度(≤18)与物品 metadata 上限决定 RecipeHandler.java:114-117;BetterBarrels.java:140-148
缺合成配方 已补全模板与回退逻辑 RecipeHandler.java:103-142
浏览全部模组