Skip to content

Commit

Permalink
Merge pull request #1158 from trexxet/chloroethanes
Browse files Browse the repository at this point in the history
1,1,2,2-tetrachloroethane; Use 1,2-dichloroethane for Vinyl Chloride
  • Loading branch information
bruberu authored Dec 14, 2024
2 parents 6271ce7 + 8888632 commit 32b3715
Show file tree
Hide file tree
Showing 18 changed files with 150 additions and 110 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -1021,7 +1021,7 @@ susy.quest.db.481.desc=Plastics can be laminated with copper in a forming press
susy.quest.db.482.title=Potassium Persulfate
susy.quest.db.482.desc=§6Liquid Potassium Bisulfate §r§rcan be electrolyzed under an Iron Rod and a Graphite Rod to obtain §7Potassium Persulfate§r.
susy.quest.db.483.title=Vinyl Chloride
susy.quest.db.483.desc=§3Chlorine §rand §7Ethylene §rcan be reacted in a CSTR to form §6Vinyl Chloride§r.%n%nAlternatively, §cHydrogen Chloride§f and §9Acetylene§f can be reacted with a Mercury Chloride catalyst for §6Vinyl Chloride.
susy.quest.db.483.desc=§cHydrogen Chloride§f and §9Acetylene§f can be reacted with a Mercury Chloride catalyst for §6Vinyl Chloride§r.%n%nAlternatively, §3Chlorine§r and §7Ethylene§r can be reacted in a CSTR to form §b1,2-dichloroethane§r, which can be dehydrochlorinated by pyrolysis. The resulting mixture contains 50% of §6Vinyl Chloride§r. This method is more applicable if you have gas processing set up, and can be combined with §6polyethylene§b production.
susy.quest.db.484.title=Vinyl Chloride Solution
susy.quest.db.484.desc=§7Vinyl Chloride §rcan be diluted with §9Water §rto make a §7Vinyl Chloride Suspension§r.
susy.quest.db.485.title=Potassium Bisulfate
Expand Down
1 change: 0 additions & 1 deletion config/jei/itemBlacklist.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -217,7 +217,6 @@ advanced {
gaspunk:grenade:{"gaspunk:contained_gas":"gaspunk:colored_smoke_gray"}
fluid:lightly_hydrocracked_gas
chesttransporter:chesttransporter_obsidian
fluid:dichloroethane
forge:bucketfilled:severely_hydrocracked_light_fuel;
fluid:hydrocracked_butene
chesttransporter:chesttransporter_tin
Expand Down
27 changes: 21 additions & 6 deletions groovy/material/OrganicChemistryMaterials.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -174,7 +174,11 @@ public class OrganicChemistryMaterials {
.colorAverage()
.build();

//FREE ID: 15025
OneTwoDichloroethylene = new Material.Builder(15025, SuSyUtility.susyId('one_two_dichloroethylene'))
.liquid()
.components(Carbon * 2, Hydrogen * 2, Chlorine * 2)
.colorAverage()
.build();

AcidicTetrafluoroethylene = new Material.Builder(15026, SuSyUtility.susyId('acidic_tetrafluoroethylene'))
.gas(new FluidBuilder().attribute(FluidAttributes.ACID))
Expand Down Expand Up @@ -296,7 +300,7 @@ public class OrganicChemistryMaterials {
.colorAverage()
.build();

Dichloroethane = new Material.Builder(15048, SuSyUtility.susyId('dichloroethane'))
OneTwoDichloroethane = new Material.Builder(15048, SuSyUtility.susyId('one_two_dichloroethane'))
.liquid()
.components(Carbon * 2, Hydrogen * 4, Chlorine * 2)
.colorAverage()
Expand All @@ -316,7 +320,7 @@ public class OrganicChemistryMaterials {

DiphenylIsophthalateSolution = new Material.Builder(15051, SuSyUtility.susyId('diphenyl_isophthalate_solution'))
.liquid()
.components(DiphenylIsophtalate * 1, Dichloroethane * 1)
.components(DiphenylIsophtalate * 1, OneTwoDichloroethane * 1)
.colorAverage()
.build();

Expand All @@ -326,7 +330,11 @@ public class OrganicChemistryMaterials {
.colorAverage()
.build();

//FREE ID: 15053
OneOneTwoTwoTetrachloroethane = new Material.Builder(15053, SuSyUtility.susyId('one_one_two_two_tetrachloroethane'))
.liquid()
.components(Carbon * 2, Hydrogen * 2, Chlorine * 4)
.colorAverage()
.build();

PBIFoam = new Material.Builder(15054, SuSyUtility.susyId('pbi_foam'))
.dust()
Expand Down Expand Up @@ -403,7 +411,10 @@ public class OrganicChemistryMaterials {

Methyltrichlorosilane.setFormula("CH3SiCl3", true)

//FREE ID: 15066
CrackedOneTwoDichloroethaneMix = new Material.Builder(15066, SuSyUtility.susyId('cracked_one_two_dichloroethane_mix'))
.liquid()
.color(0x72afad)
.build();

VinylChlorideSuspension = new Material.Builder(15067, SuSyUtility.susyId('vinyl_chloride_suspension'))
.liquid()
Expand Down Expand Up @@ -477,7 +488,11 @@ public class OrganicChemistryMaterials {
.colorAverage()
.build();

//FREE ID: 15080
OneOneDichloroethane = new Material.Builder(15080, SuSyUtility.susyId('one_one_dichloroethane'))
.liquid()
.components(Carbon * 2, Hydrogen * 4, Chlorine * 2)
.colorAverage()
.build();

Butyllithium = new Material.Builder(15081, SuSyUtility.susyId('butyllithium'))
.liquid()
Expand Down
6 changes: 5 additions & 1 deletion groovy/material/SuSyMaterials.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -1289,7 +1289,7 @@ class SuSyMaterials {
public static Material ParaPhenylenediamine;
public static Material SodiumPhenoxide;
public static Material PhthaloylDichloride;
public static Material Dichloroethane;
public static Material OneTwoDichloroethane;
public static Material Dimethylacetamide;
public static Material CaprolactamOxime;
public static Material TNT;
Expand All @@ -1300,6 +1300,7 @@ class SuSyMaterials {
public static Material ChlorinatedChloromethaneMixture;
public static Material ChlorinatedDichloromethaneMixture;
public static Material ChloromethaneSolution;
public static Material OneTwoDichloroethylene;
public static Material AcidicTetrafluoroethylene;
public static Material TrinitromethaneSolution;
public static Material TetranitronmethaneSolution;
Expand All @@ -1321,13 +1322,15 @@ class SuSyMaterials {
public static Material PhthaloylDichlorideSolution;
public static Material DiphenylIsophthalateSolution;
public static Material DiaminobenzidineSolution;
public static Material OneOneTwoTwoTetrachloroethane;
public static Material PBIFoam;
public static Material PBIPrepolymer;
public static Material PBISolution;
public static Material PBIWaste;
public static Material Hydroxylamine;
public static Material Cyclohexanone;
public static Material CaprolactamSolution;
public static Material CrackedOneTwoDichloroethaneMix;
public static Material VinylChlorideSuspension;
public static Material PolyvinylChlorideSuspension;
public static Material StyreneSuspension;
Expand All @@ -1341,6 +1344,7 @@ class SuSyMaterials {
public static Material StyreneButadieneSolution;
public static Material DiethylEther;
public static Material OneBromobutane;
public static Material OneOneDichloroethane;
public static Material Butyllithium;
public static Material PolymerizedStyreneButadieneSolution;
public static Material Acetylene;
Expand Down
10 changes: 5 additions & 5 deletions groovy/material/ThirdDegreeMaterials.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -279,19 +279,19 @@ public class ThirdDegreeMaterials {

IsophthaloylChlorideSolution = new Material.Builder(24043, SuSyUtility.susyId('isophthaloyl_chloride_solution'))
.liquid()
.components(Dichloroethane * 1, IsophthaloylChloride * 1)
.components(OneTwoDichloroethane * 1, IsophthaloylChloride * 1)
.colorAverage()
.build();

IsophthalicAcidSlurry = new Material.Builder(24044, SuSyUtility.susyId('isophthalic_acid_slurry'))
.liquid()
.components(Water * 1, Dichloroethane * 1, IsophthalicAcid * 1)
.components(Water * 1, OneTwoDichloroethane * 1, IsophthalicAcid * 1)
.colorAverage()
.build()

DichloroethaneIsophthalicAcidSolution = new Material.Builder(24045, SuSyUtility.susyId('dichloroethane_isophthalic_acid_solution'))
.liquid(new FluidBuilder().attribute(FluidAttributes.ACID))
.components(Dichloroethane * 1, IsophthalicAcid * 1)
.components(OneTwoDichloroethane * 1, IsophthalicAcid * 1)
.colorAverage()
.build()

Expand Down Expand Up @@ -356,7 +356,7 @@ public class ThirdDegreeMaterials {

TetrabromobisphenolASolution = new Material.Builder(24055, SuSyUtility.susyId('tetrabromobisphenol_a_solution'))
.liquid()
.components(TetrabromobisphenolA * 1, Dichloroethane * 6)
.components(TetrabromobisphenolA * 1, OneTwoDichloroethane * 6)
.colorAverage()
.build();

Expand Down Expand Up @@ -492,7 +492,7 @@ public class ThirdDegreeMaterials {

DewaxingSolvent = new Material.Builder(24077, SuSyUtility.susyId('dewaxing_solvent'))
.liquid()
.components(Dichloroethane * 1, Dichloromethane * 1)
.components(OneTwoDichloroethane * 1, Dichloromethane * 1)
.colorAverage()
.build();

Expand Down
24 changes: 1 addition & 23 deletions groovy/postInit/chemistry/ChemistryOverhaul.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -1766,28 +1766,6 @@ DISTILLATION_TOWER.recipeBuilder()
.duration(300)
.buildAndRegister()

//1,2-dichloroethane

FBR.recipeBuilder()
.fluidInputs(fluid('chlorine') * 100)
.fluidInputs(fluid('ethylene') * 50)
.notConsumable(ore('catalystBedIronIiiOxide'))
.fluidOutputs(fluid('dichloroethane') * 50)
.EUt(30)
.duration(10)
.buildAndRegister()

FBR.recipeBuilder()
.fluidInputs(fluid('ethylene') * 50)
.fluidInputs(fluid('hydrochloric_acid') * 100)
.fluidInputs(fluid('oxygen') * 50)
.notConsumable(ore('catalystBedCopperIiChloride'))
.fluidOutputs(fluid('dichloroethane') * 50)
.fluidOutputs(fluid('water') * 150)
.EUt(30)
.duration(10)
.buildAndRegister()

//tri/methyl/dimethylamine

FLUIDIZEDBR.recipeBuilder()
Expand Down Expand Up @@ -2772,7 +2750,7 @@ DISTILLATION_TOWER.recipeBuilder()
// Amine oligomerization

BR.recipeBuilder()
.fluidInputs(fluid('dichloroethane') * 1525)
.fluidInputs(fluid('one_two_dichloroethane') * 1525)
.fluidInputs(fluid('ammonia') * 2425)
.fluidOutputs(fluid('aminated_ethylene_mixture') * 1000)
.duration(300)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -301,7 +301,7 @@ MIXER.recipeBuilder()
// Isophthaloyl chloride

BR.recipeBuilder()
.fluidInputs(fluid('dichloroethane') * 1000)
.fluidInputs(fluid('one_two_dichloroethane') * 1000)
.inputs(ore('dustIsophthalicAcid') * 18)
.fluidOutputs(fluid('dichloroethane_isophthalic_acid_solution') * 1000)
.duration(120)
Expand All @@ -321,7 +321,7 @@ BR.recipeBuilder()
DISTILLERY.recipeBuilder()
.fluidInputs(fluid('isophthaloyl_chloride_solution') * 1000)
.outputs(metaitem('dustIsophthaloylChloride') * 16)
.fluidOutputs(fluid('dichloroethane') * 1000)
.fluidOutputs(fluid('one_two_dichloroethane') * 1000)
.duration(40)
.EUt(30)
.buildAndRegister()
Expand Down
77 changes: 77 additions & 0 deletions groovy/postInit/chemistry/organic_chemistry/Solvents.groovy
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
import globals.Globals

CSTR = recipemap('continuous_stirred_tank_reactor')
BCR = recipemap('bubble_column_reactor')
FBR = recipemap('fixed_bed_reactor')

// TODO: move other organic solvents (THF etc.) here

// DMC (dimethyl carbonate)

CSTR.recipeBuilder()
.fluidInputs(fluid('phosgene') * 50)
.fluidInputs(fluid('methanol') * 100)
.fluidOutputs(fluid('dimethyl_carbonate') * 50)
.fluidOutputs(fluid('hydrogen_chloride') * 100)
.duration(1)
.EUt(30)
.buildAndRegister()

// EC (ethylene carbonate)

BCR.recipeBuilder()
.fluidInputs(fluid('ethylene_oxide') * 50)
.fluidInputs(fluid('carbon_dioxide') * 50)
.fluidOutputs(fluid('ethylene_carbonate') * 50)
.duration(5)
.EUt(30)
.buildAndRegister()

/*
* Organochlorines
*/

// EDC (ethylene dichloride / 1,2-dichloroethane / Freon 150)
// direct chlorination
FBR.recipeBuilder()
.fluidInputs(fluid('chlorine') * 100)
.fluidInputs(fluid('ethylene') * 50)
.notConsumable(ore('catalystBedIronIiiOxide'))
.fluidOutputs(fluid('one_two_dichloroethane') * 50)
.EUt(30)
.duration(10)
.buildAndRegister()
// oxychlorination
FBR.recipeBuilder()
.fluidInputs(fluid('ethylene') * 50)
.fluidInputs(fluid('hydrochloric_acid') * 100)
.fluidInputs(fluid('oxygen') * 50)
.notConsumable(ore('catalystBedCopperIiChloride'))
.fluidOutputs(fluid('one_two_dichloroethane') * 50)
.fluidOutputs(fluid('water') * 150)
.EUt(30)
.duration(10)
.buildAndRegister()

// TeCA (1,1,2,2-tetrachloroethane / R130)

CSTR.recipeBuilder()
.fluidInputs(fluid('one_two_dichloroethane') * 50)
.fluidInputs(fluid('chlorine') * 200)
.fluidOutputs(fluid('one_one_two_two_tetrachloroethane') * 50)
.fluidOutputs(fluid('hydrogen_chloride') * 100)
.duration(5)
.EUt(30)
.buildAndRegister()

// TCE (trichloroethylene)

CSTR.recipeBuilder()
.notConsumable(ore('springKanthal'))
.fluidInputs(fluid('one_two_dichloroethane') * 50)
.fluidInputs(fluid('chlorine') * 200)
.fluidOutputs(fluid('trichloroethylene') * 50)
.fluidOutputs(fluid('hydrogen_chloride') * 150)
.duration(10)
.EUt(120)
.buildAndRegister()
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ PHASE_SEPARATOR = recipemap('phase_separator')
// Straight run lubricating oil

MIXER.recipeBuilder()
.fluidInputs(fluid('dichloroethane') * 1000)
.fluidInputs(fluid('one_two_dichloroethane') * 1000)
.fluidInputs(fluid('dichloromethane') * 1000)
.fluidOutputs(fluid('dewaxing_solvent') * 2000)
.duration(20)
Expand Down Expand Up @@ -858,16 +858,6 @@ PHASE_SEPARATOR = recipemap('phase_separator')
.EUt(Globals.voltAmps[2])
.buildAndRegister()

CSTR.recipeBuilder()
.notConsumable(ore('springKanthal'))
.fluidInputs(fluid('dichloroethane') * 50)
.fluidInputs(fluid('chlorine') * 200)
.fluidOutputs(fluid('trichloroethylene') * 50)
.fluidOutputs(fluid('hydrogen_chloride') * 150)
.duration(10)
.EUt(Globals.voltAmps[2])
.buildAndRegister()

CSTR.recipeBuilder()
.fluidInputs(fluid('trichloroethylene') * 50)
.fluidInputs(fluid('diluted_sulfuric_acid') * 200)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -187,7 +187,7 @@ BR.recipeBuilder()
BR.recipeBuilder()
.inputs(ore('dustBisphenolA'))
.notConsumable(ore('dustBisphenolBrominationCatalyst'))
.fluidInputs(fluid('dichloroethane') * 6000)
.fluidInputs(fluid('one_two_dichloroethane') * 6000)
.fluidInputs(fluid('hydrogen_peroxide_solution') * 2000)
.fluidInputs(fluid('bromine') * 4000)
.fluidOutputs(fluid('impure_brominated_bisphenol_emulsion') * 10000)
Expand Down Expand Up @@ -222,7 +222,7 @@ CENTRIFUGE.recipeBuilder()
ROASTER.recipeBuilder()
.fluidInputs(fluid('tetrabromobisphenol_a_solution') * 6000)
.outputs(metaitem('dustTetrabromobisphenolA'))
.fluidOutputs(fluid('dichloroethane') * 6000)
.fluidOutputs(fluid('one_two_dichloroethane') * 6000)
.duration(100)
.EUt(30)
.buildAndRegister()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -110,7 +110,7 @@ DISTILLATION_TOWER.recipeBuilder()
.fluidInputs(fluid('pbi_waste') * 4000)
.fluidOutputs(fluid('toluene') * 1000)
.fluidOutputs(fluid('phenol') * 2000)
.fluidOutputs(fluid('dichloroethane') * 1000)
.fluidOutputs(fluid('one_two_dichloroethane') * 1000)
.duration(300)
.EUt(240)
.buildAndRegister()
Loading

0 comments on commit 32b3715

Please sign in to comment.