Recipe Machine Stages ZS/JS

Recipe Machine Stages ZS/JS

科技向整合包的最佳进阶工具。通过KubeJS和CraftTweaker的无缝集成,将机器配方锁定在特定阶段之后。

配方机器阶段

本模组提供了为机器阻断配方的功能,类似于工作台中“配方阶段”(Recipe Stages)的实现方式。

⚠️ 1.21.1+ 更新: 新增了 addRecipeByMachine 方法,并且 KubeJS 与 CraftTweaker 的语法均有大幅更新!请参阅下方的 1.21+ 文档 部分。

支持哪些模组?

支持的模组列表可在此处查看:[GitHub](https://github.com/DeusSixik/Recipe-Machine-Stage/blob/1.20.1/SUPPORTED MODS.md)

如何使用?

使用方法非常简单。你只需要安装依赖:(CraftTweaker 和 Game Stages) 或 KubeJS 或 AStages。


📖 1.21.1+ 文档(新语法)

⚠️ 重要提示:注册顺序至关重要! 如果某个配方已经通过 addRecipe 被单独限制,后续的批量限制(addRecipeByMod 或 addRecipeByMachine)将不会影响它。这允许你创建例外情况(例如,将特定配方锁定到阶段“A”,而将机器的其余配方锁定到阶段“B”)。特定配方必须在批量配方之前声明!

KubeJS (1.21+)

// kubejs/server_scripts/rms_example.js
RMSEvents.register(event => {

    // --- 单独限制 ---
    // event.addRecipe(recipeType: string, recipe_id: string, stage: string)
    event.addRecipe('create:milling', 'create:milling/fern', 'two')

    // event.addRecipes(recipeType: string, recipe_ids: string[], stage: string)
    event.addRecipes('minecraft:smelting', ['minecraft:stone', 'minecraft:iron_ingot'], 'one')

    // --- 批量限制 ---
    // event.addRecipeByMod(recipeType: string, modId: string, stage: string)
    event.addRecipeByMod('minecraft:smelting', 'create', 'create')

    // event.addRecipeByMods(recipeType: string, modIds: string[], stage: string)
    event.addRecipeByMods('minecraft:smelting', ['create', 'minecraft'], 'one')

    // --- 新增:通过机器完全阻断 ---
    // event.addRecipeByMachine(recipeType: string, stage: string)
    event.addRecipeByMachine('minecraft:smelting', 'one')
})

CraftTweaker (1.21+)

import mods.rms.RMS;

// 单独
RMS.addRecipe("minecraft:smelting", "minecraft:stone", "one");
RMS.addRecipe("minecraft:smelting", ["minecraft:stone", "minecraft:iron_ingot"], "one");

// 批量
RMS.addRecipeByMod("minecraft:smelting", "minecraft", "one");
RMS.addRecipeByMod("minecraft:smelting", ["minecraft", "create"], "one");

// 新增:通过机器完全阻断
RMS.addRecipeByMachine("minecraft:smelting", "one");

📖 1.20.1 及以下版本文档(旧语法)

KubeJS(服务端脚本)

// 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")

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 RecypeType, recipeID as string, stage as string)
RecipeMachineStage.addRecipe(recipeType as RecypeType, recipeID as string[], stage as string)
RecipeMachineStage.addRecipeByMod(recipeType as RecypeType, modId as string, stage as string)
RecipeMachineStage.addRecipeByMod(recipeType as RecypeType, modId as string[], stage as string)

示例 (1.20.1)

import mods.recipemachinestage.RecipeMachineStage;

RecipeMachineStage.addRecipe("minecraft:smelting", "minecraft:stone", "one");
RecipeMachineStage.addRecipe(<recypetype:minecraft:smelting>, "minecraft:stone", "one");

// 植物魔法(魔力灌注)
RecipeMachineStage.addRecipe("botania:mana_infusion", "botania:mana_infusion/mana_diamond", "two");

// 通用机械(冶金灌注)
RecipeMachineStage.addRecipe("mekanism:metallurgic_infusing", "mekanism:processing/iron/enriched", "three");

RecipeMachineStage.addRecipeByMod("minecraft:smelting", ["minecraft", "create"], "one");

参数说明

  • recipeType - 配方类型。在 CraftTweaker(<recypetype:minecraft:smelting>)中,需要去掉前缀编写:"minecraft:smelting"。
  • recipeID - 配方 ID("minecraft:iron_ingot_from_blasting_iron_ore"、"mekanism:processing/iron/enriched" 等)。
  • stage - 解锁该配方所需的阶段("one"、"two" 等)。

链接