Skip to content

Ingredient JSON Syntax

Sara Freimer edited this page Apr 4, 2022 · 5 revisions

Item Stack Ingredient

By default there are two types of Item Stack Ingredients in Mekanism:

Ingredient

The "basic" Ingredient type for Item Stack Ingredients is one of the most advanced and verbose ingredient types.

{
  "ingredient": INGREDIENT,
  "amount": int
}

amount is an optional key for specifying the amount of the ingredient that is needed, defaults to one, must be at least one.

Valid values for INGREDIENT are the serialization of any Ingredient.

Item

{
  "item": REGISTRY_NAME
}

Item (with nbt)

{
  "type": "forge:nbt",
  "item": REGISTRY_NAME,
  "nbt": string
}

Tag

{
  "tag": ITEM_TAG
}

Ingredients

[
  INGREDIENT,
  INGREDIENT
]

Multi

Multi item stack ingredients let you specify multiple possible simpler item stack ingredient types. While you can nest multi item stack ingredients inside of other item stack ingredients it is recommended not to. Note: While the below example only shows two sub ingredients you can continue adding more.

[
  ITEM_STACK_INGREDIENT,
  ITEM_STACK_INGREDIENT
]

Fluid Stack Ingredient

By default there are three types of Fluid Stack Ingredients in Mekanism:

Fluid Stack

{
  "fluid": REGISTRY_NAME,
  "amount": int,
  "nbt": string
}

nbt is an optional key for specifying any NBT the Fluid Stack Ingredient has.

Tag

{
  "tag": FLUID_TAG,
  "amount": int
}

Multi

Multi fluid stack ingredients let you specify multiple possible simpler fluid stack ingredient types. While you can nest multi fluid stack ingredients inside of other multi fluid stack ingredients it is recommended not to. Note: While the below example only shows two sub ingredients you can continue adding more.

[
  FLUID_STACK_INGREDIENT,
  FLUID_STACK_INGREDIENT
]

Gas Stack Ingredient

By default there are three types of Gas Stack Ingredients in Mekanism:

Gas Stack

{
  "gas": REGISTRY_NAME,
  "amount": long
}

Tag

{
  "tag": GAS_TAG,
  "amount": long
}

Multi

Multi gas stack ingredients let you specify multiple possible simpler gas stack ingredient types. While you can nest multi gas stack ingredients inside of other gas stack ingredients it is recommended not to. Note: While the below example only shows two sub ingredients you can continue adding more.

[
  GAS_STACK_INGREDIENT,
  GAS_STACK_INGREDIENT
]

Infusion Stack Ingredient

By default there are three types of Infusion Stack Ingredients in Mekanism:

Infusion Stack

{
  "infuse_type": REGISTRY_NAME,
  "amount": long
}

Tag

{
  "tag": INFUSE_TYPE_TAG,
  "amount": long
}

Multi

Multi infusion stack ingredients let you specify multiple possible simpler infusion stack ingredient types. While you can nest multi infusion stack ingredients inside of other infusion stack ingredients it is recommended not to. Note: While the below example only shows two sub ingredients you can continue adding more.

[
  INFUSION_STACK_INGREDIENT,
  INFUSION_STACK_INGREDIENT
]

Pigment Stack Ingredient

By default there are three types of Pigment Stack Ingredients in Mekanism:

Pigment Stack

{
  "pigment": REGISTRY_NAME,
  "amount": long
}

Tag

{
  "tag": PIGMENT_TAG,
  "amount": long
}

Multi

Multi pigment stack ingredients let you specify multiple possible simpler pigment stack ingredient types. While you can nest multi pigment stack ingredients inside of other pigment stack ingredients it is recommended not to. Note: While the below example only shows two sub ingredients you can continue adding more.

Slurry Stack Ingredient

By default there are three types of Slurry Stack Ingredients in Mekanism:

Slurry Stack

{
  "slurry": REGISTRY_NAME,
  "amount": long
}

Tag

{
  "tag": SLURRY_TAG,
  "amount": long
}

Multi

Multi slurry stack ingredients let you specify multiple possible simpler slurry stack ingredient types. While you can nest multi slurry stack ingredients inside of other slurry stack ingredients it is recommended not to. Note: While the below example only shows two sub ingredients you can continue adding more.

[
  SLURRY_STACK_INGREDIENT,
  SLURRY_STACK_INGREDIENT
]
[
  PIGMENT_STACK_INGREDIENT,
  PIGMENT_STACK_INGREDIENT
]

Floating Longs

Floating Longs are numbers with up to four decimals between zero and 18,446,744,073,709,551,615.9999 (do not include the commas)