To use this you need to change a few things. 1. -- Define peripheral names local PERIPHERAL_NAMES = { INPUT = "minecraft:barrel", BINDER = { REGULAR = "elementalcraft:binder", IMPROVED = "elementalcraft:binder_improved" }, OUTPUT = "minecraft:barrel" } INPUT & OUTPUT-Name could be different. If so change the "minecraft:barrel" to your choosen inventory. ================================================================================================================== 2. -- Function to retrieve peripherals local function retrievePeripherals() local output = findPeripheral(PERIPHERAL_NAMES.OUTPUT, SIDES.LEFT) local input = findPeripheral(PERIPHERAL_NAMES.INPUT, SIDES.BOTTOM) local binder = findPeripheral(PERIPHERAL_NAMES.BINDER.IMPROVED, SIDES.RIGHT) or findPeripheral(PERIPHERAL_NAMES.BINDER.REGULAR, SIDES.RIGHT) return output, input, binder end The direction where the INPUT, OUTPUT and BINDER are. Change "SIDES.LEFT" depending on the peripheral. ================================================================================================================== 3. -- Recipe list local recipeList = { { name = "elementalcraft:fireite_ingot", ingredients = { { "minecraft:netherite_ingot", 1 }, { "elementalcraft:swift_alloy_ingot", 1 }, { "elementalcraft:springaline_shard", 1 }, { "elementalcraft:purecrystal", 1 } } }, { name = "elementalcraft:reservoir_fire", ingredients = { { "elementalcraft:container", 1 }, { "elementalcraft:springaline_glass", 1 }, { "elementalcraft:purecrystal", 1 }, { "elementalcraft:pristine_fire_gem", 1 } } } } The actual recipe you are want to craft. "name" = the Output-tag of your crafted item. "ingredients" are the materials to craft the output item you want to craft but you need to write it in the right order.