#packmode normal #priority -1 import mods.gregtech.multiblock.Builder; import mods.gregtech.multiblock.FactoryBlockPattern; import mods.gregtech.multiblock.RelativeDirection; import mods.gregtech.multiblock.functions.IPatternBuilderFunction; import mods.gregtech.IControllerTile; import mods.gregtech.multiblock.CTPredicate; import mods.gregtech.multiblock.IBlockPattern; import mods.gregtech.recipe.FactoryRecipeMap; import mods.gregtech.recipe.RecipeMap; import mods.gregtech.recipe.functions.IRunOverclockingLogicFunction; import mods.gregtech.recipe.IRecipeLogic; import mods.gregtech.recipe.IRecipe; import scripts.common.makeShaped as makeShaped; import scripts.common.makeExtremeRecipe5 as makeExtremeRecipe5; import scripts.common.makeExtremeRecipe7 as makeExtremeRecipe7; import scripts.common.makeExtremeRecipe9 as makeExtremeRecipe9; import scripts.common.makeShapeless3 as makeShapeless3; //Nether Cake recipes.addShaped(, [[,,], [, , ],[,,]]); //Steel [tier 0] // Steel Ingot * 1 .findRecipe(120, [], [ * 1000]).remove(); // Steel Ingot * 1 .findRecipe(120, [], [ * 200]).remove(); // Steel alloy_smelter.recipeBuilder().inputs([, ]).outputs([]).duration(150).EUt(16).buildAndRegister(); alloy_smelter.recipeBuilder().inputs([, ]).outputs([]).duration(150).EUt(16).buildAndRegister(); alloy_smelter.recipeBuilder().inputs([, ]).outputs([]).duration(150).EUt(16).buildAndRegister(); //Wrought Iron furnace.remove(); furnace.addRecipe(, , 0.0); //Red Alloy Dust recipes.addShapeless(, [, , , , ]); recipes.addShapeless(, [,]); //Clay Electrolyzing electrolyzer.findRecipe(60, [ * 13], [null]).remove(); electrolyzer.recipeBuilder().inputs([ * 13]).outputs([ * 2, * 2, , * 2]).fluidOutputs([*6000]).duration(364).EUt(15).buildAndRegister(); // Ender Tank (Ender Storage) recipes.remove(); recipes.addShaped(, [ [, , ], [, basictank, ], [, , ]]); //Ender Pearl Block recipes.addShapeless(, []); //LV Macerator recipes.remove(); recipes.addShaped(, [ [, , ], [, , ], [, , ]]); //MV Macerator recipes.remove(); recipes.addShaped(, [ [, , ], [, , ], [, , ]]); //LV Piston recipes.addShaped(, [ [,,], [, ,], [, , ]]); //Fluid Conduit mods.jei.JEI.removeAndHide(); recipes.remove(); recipes.addShaped( * 4, [ [, , ], [,,], [, , ]]); assembler.recipeBuilder().inputs([ * 3, * 6]).outputs([ * 8]).duration(80).EUt(16).buildAndRegister(); chemical_reactor.recipeBuilder().inputs([]).fluidInputs([ * 1000]).outputs().EUt(15).duration(20).buildAndRegister(); recipes.remove(); recipes.remove(); recipes.remove(); recipes.addShaped(, [[, , ], [, , ], [, , ]]); recipes.addShaped(, [ [, , ], [, , ], [, , ]]); recipes.addShaped(, [ [, , ], [, , ], [, , ]]); recipes.addShapeless(, [,]); // steam multis recipes.removeByRecipeName("gregtech:steam_oven"); recipes.addShaped(, [ [, , ], [, , ], [, , ] ]); recipes.removeByRecipeName("gregtech:steam_grinder"); recipes.addShaped(, [ [, , ], [, , ], [, , ] ]); // PBF nomified furnace.remove(); furnace.addRecipe(, , 0.5); recipes.removeByRecipeName("gregtech:fireclay_dust"); recipes.addShapeless("fireclay_dust", * 16, [, ]); // Compressed Fireclay * 1 .findRecipe(4, [], null).remove(); // Clay Dust * 1 .findRecipe(30, [ * 2], null).remove(); // PBF recipe removals // Steel Ingot * 1 .findRecipe(1, [, ], null).remove(); // Steel Ingot * 1 .findRecipe(1, [, ], null).remove(); // Steel Ingot * 1 .findRecipe(1, [, * 2], null).remove(); // Steel Ingot * 1 .findRecipe(1, [, * 2], null).remove(); // Steel Ingot * 1 .findRecipe(1, [, * 2], null).remove(); // Steel Ingot * 1 .findRecipe(1, [, * 2], null).remove(); // Steel Ingot * 1 .findRecipe(1, [, ], null).remove(); // Steel Ingot * 1 .findRecipe(1, [, ], null).remove(); // Steel Ingot * 1 .findRecipe(1, [, * 2], null).remove(); // Steel Ingot * 1 .findRecipe(1, [, * 2], null).remove(); // Steel Ingot * 1 .findRecipe(1, [, * 2], null).remove(); // Steel Ingot * 1 .findRecipe(1, [, * 2], null).remove(); // Block of Steel * 1 .findRecipe(1, [, ], null).remove(); // Block of Steel * 1 .findRecipe(1, [, * 2], null).remove(); // Block of Steel * 1 .findRecipe(1, [, * 2], null).remove(); // Block of Steel * 1 .findRecipe(1, [, ], null).remove(); // Block of Steel * 1 .findRecipe(1, [, * 2], null).remove(); // Block of Steel * 1 .findRecipe(1, [, * 2], null).remove(); // PBF recipes primitive_blast_furnace.recipeBuilder() .inputs([, ]) .outputs([, * 2]) .duration(400) .EUt(1) .buildAndRegister(); primitive_blast_furnace.recipeBuilder() .inputs([, ]) .outputs([, * 2]) .duration(400) .EUt(1) .buildAndRegister(); primitive_blast_furnace.recipeBuilder() .inputs([, ]) .outputs([, * 2]) .duration(400) .EUt(1) .buildAndRegister(); primitive_blast_furnace.recipeBuilder() .inputs([, ]) .outputs([, * 2]) .duration(400) .EUt(1) .buildAndRegister(); // Creative Tank Data extractor.recipeBuilder() .inputs() .outputs() .duration(1000) .EUt(180000) .buildAndRegister(); // Impossible Realm Data Recipes makeShaped("of_impossiblerealmdata_x1", , ["OEO", "EOE", "OEO"], { E : , O : }); makeShaped("of_impossiblerealmdata_x2", * 2, ["HEH", "EHE", "HEH"], { E : , H : }); makeShaped("of_impossiblerealmdata_x4", * 4, ["XEX", "EXE", "XEX"], { E : , X : }); // Dragon Lair Data makeShapeless3("of_dragonlairdata", , ["IHH", "HHH", "HHH"], { I : , H : } ); // Wither Realm Data makeShapeless3("of_witherrealmdata", , ["IXX", "XXX", "XXX"], { I : , X : } ); // Quantum Flux Recipes makeShaped("of_quantumflux_a", , [" X ", "XMX", " X "], { M : , X : } ); // Extraterrestrial Matter recipes.remove(); makeShaped("of_dml_living_matter_extraterrestrial", , [" H ", "HEH", " H "], { H : , E : } ); // Deep Learner recipes.removeByRecipeName("deepmoblearning:recipe1_deep_learner"); recipes.addShaped(, [[null,null,null],[,,],[null,null,null]]); recipes.remove(); makeShaped("of_nc_water_source", , ["AAA", "B B", "AAA"], { A : , B : }); //Rubber by hand recipes.addShaped(,[[],[],[]]); //Item conduit - by hand recipes.addShaped( * 4, [ [, , ], [,,], [, , ]]); //ender fluid conduit - by hand recipes.addShaped( * 4, [ [, , ], [,,], [, , ]]); //item conduit - assembler assembler.recipeBuilder() .inputs([ * 3, * 6]) .outputs([ * 8]) .duration(80).EUt(16).buildAndRegister(); //ender fluid conduit - assembler assembler.recipeBuilder() .inputs([ * 2, , * 6]) .outputs([ * 8]) .duration(80).EUt(16).buildAndRegister(); // remove LV Motor recipes recipes.removeByRecipeName("gregtech:electric_motor_lv_steel"); recipes.removeByRecipeName("gregtech:electric_motor_lv_iron"); assembler.findRecipe(30, [ * 2, * 2, , * 4], [null]).remove(); .findRecipe(30, [ * 2, * 2, , * 4], null).remove(); //LV Motor - with Fine Copper Wires recipes.addShaped(, [ [, , ], [, , ], [, , ]]); assembler.recipeBuilder() .inputs([ * 2, * 2, , * 4]) .outputs() .duration(100) .EUt(30) .buildAndRegister(); // Glass Tube recipes.addShaped(, [ [null, null, null], [, , ], [, , ] ]); // t1 board easier recipes.removeByRecipeName("gregtech:basic_circuit_board"); recipes.addShaped("basic_circuit_board", , [[, , ], [, , ], [, , ]]); ////////////////////////// Creative Vending Upgrade /////////////////////// val creativecell = .withTag({Recv: 250000, RSControl: 0 as byte, Facing: 3 as byte, Energy: 500000000, Creative: 1 as byte, SideCache: [2, 2, 2, 2, 2, 2] as byte[] as byte[], Level: 4 as byte, Send: 250000}, false); val creativetank = .withTag({RSControl: 0 as byte, Creative: 1 as byte, Level: 4 as byte}, false); val creativejetpack = .withTag({JetpackParticleType: 3}, false); makeExtremeRecipe9( * 2, ["ABBBBBBBA", "BCTEDETCB", "BFSGHGSFB", "BUJXIXJUB", "BNSWKWSNB", "BUJXLXJUB", "BFSGMGSFB", "BCTEDETCB", "ABBBBBBBA"], { A : , B : , C : , D : creativecell.only(isCreative), E : , F : , G : , H : , I : , J : creativejetpack, K : , L : , M : , N : , S : , T : , U : , W : .withTag({Water: 0, Mode: 4}, false), X : .withTag({Energy: 250000000}, false) }); // Creative Drum makeExtremeRecipe9(, ["BBBCDCBBB", "BBCDEDCBB", "BCDEFEDCB", "CDEFFFEDC", "DEFFAFFED", "CDEFFFEDC", "BCDEFEDCB", "BBCDEDCBB", "BBBCDCBBB"], { A : , B : , C : , D : , E : , F : }); // Liquid XP fluid_extractor.recipeBuilder() .inputs([]) .fluidOutputs([ * 200]) .duration(40).EUt(32).buildAndRegister(); fluid_extractor.recipeBuilder() .inputs([]) .fluidOutputs([ * 400]) .duration(80).EUt(32).buildAndRegister(); fluid_extractor.recipeBuilder() .inputs([]) .fluidOutputs([ * 500]) .duration(100).EUt(32).buildAndRegister(); // Creative Tank Provider val creative_tank_provider = Builder.start("mbt:creative_tank_provider") .withPattern(function(controller as IControllerTile) as IBlockPattern { return FactoryBlockPattern.start() .aisle("CCC", "CCC", "CCC") .aisle("CCC", "CFC", "CCC") .aisle("CCC", "CSC", "CCC") .where('S', controller.self()) .where('F', ) // Tungstencarbide Frame Box .where("C", CTPredicate.states() | controller.autoAbilities(true, false, true, true, false, false, false)) .build(); } as IPatternBuilderFunction) .withRecipeMap( FactoryRecipeMap.start("creative_tank_provider") .minInputs(2) .maxInputs(2) .minOutputs(1) .maxOutputs(1) .build()) .withBaseTexture() .buildAndRegister(); creative_tank_provider.hasMufflerMechanics = false; creative_tank_provider.hasMaintenanceMechanics = false; recipes.addShaped("creative_tank_provider", , [ [, , ], [, , ], [, , ] ]); // creative tank provider // creative tank creative_tank_provider.recipeMap .recipeBuilder() .notConsumable() .inputs() .outputs() .duration(500) .EUt(100000) .buildAndRegister(); //Numismatic Dynamo recipes.remove(); recipes.addShaped(, [ [null, , null], [, , ], [, , ]]); // Red Alloy alloy_blast_smelter.recipeBuilder() .inputs( * 2, * 3) .circuit(2) .property("temperature", 1000) .fluidOutputs( * 288) .duration(25).EUt(120).buildAndRegister(); // Redstone * 4 .findRecipe(30, [], null).remove(); // zpm crystal // crystal growing w Enderium autoclave.recipeBuilder() .inputs() .fluidInputs( * 144) .chancedOutput(, 900, 1800) .duration(12000) .EUt(320) .buildAndRegister(); autoclave.recipeBuilder() .inputs() .fluidInputs( * 144) .chancedOutput(, 900, 1800) .duration(12000) .EUt(320) .buildAndRegister(); autoclave.recipeBuilder() .inputs() .fluidInputs( * 144) .chancedOutput(, 8000, 250) .duration(12000) .EUt(320) .buildAndRegister(); // Upgrade Template recipes.remove(); recipes.addShaped( * 2, [ [, , ], [, , ], [, , ]]); // Removals // GT mods.jei.JEI.removeAndHide(); mods.jei.JEI.removeAndHide(); mods.jei.JEI.removeAndHide(); mods.jei.JEI.removeAndHide(); mods.jei.JEI.removeAndHide(); mods.jei.JEI.removeAndHide(); mods.jei.JEI.removeAndHide(); mods.jei.JEI.removeAndHide(); mods.jei.JEI.removeAndHide(); mods.jei.JEI.removeAndHide(); mods.jei.JEI.removeAndHide(); mods.jei.JEI.removeAndHide(); // Stabilized Miners mods.jei.JEI.removeAndHide(); mods.jei.JEI.removeAndHide(); mods.jei.JEI.removeAndHide(); mods.jei.JEI.removeAndHide(); mods.jei.JEI.removeAndHide(); mods.jei.JEI.removeAndHide(); mods.jei.JEI.removeAndHide(); mods.jei.JEI.removeAndHide(); mods.jei.JEI.removeAndHide(); mods.jei.JEI.removeAndHide(); mods.jei.JEI.removeAndHide(); mods.jei.JEI.removeAndHide(); mods.jei.JEI.removeAndHide(); mods.jei.JEI.removeAndHide(); mods.jei.JEI.removeAndHide(); mods.jei.JEI.removeAndHide(); mods.jei.JEI.removeAndHide(); mods.jei.JEI.removeAndHide(); mods.jei.JEI.removeAndHide(); mods.jei.JEI.removeAndHide(); mods.jei.JEI.removeAndHide(); mods.jei.JEI.removeAndHide();