-
Notifications
You must be signed in to change notification settings - Fork 17
Fluid Component
This is the component that will let your machine interact with the Forge Fluid system (like tanks, pipes and so).
It is compatible with any other mods that use the same system (so about all of them) so any pipes will be able to pump fluids in and out of the machine.
Basically adding this component to the machine json will add a fluid tank to the machine.
This component is not unique, you can add as much as you want tanks to your machine.
Fluid component is defined with "type": "custommachinery:fluid"
in the json.
Description : An integer value that define the amount of fluid that can be stored in the tank (Volume in Forge mB, with 1000mB being 1 Bucket of fluid)
Example : "capacity": 10000
The machine will be able to store 10000mB (or 10 Buckets) of any fluid (1 fluid at the time of course)
Description : A string that define the id of the tank (used in gui rendering), the String must be all lowercase with letters and numbers only (no spaces or special characters).
Example : "id": "tank1"
Description : An integer that represent the max mB that can be input in the tank during a single tick.
Default : The capacity of the tank.
Example : "maxInput": 1000
The machine can accept 1000mB/tick.
Description : An integer that represent the max mB that can be output out of the tank during a single tick.
Default : The capacity of the tank.
Example : "maxOutput": 1000
The machine can give 1000mB/tick.
Description : A blacklist of fluids that the tank can't accept. The fluids must be referenced by their registry name like minecraft:water
or minecraft:lava
. By default the blacklist is empty so all fluids are accepted.
You can also use tag here with the # prefix like #minecraft:water
Default : No filter, so all fluids are accepted by the tank.
Example : "filter": ["#minecraft:water"]
The tank will accept all fluids that are not in the vanilla water tag.
Description : A boolean, if true the filter property will act as a whitelist instead of a blacklist, meaning that only fluids specified in the whitelist will be accepted by the fluid component.
Default : false The filter property is a blacklist.
Example : "whitelist": true
The filter property is a whitelist.
Description : The IO mode of the tank. Available modes are (input/output/both/none). Pipes can only insert in an input tank and extract from an output tank. With a bucket you can both insert and extract fluids in an input tank but only extract fluids from an output tank. While crafting the machine will search for fluids to consume in input tanks and put the recipe results in the output tanks.
Default : both
Example : "mode": "input"
Set the tank as an input tank.
Note : An input tank will have a maxOutput value of 0 even if you set it to another value in the maxOutput property, same goes for output tank and maxInput property.
An example of Fluid Component that can store 10000mB of lava only, send 1000mB/tick and receive 666mB/tick.
{
"type": "custommachinery:fluid",
"capacity": 10000,
"id": "lavatank",
"maxInput": 666,
"maxOutput": 1000,
"filter": ["minecraft:lava"],
"whitelist": true
}
You just have to put that in the components
array in the machine json.
3. Machine GUI
- Dump Element
- Energy Element
- Fluid Element
- Fuel Element
- Player Inventory Element
- Progress Bar Element
- Reset Element
- Slot Element
- Status Element
- Text Element
- Texture Element
5. Catalysts
- Biome Requirement
- Block Requirement
- Command Requirement
- Dimension Requirement
- Drop Requirement
- Durability Requirement
- Effect Requirement
- Energy Requirement
- Energy Per Tick Requirement
- Entity Requirement
- Fluid Requirement
- Fluid Per Tick Requirement
- Fuel Requirement
- Item Requirement
- Light Requirement
- Loot Table Requirement
- Position Requirement
- Structure Requirement
- Redstone Requirement
- Time Requirement
- Weather Requirement