[Tutorial] Change GT6 Recipes (MTUtils)

MTUtils

There is the Minetweaker(Crafttweaker) Addon which can change GT6 recipes, that called MTUtils. If you want to make GT6 Modpack and change GT6 recipes for pack progressing, I suggest you use this mod.

Please note that I (monatann) am not a creator of this mod, so I don’t know this mod all.

Download

CurseForge

How to use

It's same as Minetweaker, make .zs file in your script folder.

Fluid

You can get fluid name from "/mt liquids" command or GT6 source code.

Recipe Key

You need to know Recipe Key for choosing which machine recipes change.
You can get latest Recipe Key list from GT6 source code.

Furnace
mc.recipe.furnace

Microwave
gt.recipe.microwave

Bedrock Drill
gt.recipe.bedrockorelist

Ore Byproduct List
gt.recipe.byproductlist

Crucible Smelting
gt.recipe.cruciblesmelting

Combination Smelting
gt.recipe.cruciblealloying

Bumblebee Queen
gt.recipe.bumblequeen

Family Tree
gt.recipe.trees

Generifier
gt.recipe.generifier

Boxinator
gt.recipe.boxinator

Unboxinator
gt.recipe.unboxinator

Sharpener
gt.recipe.sharpener

Sifter
gt.recipe.sifter

Anvil
gt.recipe.anvil

Anvil Bending (Small)
gt.recipe.anvil.bend.small

Anvil Bending (Big)
gt.recipe.anvil.bend.big

Hammer
gt.recipe.hammer

Chisel
gt.recipe.chisel

Shredder
gt.recipe.shredder

Crusher
gt.recipe.crusher

Lathe
gt.recipe.lathe

Cutter
gt.recipe.cutter

Debarker
gt.recipe.debarker

Coagulator
gt.recipe.coagulator

Squeezer
gt.recipe.squeezer

Juicer
gt.recipe.juicer

Mortar
gt.recipe.mortar

Compressor
gt.recipe.compressor

Centrifuge
gt.recipe.centrifuge

Electrolyzer
gt.recipe.electrolyzer

Lightning Processor
gt.recipe.lightning

Implosion Compressor
gt.recipe.implosioncompressor

Rolling Mill
gt.recipe.rollingmill

Roll Bender
gt.recipe.rollbender

Roll Former
gt.recipe.rollformer

Cluster Mill
gt.recipe.clustermill

Wiremill
gt.recipe.wiremill

Mixer
gt.recipe.mixer

Burner Mixer
gt.recipe.burnmixer

Cryo Mixer
gt.recipe.cryomixer

Freezer
gt.recipe.freezer

Canning Machine
gt.recipe.canner

Injector
gt.recipe.injector

Calciner
gt.recipe.calciner

Roaster
gt.recipe.roaster

Dryer
gt.recipe.drying

Fermenter
gt.recipe.fermenter

Distillery
gt.recipe.distillery

Extruder
gt.recipe.extruder

Polarizer
gt.recipe.polarizer

Loom
gt.recipe.loom

Cooker
gt.recipe.cooker

Press
gt.recipe.press

Bath
gt.recipe.bath

Smelter
gt.recipe.smelter

Precision Laser Engraver
gt.recipe.laserengraver

Welding Machine
gt.recipe.welder

Crystallisation Crucible
gt.recipe.crystallisationcrucible

Plantalyzer
gt.recipe.plantalyzer

Bumblelyzer
gt.recipe.bumblelyzer

Scanner (Visuals)
gt.recipe.scannervisuals

Printer
gt.recipe.printer

Sluice
gt.recipe.sluice

Magnetic Separator
gt.recipe.magneticseparator

Crafting
gt.recipe.autocrafting

Nanoscale Fabricator
gt.recipe.nanofab

Matter Fabricator
gt.recipe.massfab

Molecular Scanner
gt.recipe.scannermolecular

Matter Replicator
gt.recipe.replicator

Slicer
gt.recipe.slicer

Laminator
gt.recipe.laminator

Coke Oven
gt.recipe.cokeoven

Distillation Tower
gt.recipe.distillationtower

Steam Cracking
gt.recipe.steamcracking

Catalytic Cracking
gt.recipe.catalyticcracking

Autoclave
gt.recipe.autoclave

Fusion Reactor
gt.recipe.fusionreactor

Blast Furnace
gt.recipe.blastfurnace

Vacuum Freezer
gt.recipe.vacuumfreezer

Assembler
gt.recipe.assembler

CNC Machine
gt.recipe.cncmachine

Add Recipe

import mods.MTUtilsGT;
MTUtilsGT.addCustomRecipe("Recipe Key",
"Bool? (True or False)",
"EU/tick",
"tick",
"Array of the chance (chance / 100 = %)",
"Input material array",
"Input liquid array",
"Output liquid array",
"Output material array");



/*

About Nanoscale Fabricator recipe

Adamantium Ingot + Gaia Spirit Ingot + Charged Matter 1000mB -> End Portal

8192GU/tick, 2400tick, Total 19660800GU

*/

import mods.MTUtilsGT;
MTUtilsGT.addCustomRecipe(“gt.recipe.nanofab”, true, 8192, 2400, [10000], [<gregtech:gt.meta.ingot:2220>, <Botania:manaResource:14>], [<liquid:chargedmatter>*1000], null, [<minecraft:end_portal_frame>]);

Remove Recipe

import mods.MTUtilsGT;
//Remove all End Portal Recipe in Nanoscale Fabricator
MTUtilsGT.removeAllRecipes("gt.recipe.nanofab", <minecraft:end_portal_frame>]);

//Only remove the recipe which I added in above script
MTUtilsGT.removeRecipe(“gt.recipe.nanofab”, true, 8192, 2400, [10000], [<gregtech:gt.meta.ingot:2220>, <Botania:manaResource:14>], [<liquid:chargedmatter>*1000], null, [<minecraft:end_portal_frame>]);

Q&A

Q. "/mt reload" can't work.
A. MTUtils can only remove Gregtech recipe in the first loading time, so you need to reload MC.

Q. Is it possible to change Crucible recipe or material temperature?
A. I guess MTUTils can't change, maybe need to modify GT6 code or config file?

Q. Which code do I change for Crucible recipe?
A. I want to know too:)
10 Likes

There is a BUG
Every time a file is loaded with the / mt reload instruction, the MTU creates one more recipe.

3 Likes

MTUtils can only remove Gregtech recipe in the first loading time, so you need to reload MC and it works fine.

3 Likes

Can it add new formulations for heat exchangers and turbines?

4 Likes

I suppose it can’t, so you need to change source code.

I searched source code and I guess these methods are the functions for adding recipe of heat exchangers and turbines.
(Asking Greg where we need to change GT6 code is the most reliable method lol XD)

https://git.gregtech.overminddl1.com/GregTech-6/GT6/src/branch/master/src/main/java/gregtech/loaders/b/Loader_Fuels.java

https://git.gregtech.overminddl1.com/GregTech-6/GT6/src/branch/master/src/main/java/gregapi/data/FM.java


I modified GT6 code and it works in NEI.

There isn’t Heat Exchanger in my modified GT6 version so there is possible that it doesn’t work.

It seems that Steam Turbine only use Steam, there is a recipe in NEI but I can’t input.


gregtech.loaders.b.Loader_Fuels

FM.Hot .addRecipe0(T, - 16, EU_PER_LAVA/16, FL.Water.make(1) , FL.Lava.make(1), ZL_IS);


gregtech.loaders.b.Loader_Fuels

FM.Turbine .addRecipe0(T, - 16, 10/STEAM_PER_EU, UT.Fluids.make(“nitrogen”, 1) , FL.Lava.make(1), ZL_IS);

4 Likes

Wait why is asking ME the most reliable Method? I dont even use MineTweaker!

3 Likes

Because I suggest to modify GT6 source code and I don’t know where I need to change GT6 code.
As everyone knows that developer knows all XD.

Oh sorry my English is bad, I don’t want to say “Ask Greg about MTUtils”, but want to say “Ask Greg about GT6 source code”.

5 Likes

this doesn’t seem to work with liquid input arrays, only with single liquids (tried for multiple machines, like mixer etc). It always says “Not found variable gt.recipe.mixer in gregapi.recipes.Recipe.RecipeMap” (it works if i don’t use an array for liquids.
Example recipe i used:
MTUtilsGT.addCustomRecipe(“gt.recipe.cryomixer”, false, 16, 512, [10000], [<GalacticraftCore:item.canvas>*8], [<liquid:helium>*500], null, [<MutantCreatures:item.chemicalX>]);
but when i remove the ] [ from the helium entry, it works.

Also: what does the second parameter? the boolean
Another question: is it possible to make recipes so that one items doesnt get consumed (like lenses or selector tag?) i tried the .reuse but that produces IIngredient types and only IItemStack gets accepted

4 Likes

Please try to use this code.
MTUtilsGT.addCustomRecipe("gt.recipe.cryomixer", true, 16, 512, [10000], [<minecraft:end_portal_frame>*0, <minecraft:ender_eye>], [<liquid:chargedmatter>*32000,<liquid:neutralmatter>*32000], [], [<minecraft:stone>]);

what does the second parameter? the boolean


aOptimize. It is related to item/fluid stacksize.

is it possible to make recipes so that one items doesnt get consumed (like lenses or selector tag?) i tried the .reuse but that produces IIngredient types and only IItemStack gets accepted

I got same error. I don’t know how to fix.
-> *0 works well, thx Greg!

4 Likes

In order to have an ITEM not be consumed just have the Stacksize of said Item be ZERO. It is that easy.

5 Likes

Sorry for wrong reply, I was asleep and I didn’t read lol.

Yes it works well if I write *0, very thanks!

4 Likes

Thx monatann, that worked :slight_smile:

Thx greg :slight_smile:

5 Likes