/** * Custom recipes for AE2 */ ServerEvents.recipes(event => { // Base AE2 // ME Controller event.remove({ id: "ae2:network/blocks/controller" }) event.shaped(Item.of("ae2:controller"), [ "ABA", "BCB", "ABA" ], { A: "gtceu:dark_steel_plate", B: "gtceu:fluix_plate", C: "ae2:energy_acceptor" }).id("kubejs:ae2/controller") // Energy Acceptor event.remove({ id: "ae2:network/blocks/energy_energy_acceptor" }) event.shaped(Item.of("ae2:energy_acceptor"), [ "ABA", "BCB", "ABA" ], { A: "gtceu:electrical_steel_plate", B: "gtceu:fluix_plate", C: "gtceu:lv_machine_hull" }).id("kubejs:ae2/energy_acceptor") // ME Chest event.remove({ id: "ae2:network/blocks/storage_chest" }) event.shaped(Item.of("ae2:chest"), [ "ABA", "CDE", "FGF" ], { A: "ae2:quartz_glass", B: "#ae2:illuminated_panel", C: "gtceu:certus_quartz_plate", D: "gtceu:aluminium_crate", E: "gtceu:fluix_plate", F: "gtceu:dark_steel_block", G: "gtceu:nether_quartz_plate" }).id("kubejs:ae2/chest") // ME Drive event.remove({ id: "ae2:network/blocks/storage_drive" }) event.shaped(Item.of("ae2:drive"), [ "ABA", "CDC", "AEA" ], { A: "gtceu:aluminium_plate", B: "gtceu:mv_emitter", C: "#gtceu:circuits/lv", D: "ae2:chest", E: "gtceu:mv_sensor" }).id("kubejs:ae2/storage_drive") // Inscriber event.remove({ id: "ae2:network/blocks/inscribers" }) event.shaped(Item.of("ae2:inscriber"), [ "ABA", "CDA", "ABA" ], { A: "gtceu:dark_steel_plate", B: "gtceu:mv_electric_piston", C: "gtceu:fluix_gem", D: "gtceu:mv_machine_hull" }).id("kubejs:ae2/inscriber") // Patterns event.remove({ id: "ae2:network/crafting/patterns_blank" }) event.shaped(Item.of("ae2:blank_pattern", 8), [ "AAA", "BCB", "BBB" ], { A: "gtceu:fine_silver_wire", B: "gtceu:polyethylene_plate", C: "#gtceu:circuits/hv" }).id("kubejs:ae2/blank_pattern") // Pattern Provider event.remove({ id: "ae2:network/blocks/pattern_providers_interface" }) event.shaped(Item.of("ae2:pattern_provider"), [ "ABA", "CDE", "AAA" ], { A: "gtceu:aluminium_plate", B: "gtceu:mv_robot_arm", C: "ae2:annihilation_core", D: "gtceu:mv_machine_hull", E: "ae2:formation_core" }).id("kubejs:ae2/pattern_provider") // Molecular Assembler event.remove({ id: "ae2:network/crafting/molecular_assembler" }) event.shaped(Item.of("ae2:molecular_assembler"), [ "ABA", "CDE", "ABA" ], { A: "gtceu:aluminium_plate", B: "ae2:quartz_glass", C: "ae2:annihilation_core", D: "minecraft:crafting_table", E: "ae2:formation_core" }).id("kubejs:ae2/molecular_assembler") // Interface event.remove({ id: "ae2:network/blocks/interfaces_interface" }) event.shaped(Item.of("ae2:interface"), [ "ABA", "CDE", "AAA" ], { A: "gtceu:aluminium_plate", B: "gtceu:mv_conveyor_module", C: "ae2:annihilation_core", D: "gtceu:mv_machine_hull", E: "ae2:formation_core" }).id("kubejs:ae2/interface") // Requester event.remove({ id: "merequester:requester" }) event.shaped(Item.of("merequester:requester"), [ "ABA", "CDC", "AAA" ], { A: "gtceu:rhodium_plated_palladium_plate", B: "gtceu:luv_robot_arm", C: "#gtceu:circuits/zpm", D: "gtceu:luv_machine_hull", }).id("kubejs:ae2/requster") // Quantum Ring event.remove({ id: "ae2:network/blocks/quantum_ring" }) event.shaped(Item.of("ae2:quantum_ring"), [ "ABA", "DCD", "ABA" ], { A: "gtceu:stainless_steel_plate", B: "ae2:calculation_processor", C: "gtceu:quantum_star", D: "ae2:engineering_processor" }).id("kubejs:ae2/quantum_ring") // Quantum Link Chamber event.remove({ id: "ae2:network/blocks/quantum_link" }) event.shaped(Item.of("ae2:quantum_link"), [ "ABA", "BCB", "ABA" ], { A: "ae2:quartz_glass", B: "ae2:fluix_pearl", C: "gtceu:certus_quartz_plate" }).id("kubejs:ae2/quantum_link") // Storage Cell Removal event.remove({ id: "ae2:network/cells/item_storage_cell_1k" }) event.remove({ id: "ae2:network/cells/item_storage_cell_4k" }) event.remove({ id: "ae2:network/cells/item_storage_cell_16k" }) event.remove({ id: "ae2:network/cells/item_storage_cell_64k" }) event.remove({ id: "ae2:network/cells/item_storage_cell_256k" }) event.remove({ id: "ae2:network/cells/fluid_storage_cell_1k" }) event.remove({ id: "ae2:network/cells/fluid_storage_cell_4k" }) event.remove({ id: "ae2:network/cells/fluid_storage_cell_16k" }) event.remove({ id: "ae2:network/cells/fluid_storage_cell_64k" }) event.remove({ id: "ae2:network/cells/fluid_storage_cell_256k" }) event.remove({ id: "ae2:network/cells/spatial_storage_cell_2_cubed" }) event.remove({ id: "ae2:network/cells/spatial_storage_cell_16_cubed" }) event.remove({ id: "ae2:network/cells/spatial_storage_cell_128_cubed" }) event.remove({ id: "ae2:network/cells/view_cell" }) // Storage Housing event.remove({ id: "ae2:network/cells/item_cell_housing" }) event.shaped(Item.of("ae2:item_cell_housing"), [ "ABA", "B B", "ABA" ], { A: "gtceu:fine_red_alloy_wire", B: "gtceu:electrical_steel_plate" }).id("kubejs:ae2/item_cell_housing") event.remove({ id: "ae2:network/cells/fluid_cell_housing" }) event.shaped(Item.of("ae2:fluid_cell_housing"), [ "ABA", "B B", "ABA" ], { A: "gtceu:fine_red_alloy_wire", B: "gtceu:energetic_alloy_plate" }) // CPUs event.remove({ id: "ae2:network/crafting/cpu_crafting_unit" }) event.shaped(Item.of("ae2:crafting_unit"), [ "ABA", "CDC", "ABA" ], { A: "gtceu:aluminium_plate", B: "ae2:calculation_processor", C: "ae2:fluix_glass_cable", D: "ae2:logic_processor" }).id("kubejs:ae2/cpu_crafting_unit") // Charger event.remove({ id: "ae2:network/blocks/crystal_processing_charger" }) event.shaped(Item.of("ae2:charger"), [ "ABA", "A ", "ABA" ], { A: "gtceu:dark_steel_plate", B: "gtceu:certus_quartz_plate" }).id("kubejs:ae2/charger") // Charged Certus event.remove({ id: "ae2:charger/charged_certus_quartz_crystal" }) event.remove({ id: "ae2:transform/certus_quartz_crystals" }) event.custom({ "type": "ae2:charger", "ingredient": { "item": "gtceu:certus_quartz_gem" }, "result": { "item": "gtceu:charged_certus_quartz_gem" } }).id("kubejs:ae2/charged_certus_quartz_gem") event.recipes.gtceu.autoclave("charged_autoclave") .itemInputs(["gtceu:certus_quartz_gem"]) .inputFluids("gtceu:distilled_water 100") .itemOutputs("gtceu:charged_certus_quartz_gem") .duration(20) .EUt(480) // Fix Regular Certus Grinding Recipe giving Charged Certus Dust sometimes due to using forge tags event.remove({ id: "gtceu:macerator/macerate_certus_quartz_gem" }) event.recipes.gtceu.macerator("macerate_certus_quartz_gem") .itemInputs(["gtceu:certus_quartz_gem"]) .itemOutputs("gtceu:certus_quartz_dust") .duration(20) .EUt(GTValues.VA[GTValues.ULV]) // Matter Condenser event.remove({ id: "ae2:network/blocks/io_condenser" }) event.shaped(Item.of("ae2:condenser"), [ "AAA", "ABA", "AAA" ], { A: "gtceu:titanium_plate", B: "gtceu:quantum_star" }).id("kubejs:ae2/matter_condensor") // Storage Components const storage_tiers = [ "1k", "4k", "16k", "64k", "256k", "1m", "4m", "16m", "64m", "256m" ] const storage_component_ingredients = [ ["mv", "minecraft:glass", "ae2:calculation_processor", "gtceu:polyethylene", 1], ["hv", "minecraft:glass", "ae2:engineering_processor", "gtceu:polyethylene", 1], ["ev", "ae2:logic_processor", "ae2:engineering_processor", "gtceu:polyethylene", 1], ["iv", "ae2:logic_processor", "ae2:engineering_processor", "gtceu:polytetrafluoroethylene", 1], ["iv", "ae2:engineering_processor", "megacells:accumulation_processor", "gtceu:polytetrafluoroethylene", 2], ["luv", "ae2:engineering_processor", "megacells:accumulation_processor", "gtceu:polytetrafluoroethylene", 2], ["luv", "megacells:accumulation_processor", "gtceu:quantum_eye", "gtceu:polytetrafluoroethylene", 2], ["zpm", "megacells:accumulation_processor", "gtceu:quantum_eye", "gtceu:polybenzimidazole", 2], ["zpm", "megacells:accumulation_processor", "gtceu:quantum_eye", "gtceu:polybenzimidazole", 2], ] for (let index = 0; index < storage_component_ingredients.length; index++) { let curTier; if (index < 4) curTier = Item.of(`ae2:cell_component_${storage_tiers[index + 1]}`) else curTier = Item.of(`megacells:cell_component_${storage_tiers[index + 1]}`) let curIngredients = storage_component_ingredients[index]; let toRemove; if (index < 4) toRemove = `ae2:network/cells/item_storage_components_cell_${storage_tiers[index + 1]}_part` else toRemove = `megacells:cells/cell_component_${storage_tiers[index + 1]}` let prevTier; if (index <= 4) prevTier = Item.of(`ae2:cell_component_${storage_tiers[index]}`) else prevTier = Item.of(`megacells:cell_component_${storage_tiers[index]}`) event.remove({ id: toRemove }) event.shaped(Item.of(curTier), [ "ABA", "SCS", "ASA" ], { A: curIngredients[1], B: curIngredients[2], C: `#gtceu:circuits/${curIngredients[0]}`, S: Item.of(prevTier) }).id(`kubejs:ae2/storage_component_${storage_tiers[index + 1]}`) // Cheaper ramp up to reduce exponential effect event.recipes.gtceu.assembler(`kubejs:ae2/${storage_tiers[index + 1]}_storage_assembler`) .itemInputs( Item.of(prevTier, 2), Item.of(curIngredients[1], 2), Item.of(curIngredients[2], 1), `#gtceu:circuits/${curIngredients[0]}` ) .inputFluids(Fluid.of(curIngredients[3], 144 * curIngredients[4])) .itemOutputs(curTier) .EUt(240) .duration(200) .cleanroom(CleanroomType.CLEANROOM) } // 1K Storage Component recipes event.remove({ id: "ae2:network/cells/item_storage_components_cell_1k_part" }) for (let index = 0; index < 5; index++) { let circuit = `#gtceu:circuits/${GTValues.VN[index + 1].toLowerCase()}` let glass = index == 0 ? "minecraft:glass" : "gtceu:tempered_glass" event.shaped(Item.of("ae2:cell_component_1k", Math.pow(2, index)), [ "ABA", "BCB", "ABA" ], { A: glass, B: "gtceu:red_alloy_plate", C: circuit }).id(`kubejs:ae2/storage_component_1k_${Math.pow(2, index)}`) } // Wireless Receiver event.remove({ id: "ae2:network/wireless_part" }) event.shaped(Item.of("ae2:wireless_receiver"), [ " A ", "BCB", " B " ], { A: "gtceu:ev_emitter", B: "gtceu:titanium_plate", C: "ae2:fluix_pearl" }).id("kubejs:ae2/wirelss_receiver") // AE2 Cards event.remove({ id: "ae2:materials/basiccard" }) event.shaped("ae2:basic_card", [ "AB ", "ACB", "AB " ], { A: "gtceu:fine_copper_wire", B: "gtceu:iron_plate", C: "ae2:calculation_processor" }).id("kubejs:ae2/basic_card") event.remove({ id: "ae2:materials/advancedcard" }) event.shaped("ae2:advanced_card", [ "AB ", "ACB", "AB " ], { A: "gtceu:fine_aluminium_wire", B: "gtceu:electrical_steel_plate", C: "ae2:calculation_processor" }).id("kubejs:ae2/advanced_card") // Network Memory Card event.remove({ id: "ae2:tools/network_memory_card" }) event.shapeless("ae2:memory_card", ["#gtceu:circuits/hv", "ae2:basic_card"]).id("kubejs:ae2/memory_card") // Crafting Card event.remove({ id: "ae2:materials/cardcrafting"}) event.shapeless("ae2:crafting_card", ["minecraft:crafting_table", "ae2:basic_card", "#gtceu:circuits/ev"]) // Level Emitter event.remove({ id: "ae2:network/parts/level_emitter" }) event.shapeless("ae2:level_emitter", ["minecraft:redstone_torch", "gtceu:aluminium_plate", "ae2:calculation_processor", "#forge:rods/stainless_steel"]).id("kubejs:ae2/level_emitter") // Energy level Emitter event.remove({ id: "ae2:network/parts/energy_level_emitter" }) event.shapeless("ae2:energy_level_emitter", ["ae2:level_emitter", "#forge:gems/certus_quartz"]).id("kubejs:ae2/energy_level_emitter").id("kubejs:ae2/energy_level_emitter") // Processors event.remove({ id: "ae2:inscriber/calculation_processor_print" }) event.custom({ "type": "ae2:inscriber", "ingredients": { "middle": { "item": "gtceu:certus_quartz_gem" }, "top": { "item": "ae2:calculation_processor_press" } }, "mode": "inscribe", "result": { "item": "ae2:printed_calculation_processor" } }).id("kubejs:ae2/calculation_processor_print") event.remove({ id: "ae2:inscriber/silicon_print" }) const wafers = [ ["gtceu:", "silicon_wafer"], ["gtceu:", "phosphorus_wafer"], ["gtceu:", "naquadah_wafer"], ["gtceu:", "neutronium_wafer"], ["kubejs:", "universe_wafer"] ] if (doHarderPrintedSilicon) { // Use only Greg wafers for printed silicon in EM wafers.forEach((wafer, index) => { event.custom({ "type": "ae2:inscriber", "ingredients": { "middle": { "item": (wafer[0] + wafer[1]) }, "top": { "item": "ae2:silicon_press" } }, "mode": "inscribe", "result": { "item": "ae2:printed_silicon", "count": 2 ** index } }).id("kubejs:ae2/" + wafer[1] + "_print") }) } else { // Use AE2 silicon in other modes event.custom({ "type": "ae2:inscriber", "ingredients": { "middle": { "item": "ae2:silicon" }, "top": { "item": "ae2:silicon_press" } }, "mode": "inscribe", "result": { "item": "ae2:printed_silicon" } }).id("kubejs:ae2/silicon_print") } event.remove({ id: "ae2:inscriber/logic_processor" }) event.custom({ "type": "ae2:inscriber", "ingredients": { "bottom": { "item": "ae2:printed_silicon" }, "middle": { "tag": "gtceu:circuits/lv" }, "top": { "item": "ae2:printed_logic_processor" } }, "mode": "press", "result": { "item": "ae2:logic_processor" } }).id("kubejs:ae2/logic_processor") event.remove({ id: "ae2:inscriber/calculation_processor" }) event.custom({ "type": "ae2:inscriber", "ingredients": { "bottom": { "item": "ae2:printed_silicon" }, "middle": { "tag": "gtceu:circuits/lv" }, "top": { "item": "ae2:printed_calculation_processor" } }, "mode": "press", "result": { "item": "ae2:calculation_processor" } }).id("kubejs:ae2/calculation_processor") event.remove({ id: "ae2:inscriber/engineering_processor" }) event.custom({ "type": "ae2:inscriber", "ingredients": { "bottom": { "item": "ae2:printed_silicon" }, "middle": { "tag": "gtceu:circuits/lv" }, "top": { "item": "ae2:printed_engineering_processor" } }, "mode": "press", "result": { "item": "ae2:engineering_processor" } }).id("kubejs:ae2/engineering_processor") // Storage bus event.remove({ id: "ae2:network/parts/storage_bus" }) event.shapeless("ae2:storage_bus", ["ae2:interface", "gtceu:mv_electric_piston", "gtceu:mv_electric_pump"]).id("kubejs:ae2/storage_bus") // Busses event.remove({ id: "ae2:network/parts/import_bus" }) event.shaped("ae2:export_bus", [ " A ", "DBD", " C " ], { A: "gtceu:mv_electric_pump", B: "ae2:formation_core", C: "gtceu:mv_electric_piston", D: "gtceu:aluminium_plate" }).id("kubejs:ae2/export_bus") event.remove({ id: "ae2:network/parts/export_bus" }) event.shaped("ae2:import_bus", [ " A ", "DBD", " C " ], { A: "gtceu:mv_electric_pump", B: "ae2:annihilation_core", C: "gtceu:mv_electric_piston", D: "gtceu:aluminium_plate" }).id("kubejs:ae2/import_bus") // P2P event.remove({ id: "ae2:network/parts/tunnels_me" }) event.shaped("ae2:me_p2p_tunnel", [ " A ", "ABA", "CCC" ], { A: "gtceu:stainless_steel_plate", B: "ae2:engineering_processor", C: "gtceu:fluix_plate" }).id("kubejs:ae2/p2p_tunnel") // Cable Anchor event.recipes.gtceu.wiremill("ae2:cable_anchor") .itemInputs("gtceu:steel_bolt") .itemOutputs("2x ae2:cable_anchor") .duration(20) .EUt(16) // Cables event.remove({ id: "ae2:network/parts/quartz_fiber_part" }) event.remove({ id: "gtceu:shapeless/gem_to_gem_flawedgem_nether_quartz" }) event.remove({ id: "ae2:network/cables/glass_fluix" }) event.recipes.gtceu.wiremill("kubejs:ae2/quartz_fiber") .itemInputs("gtceu:certus_quartz_gem") .itemOutputs("ae2:quartz_fiber") .duration(50) .EUt(16) event.recipes.gtceu.alloy_smelter("kubejs:ae2/fluix_cable") .itemInputs(["gtceu:fluix_dust", "ae2:quartz_fiber"]) .itemOutputs("2x ae2:fluix_glass_cable") .duration(50) .EUt(16) // Skystone event.recipes.gtceu.macerator("sky_stone_dust") .itemInputs("ae2:sky_stone_block") .itemOutputs("ae2:sky_dust") .duration(120) .EUt(GTValues.VA[GTValues.ULV]) // Certus event.remove({ id: /^ae2:transform.*budding_quartz$/ }) event.replaceInput( {}, "ae2:charged_certus_quartz_crystal", "gtceu:charged_certus_quartz_gem" ) event.custom({ "type": "ae2:transform", "ingredients": [ { "item": "gtceu:charged_certus_quartz_gem" }, { "tag": "forge:storage_blocks/certus_quartz" } ], "result": { "count": 1, "item": "ae2:damaged_budding_quartz" } }) event.custom({ "type": "ae2:transform", "ingredients": [ { "item": "gtceu:charged_certus_quartz_gem" }, { "item": "ae2:damaged_budding_quartz" } ], "result": { "count": 1, "item": "ae2:chipped_budding_quartz" } }) event.custom({ "type": "ae2:transform", "ingredients": [ { "item": "gtceu:charged_certus_quartz_gem" }, { "item": "ae2:chipped_budding_quartz" } ], "result": { "count": 1, "item": "ae2:flawed_budding_quartz" } }) event.recipes.gtceu.autoclave("flawless_budding") .itemInputs(["ae2:flawed_budding_quartz"]) .inputFluids("gtceu:distilled_water 100") .itemOutputs("ae2:flawless_budding_quartz") .duration(20) .EUt(480) // Fluix event.remove({ id: "ae2:transform/fluix_crystal" }) event.remove({ id: "ae2:transform/fluix_crystals" }) event.remove({ id: "ae2:misc/deconstruction_fluix_block" }) event.custom({ "type": "ae2:transform", "ingredients": [ { "item": "gtceu:charged_certus_quartz_gem" }, { "item": "minecraft:redstone" }, { "item": "minecraft:quartz" } ], "result": { "count": 2, "item": "gtceu:fluix_gem" } }).id("kubejs:ae2/fluix_gem") event.replaceInput({ id: /ae2/ }, "ae2:fluix_block", "gtceu:fluix_block") event.recipes.gtceu.mixer("fluix") .itemInputs("gtceu:charged_certus_quartz_gem", "minecraft:redstone", "minecraft:quartz") .inputFluids(Fluid.of("minecraft:water", 100)) .itemOutputs("2x gtceu:fluix_gem") .duration(20) .EUt(7) .circuit(3) event.recipes.gtceu.compressor("fluix_plate") .itemInputs("gtceu:fluix_dust") .itemOutputs("gtceu:fluix_plate") .duration(400) .EUt(2) // Cable Recipes event.remove({ id: "ae2:network/cables/covered_fluix" }) event.shapeless("ae2:fluix_smart_cable", ["ae2:fluix_covered_cable", "#forge:small_dusts/redstone", "#forge:small_dusts/glowstone"]) .id("ae2:network/cables/smart_fluix") event.recipes.gtceu.assembler("kubejs:ae2/fluix_covered_cable_rubber") .itemInputs("#ae2:glass_cable") .inputFluids("gtceu:rubber 144") .itemOutputs("ae2:fluix_covered_cable") .duration(100) .EUt(7) event.recipes.gtceu.assembler("kubejs:ae2/fluix_covered_cable_silicone") .itemInputs("#ae2:glass_cable") .inputFluids("gtceu:silicone_rubber 72") .itemOutputs("ae2:fluix_covered_cable") .duration(100) .EUt(7) event.recipes.gtceu.assembler("kubejs:ae2/fluix_covered_cable_styrene_butadiene") .itemInputs("#ae2:glass_cable") .inputFluids("gtceu:styrene_butadiene_rubber 36") .itemOutputs("ae2:fluix_covered_cable") .duration(100) .EUt(7) // Presses function pressengrave(name, press, lens) { event.recipes.gtceu.laser_engraver(name) .itemInputs("gtceu:vanadium_steel_block") .notConsumable(lens) .itemOutputs(press) .duration(1600) .EUt(120) } pressengrave("kubejs:ae2/engineering_processor_press", "ae2:engineering_processor_press", "#forge:lenses/red"); pressengrave("kubejs:ae2/calculation_processor_press", "ae2:calculation_processor_press", "#forge:lenses/blue"); pressengrave("kubejs:ae2/silicon_press", "ae2:silicon_press", "#forge:lenses/light_blue"); pressengrave("kubejs:ae2/logic_processor_press", "ae2:logic_processor_press", "#forge:lenses/green"); pressengrave("kubejs:ae2/name_press", "ae2:name_press", "#forge:lenses/white"); // MEGA cells event.remove({ id: "megacells:inscriber/accumulation_processor_press" }) event.recipes.gtceu.laser_engraver("kubejs:mega/accumulation_processor_press") .itemInputs("gtceu:stainless_steel_block") .notConsumable("#forge:lenses/magenta") .itemOutputs("megacells:accumulation_processor_press") .duration(1600) .EUt(240) .cleanroom(CleanroomType.CLEANROOM) event.remove({ id: "megacells:inscriber/accumulation_processor_print" }) event.custom({ "type": "ae2:inscriber", "ingredients": { "middle": { "item": "gtceu:black_steel_ingot" }, "top": { "item": "megacells:accumulation_processor_press" } }, "mode": "inscribe", "result": { "item": "megacells:printed_accumulation_processor" } }).id("kubejs:mega/accumulation_processor_print") event.remove({ id: "megacells:inscriber/accumulation_processor" }) event.custom({ "type": "ae2:inscriber", "ingredients": { "bottom": { "item": "ae2:printed_silicon" }, "middle": { "tag": "gtceu:circuits/hv" }, "top": { "item": "megacells:printed_accumulation_processor" } }, "mode": "press", "result": { "item": "megacells:accumulation_processor" } }).id("kubejs:mega/accumulation_processor") event.remove({ id: /megacells:cells\/standard\/.*storage_cell.*m$/ }) event.remove({ id: "megacells:cells/mega_item_cell_housing" }) event.shaped(Item.of("megacells:mega_item_cell_housing"), [ "ABA", "B B", "ABA" ], { A: "gtceu:fine_lumium_wire", B: "gtceu:naquadah_plate" }).id("kubejs:mega/item_cell_housing") event.remove({ id: "megacells:cells/mega_fluid_cell_housing" }) event.shaped(Item.of("megacells:mega_fluid_cell_housing"), [ "ABA", "B B", "ABA" ], { A: "gtceu:fine_lumium_wire", B: "gtceu:crystal_matrix_plate" }).id("kubejs:mega/fluid_cell_housing") event.remove({ id: "megacells:cells/standard/bulk_item_cell" }) // recipe in SDA event.remove({ id: "megacells:crafting/bulk_cell_component" }) event.remove({ id: "megacells:network/cell_dock" }) event.recipes.gtceu.assembler("kubejs:mega/cell_dock") .itemInputs("4x gtceu:stainless_steel_plate", "8x gtceu:aluminium_plate", "gtceu:mv_emitter", "gtceu:mv_sensor", "2x #gtceu:circuits/mv") .inputFluids("gtceu:soldering_alloy 144") .itemOutputs("8x megacells:cell_dock") .EUt(240) .duration(200) event.remove({ id: "megacells:crafting/mega_crafting_unit" }) event.shaped(Item.of("megacells:mega_crafting_unit"), [ "ABA", "CDC", "ABA" ], { A: "gtceu:black_steel_plate", B: "ae2:logic_processor", C: "ae2:crafting_unit", D: "megacells:accumulation_processor" }).id("kubejs:mega/cpu_crafting_unit") // Remove Duplicates event.remove({ id: "megacells:crafting/mega_crafting_accelerator" }) event.remove({ id: /megacells:network\/mega_interface/ }) event.remove({ id: /megacells:network\/mega_pattern_provider/ }) event.remove({ output: /megacells:sky_steel/ }) // MAE2 compat stuff event.remove({ id: /mae2/, not: { id: /crafting_accelerator/ } }) event.shaped("mae2:item_multi_p2p_tunnel", [ " A ", "ABA", "CDC" ], { A: "gtceu:black_steel_plate", B: "megacells:accumulation_processor", C: "gtceu:sapphire_plate", D: "gtceu:fluix_plate" }).id("kubejs:ae2/multi_p2p_tunnel") // Greg circuits if (doHarderPrintedSilicon) { wafers.forEach((wafer, tier) => { event.recipes.gtceu.forming_press("ae2_printed_" + wafer[1] + "greg") .notConsumable("ae2:silicon_press") .itemInputs("4x " + wafer[0] + wafer[1]) .itemOutputs(Item.of("ae2:printed_silicon", 4 * (2 ** tier))) .duration(10) .EUt(2048) }) } else { event.recipes.gtceu.forming_press("ae2_printed_silicon_greg") .notConsumable("ae2:silicon_press") .itemInputs("4x ae2:silicon") .itemOutputs("4x ae2:printed_silicon") .duration(10) .EUt(2048) } event.recipes.gtceu.forming_press("ae2_printed_engineering_greg") .notConsumable("ae2:engineering_processor_press") .itemInputs("4x minecraft:diamond") .itemOutputs("4x ae2:printed_engineering_processor") .duration(10) .EUt(2048) event.recipes.gtceu.forming_press("ae2_printed_logic_greg") .notConsumable("ae2:logic_processor_press") .itemInputs("4x minecraft:gold_ingot") .itemOutputs("4x ae2:printed_logic_processor") .duration(10) .EUt(2048) event.recipes.gtceu.forming_press("ae2_printed_calcuation_greg") .notConsumable("ae2:calculation_processor_press") .itemInputs("4x gtceu:certus_quartz_gem") .itemOutputs("4x ae2:printed_calculation_processor") .duration(10) .EUt(2048) event.recipes.gtceu.forming_press("mega_printed_accumulation_greg") .notConsumable("megacells:accumulation_processor_press") .itemInputs("4x gtceu:black_steel_plate") .itemOutputs("4x megacells:printed_accumulation_processor") .duration(10) .EUt(2048) // Processors event.recipes.gtceu.circuit_assembler("ae2_engineering_processor_greg_1x") .itemInputs("ae2:printed_engineering_processor", "ae2:printed_silicon", "#gtceu:circuits/lv") .inputFluids("gtceu:soldering_alloy 72") .itemOutputs("2x ae2:engineering_processor") .duration(100) .EUt(2560) .cleanroom(CleanroomType.CLEANROOM) event.recipes.gtceu.circuit_assembler("ae2_logic_processor_greg_1x") .itemInputs("ae2:printed_logic_processor", "ae2:printed_silicon", "#gtceu:circuits/lv") .inputFluids("gtceu:soldering_alloy 72") .itemOutputs("2x ae2:logic_processor") .duration(100) .EUt(2560) .cleanroom(CleanroomType.CLEANROOM) event.recipes.gtceu.circuit_assembler("ae2_calculation_processor_greg_1x") .itemInputs("ae2:printed_calculation_processor", "ae2:printed_silicon", "#gtceu:circuits/lv") .inputFluids("gtceu:soldering_alloy 72") .itemOutputs("2x ae2:calculation_processor") .duration(100) .EUt(2560) .cleanroom(CleanroomType.CLEANROOM) event.recipes.gtceu.circuit_assembler("mega_accumulation_processor_greg_1x") .itemInputs("megacells:printed_accumulation_processor", "ae2:printed_silicon", "#gtceu:circuits/hv") .inputFluids("gtceu:soldering_alloy 72") .itemOutputs("megacells:accumulation_processor") .duration(10) .EUt(2560) .cleanroom(CleanroomType.CLEANROOM) // ExtendedAE // Pattern Modifier (NAE2's Pattern Multitool) event.remove({ id: "expatternprovider:pattern_modifier" }) event.shapeless("expatternprovider:pattern_modifier", ["ae2:calculation_processor", "ae2:blank_pattern", "ae2:logic_processor"]).id("kubejs:epp/pattern_modifier") // Extended Pattern Provider event.remove({ id: "expatternprovider:epp" }) event.recipes.gtceu.assembler("kubejs:epp/ex_pattern_provider") .itemInputs("2x ae2:pattern_provider", "2x ae2:capacity_card", "4x gtceu:aluminium_plate") .itemOutputs("expatternprovider:ex_pattern_provider") .duration(180) .EUt(128) .circuit(4) event.remove({ id: "expatternprovider:epp_upgrade" }) event.recipes.gtceu.assembler("kubejs:epp/ex_pattern_provider_upgrade") .itemInputs("ae2:pattern_provider", "2x ae2:capacity_card", "4x gtceu:aluminium_plate") .itemOutputs("expatternprovider:pattern_provider_upgrade") .duration(180) .EUt(128) .circuit(3) // Extended Interface event.remove({ id: "expatternprovider:ei" }) event.recipes.gtceu.assembler("kubejs:epp/ex_interface") .itemInputs("2x ae2:interface", "2x ae2:capacity_card", "4x gtceu:aluminium_plate") .itemOutputs("expatternprovider:ex_interface") .duration(180) .EUt(128) .circuit(4) event.remove({ id: "expatternprovider:ei_upgrade" }) event.recipes.gtceu.assembler("kubejs:epp/ex_interface_upgrade") .itemInputs("ae2:interface", "2x ae2:capacity_card", "4x gtceu:aluminium_plate") .itemOutputs("expatternprovider:interface_upgrade") .duration(180) .EUt(128) .circuit(3) // Oversize Interface event.remove({ id: "expatternprovider:oversize_interface" }) event.recipes.gtceu.assembler("kubejs:epp/oversize_interface") .itemInputs("8x expatternprovider:ex_interface", "8x ae2:capacity_card", "8x gtceu:stainless_steel_plate") .itemOutputs("expatternprovider:oversize_interface") .duration(240) .EUt(512) // Extended MA event.remove({ id: "expatternprovider:ex_molecular_assembler" }) event.recipes.gtceu.assembler("kubejs:epp/ex_molecular_assembler") .itemInputs("8x ae2:molecular_assembler", "8x gtceu:fluix_plate", "8x ae2:capacity_card") .itemOutputs("expatternprovider:ex_molecular_assembler") .duration(240) .EUt(512) // Extended Inscriber event.remove({ id: "expatternprovider:ex_inscriber" }) event.recipes.gtceu.assembler("kubejs:epp/ex_inscriber") .itemInputs("4x ae2:inscriber", "2x ae2:capacity_card") .itemOutputs("expatternprovider:ex_inscriber") .duration(180) .EUt(32) // Extended Charger event.remove({ id: "expatternprovider:ex_charger" }) event.recipes.gtceu.assembler("kubejs:epp/ex_charger") .itemInputs("4x ae2:charger", "2x ae2:capacity_card") .itemOutputs("expatternprovider:ex_charger") .duration(180) .EUt(32) // Tag storage bus event.remove({ id: "expatternprovider:tag_storage_bus" }) event.recipes.gtceu.assembler("kubejs:epp/tag_storage_bus") .itemInputs("ae2:storage_bus", "2x gtceu:aluminium_plate", "ae2:logic_processor") .itemOutputs("expatternprovider:tag_storage_bus") .duration(180) .EUt(32) // Mod storage bus event.remove({ id: "expatternprovider:mod_storage_bus" }) event.recipes.gtceu.assembler("kubejs:epp/mod_storage_bus") .itemInputs("ae2:storage_bus", "2x gtceu:aluminium_plate", "ae2:calculation_processor") .itemOutputs("expatternprovider:mod_storage_bus") .duration(180) .EUt(32) // Extended Pattern Access Terminal // I do want to eventually just outright remove the default one in favor of this one, but will happen once EPAT gets a fullblock eng block event.remove({ id: "expatternprovider:epa" }) event.shapeless("expatternprovider:ex_pattern_access_part", ["ae2:pattern_access_terminal", "ae2:logic_processor"]).id("kubejs:epp/epa") event.remove({ id: "expatternprovider:epa_upgrade" }) event.shapeless("expatternprovider:ex_pattern_access_part", ["#ae2:illuminated_panel", "ae2:logic_processor"]).id("kubejs:epp/epa_upgrade") // ExtendedAE Silicon Block event.remove({id:"expatternprovider:silicon_block"}) // Circuit cutter event.remove({ id: "expatternprovider:circuit_cutter" }) event.remove({ id: /expatternprovider.*cutter/ }) // ME packing tape event.shapeless("expatternprovider:me_packing_tape", ["gtceu:basic_tape", "gtceu:fluix_dust"]).id("expatternprovider:tape") // Assembler Matrix // Assembler Matrix Frame event.remove({ id: "expatternprovider:assembler_matrix_frame" }) event.recipes.gtceu.assembler("kubejs:epp/assembler_matrix_frame") .itemInputs("4x gtceu:mythril_plate", "4x gtceu:blue_steel_frame", "gtceu:plascrete", "#gtceu:circuits/hv") .inputFluids("gtceu:polyethylene 288") .itemOutputs("4x expatternprovider:assembler_matrix_frame") .duration(150) .EUt(1920) // Assembler Matrix Wall event.remove({ id: "expatternprovider:assembler_matrix_wall" }) event.recipes.gtceu.assembler("kubejs:epp/assembler_matrix_wall") .itemInputs("expatternprovider:assembler_matrix_frame", "gtceu:hv_electric_motor") .itemOutputs("expatternprovider:assembler_matrix_wall") .circuit(1) .duration(100) .EUt(1920) // Assembler Matrix Glass event.remove({ id: "expatternprovider:assembler_matrix_glass" }) event.recipes.gtceu.assembler("kubejs:epp/assembler_matrix_glass") .itemInputs("expatternprovider:assembler_matrix_frame", "gtceu:hv_electric_motor", "ae2:quartz_glass") .itemOutputs("expatternprovider:assembler_matrix_glass") .circuit(2) .duration(100) .EUt(1920) // Assembler Matrix Pattern Core event.remove({ id: "expatternprovider:assembler_matrix_pattern" }) event.recipes.gtceu.assembler("kubejs:epp/assembler_matrix_pattern") .itemInputs("4x expatternprovider:assembler_matrix_frame", "4x ae2:engineering_processor", "expatternprovider:ex_pattern_provider", "6x ae2:blue_lumen_paint_ball") .inputFluids("gtceu:polyethylene 288") .itemOutputs("expatternprovider:assembler_matrix_pattern") .duration(150) .EUt(1920) // Assembler Matrix Craft Core event.remove({ id: "expatternprovider:assembler_matrix_crafter" }) event.recipes.gtceu.assembler("kubejs:epp/assembler_matrix_crafter") .itemInputs("4x expatternprovider:assembler_matrix_frame", "4x ae2:engineering_processor", "expatternprovider:ex_molecular_assembler", "6x ae2:purple_lumen_paint_ball") .inputFluids("gtceu:polyethylene 288") .itemOutputs("expatternprovider:assembler_matrix_crafter") .duration(150) .EUt(1920) // Assembler Matrix Speed Core event.remove({ id: "expatternprovider:assembler_matrix_speed" }) event.recipes.gtceu.assembler("kubejs:epp/assembler_matrix_speed") .itemInputs("4x expatternprovider:assembler_matrix_frame", "4x megacells:accumulation_processor", "mae2:4x_crafting_accelerator", "expatternprovider:ex_pattern_provider", "expatternprovider:ex_molecular_assembler", "6x ae2:red_lumen_paint_ball") .inputFluids("gtceu:polyethylene 288") .itemOutputs("expatternprovider:assembler_matrix_speed") .duration(150) .EUt(1920) // Misc stuff event.shaped("expatternprovider:ingredient_buffer", [ "ISI", "GCG", "ISI" ], { I: "gtceu:iron_plate", S: "ae2:cell_component_1k", G: "ae2:quartz_glass", C: "gtceu:lv_hermetic_casing" }).id("expatternprovider:ingredient_buffer") event.replaceInput({ id: "expatternprovider:crystal_fixer" }, "minecraft:iron_ingot", "gtceu:iron_plate") event.remove({ id: "expatternprovider:ex_drive" }) event.recipes.gtceu.assembler("kubejs:epp/ex_drive") .itemInputs("2x ae2:drive", "4x gtceu:fluix_plate", "ae2:capacity_card") .itemOutputs("expatternprovider:ex_drive") .duration(240) .EUt(128) .circuit(4) event.remove({ id: "expatternprovider:ex_drive_upgrade" }) event.recipes.gtceu.assembler("kubejs:epp/ex_drive_upgrade") .itemInputs("1x ae2:drive", "4x gtceu:fluix_plate", "ae2:capacity_card") .itemOutputs("expatternprovider:drive_upgrade") .duration(240) .EUt(128) .circuit(3) // Quantum Bridge Card event.remove({ id: "ae2wtlib:quantum_bridge_card" }) event.custom({ type: "ae2:inscriber", ingredients: { bottom: { item: "ae2:singularity" }, middle: { item: "ae2:advanced_card" }, top: { item: "ae2:singularity" } }, mode: "press", result: { item: "ae2wtlib:quantum_bridge_card" } }).id("kubejs:ae2wtlib/quantum_bridge_card") // Fluix Dust Inscriber // event.remove({ id: 'jei:ae2/inscriber/fluix_dust' }) (I don't know what's wrong with that recipe but it doesn't want to be removed or replaceoutput) event.custom({ "type": "ae2:inscriber", "ingredients": { "middle": { "item": "gtceu:fluix_gem" } }, "mode": "inscribe", "result": { "item": "gtceu:fluix_dust" } }).id("kubejs:ae2/fluix_dust_inscriber") // Certus Quartz Crystal event.remove({ input: "ae2:certus_quartz_crystal" }) event.replaceOutput( { output: "ae2:certus_quartz_crystal" }, "ae2:certus_quartz_crystal", "gtceu:certus_quartz_gem" ) // Certus Quartz Block event.remove({ output: "gtceu:certus_quartz_block" }) event.recipes.gtceu.compressor("kubejs:certus_quartz_block") .itemInputs(["4x gtceu:certus_quartz_gem"]) .itemOutputs("gtceu:certus_quartz_block") .duration(300) .EUt(2) event.shaped(Item.of("gtceu:certus_quartz_block"), [ "AA", "AA" ], { A: "#forge:gems/certus_quartz" }).id("kubejs:gtceu/certus_quartz_block") // Vibrant Quartz Glass event.remove({ output: "ae2:quartz_vibrant_glass" }) event.recipes.gtceu.alloy_smelter("kubejs:vibrant_quartz_glass") .itemInputs("ae2:quartz_glass", "gtceu:vibrant_alloy_dust") .itemOutputs("ae2:quartz_vibrant_glass") .duration(200) .EUt("128") // Terminal event.remove({ id: "ae2:network/parts/terminals" }) event.shapeless("ae2:terminal", ["#ae2:illuminated_panel", "#gtceu:circuits/lv"]).id("kubejs:ae2_terminal") // Cable stuff const colors = ["black", "blue", "brown", "cyan", "gray", "green", "light_blue", "light_gray", "lime", "magenta", "orange", "pink", "purple", "red", "white", "yellow"] function washToFluix(wash) { event.shaped(`8x ae2:fluix_${wash}_cable`, [ "CCC", "CDC", "CCC" ], { C: `#ae2:${wash}_cable`, D: "#ae2:can_remove_color" }) } function coveredDenseCable(color) { event.shaped(`ae2:${color}_covered_dense_cable`, [ "CC", "CC" ], { C: `ae2:${color}_covered_cable` }) } function smartDenseCable(color) { event.shaped(`ae2:${color}_smart_dense_cable`, [ "CC", "CC" ], { C: `ae2:${color}_smart_cable` }) } washToFluix("covered") washToFluix("covered_dense") washToFluix("smart_dense") washToFluix("glass") washToFluix("smart") // colors.forEach(coloredCoveredCable) colors.forEach(coveredDenseCable) colors.forEach(smartDenseCable) // BetterP2P event.shapeless("betterp2p:advanced_memory_card", ["ae2:memory_card", "ae2:network_tool"]) // Network Analyser event.remove({ id:"ae2netanalyser:analyser"}) event.shaped(Item.of("ae2netanalyser:network_analyser"), [ "R R", "DSD", "FDF" ], { R: "gtceu:electrical_steel_rod", D: "gtceu:dark_steel_plate", F: "gtceu:fluix_plate", S: "gtceu:mv_sensor" }).id("kubejs:ae2netanalyser/network_analyser") })