Material Properties
Properties can be applied to a material to decide how they behave. An example of this can be seen below:
Blast Furnace Properties
.blastTemp()
is meant to be paired together with.ingot()
. Will generate a EBF recipe (and an ABS recipe) based on the parameters you give it:int temperature
-> dictates what coil tier it will require (check the coil tooltips for their max temperature). If the temperature is below 1000, it will also generate a PBF recipe. If temperature is above 1750, a hot ingot will be generated, this requiring a Vacuum Freezer.- (optional)
string gasTier
-> can benull
for none,'low'
for nitrogen,'mid'
for helium,'high'
for argon,'higher'
for neon or'highest'
for krypton. - (optional)
long EUPerTick
-> the recipe voltage - (optional)
int durationInTicks
-> how long the recipe should take
ABS Recipe Generation
For an ABS recipe to actually generate from your material, you must set .components()
. To disable the alloy blast smelter recipes from generating while .components
and .blastTemp
are set, check out DISABLE_ALLOY_BLAST
-
.durationOverride(int duration)
int duration
-> Overrides the EBF's default behaviour for recipe durations.
-
.eutOverride(int EU/t)
int EU/t
-> Overrides the EBF's default behaviour for EU/t.
Fluid Pipe Property
.fluidPipeProperties(int maxTemp, int throughput, boolean gasProof, boolean acidProof, boolean cryoProof, boolean plasmaProof)
-> this will create an fluid pipe from this materialint maxtemp
-> The maximum temperature of fluid that this pipe can handle before breaking the pipe and voiding fluids.int throughput
-> The rate at which fluid can flow through this pipe.boolean gasProof
-> Whether this pipe can hold gases. If not, some gas will be lost as it travels through the pipe.boolean acidProof
-> Whether this pipe can hold Acids. If not, the pipe will break and void all fluids.boolean cryoProof
-> Whether this pipe can hold cryogenic Fluids (below 120K). If not, the pipe will break and void all fluids.boolean plasmaProof
-> Whether this pipe can hold plasmas. If not, the pipe will break and void all fluids. Plasma capable pipes do not care about temperature.
Item Pipe Property
.itemPipeProperties(int priority, int stacksPerSecond)
-> this will create an item pipe from this materialint priority
-> Priority of this Item Pipe, used for the standard routing mode.int stacksPerSecond
-> How many stacks of items can be moved per second (20 ticks).
Rotor Property
.rotorStats(int power, int efficiency, float damage, int durability)
-> this will create a turbine rotor from this materialint power
-> Power is the EU/t and fuel consumption multiplier the turbine gets when equipped with this rotor. This output varies depending on speed of turbine and rotor holder.int efficiency
-> Efficiency is how well it handles fuel. A smaller number will make it consume more fuel while a bigger number means it uses less fuel. Actual efficiency: rotorEfficiency * holder Efficiency / 100float damage
-> Damage is the amount of damage that happens to the player when opening the ui of a running turbine's rotor holder.int durability
-> Durability is how much base durability it has.
- Here are some examples of base gt rotors:
- Titanium Rotor: .rotorStats(130, 115, 3.0, 1600)
- HSS-S Rotor .rotorStats(250, 180, 7.0, 3000)
Cable Property
- .cableProperties(long voltage, int amperage, int lossPerBlock, boolean isSuperconductor)
long voltage
-> The voltage tier of this Cable. Should conform to standard GregTech voltage tiers.int amperage
-> The amperage of this Cable. Should be greater than zero.int lossPerBlock
-> The loss-per-block of this Cable. A value of zero here will still have loss as wires.boolean isSuperconductor
-> Whether this Material is a Superconductor. If so, Cables will NOT be generated and the Wires will have zero cable loss, ignoring the loss parameter.
Fluid Properties
Fluid Block Property
- Add .block() into the builder of a liquid material to allow this material to be placeable.
Ingot Property
.polarizesInto(string newMaterial)
string newMaterial
-> Is what is obtained through polarizing the material.
.arcSmeltInto(string newMaterial)
string newMaterial
-> Is what is obtained through arc smelting the material.
.maceratesInto(string newMaterial)
string newMaterial
-> Is what is obtained through macerating the material.
.ingotSmeltInto(string newMaterial)
string newMaterial
-> Is what is obtained when smelting a material's ingot.
Ore Property
.addOreByproducts()
is an "open" list of extra byproduct materials.- Is the material when going crushed -> impure in macerator, or impure dust to dust in centrifuge
- Is the material when going crushed->refined in thermal centrifuge, or crushed to dust in macerator, or pure dust to dust in centrifuge
- Is the material when going from refined to dust in macerator,
- Is the material when going from crushed ore to purified or in chem bath(works only if you have a getWashedIn material)
.washedIn(string fluid)
string fluid
Is what fluid it uses for if it has the ore prop and is making crushed->refined. For example, the sodium persulfate and mercury ore washing recipes.
.separatedInto(list material)
list material
Is the list of materials that are obtained when processing purified dusts in the centrifuge.
.oreSmeltInto(string material)
string material
Is what is obtained through directly smelting the ore.