跳转至

燃料与燃料源

引擎系统有两套完全分开的燃料体系——流体燃烧室用纯 datapack 燃料,蒸汽动力室用纯原版燃料。两套互不交叉。

流体引擎(燃烧室) 蒸汽引擎(动力室)
燃料来源 datapack engine_fuel/*.json 纯原版——桶物品熔炉燃烧时长 + 固体物品 burnTime
添加方式 写 datapack JSON,/reload 按原版熔炉燃料规则(熔岩桶、煤炭等)
源存储 任意含该流体的储罐(如快速装填流体储罐) 水源罐 + 流体燃料罐 和/或 快速装填燃料箱(固体)

流体燃烧室燃料(datapack)

流体室燃料位于 data/<命名空间>/engine_fuel/*.json,/reload 热加载:

{ "fluid": "minecraft:water", "consumption": 1.0, "heat": 1.0, "stress": 1.0 }
字段 含义
fluid 要烧的流体 id
consumption mb/s/室(默认 1.0)
heat 温度模型发热倍率
stress 8192 SU 基础应力倍率
  • 无 priority 字段——多个燃料可用时,controller 按源列表查找顺序选第一个(引擎扫邻居储罐的顺序)。旧数据包 priority 字段忽略不读。
  • 无温度字段——过热 220°C / 过冷 100°C / 经济目标 155°C 全部引擎固定。
  • 全引擎单燃料制(按源列表查找顺序选一种,不混烧)。

蒸汽引擎燃料(纯原版)

无需 datapack——按原版熔炉规则:

  • 流体燃料:任意原版熔炉燃烧时长 > 0 的桶物品(如熔岩桶 = 20000 tick)。添加方式 = 按原版给桶物品设置熔炉燃料(与熔炉共享同一套燃料注册)。
  • 固体燃料:任意原版 burnTime > 0 的物品(煤炭 = 1600 tick 等),放入引擎旁的快速装填燃料箱,由 controller 自动抽取。
  • 流体燃料优先;流体不可用才抽固体燃料。

快速装填流体储罐 {#quick-fill-fluid-tank}

quick_fill_fluid_tank

快速装填流体储罐(ccpe:quick_fill_fluid_tank)是 6 向贴附式方块,4000mb 单槽流体存储:

  • 手持流体容器右键 → 将流体存入罐内。
  • 手持空桶右键 → 从罐装满 1 桶。
  • Goggle tooltip 同 Create 流体储罐。
  • 暴露流体能力——引擎直接从这里 drain 水/流体燃料。

快速装填燃料箱 {#quick-fill-fuel-vault}

quick_fill_fuel_vault

快速装填燃料箱(ccpe:quick_fill_fuel_vault)是 6 向贴附式台阶状方块,单物品类型库存(容量 1024 = 16 组 × 64),无 GUI:

  • 手持物品右键 → 整组存入(整个燃料箱只能存一种物品)。
  • 空手蹲下右键 → 取出一组(该物品最大堆叠数,不足取全部)。
  • 存取成功播放开盖动画(短暂后自动关闭)。
  • 挖掘方块内容物掉包。
  • 暴露物品能力——蒸汽引擎自动从这里抽固体燃料(并行燃烧,每次 N×K 个,箱不足切下一箱)。

批量补料(引擎如何抽取)

引擎严格零流体缓存——每次通过 capability 从源存储抽入一个小储备:

  • 批次 = 引擎数量 × K,K = 可配置批次倍数(engineSourceBatchMultiplier,默认 1.0,范围 0.25~64;进游戏时缓存一次)。
  • 从源列表头抽;头罐/头箱空、被拆或内容不对 → 同 tick 即时切下一个(零停机)。
  • 储备耗尽同 tick 内立即补料,应力网络不闪断。