Immersive Technology

Immersive Technology

4M Downloads

Official MCT Discord Server Here.

** VERSIONS >= 1.12.2-9.95 are NOT backcompatible with Immersive Tech (Original)**
** If you are using SpongeForge and something doesn't work report it to them **

Featured in the TiCh Immersion Modpack. Derived from Immersive Tech.

The addon adds all the functions required for the Rankine and Brayton cycles for steam and gas turbines respectively.

Adds many multiblock structures:

  • Alternator - when connected to a Steam Turbine, produces power.
  • Distiller - machine which produces Distilled Water from normal Water.
  • Boiler - machine which produces Steam from water Distilled Water and normal Water (Distilled is more efficient).
         - The Boiler needs Biodiesel or other suitable combustable fuels as a fuel to work.
  • Solar Reflector - multiblock which reflects sunlight in the direction of the Solar Tower.
  • Solar Tower - machine which produces Steam from Distilled Water and normal Water (Distilled is more efficient).
         - The Solar Tower needs at least 1 Solar Reflector to work.
  • Steam Turbine  - massive machine to help produce power from steam when attached to an Alternator.
  • Gas Turbine  - slightly less massive machine to help produce power from combustable fuels when attached to an Alternator.
  • Steel Tank - tank that holds more than the IE iron multiblock tank, can also output fluids faster.
  • Cooling Tower - converts exhaust steam back to Distilled Water or Water.

And More!

Also Adds:

        • Redstone Timer.
        • Trash cans for fluids/items/energy so those pesky items don't pile up on overstocked conveyor belts
        • Open Barrel - can collect rain water, 2X as much during a Thunder Storm. Caution! It will lose water in Hot Biomes or the Nether.
               - Input is on top or by hand with a Bucket, output is on bottom only.
        • Creative Barrel - for unlimited fluids, it will take input by hand with a Bucket or Pipe. Output is done on all sides.
               - Can be cleared by Shift+Click with an empty hand or will switch fluids with a Bucket.

CraftTweaker support for all machines.

// Example: Add Gas Turbine Recipe.
// mods.immersivetechnology.GasTurbineRecipe.addFuel(ILiquidStack outputFluid, ILiquidStack inputFluid, int time);
mods.immersivetechnology.GasTurbine.addFuel(<liquid:fluegas> * 1000, <liquid:biodiesel> * 160, 10);

// Example: Remove Gas Turbine Recipe.
// mods.immersivetechnology.GasTurbineRecipe.removeFuel(ILiquidStack inputFluid);
mods.immersivetechnology.GasTurbine.removeFuel(<liquid:biodiesel>);

// Example: Add Cooling Tower Recipe.
// mods.immersivetechnology.CoolingTower.addRecipe(ILiquidStack outputFluid1, ILiquidStack outputFluid2, ILiquidStack outputFluid3, ILiquidStack inputFluid1, ILiquidStack inputFluid2, int time);
mods.immersivetechnology.CoolingTower.addRecipe(<liquid:water> * 750<liquid:water> * 750<liquid:water> * 750, <liquid:exhauststeam> * 900, <liquid:water> * 1000, 3);

// Example: Remove Cooling Tower Recipe.
// mods.immersivetechnology.CoolingTower.removeRecipe(ILiquidStack inputFluid1, ILiquidStack inputFluid2);
mods.immersivetechnology.CoolingTower.removeRecipe(<liquid:exhauststeam>, <liquid:water>);

// Example: Add Boiler Recipe to get 100 Water from 100 Lava.
// mods.immersivetechnology.Boiler.addRecipe(ILiquidStack output, ILiquidStack input, int time);
mods.immersivetechnology.Boiler.addRecipe(<liquid:water> * 100, <liquid:lava> * 100, 1);

// Example: Add Boiler Fuel.
// mods.immersivetechnology.Boiler.addFuel(ILiquidStack input, int time, double heat);
mods.immersivetechnology.Boiler.addFuel(<liquid:lava> * 5, 1, 10);

// Example: Remove Boiler Recipe for Water.
//mods.immersivetechnology.Boiler.removeRecipe(ILiquidStack input);
mods.immersivetechnology.Boiler.removeRecipe(<liquid:water>);

// Example: Remove Boiler Fuel.
//mods.immersivetechnology.Boiler.removeFuel(ILiquidStack input);
mods.immersivetechnology.Boiler.removeFuel(<liquid:biodiesel>);

// Example: Add Distiller Recipe Lava to Water with a chance of Gold (2 methods available).
//mods.immersivetechnology.Distiller.addRecipe(ILiquidStack outputFluid, ILiquidStack inputFluid, IItemStack outputItem, Integer energy, Integer time, Float chance);
//mods.immersivetechnology.Distiller.addRecipe(ILiquidStack outputFluid, ILiquidStack inputFluid, IItemStack outputItem);
mods.immersivetechnology.Distiller.addRecipe(<liquid:water> * 100, <liquid:lava> * 100, <minecraft:gold_ingot>, 8000, 20, 1);
mods.immersivetechnology.Distiller.addRecipe(<liquid:water> * 100, <liquid:lava> * 100, <minecraft:gold_ingot>);

// Example: Remove Distiller Recipe (2 methods available).
//mods.immersivetechnology.Distiller.removeRecipe(ILiquidStack inputFluid);
//mods.immersivetechnology.Distiller.removeRecipe(ILiquidStack inputFluid, IItemStack outputItem);
mods.immersivetechnology.Distiller.removeRecipe(<liquid:water>);
mods.immersivetechnology.Distiller.removeRecipe(<liquid:water>, <immersivetech:material>); 

// Example : Remove Solar Tower Recipe for Water.
//mods.immersivetechnology.SolarTower.removeRecipe(ILiquidStack inputFluid);
mods.immersivetechnology.SolarTower.removeRecipe(<liquid:water>);

// Example: Add Solar Tower Recipe to get 100 Water from 100 Lava.
// mods.immersivetechnology.SolarTower.addRecipe(ILiquidStack outputFluid, ILiquidStack inputFluid, int time);
mods.immersivetechnology.SolarTower.addRecipe(<liquid:water> * 100, <liquid:lava> * 100, 1);

// Example : Add Steam Turbine Fuel for 100 Lava and get nothing in return.
// mods.immersivetechnology.SteamTurbine.addFuel(ILiquidStack output, ILiquidStack input, int time);
mods.immersivetechnology.SteamTurbine.addFuel(null, <liquid:lava> * 100, 1);

// Example : Remove Steam Turbine Fuel Steam
//mods.immersivetechnology.SteamTurbine.removeFuel(ILiquidStack input);
mods.immersivetechnology.SteamTurbine.removeFuel(<liquid:steam>);

// Example: Prevent Multiblock Creation on IT Multiblocks on a hammer tagged "Tier 1 Hammer"
val hammer = <immersiveengineering:tool>;
val tier1hammer = hammer.withTag({multiblockInterdiction: ["IT:CokeOvenAdvanced", "IT:Alternator", "IT:Boiler", "IT:Distiller", "IT:SolarReflector", "IT:SolarTower", "IT:SteamTurbine, "IT:SteelSheetmetalTank""], display: {Name: "Tier 1 Hammer"}});

// Example: Add the "Tier 1 Hammer to JEI"
mods.jei.JEI.addItem(tier1hammer);

// Example: Add a shaped recipe for the "Tier 1 Hammer"
recipes.addShaped(tier1hammer, [[null, <minecraft:stone:1>, <minecraft:string>], [null, <ore:stickWood>, <minecraft:stone:1>], [<ore:stickWood>, null, null]]);


// Example: Add/Remove Pressurized fluid to Pipes (Only works if "replace_IE_pipes" is True! Steam is enabled by Default)
//mods.immersivetechnology.PressurizedFluid.add(ILiquidStack fluid);
//mods.immersivetechnology.PressurizedFluid.remove(ILiquidStack fluid);
mods.immersivetechnology.PressurizedFluid.add(<fluid:water>);
mods.immersivetechnology.PressurizedFluid.remove(<fluid:steam>);

// In-Practice examples can be found here:
https://github.com/Silfryi/mechcanical-technology-rocketry/blob/93e5200062cec49604adb56a908c9c7fbf68105f/scripts/immersiveengineering/powerproduction.zs#L29
https://github.com/Silfryi/mechcanical-technology-rocketry/blob/93e5200062cec49604adb56a908c9c7fbf68105f/scripts/immersiveengineering/machines.zs#L132

For version 1.6.40 and lower

// Example: Add Boiler Recipe to get 100 Water from 100 Lava.
// mods.immersivetech.Boiler.addRecipe(ILiquidStack output, ILiquidStack input, int time);
mods.immersivetech.Boiler.addRecipe(<liquid:water> * 100, <liquid:lava> * 100, 1);

// Example: Add Boiler Fuel.
// mods.immersivetech.Boiler.addFuel(ILiquidStack input, int time, double heat);
mods.immersivetech.Boiler.addFuel(<liquid:lava> * 5, 1, 10);

// Example: Remove Boiler Recipe for Water.
//mods.immersivetech.Boiler.removeRecipe(ILiquidStack input);
mods.immersivetech.Boiler.removeRecipe(<liquid:water>);

// Example: Remove Boiler Fuel.
//mods.immersivetech.Boiler.removeFuel(ILiquidStack input);
mods.immersivetech.Boiler.removeFuel(<liquid:biodiesel>);

// Example: Add Distiller Recipe Lava to Water with a chance of Gold (2 methods available).
//mods.immersivetech.Distiller.addRecipe(ILiquidStack outputFluid, ILiquidStack inputFluid, IItemStack outputItem, Integer energy, Integer time, Float chance);
//mods.immersivetech.Distiller.addRecipe(ILiquidStack outputFluid, ILiquidStack inputFluid, IItemStack outputItem);
mods.immersivetech.Distiller.addRecipe(<liquid:water> * 100, <liquid:lava> * 100, <minecraft:gold_ingot>, 8000, 20, 1);
mods.immersivetech.Distiller.addRecipe(<liquid:water> * 100, <liquid:lava> * 100, <minecraft:gold_ingot>);

// Example: Remove Distiller Recipe (2 methods available).
//mods.immersivetech.Distiller.removeRecipe(ILiquidStack inputFluid);
//mods.immersivetech.Distiller.removeRecipe(ILiquidStack inputFluid, IItemStack outputItem);
mods.immersivetech.Distiller.removeRecipe(<liquid:water>);
mods.immersivetech.Distiller.removeRecipe(<liquid:water>, <immersivetech:material>); 

// Example : Remove Solar Tower Recipe for Water.
//mods.immersivetech.SolarTower.removeRecipe(ILiquidStack inputFluid);
mods.immersivetech.SolarTower.removeRecipe(<liquid:water>);

// Example: Add Solar Tower Recipe to get 100 Water from 100 Lava.
// mods.immersivetech.SolarTower.addRecipe(ILiquidStack outputFluid, ILiquidStack inputFluid, int time);
mods.immersivetech.SolarTower.addRecipe(<liquid:water> * 100, <liquid:lava> * 100, 1);

// Example : Add Steam Turbine Fuel for 100 Lava and get nothing in return.
// mods.immersivetech.SteamTurbine.addFuel(ILiquidStack output, ILiquidStack input, int time);
mods.immersivetech.SteamTurbine.addFuel(null, <liquid:lava> * 100, 1);

// Example : Remove Steam Turbine Fuel Steam
//mods.immersivetech.SteamTurbine.removeFuel(ILiquidStack input);
mods.immersivetech.SteamTurbine.removeFuel(<liquid:steam>);

// Example: Prevent Multiblock Creation on IT Multiblocks on a hammer tagged "Tier 1 Hammer"
val hammer = <immersiveengineering:tool>;
val tier1hammer = hammer.withTag({multiblockInterdiction: ["IT:CokeOvenAdvanced", "IT:Alternator", "IT:Boiler", "IT:Distiller", "IT:SolarReflector", "IT:SolarTower", "IT:SteamTurbine", "IT:SteelSheetmetalTank"], display: {Name: "Tier 1 Hammer"}});

// Example: Add the "Tier 1 Hammer to JEI"
mods.jei.JEI.addItem(tier1hammer);

// Example: Add a shaped recipe for the "Tier 1 Hammer"
recipes.addShaped(tier1hammer, [[null, <minecraft:stone:1>, <minecraft:string>], [null, <ore:stickWood>, <minecraft:stone:1>], [<ore:stickWood>, null, null]]);

Thanks to Kurtchekov for some of the CraftTweaker code.