Recipe Machine Stages ZS/JS
This modification enables the blocking of recipes for various mechanisms, similar to how Recipe Stages functions for the crafting table.
Which Mods Are Supported?
The list of supported modifications is available in the corresponding section of the GitHub repository.
How to Use?
The system operates with extreme simplicity. You will need to install either CraftTweaker alongside Game Stages, KubeJS, or the AStages modification.
Working with AStages
For detailed information on using AStages, we recommend consulting the project's official documentation.
Configuration via KubeJS (Server Scripts)
//kubejs/server_scripts/example.js
RecipeMachineStage.addRecipe(String recipeType, String recipeID, String stage)
RecipeMachineStage.addRecipe('create:milling', 'create:milling/fern', 'two')
RecipeMachineStage.addRecipe("minecraft:smelting", "minecraft:stone", "one")
RecipeMachineStage.addRecipes(String recipeType, String[] recipeIDs, String stage)
RecipeMachineStage.addRecipes("minecraft:smelting", ["minecraft:stone", "minecraft:iron_ingot"], "one")
Configuration via CraftTweaker
import mods.recipemachinestage.RecipeMachineStage;
RecipeMachineStage.addRecipe(recipeType as string, recipeID as string, stage as string)
RecipeMachineStage.addRecipe(recipeType as string, recipeID as string[], stage as string)
RecipeMachineStage.addRecipeByMod(recipeType as string, modId as string, stage as string)
RecipeMachineStage.addRecipeByMod(recipeType as string, modId as string[], stage as string)
RecipeMachineStage.addRecipe(recipeType as RecipeType, recipeID as string, stage as string)
RecipeMachineStage.addRecipe(recipeType as RecipeType, recipeID as string[], stage as string)
RecipeMachineStage.addRecipeByMod(recipeType as RecipeType, modId as string, stage as string)
RecipeMachineStage.addRecipeByMod(recipeType as RecipeType, modId as string[], stage as string)
Parameter Description
- recipeType - recipe type (in CraftTweaker when using
<recipeType:minecraft:smelting>you should specify without the<recipetype>prefix - just "minecraft:smelting") - recipeID - recipe identifier (for example, "minecraft:iron_ingot_from_blasting_iron_ore", "mekanism:processing/iron/enriched", etc.)
- stage - stage that blocks the recipe (for example, "one")
Practical Examples
import mods.recipemachinestage.RecipeMachineStage;
RecipeMachineStage.addRecipe("minecraft:smelting", "minecraft:stone", "one");
RecipeMachineStage.addRecipe(<recypetype:minecraft:smelting>, "minecraft:stone", "one");
// Botania (Mana Infusion)
RecipeMachineStage.addRecipe("botania:mana_infusion", "botania:mana_infusion/mana_diamond", "two");
RecipeMachineStage.addRecipe(<recypetype:botania:mana_infusion>, "botania:mana_infusion/mana_diamond", "two");
// Mekanism (Metallurgic Infusing)
RecipeMachineStage.addRecipe("mekanism:metallurgic_infusing", "mekanism:processing/iron/enriched", "three");
RecipeMachineStage.addRecipe(<recypetype:mekanism:metallurgic_infusing>, "mekanism:processing/iron/enriched", "three");
RecipeMachineStage.addRecipe("minecraft:smelting", ["minecraft:stone", "minecraft:iron_ingot"], "one");
RecipeMachineStage.addRecipe(<recypetype:minecraft:smelting>, ["minecraft:stone", "minecraft:iron_ingot"], "one");
RecipeMachineStage.addRecipeByMod("minecraft:smelting", "minecraft", "one");
RecipeMachineStage.addRecipeByMod(<recypetype:minecraft:smelting>, "minecraft", "one");
RecipeMachineStage.addRecipeByMod("minecraft:smelting", ["minecraft", "create"], "one");
RecipeMachineStage.addRecipeByMod(<recypetype:minecraft:smelting>, ["minecraft", "create"], "one");