Recipe conditions
Loader conditions and recipe removal.
Recipe conditions
A condition controls whether a recipe loads. For example, this one requires the expensive_mode flag:
(Fabric)
{
"fabric:load_conditions": [
{"condition": "hbm:flag", "name": "expensive_mode"}
]
}For additional conditions, see the Fabric resource-condition reference.
(NeoForge)
{
"neoforge:conditions": [
{"type": "hbm:flag", "name": "expensive_mode"}
]
}For additional conditions, see the NeoForge data-load-condition reference (26.1).
These are field fragments to include in a complete recipe. A leading ! negates an NTM flag, as in !expensive_mode. Flag names are declared by the mod; inventing a name is an error.
A false condition on a same-ID override does not restore the bundled recipe. The higher-priority file has already replaced it; skipping that file can leave the recipe absent. Use a different resource ID for an additional conditional recipe, or explicitly design which replacement should exist for each configuration.
Disable an existing recipe
Place the complete file shown for your loader at the recipe's original resource path. A pack intended for both loaders can combine the two condition fields in one file.
(Fabric)
{
"fabric:load_conditions": [
{"condition": "fabric:not", "value": {"condition": "fabric:true"}}
]
}(NeoForge)
{
"neoforge:conditions": [
{"type": "neoforge:never"}
]
}An item without a named shredder recipe falls back to scrap.
Duration, power and ordering
Recipe timing, HE and lookup order.
Item-tag result
The result uses the first current member of its item tag.
© 2026 movblock. Original site text is licensed under CC BY-SA 4.0 unless otherwise noted.