Overview
Fluid mixing recipes define how the Fluid Mixer combines two or three fluid inputs to produce a new fluid output. The machine performs order-independent matching: any combination of the listed input fluids in any slot order will trigger the recipe. Each recipe requires 1 to 3 fluid inputs and produces exactly 1 fluid output.Recipe Type ID
JSON Format
Fluid mixing recipes are stored underdata/<namespace>/recipe/ in a datapack.
Fields
| Field | Type | Required | Description |
|---|---|---|---|
type | string | yes | Must be gm:fluid_mixing. |
inputs | array | yes | List of 1–3 SizedFluidIngredient objects. Each specifies which fluid(s) are accepted and the required amount in millibuckets. |
result | object | yes | The output FluidStack. Requires fluid (registry ID) and amount (millibuckets). |
Input (SizedFluidIngredient) format
Each entry ininputs is a NeoForge SizedFluidIngredient using the nested codec. The most common forms are:
Single fluid:
Result (FluidStack) format
Adding Custom Fluid Mixing Recipes via Datapack
- Create a datapack with the following layout:
- Write the recipe JSON following the format above.
- Place the datapack in the
datapacks/folder of your world, or package it inside a mod’sresources/data/directory.
Example: two-fluid reaction
Example: three-fluid reaction
Example: single-fluid processing
JEI Integration
Fluid mixing recipes are visible in JEI under the Fluid Mixer category. You can:- Press R on any fluid bucket to see if it is produced by a fluid mixing recipe.
- Press U on any fluid bucket to see which fluid mixing recipes consume it.
- Click the Fluid Mixer icon in the JEI category list to browse all fluid mixing recipes.