# Liquid Fuels / 液体燃料
## English
**Liquid Fuels** is a configurable fluid-to-fuel converter for Minecraft Forge.
It adds three portable and placeable fuel tanks that can store fluids and use configured fluids as regular furnace-style fuel. The goal is simple: if a fluid should be burnable in your modpack, you can define it in one global config file and use it through a fuel tank.
### Features
- Small, medium, and large fuel tanks:
- Small Fuel Tank: `1000 mB`
- Fuel Tank: `5000 mB`
- Large Fuel Tank: `20000 mB`
- Tanks work both as items and as placed blocks.
- Empty tanks stack; filled tanks do not stack.
- Tank blocks and tank items expose standard Forge fluid capabilities.
- Supports fluid containers, pipes, and other mods that interact through Forge fluid handlers.
- Right-click source fluids to fill a tank directly.
- Inventory fluid transfer: hold a fluid container on the cursor and right-click a tank slot to pour into it.
- Configured fluids can be used as regular fuel.
- Each fuel use consumes `100 mB` and keeps the tank item.
- JEI integration shows configured burnable fluids, the `1000MB` fuel unit, and approximate item burn count.
- Optional Immersive Aircraft compatibility for fuel consumption.
- Optional TerraFirmaCraft crafting recipes using blue steel and red steel.
### Configuration
The global config file is generated at:
```text
config/liquidfuels-common.toml
```
Fuel values are written as burn ticks per `1000 mB`.
```toml
[fuels]
burn_times_for_1000mb = [
"minecraft:lava=20000",
"immersiveengineering:ethanol=1600",
"#forge:diesel=12000"
]
```
Supported config keys:
- Exact fluid id: `modid:fluid=burn_ticks_for_1000mb`
- Fluid tag: `#namespace:tag=burn_ticks_for_1000mb`
Exact fluid ids override tags. If multiple tags match the same fluid, the later config entry wins.
### Fuel Unit
The config uses `1000 mB` as the readable fuel unit, but the tank consumes `100 mB` each time it is used as fuel.
For example, `minecraft:lava=20000` means `1000 mB` burns for `20000` ticks. Each actual fuel use consumes `100 mB`, so each use receives `2000` ticks.
If a tank contains less than `100 mB`, it will not be treated as fuel.
### Recipes
Vanilla-style recipes:
```text
Iron Ingot | Empty | Iron Ingot
Empty | Bucket| Empty
Empty | Empty | Empty
```
This crafts a Small Fuel Tank.
The same shape upgrades:
- Small Fuel Tank + 2 Iron Ingots -> Fuel Tank
- Fuel Tank + 2 Iron Ingots -> Large Fuel Tank
When TerraFirmaCraft is loaded, additional optional recipes are available:
- Blue Steel Bucket + 2 Blue Steel Ingots -> Small Fuel Tank
- Red Steel Bucket + 2 Red Steel Ingots -> Small Fuel Tank
- Small Fuel Tank + 2 Blue Steel or Red Steel Ingots -> Fuel Tank
- Fuel Tank + 2 Blue Steel or Red Steel Ingots -> Large Fuel Tank
All recipes are data-pack recipes and can be overwritten or removed by modpacks.
### Compatibility Notes
Liquid Fuels is designed around standard Forge item and fluid capabilities. It should work with machines that use normal Forge fuel behavior and respect crafting remaining items.
Some heavily custom machines may query fuel time and then consume the whole item directly. Those machines may need dedicated compatibility. Immersive Aircraft has a built-in optional bridge.
---
## 中文
**液体燃料** 是一个面向 Minecraft Forge 的可配置流体燃料转换模组。
它添加了小油桶、中油桶和大油桶三种可携带、可放置的储液容器。玩家或整合包维护者可以在一份全局配置文件中声明哪些流体可以燃烧,以及每 `1000 mB` 对应的燃烧时间,然后把这些流体通过油桶当作常规燃料使用。
### 功能
- 三种油桶:
- 小油桶: `1000 mB`
- 中油桶: `5000 mB`
- 大油桶: `20000 mB`
- 油桶既是物品,也是可放置方块。
- 空桶可以堆叠,带液体的油桶不可堆叠。
- 物品态和方块态都暴露 Forge 标准流体能力。
- 支持流体容器、流体管道,以及通过 Forge 流体能力交互的其他模组。
- 可右键流体源方块直接打捞液体。
- 支持背包内倒液: 鼠标拿着流体容器,右键槽内油桶即可倒入。
- 配置中声明的流体可作为常规燃料使用。
- 每次作为燃料消耗 `100 mB`,保留油桶本体。
- JEI 会显示已配置且当前游戏实际存在的可燃流体、`1000MB` 单位和约可燃烧物品数量。
- 对 Immersive Aircraft 提供可选燃料消耗兼容。
- 对 TerraFirmaCraft 提供蓝钢/红钢可选合成配方。
### 配置
全局配置文件生成在:
```text
config/liquidfuels-common.toml
```
燃烧时间按每 `1000 mB` 的 tick 数填写。
```toml
[fuels]
burn_times_for_1000mb = [
"minecraft:lava=20000",
"immersiveengineering:ethanol=1600",
"#forge:diesel=12000"
]
```
配置左侧支持两种写法:
- 精确流体 ID: `modid:fluid=burn_ticks_for_1000mb`
- 流体标签: `#namespace:tag=burn_ticks_for_1000mb`
精确流体 ID 优先于 tag。如果多个 tag 同时匹配同一种流体,靠后的配置项生效。
### 燃料单位
配置文件使用 `1000 mB` 作为便于阅读和填写的单位,但油桶实际作为燃料时每次消耗 `100 mB`。
例如 `minecraft:lava=20000` 表示 `1000 mB` 岩浆总计燃烧 `20000 tick`。实际每次消耗 `100 mB`,所以单次燃料时间为 `2000 tick`。
桶内液体不足 `100 mB` 时,不会被识别为燃料。
### 配方
原版默认配方:
```text
铁锭 | 空 | 铁锭
空 | 铁桶 | 空
空 | 空 | 空
```
该配方合成小油桶。
同样形状继续升级:
- 小油桶 + 2 个铁锭 -> 中油桶
- 中油桶 + 2 个铁锭 -> 大油桶
安装 TerraFirmaCraft 时,会额外启用可选配方:
- 蓝钢桶 + 2 个蓝钢锭 -> 小油桶
- 红钢桶 + 2 个红钢锭 -> 小油桶
- 小油桶 + 2 个蓝钢锭或红钢锭 -> 中油桶
- 中油桶 + 2 个蓝钢锭或红钢锭 -> 大油桶
所有配方都是数据包配方,整合包可以覆盖或移除。
### 兼容说明
本模组围绕 Forge 标准物品能力、流体能力和常规燃料逻辑实现。尊重 crafting remaining item 的常规燃料机器应能正确保留油桶并扣除 `100 mB`。
少数高度自定义的机器可能只查询燃料时间,然后直接消耗整个物品。这类机器通常需要专门兼容。当前已为 Immersive Aircraft 提供可选桥接。