diff --git a/CHANGELOG.md b/CHANGELOG.md index 4d048e97b..22525a761 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,14 +1,44 @@ # Changelog +## [0.10.0] - TODO DATE +### Major changes +- Build a rocket and blast off to the moon, a new dimension! You can get started in mid-HV. +- AE2 inscriber presses are now found on the moon instead of being craftable, and making various AE2 components is also significantly cheaper there. @TomPlop & @Pyritie +- Significant ore changes: certus quartz, raw aluminium, ilmenite, and some other mid-lategame materials have been moved from the overworld to the moon. Check your field guide for more information. @TomPlop +- A new system for interstellar item transport, made just for TerraFirmaGreg - a new logistical problem to solve and automate. @ofoxsmith +- New bedrock ore veins on the moon! Much better sources of infinite materials than stone dusts. @TomPlop +- New machines to properly automate food, along with proper compatibility between machines and TFC's food system, so you can't turn rotten grains into fresh bread any more. The electric greenhouse now also always outputs fresh food. @ofoxsmith +- New electric refrigerator with different tiers. You can craft the old one into this new one, but please take your food out of it before upgrading otherwise it will be lost! @ofoxsmith +- Quest updates for all of the above. @TomPlop +### Minor changes +- Balance changes for water wheels @Pyritie +- Added a second recipe for water flask sides so it doesn't matter if you craft it top-aligned or bottom-aligned @Pyritie +- More recipes to craft dyes @Pyritie +- Adjusted the textures of the generated raw ore items @Pyritie +- Added recipes for AE2's decoration blocks @Pyritie +- Added warning text to macerators, millstones, and crushing wheels about the no-byproducts-until-HV thing @Pyritie +- Electric greenhouse now accepts any glass instead of exclusively AE2 quartz glass @Pyritie +### Bug fixes +- Fixed a mud hut structure that had deprecated zinc ingots @Pyritie +- The electric greenhouse now also allows loose rocks and plants inside, since TFC spawns them on any grass block @Pyritie + ## [Unreleased] ### New features ### Bug fixes +- Fixed double ingots not having a temperature (#1165) @Pyritie +- Removed a few recipes that had unobtainable greate-related materials @Pyritie +- Fixed the color of placed zinc ingots and plated blocks to match the material @Pyritie +- Fixed some other steel/colored steel items being extractable in LV @Pyritie +- Fixed polished/cut migmatite recipe conflict (#1153) @JeanRdSz +- You can now use casting channels, mold tables, and mechanical pumps on top of a Hellforge (#1183) @Indiiix ### Changes - Changed pineapple yarn recipe from assembler to wiremill & coiling machine, like the other strings (#1162) @Pyritie - Lowered durability of wooden tongs @Pyritie - Streamlined the Metallurgy Age quest chapter a bit @Pyritie - Mushroom blocks now drop way less mushroom @Pyritie - +- Removed gems tag from flint @Pyritie +- Updated texture for aqueous accumulator (#1168) @Redeix +- Kaolin Klayzes now also drop blood lilies @Pyritie ## [0.9.11] - 13.06.2025 ### New features diff --git a/kubejs/assets/tfc/patchouli_books/field_guide/en_us/entries/beneath/burpflower.json b/kubejs/assets/tfc/patchouli_books/field_guide/en_us/entries/beneath/burpflower.json deleted file mode 100644 index b1b456690..000000000 --- a/kubejs/assets/tfc/patchouli_books/field_guide/en_us/entries/beneath/burpflower.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "name": "Burpflowers", - "category": "tfc:beneath", - "icon": "beneath:burpflower", - "pages": [ - { - "type": "patchouli:text", - "text": "The $(thing)Burpflower$() has the power to change blocks into other blocks. It can be found all around the Beneath. The Burpflower has a facing direction, which is the direction that it performs the action in. Behind it, place $(thing)Sulfur Powder$() to charge it." - }, - { - "type": "patchouli:text", - "text": "Soon, if there is sulfur, the burpflower will charge, and have a yellow sulfuric flower. It then soon will make a burping sound and expel sulfuric smoke.$(br2)$(item)Shroomlights$() can be changed into a random $(thing)Froglight$()." - } - ], - "read_by_default": true -} \ No newline at end of file diff --git a/kubejs/assets/tfg_excludes.zip b/kubejs/assets/tfg_excludes.zip index 025e9726f..4ffb5f6d2 100644 Binary files a/kubejs/assets/tfg_excludes.zip and b/kubejs/assets/tfg_excludes.zip differ diff --git a/kubejs/server_scripts/create/tags.js b/kubejs/server_scripts/create/tags.js index 22487693c..9253c1cbb 100644 --- a/kubejs/server_scripts/create/tags.js +++ b/kubejs/server_scripts/create/tags.js @@ -46,10 +46,18 @@ const registerCreateItemTags = (event) => { event.add('create:blaze_burner_fuel/special', "gtceu:flawless_coal_gem") event.add('create:blaze_burner_fuel/special', "gtceu:exquisite_coal_gem") event.add('create:blaze_burner_fuel/special', "gtceu:coke_gem") - event.add('create:blaze_burner_fuel/special', "beneath:cursecoal") + // Lets the basin be put on top of a charcoal forge event.add('tfc:forge_invisible_whitelist', 'create:basin') + // Allows automation with the 3x3 Hellforge + event.add('tfc:forge_invisible_whitelist', 'tfcchannelcasting:channel') + event.add('tfc:forge_invisible_whitelist', 'tfcchannelcasting:mold_table') + event.add('tfc:forge_invisible_whitelist', 'greate:steel_mechanical_pump') + event.add('tfc:forge_invisible_whitelist', 'greate:aluminum_mechanical_pump') + event.add('tfc:forge_invisible_whitelist', 'greate:stainless_steel_mechanical_pump') + event.add('tfc:forge_invisible_whitelist', 'greate:titanium_mechanical_pump') + event.add('create:non_movable', 'gtceu:wood_crate') event.add('create:non_movable', 'gtceu:bronze_crate') event.add('create:non_movable', 'gtceu:steel_crate') @@ -88,6 +96,14 @@ const registerCreateBlockTags = (event) => { // Lets the basin be put on top of a charcoal forge event.add('tfc:forge_invisible_whitelist', 'create:basin') + + // Allows automation with the 3x3 Hellforge + event.add('tfc:forge_invisible_whitelist', 'tfcchannelcasting:channel') + event.add('tfc:forge_invisible_whitelist', 'tfcchannelcasting:mold_table') + event.add('tfc:forge_invisible_whitelist', 'greate:steel_mechanical_pump') + event.add('tfc:forge_invisible_whitelist', 'greate:aluminum_mechanical_pump') + event.add('tfc:forge_invisible_whitelist', 'greate:stainless_steel_mechanical_pump') + event.add('tfc:forge_invisible_whitelist', 'greate:titanium_mechanical_pump') } diff --git a/kubejs/server_scripts/gregtech/recipes.materials.js b/kubejs/server_scripts/gregtech/recipes.materials.js index f4ab5a5d1..da593efcc 100644 --- a/kubejs/server_scripts/gregtech/recipes.materials.js +++ b/kubejs/server_scripts/gregtech/recipes.materials.js @@ -79,7 +79,7 @@ function registerGTCEUMetalRecipes(event) { .outputFluids(Fluid.of(material.getFluid(), 144)) .duration(material.getMass() * 6) .category(GTRecipeCategories.EXTRACTOR_RECYCLING) - .EUt(GTValues.VA[GTValues.ULV]) + .EUt(material.hasProperty(PropertyKey.BLAST) ? GTValues.VA[GTValues.MV] : GTValues.VA[GTValues.ULV]) } } else if (material.hasProperty(PropertyKey.GEM)) { @@ -600,7 +600,7 @@ function registerGTCEUMetalRecipes(event) { .outputFluids(Fluid.of(material.getFluid(), 14 * 144)) .duration(material.getMass() * 32) .category(GTRecipeCategories.EXTRACTOR_RECYCLING) - .EUt(GTValues.VA[GTValues.ULV]) + .EUt(material.hasProperty(PropertyKey.BLAST) ? GTValues.VA[GTValues.MV] : GTValues.VA[GTValues.ULV]) event.recipes.gtceu.alloy_smelter(`tfg:cast_${material.getName()}_anvil`) .itemInputs(ChemicalHelper.get(TagPrefix.ingot, material, 14)) @@ -676,7 +676,7 @@ function registerGTCEUMetalRecipes(event) { .outputFluids(Fluid.of(material.getFluid(), 144)) .duration(material.getMass() * 8) .category(GTRecipeCategories.EXTRACTOR_RECYCLING) - .EUt(GTValues.VA[GTValues.ULV]) + .EUt(material.hasProperty(PropertyKey.BLAST) ? GTValues.VA[GTValues.MV] : GTValues.VA[GTValues.ULV]) event.recipes.gtceu.alloy_smelter(`tfg:cast_${material.getName()}_unfinished_lamp`) .itemInputs(materialIngotStack) @@ -721,7 +721,7 @@ function registerGTCEUMetalRecipes(event) { .outputFluids(Fluid.of(material.getFluid(), 144)) .duration(material.getMass() * 7) .category(GTRecipeCategories.EXTRACTOR_RECYCLING) - .EUt(GTValues.VA[GTValues.ULV]) + .EUt(material.hasProperty(PropertyKey.BLAST) ? GTValues.VA[GTValues.MV] : GTValues.VA[GTValues.ULV]) event.recipes.gtceu.alloy_smelter(`tfg:cast_${material.getName()}_trapdoor`) .itemInputs(materialIngotStack) @@ -769,7 +769,7 @@ function registerGTCEUMetalRecipes(event) { .outputFluids(Fluid.of(material.getFluid(), 9)) .duration(material.getMass() * 3) .category(GTRecipeCategories.EXTRACTOR_RECYCLING) - .EUt(GTValues.VA[GTValues.ULV]) + .EUt(material.hasProperty(PropertyKey.BLAST) ? GTValues.VA[GTValues.MV] : GTValues.VA[GTValues.ULV]) event.recipes.gtceu.alloy_smelter(`tfg:cast_${material.getName()}_chain`) .itemInputs(materialIngotStack) diff --git a/kubejs/server_scripts/primitive_creatures/loot.js b/kubejs/server_scripts/primitive_creatures/loot.js index 8856417ac..89010f10d 100644 --- a/kubejs/server_scripts/primitive_creatures/loot.js +++ b/kubejs/server_scripts/primitive_creatures/loot.js @@ -5,8 +5,9 @@ function registerPrimitiveCreaturesLoots(event) { event.addEntityLootModifier('kaolinclayze:tfc') .removeLoot(ItemFilter.ALWAYS_TRUE) .addWeightedLoot([12,16], ['tfc:kaolin_clay', 'minecraft:clay_ball']) + .addLoot('tfc:plant/blood_lily') event.addEntityLootModifier('kaolinclayze:golem_2') .removeLoot(ItemFilter.ALWAYS_TRUE) - .addWeightedLoot([4,6], ['gtceu:rich_raw_graphite']) + .addWeightedLoot([3,5], ['gtceu:rich_raw_graphite']) } \ No newline at end of file diff --git a/kubejs/server_scripts/tfc/recipes.stone.js b/kubejs/server_scripts/tfc/recipes.stone.js index 852b083af..46a1adc5d 100644 --- a/kubejs/server_scripts/tfc/recipes.stone.js +++ b/kubejs/server_scripts/tfc/recipes.stone.js @@ -560,216 +560,4 @@ function registerTFCStoneRecipes(event) { result: `tfc:rock/cobble/${stone}` }).id(`tfg:collapse/${stone}_gt_ores`) }) - - - // #region Rock decomposition recipes - - let oxygenFluid = GTMaterials.Oxygen.getFluid(); - - // Replacements - - event.remove({ id: 'gtceu:electrolyzer/decomposition_electrolyzing_blackstone' }) - - event.recipes.gtceu.centrifuge('gtceu:decomposition_centrifuging__diorite') - .EUt(GTValues.VA[GTValues.MV]) - .duration(480) - .itemInputs(ChemicalHelper.get(TagPrefix.dust, GTMaterials.Diorite, 1)) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Mirabilite, 1), 2000, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Clay, 1), 7000, 700) - .outputFluids(Fluid.of(oxygenFluid, 5)) - - event.recipes.gtceu.centrifuge('gtceu:decomposition_centrifuging__marble') - .EUt(GTValues.VA[GTValues.MV]) - .duration(480) - .itemInputs(ChemicalHelper.get(TagPrefix.dust, GTMaterials.Marble, 1)) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Magnesium, 1), 1500, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Calcite, 1), 8000, 700) - .outputFluids(Fluid.of(oxygenFluid, 12)) - - event.recipes.gtceu.centrifuge('gtceu:decomposition_centrifuging__andesite') - .EUt(GTValues.VA[GTValues.MV]) - .duration(480) - .itemInputs(ChemicalHelper.get(TagPrefix.dust, GTMaterials.Andesite, 1)) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Asbestos, 1), 8000, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Saltpeter, 1), 2000, 700) - - event.recipes.gtceu.centrifuge('gtceu:decomposition_centrifuging__basalt') - .EUt(GTValues.VA[GTValues.MV]) - .duration(480) - .itemInputs(ChemicalHelper.get(TagPrefix.dust, GTMaterials.Basalt, 1)) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Olivine, 1), 1700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Calcite, 1), 1700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Flint, 1), 5000, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dust, GTMaterials.DarkAsh, 1), 2500, 700) - - event.recipes.gtceu.centrifuge('gtceu:decomposition_centrifuging__granite') - .EUt(GTValues.VA[GTValues.MV]) - .duration(480) - .itemInputs(ChemicalHelper.get(TagPrefix.dust, GTMaterials.Granite, 1)) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.SiliconDioxide, 1), 8000, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Redrock, 1), 2000, 700) - .outputFluids(Fluid.of(oxygenFluid, 5)) - - event.recipes.gtceu.centrifuge('gtceu:decomposition_centrifuging__deepslate') - .EUt(GTValues.VA[GTValues.MV]) - .duration(480) - .itemInputs(ChemicalHelper.get(TagPrefix.dust, GTMaterials.Deepslate, 1)) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.SiliconDioxide, 1), 8000, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Biotite, 1), 2000, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dust, GTMaterials.Stone, 1), 3700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.MetalMixture, 1), 3700, 700) - .outputFluids(Fluid.of(oxygenFluid, 12)) - - event.recipes.gtceu.centrifuge('blackstone_dust_separation') - .EUt(GTValues.VA[GTValues.MV]) - .duration(480) - .itemInputs(ChemicalHelper.get(TagPrefix.dust, GTMaterials.Blackstone, 1)) - .chancedOutput(ChemicalHelper.get(TagPrefix.dust, GTMaterials.DarkAsh, 1), 2500, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Calcium, 1), 3700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Sodium, 1), 6700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Magnesium, 1), 4700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.MetalMixture, 1), 3700, 700) - .outputFluids(Fluid.of(oxygenFluid, 16)) - - // TFC - - event.recipes.gtceu.centrifuge('gabbro_dust_separation') - .EUt(GTValues.VA[GTValues.MV]) - .duration(480) - .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('gabbro'), 1)) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Iron, 1), 3700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Rutile, 1), 2700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.MetalMixture, 1), 1700, 700) - - event.recipes.gtceu.centrifuge('shale_dust_separation') - .EUt(GTValues.VA[GTValues.MV]) - .duration(480) - .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('shale'), 1)) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Sodium, 1), 7500, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.MetalMixture, 1), 1500, 700) - .outputFluids(Fluid.of(oxygenFluid, 16)) - - event.recipes.gtceu.centrifuge('claystone_dust_separation') - .EUt(GTValues.VA[GTValues.MV]) - .duration(480) - .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('claystone'), 1)) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Bauxite, 1), 6700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Silicon, 1), 6700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Hematite, 1), 6700, 700) - .outputFluids(Fluid.of(oxygenFluid, 5)) - - event.recipes.gtceu.centrifuge('limestone_dust_separation') - .EUt(GTValues.VA[GTValues.MV]) - .duration(480) - .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('limestone'), 1)) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Calcium, 1), 8700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.MetalMixture, 1), 1700, 700) - .outputFluids(Fluid.of(oxygenFluid, 36)) - - event.recipes.gtceu.centrifuge('conglomerate_dust_separation') - .EUt(GTValues.VA[GTValues.MV]) - .duration(480) - .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('conglomerate'), 1)) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Hematite, 1), 6700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Silicon, 1), 4700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.TricalciumPhosphate, 1), 3700, 700) - .outputFluids(Fluid.of(oxygenFluid, 5)) - - event.recipes.gtceu.centrifuge('dolomite_dust_separation') - .EUt(GTValues.VA[GTValues.MV]) - .duration(480) - .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('dolomite'), 1)) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Magnesium, 1), 6700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Calcium, 1), 5700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.MetalMixture, 1), 3700, 700) - .outputFluids(Fluid.of(oxygenFluid, 16)) - - event.recipes.gtceu.centrifuge('chert_dust_separation') - .EUt(GTValues.VA[GTValues.MV]) - .duration(480) - .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('chert'), 1)) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Silicon, 1), 6700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.MetalMixture, 1), 3700, 700) - .outputFluids(Fluid.of(oxygenFluid, 24)) - - event.recipes.gtceu.centrifuge('chalk_dust_separation') - .EUt(GTValues.VA[GTValues.MV]) - .duration(480) - .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('chalk'), 1)) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Calcium, 1), 6700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Carbon, 1), 3700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.MetalMixture, 1), 1700, 700) - .outputFluids(Fluid.of(oxygenFluid, 12)) - - event.recipes.gtceu.centrifuge('rhyolite_dust_separation') - .EUt(GTValues.VA[GTValues.MV]) - .duration(480) - .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('rhyolite'), 1)) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.SiliconDioxide, 1), 8700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.MetalMixture, 1), 800, 700) - - event.recipes.gtceu.centrifuge('dacite_dust_separation') - .EUt(GTValues.VA[GTValues.MV]) - .duration(480) - .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('dacite'), 1)) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Sodium, 1), 6700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Calcium, 1), 5700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.SiliconDioxide, 1), 4700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Kyanite, 1), 3700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.MetalMixture, 1), 1500, 700) - .outputFluids(Fluid.of(oxygenFluid, 12)) - - event.recipes.gtceu.centrifuge('slate_dust_separation') - .EUt(GTValues.VA[GTValues.MV]) - .duration(480) - .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('slate'), 1)) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.SiliconDioxide, 1), 4700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.MetalMixture, 1), 3700, 700) - .outputFluids(Fluid.of(oxygenFluid, 24)) - - event.recipes.gtceu.centrifuge('phyllite_dust_separation') - .EUt(GTValues.VA[GTValues.MV]) - .duration(480) - .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('phyllite'), 1)) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Quartzite, 1), 5700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.CalciumChloride, 1), 1700, 700) - .outputFluids(Fluid.of(oxygenFluid, 5)) - - event.recipes.gtceu.centrifuge('schist_dust_separation') - .EUt(GTValues.VA[GTValues.MV]) - .duration(480) - .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('schist'), 1)) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Mica, 1), 6700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Talc, 1), 5700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Graphite, 1), 4700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.MetalMixture, 1), 780, 700) - .outputFluids(Fluid.of(oxygenFluid, 12)) - - event.recipes.gtceu.centrifuge('gneiss_dust_separation') - .EUt(GTValues.VA[GTValues.MV]) - .duration(480) - .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('gneiss'), 1)) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Quartzite, 1), 6700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Biotite, 1), 3700, 700) - .outputFluids(Fluid.of(oxygenFluid, 5)) - - event.recipes.gtceu.centrifuge('dripstone_dust_separation') - .EUt(GTValues.VA[GTValues.MV]) - .duration(480) - .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('dripstone'), 1)) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.CalciumCarbonate, 1), 8700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.CalciumHydroxide, 1), 1700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.SiliconDioxide, 1), 4700, 700) - .outputFluids(Fluid.of(oxygenFluid, 12)) - - // Misc dust - - event.recipes.gtceu.centrifuge('gtceu:quartz_sand_separation') - .EUt(30) - .duration(60) - .itemInputs('2x gtceu:quartz_sand_dust') - .itemOutputs('gtceu:quartzite_dust') - .chancedOutput('#forge:dust/nether_quartz', 2000, 200) - - // #endregion } \ No newline at end of file diff --git a/kubejs/server_scripts/tfg/recipes.food.js b/kubejs/server_scripts/tfg/recipes.food.js index a8952a223..b928b0944 100644 --- a/kubejs/server_scripts/tfg/recipes.food.js +++ b/kubejs/server_scripts/tfg/recipes.food.js @@ -260,6 +260,7 @@ function registerTFGFoodRecipes(event) { itemOutputProvider: TFC.isp.of('2x firmalife:food/milk_chocolate_blend').resetFood(), }) + // TODO: this has nutrition dynamically set in the pot recipe, can we do that here? processorRecipe(`egg_noodles_from_${milkID}`, 50, 8, { circuit: 6, itemInputs: ["#tfc:foods/flour", 'tfc:powder/salt', '#forge:eggs'], @@ -661,6 +662,7 @@ function registerTFGFoodRecipes(event) { //#endregion + // Tweaks to the machine crafts that are more annoying to do in java event.replaceInput({id: 'gtceu:shaped/lv_food_processor'}, 'gtceu:lv_electric_piston', 'gtceu:steel_whisk') event.replaceInput({id: 'gtceu:shaped/mv_food_processor'}, 'gtceu:mv_electric_piston', 'gtceu:aluminium_whisk') event.replaceInput({id: 'gtceu:shaped/hv_food_processor'}, 'gtceu:hv_electric_piston', 'gtceu:stainless_steel_whisk') diff --git a/kubejs/server_scripts/tfg/recipes.js b/kubejs/server_scripts/tfg/recipes.js index babf87cdc..238e12085 100644 --- a/kubejs/server_scripts/tfg/recipes.js +++ b/kubejs/server_scripts/tfg/recipes.js @@ -16,4 +16,5 @@ const registerTFGRecipes = (event) => { registerTFGConvertingRecipes(event) registerTFGFoodRecipes(event) registerTFGSpaceRecipes(event) + registerTFGStoneDustRecipes(event) } \ No newline at end of file diff --git a/kubejs/server_scripts/tfg/recipes.space.js b/kubejs/server_scripts/tfg/recipes.space.js index 145a94c6d..97e669715 100644 --- a/kubejs/server_scripts/tfg/recipes.space.js +++ b/kubejs/server_scripts/tfg/recipes.space.js @@ -43,7 +43,7 @@ function registerTFGSpaceRecipes(event) { event.recipes.gtceu.aqueous_accumulator('water_moon') .circuit(aaCircuit++) .dimension('ad_astra:moon') - .duration(20) + .duration(20*5) .EUt(GTValues.VHA[GTValues.MV]) .addDataString("fluidA", "minecraft:water") .addDataString("fluidB", "minecraft:water") @@ -70,7 +70,7 @@ function registerTFGSpaceRecipes(event) { event.recipes.gtceu.aqueous_accumulator('lava_overworld') .circuit(aaCircuit++) .dimension('minecraft:overworld') - .duration(20) + .duration(20*15) .EUt(GTValues.VHA[GTValues.HV]) .addDataString("fluidA", "minecraft:lava") .addDataString("fluidB", "minecraft:lava") @@ -79,56 +79,12 @@ function registerTFGSpaceRecipes(event) { event.recipes.gtceu.aqueous_accumulator('lava_nether') .circuit(aaCircuit++) .dimension('minecraft:the_nether') - .duration(20) + .duration(20*15) .EUt(GTValues.VHA[GTValues.HV]) .addDataString("fluidA", "minecraft:lava") .addDataString("fluidB", "minecraft:lava") .outputFluids(Fluid.of("minecraft:lava", 1000)) - // Dusts - - event.recipes.gtceu.centrifuge('moon_stone_dust_separation') - .EUt(GTValues.VA[GTValues.MV]) - .duration(480) - .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('moon_stone'), 1)) - .chancedOutput('ae2:sky_dust', 4700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Magnetite, 1), 3700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.CertusQuartz, 1), 2700, 700) - .outputFluids(Fluid.of('gtceu:helium_3', 50)) - - event.recipes.gtceu.centrifuge('moon_deepslate_dust_separation') - .EUt(GTValues.VA[GTValues.MV]) - .duration(480) - .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('moon_deepslate'), 1)) - .chancedOutput('ae2:sky_dust', 4700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Olivine, 1), 3700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, TFGHelpers.getMaterial('desh'), 1), 2700, 700) - .outputFluids(Fluid.of('gtceu:helium_3', 50)) - - event.recipes.gtceu.centrifuge('glacio_stone_dust_separation') - .EUt(GTValues.VA[GTValues.MV]) - .duration(480) - .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('glacio_stone'), 1)) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.SiliconDioxide, 1), 4700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Magnesium, 1), 2700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.MetalMixture, 1), 1700, 700) - .outputFluids(Fluid.of('gtceu:helium_3', 50)) - - event.recipes.gtceu.centrifuge('sky_dust_separation') - .EUt(GTValues.VA[GTValues.LV]) - .duration(100) - .itemInputs('ae2:sky_dust') - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.CertusQuartz, 1), 4700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Iron, 1), 3700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.MetalMixture, 1), 2700, 700) - - event.recipes.gtceu.centrifuge('asurine_dust_separation') - .EUt(GTValues.VA[GTValues.LV]) - .duration(100) - .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('asurine'), 1)) - .chancedOutput(ChemicalHelper.get(TagPrefix.dust, GTMaterials.CertusQuartz, 1), 4700, 700) - .chancedOutput(ChemicalHelper.get(TagPrefix.dust, GTMaterials.Zinc, 1), 3700, 700) - // Plants // Chorus diff --git a/kubejs/server_scripts/tfg/recipes.stone_dusts.js b/kubejs/server_scripts/tfg/recipes.stone_dusts.js new file mode 100644 index 000000000..9a4252e35 --- /dev/null +++ b/kubejs/server_scripts/tfg/recipes.stone_dusts.js @@ -0,0 +1,267 @@ +// priority: 0 + +function registerTFGStoneDustRecipes(event) { + + event.remove({ id: 'gtceu:electrolyzer/decomposition_electrolyzing_blackstone' }) + + event.recipes.gtceu.centrifuge('gtceu:decomposition_centrifuging__diorite') + .EUt(GTValues.VA[GTValues.MV]) + .duration(480) + .itemInputs(ChemicalHelper.get(TagPrefix.dust, GTMaterials.Diorite, 1)) + .itemOutputs(ChemicalHelper.get(TagPrefix.dustSmall, GTMaterials.SiliconDioxide, 1)) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Clay, 1), 4500, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Mirabilite, 1), 2000, 500) + .outputFluids(Fluid.of('gtceu:oxygen', 5)) + + event.recipes.gtceu.centrifuge('gtceu:decomposition_centrifuging__marble') + .EUt(GTValues.VA[GTValues.MV]) + .duration(480) + .itemInputs(ChemicalHelper.get(TagPrefix.dust, GTMaterials.Marble, 1)) + .itemOutputs(ChemicalHelper.get(TagPrefix.dustSmall, GTMaterials.SiliconDioxide, 1)) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Calcite, 1), 6000, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Magnesium, 1), 1500, 500) + .outputFluids(Fluid.of('gtceu:oxygen', 12)) + + event.recipes.gtceu.centrifuge('gtceu:decomposition_centrifuging__andesite') + .EUt(GTValues.VA[GTValues.MV]) + .duration(480) + .itemInputs(ChemicalHelper.get(TagPrefix.dust, GTMaterials.Andesite, 1)) + .itemOutputs(ChemicalHelper.get(TagPrefix.dustSmall, GTMaterials.SiliconDioxide, 1)) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Asbestos, 1), 6000, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Saltpeter, 1), 2000, 500) + + event.recipes.gtceu.centrifuge('gtceu:decomposition_centrifuging__basalt') + .EUt(GTValues.VA[GTValues.MV]) + .duration(480) + .itemInputs(ChemicalHelper.get(TagPrefix.dust, GTMaterials.Basalt, 1)) + .itemOutputs(ChemicalHelper.get(TagPrefix.dustSmall, GTMaterials.SiliconDioxide, 1)) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Flint, 1), 5000, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Olivine, 1), 1500, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Calcite, 1), 1500, 500) + + event.recipes.gtceu.centrifuge('gtceu:decomposition_centrifuging__granite') + .EUt(GTValues.VA[GTValues.MV]) + .duration(480) + .itemInputs(ChemicalHelper.get(TagPrefix.dust, GTMaterials.Granite, 1)) + .itemOutputs(ChemicalHelper.get(TagPrefix.dustSmall, GTMaterials.SiliconDioxide, 1)) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Redrock, 1), 2000, 500) + .outputFluids(Fluid.of('gtceu:oxygen', 5)) + + event.recipes.gtceu.centrifuge('gtceu:decomposition_centrifuging__deepslate') + .EUt(GTValues.VA[GTValues.MV]) + .duration(480) + .itemInputs(ChemicalHelper.get(TagPrefix.dust, GTMaterials.Deepslate, 1)) + .itemOutputs(ChemicalHelper.get(TagPrefix.dustSmall, GTMaterials.SiliconDioxide, 1)) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Biotite, 1), 2000, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Olivine, 1), 3500, 700) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.MetalMixture, 1), 3500, 500) + .outputFluids(Fluid.of('gtceu:oxygen', 12)) + + event.recipes.gtceu.centrifuge('blackstone_dust_separation') + .EUt(GTValues.VA[GTValues.MV]) + .duration(480) + .itemInputs(ChemicalHelper.get(TagPrefix.dust, GTMaterials.Blackstone, 1)) + .itemOutputs(ChemicalHelper.get(TagPrefix.dustSmall, GTMaterials.SiliconDioxide, 1)) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Graphite, 1), 3500, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Magnesium, 1), 4500, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Gold, 1), 3500, 500) + .outputFluids(Fluid.of('gtceu:oxygen', 16)) + + // TFC + + event.recipes.gtceu.centrifuge('gabbro_dust_separation') + .EUt(GTValues.VA[GTValues.MV]) + .duration(480) + .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('gabbro'), 1)) + .itemOutputs(ChemicalHelper.get(TagPrefix.dustSmall, GTMaterials.SiliconDioxide, 1)) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Magnetite, 1), 2500, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Rutile, 1), 1500, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.MetalMixture, 1), 1500, 500) + + event.recipes.gtceu.centrifuge('shale_dust_separation') + .EUt(GTValues.VA[GTValues.MV]) + .duration(480) + .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('shale'), 1)) + .itemOutputs(ChemicalHelper.get(TagPrefix.dustSmall, GTMaterials.SiliconDioxide, 1)) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Sodium, 1), 6500, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.MetalMixture, 1), 1500, 500) + .outputFluids(Fluid.of('gtceu:oxygen', 16)) + + event.recipes.gtceu.centrifuge('claystone_dust_separation') + .EUt(GTValues.VA[GTValues.MV]) + .duration(480) + .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('claystone'), 1)) + .itemOutputs(ChemicalHelper.get(TagPrefix.dustSmall, GTMaterials.SiliconDioxide, 1)) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Clay, 1), 3000, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Hematite, 1), 3500, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Bauxite, 1), 2500, 500) + .outputFluids(Fluid.of('gtceu:oxygen', 5)) + + event.recipes.gtceu.centrifuge('limestone_dust_separation') + .EUt(GTValues.VA[GTValues.MV]) + .duration(480) + .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('limestone'), 1)) + .itemOutputs(ChemicalHelper.get(TagPrefix.dustSmall, GTMaterials.SiliconDioxide, 1)) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Calcium, 1), 5500, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.MetalMixture, 1), 1500, 500) + .outputFluids(Fluid.of('gtceu:oxygen', 36)) + + event.recipes.gtceu.centrifuge('conglomerate_dust_separation') + .EUt(GTValues.VA[GTValues.MV]) + .duration(480) + .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('conglomerate'), 1)) + .itemOutputs(ChemicalHelper.get(TagPrefix.dustSmall, GTMaterials.SiliconDioxide, 1)) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Hematite, 1), 3500, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.TricalciumPhosphate, 1), 3500, 500) + .outputFluids(Fluid.of('gtceu:oxygen', 5)) + + event.recipes.gtceu.centrifuge('dolomite_dust_separation') + .EUt(GTValues.VA[GTValues.MV]) + .duration(480) + .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('dolomite'), 1)) + .itemOutputs(ChemicalHelper.get(TagPrefix.dustSmall, GTMaterials.SiliconDioxide, 1)) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Magnesium, 1), 6500, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Calcium, 1), 5500, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.MetalMixture, 1), 3500, 500) + .outputFluids(Fluid.of('gtceu:oxygen', 16)) + + event.recipes.gtceu.centrifuge('chert_dust_separation') + .EUt(GTValues.VA[GTValues.MV]) + .duration(480) + .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('chert'), 1)) + .itemOutputs(ChemicalHelper.get(TagPrefix.dustSmall, GTMaterials.SiliconDioxide, 1)) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Redrock, 1), 5500, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.MetalMixture, 1), 3500, 500) + .outputFluids(Fluid.of('gtceu:oxygen', 24)) + + event.recipes.gtceu.centrifuge('chalk_dust_separation') + .EUt(GTValues.VA[GTValues.MV]) + .duration(480) + .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('chalk'), 1)) + .itemOutputs(ChemicalHelper.get(TagPrefix.dustSmall, GTMaterials.SiliconDioxide, 1)) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Calcium, 1), 6500, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Carbon, 1), 3500, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.MetalMixture, 1), 1500, 500) + .outputFluids(Fluid.of('gtceu:oxygen', 12)) + + event.recipes.gtceu.centrifuge('rhyolite_dust_separation') + .EUt(GTValues.VA[GTValues.MV]) + .duration(480) + .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('rhyolite'), 1)) + .itemOutputs(ChemicalHelper.get(TagPrefix.dustSmall, GTMaterials.SiliconDioxide, 1)) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Tantalite, 1), 1500, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.MetalMixture, 1), 1500, 500) + + event.recipes.gtceu.centrifuge('dacite_dust_separation') + .EUt(GTValues.VA[GTValues.MV]) + .duration(480) + .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('dacite'), 1)) + .itemOutputs(ChemicalHelper.get(TagPrefix.dustSmall, GTMaterials.SiliconDioxide, 1)) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Sodium, 1), 6500, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Calcium, 1), 5500, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Kyanite, 1), 3500, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.MetalMixture, 1), 1500, 500) + .outputFluids(Fluid.of('gtceu:oxygen', 12)) + + event.recipes.gtceu.centrifuge('slate_dust_separation') + .EUt(GTValues.VA[GTValues.MV]) + .duration(480) + .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('slate'), 1)) + .itemOutputs(ChemicalHelper.get(TagPrefix.dustSmall, GTMaterials.SiliconDioxide, 1)) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Sapphire, 1), 1500, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.MetalMixture, 1), 1500, 500) + .outputFluids(Fluid.of('gtceu:oxygen', 24)) + + event.recipes.gtceu.centrifuge('phyllite_dust_separation') + .EUt(GTValues.VA[GTValues.MV]) + .duration(480) + .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('phyllite'), 1)) + .itemOutputs(ChemicalHelper.get(TagPrefix.dustSmall, GTMaterials.SiliconDioxide, 1)) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Quartzite, 1), 5500, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.CalciumChloride, 1), 1500, 500) + .outputFluids(Fluid.of('gtceu:oxygen', 5)) + + event.recipes.gtceu.centrifuge('schist_dust_separation') + .EUt(GTValues.VA[GTValues.MV]) + .duration(480) + .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('schist'), 1)) + .itemOutputs(ChemicalHelper.get(TagPrefix.dustSmall, GTMaterials.SiliconDioxide, 1)) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Mica, 1), 6500, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Talc, 1), 5500, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.MetalMixture, 1), 500, 500) + .outputFluids(Fluid.of('gtceu:oxygen', 12)) + + event.recipes.gtceu.centrifuge('gneiss_dust_separation') + .EUt(GTValues.VA[GTValues.MV]) + .duration(480) + .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('gneiss'), 1)) + .itemOutputs(ChemicalHelper.get(TagPrefix.dustSmall, GTMaterials.SiliconDioxide, 1)) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Quartzite, 1), 6500, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Biotite, 1), 3500, 500) + .outputFluids(Fluid.of('gtceu:oxygen', 5)) + + event.recipes.gtceu.centrifuge('dripstone_dust_separation') + .EUt(GTValues.VA[GTValues.MV]) + .duration(480) + .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('dripstone'), 1)) + .itemOutputs(ChemicalHelper.get(TagPrefix.dustSmall, GTMaterials.SiliconDioxide, 1)) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.CalciumCarbonate, 1), 8500, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.CalciumHydroxide, 1), 1500, 500) + .outputFluids(Fluid.of('gtceu:oxygen', 12)) + + // Ad astra + + event.recipes.gtceu.centrifuge('moon_stone_dust_separation') + .EUt(GTValues.VA[GTValues.MV]) + .duration(480) + .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('moon_stone'), 1)) + .chancedOutput('ae2:sky_dust', 5000, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Ilmenite, 1), 4500, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Magnetite, 1), 2500, 500) + .outputFluids(Fluid.of('gtceu:helium_3', 50)) + + event.recipes.gtceu.centrifuge('moon_deepslate_dust_separation') + .EUt(GTValues.VA[GTValues.MV]) + .duration(480) + .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('moon_deepslate'), 1)) + .chancedOutput('ae2:sky_dust', 5000, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Calcium, 1), 5500, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Olivine, 1), 3500, 500) + .outputFluids(Fluid.of('gtceu:helium_3', 50)) + + event.recipes.gtceu.centrifuge('glacio_stone_dust_separation') + .EUt(GTValues.VA[GTValues.MV]) + .duration(480) + .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('glacio_stone'), 1)) + .chancedOutput('ae2:sky_dust', 3000, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Sodium, 1), 7500, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.Potassium, 1), 7500, 500) + .outputFluids(Fluid.of('gtceu:oxygen', 15), Fluid.of('gtceu:helium_3', 70)) + + // AE2 + + event.recipes.gtceu.centrifuge('sky_dust_separation') + .EUt(GTValues.VA[GTValues.LV]) + .duration(100) + .itemInputs('ae2:sky_dust') + .itemOutputs(ChemicalHelper.get(TagPrefix.dustSmall, GTMaterials.SiliconDioxide, 1)) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustTiny, GTMaterials.CertusQuartz, 1), 4500, 500) + + // Create + + event.recipes.gtceu.centrifuge('asurine_dust_separation') + .EUt(GTValues.VA[GTValues.LV]) + .duration(100) + .itemInputs(ChemicalHelper.get(TagPrefix.dust, TFGHelpers.getMaterial('asurine'), 1)) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustSmall, GTMaterials.CertusQuartz, 1), 4500, 500) + .chancedOutput(ChemicalHelper.get(TagPrefix.dustSmall, GTMaterials.Zinc, 1), 3500, 500) + + // Misc dust + + event.recipes.gtceu.centrifuge('gtceu:quartz_sand_separation') + .EUt(30) + .duration(60) + .itemInputs('2x gtceu:quartz_sand_dust') + .itemOutputs('gtceu:quartzite_dust') + .chancedOutput('#forge:dust/nether_quartz', 2000, 200) +} \ No newline at end of file