Adding Nuclear Fission (#1926)

* Fix Chute Assembler recipe

* Fix quest tips beekeper

* Fix for wine and jar alloy smelter conflicting recipe

* fix to fit #1141

* mistakes were made

* Fix jetpack 1 quest mv

* Mistake again

* Revert the fix on chute

* Adding compatibility for nuclear Vazde mod

* Add textures to fission rods

* Updating fission with Vazde mod

* more fixes and add new rotor bismuth

* More changes

* switch recipes for fission reactor

* More fixes for nuclear mod

* more fixes

* Disable tbu

* Nerf Heavy Water cost

* Fix alloy
This commit is contained in:
TomPlop 2025-09-29 12:26:32 -04:00 committed by GitHub
parent c96c02af23
commit 3d3795f828
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
18 changed files with 276 additions and 97 deletions

View file

@ -0,0 +1,3 @@
#Whether to add the default recipes. false is recommended for modpacks.
addDefaultRecipes = false

View file

@ -0,0 +1,6 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tfg:item/fuel_rod_empty"
}
}

View file

@ -0,0 +1,6 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tfg:item/fuel_rod_p_1"
}
}

View file

@ -0,0 +1,6 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tfg:item/fuel_rod_t_1"
}
}

View file

@ -0,0 +1,6 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tfg:item/fuel_rod_tbu_1"
}
}

View file

@ -0,0 +1,6 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "tfg:item/fuel_rod_u_1"
}
}

View file

@ -167,6 +167,15 @@ const registerTooltips = (event) => {
}) })
}) })
//#region Nuclear Fission Tooltips
event.addAdvanced(['minecraft:blue_ice'], (item, advanced, text) => {
text.add(1, Text.translate("tfg.tooltip.component.blue_ice"))
})
event.addAdvanced(['ad_astra:glacian_fur'], (item, advanced, text) => {
text.add(1, Text.translate("tfg.tooltip.component.glacian_fur"))
})
//#region Deprecated Items //#region Deprecated Items
event.addAdvanced(['vintageimprovements:lathe'], (item, advanced, text) => { event.addAdvanced(['vintageimprovements:lathe'], (item, advanced, text) => {
text.add(1, Text.translate('tfg.tooltip.obsolete.depreciated')) text.add(1, Text.translate('tfg.tooltip.obsolete.depreciated'))

View file

@ -1568,4 +1568,14 @@ const registerGTCEURecipes = (event) => {
.EUt(GTValues.VA[GTValues.EV]) .EUt(GTValues.VA[GTValues.EV])
//# New Alloys For Turbines
event.recipes.gtceu.mixer('tfg:tungsten_bismuth_oxide_composite')
.itemInputs('2x #forge:dusts/bismuth', 'gtceu:tungsten_dust')
.inputFluids(Fluid.of('gtceu:oxygen', 3000))
.itemOutputs('3x tfg:tungsten_bismuth_oxide_composite_dust')
.duration(20 * 12)
.EUt(GTValues.VA[GTValues.EV])
} }

View file

@ -1232,7 +1232,7 @@ function registerGTCEuMachineRecipes(event) {
//#region Nuclear Controler //#region Nuclear Controler
event.shaped('gtceu:fission_reactor', [ event.shaped('deafission:fission_reactor_mk1', [
'TUT', 'TUT',
'WZW', 'WZW',
'TUT' 'TUT'
@ -1242,7 +1242,7 @@ function registerGTCEuMachineRecipes(event) {
U: 'gtceu:hv_field_generator', U: 'gtceu:hv_field_generator',
Z: 'gtceu:ev_machine_hull' Z: 'gtceu:ev_machine_hull'
} }
).id('tfg:shaped/fission_reactor') ).id('tfg:shaped/fission_reactor_mk1')
event.shaped('gtceu:nuclear_fuel_factory', [ event.shaped('gtceu:nuclear_fuel_factory', [
'TUT', 'TUT',

View file

@ -176,6 +176,9 @@ function registerTFGItemSize(event) {
event.itemSize("gtceu:large_duct_pipe", "normal", "light", "large_duct_pipe"); event.itemSize("gtceu:large_duct_pipe", "normal", "light", "large_duct_pipe");
event.itemSize("gtceu:huge_duct_pipe", "normal", "medium", "huge_duct_pipe"); event.itemSize("gtceu:huge_duct_pipe", "normal", "medium", "huge_duct_pipe");
// Nuclear Rod
event.itemSize(Ingredient.of("#tfg:fission_rods"), "very_large", "heavy");
// Cables // Cables
event.itemSize(Ingredient.of("#forge:single_cables").or("#forge:single_wires"), "tiny", "very_light", "cables_1x"); event.itemSize(Ingredient.of("#forge:single_cables").or("#forge:single_wires"), "tiny", "very_light", "cables_1x");
event.itemSize( event.itemSize(

View file

@ -4,32 +4,38 @@ function registerTFGNuclearRecipes(event) {
//#region Nuclear Pellet //#region Nuclear Pellet
event.recipes.gtceu.nuclear_fuel_factory('gtceu:thorium_pellet') event.recipes.gtceu.nuclear_fuel_factory('tfg:thorium_pellet')
.itemInputs('1x #forge:nuggets/thorium_230', '1x #forge:ingots/thorium_232') .itemInputs('10x #forge:ingots/thorium_230', '90x #forge:ingots/thorium_232', 'tfg:empty_rod')
.itemOutputs('#forge:ingots/thorium_pellet') .itemOutputs('tfg:thorium_rod')
.duration(20*10) .duration(20*100)
.EUt(GTValues.V[GTValues.HV]) .EUt(GTValues.V[GTValues.HV])
event.recipes.gtceu.nuclear_fuel_factory('gtceu:uranium_pellet') event.recipes.gtceu.nuclear_fuel_factory('tfg:uranium_pellet')
.inputFluids(Fluid.of('gtceu:uranium_waste', 1000)) .inputFluids(Fluid.of('gtceu:uranium_waste', 10000))
.itemInputs('#forge:nuggets/uranium_235', '1x #forge:ingots/uranium') .itemInputs('10x #forge:ingots/uranium_235', '90x #forge:ingots/uranium', 'tfg:empty_rod')
.itemOutputs('#forge:ingots/uranium_pellet') .itemOutputs('tfg:uranium_rod')
.duration(20*30) .duration(20*300)
.EUt(GTValues.V[GTValues.HV]) .EUt(GTValues.V[GTValues.HV])
event.recipes.gtceu.nuclear_fuel_factory('gtceu:plutonium_pellet') event.recipes.gtceu.nuclear_fuel_factory('tfg:plutonium_pellet')
.itemInputs('1x #forge:ingots/plutonium') .itemInputs('90x #forge:ingots/plutonium', 'tfg:empty_rod')
.inputFluids(Fluid.of('gtceu:radon', 10)) .inputFluids(Fluid.of('gtceu:radon', 100))
.itemOutputs('#forge:ingots/plutonium_pellet') .itemOutputs('tfg:plutonium_rod')
.duration(20*30) .duration(20*300)
.EUt(GTValues.V[GTValues.EV]) .EUt(GTValues.V[GTValues.EV])
/* REMOVE FOR VENUS COMMENTED OUT
event.recipes.gtceu.nuclear_fuel_factory('gtceu:tbu-232_pellet') event.recipes.gtceu.nuclear_fuel_factory('tfg:tbu_232_rod')
.inputFluids(Fluid.of('gtceu:nuclear_waste', 32000)) .inputFluids(Fluid.of('gtceu:nuclear_waste', 32000))
.itemInputs('#forge:ingots/thorium_232') .itemInputs('#forge:ingots/thorium_232', 'tfg:empty_rod')
.itemOutputs('#forge:ingots/tbu-232_pellet') .itemOutputs('tfg:tbu-232_rod')
.duration(20*30) .duration(20*300)
.EUt(GTValues.V[GTValues.EV]) .EUt(GTValues.V[GTValues.IV])
*/
event.recipes.gtceu.lathe('tfg:empty_rod')
.itemInputs('gtceu:cobalt_large_restrictive_item_pipe', 'tfg:empty_rod')
.itemOutputs('tfg:empty_rod')
.duration(20*15)
.EUt(GTValues.VA[GTValues.HV])
//#endregion //#endregion
@ -52,7 +58,7 @@ function registerTFGNuclearRecipes(event) {
.outputFluids(Fluid.of('tfg:heavy_water', 500)) .outputFluids(Fluid.of('tfg:heavy_water', 500))
.itemOutputs('#forge:dusts/ammonium_chloride', '2x #forge:small_dusts/ammonium_chloride') .itemOutputs('#forge:dusts/ammonium_chloride', '2x #forge:small_dusts/ammonium_chloride')
.duration(20*9) .duration(20*9)
.EUt(GTValues.VA[GTValues.LV]) .EUt(GTValues.VHA[GTValues.LV])
event.recipes.gtceu.centrifuge('mars_semiheavy_water') event.recipes.gtceu.centrifuge('mars_semiheavy_water')
.inputFluids(Fluid.of('tfg:semiheavy_ammoniacal_water', 1000)) .inputFluids(Fluid.of('tfg:semiheavy_ammoniacal_water', 1000))
@ -126,29 +132,33 @@ function registerTFGNuclearRecipes(event) {
//#region Heat Exchanger //#region Heat Exchanger
event.recipes.gtceu.heat_exchanger('uranium_steam') event.recipes.gtceu.heat_exchanger('uranium_steam')
.inputFluids(Fluid.of('minecraft:water', 100)) .perTick(true)
.inputFluids(Fluid.of('gtceu:radioactive_steam', 100)) .inputFluids(Fluid.of('minecraft:water', 10))
.inputFluids(Fluid.of('gtceu:ammonium_formate', 100)) .inputFluids(Fluid.of('gtceu:radioactive_steam', 10))
.outputFluids(Fluid.of('gtceu:dense_steam', 100)) .inputFluids(Fluid.of('gtceu:ammonium_formate', 10))
.outputFluids(Fluid.of('gtceu:formamide', 100)) .outputFluids(Fluid.of('gtceu:dense_steam', 10))
.outputFluids(Fluid.of('gtceu:formamide', 10))
.perTick(false)
.duration(20*10) .duration(20*10)
.EUt(1) .EUt(1)
event.recipes.gtceu.heat_exchanger('plutonium_steam') event.recipes.gtceu.heat_exchanger('plutonium_steam')
.inputFluids(Fluid.of('minecraft:water', 100)) .perTick(true)
.inputFluids(Fluid.of('gtceu:irradiated_steam', 100)) .inputFluids(Fluid.of('minecraft:water', 10))
.outputFluids(Fluid.of('gtceu:dense_steam', 100)) .inputFluids(Fluid.of('gtceu:irradiated_steam', 10))
.outputFluids(Fluid.of('gtceu:dense_steam', 10))
.perTick(false)
.duration(20*10) .duration(20*10)
.EUt(1) .EUt(1)
// Heat Exchanger for Energy // Heat Exchanger for Energy
event.recipes.gtceu.heat_exchanger('flibe_cooling') event.recipes.gtceu.heat_exchanger('flibe_cooling')
.inputFluids(Fluid.of('gtceu:hot_flibe', 100)) .inputFluids(Fluid.of('gtceu:hot_flibe', 10))
.inputFluids(Fluid.of('gtceu:distilled_water', 100)) .inputFluids(Fluid.of('gtceu:distilled_water', 10))
.chancedFluidInput(Fluid.of('gtceu:hastelloy_c_276', 100), 5000, 0) .chancedFluidInput(Fluid.of('gtceu:hastelloy_c_276', 10), 5000, 0)
.chancedFluidOutput(Fluid.of('gtceu:flibe', 100), 9500, 0) .chancedFluidOutput(Fluid.of('gtceu:flibe', 10), 9500, 0)
.outputFluids(Fluid.of('gtceu:dense_steam', 100)) .outputFluids(Fluid.of('gtceu:dense_steam', 10))
.duration(20*10) .duration(20*10)
.EUt(1) .EUt(1)
@ -156,60 +166,113 @@ function registerTFGNuclearRecipes(event) {
//#region Fission Reactor //#region Fission Reactor
// Recipe for Thorium Reactor // Recipe for Thorium Reactor Just keeping it in case we got mod issues
event.recipes.gtceu.fission_reactor('thorium_uranium_waste') /* event.recipes.gtceu.fission_reactor('thorium_uranium_waste')
.itemInputs('#forge:bolts/thorium_pellet') .itemInputs('#forge:bolts/thorium_rod')
.inputFluids(Fluid.of('minecraft:water', 100)) .inputFluids(Fluid.of('minecraft:water', 100))
.outputFluids(Fluid.of('gtceu:dense_steam', 100)) .outputFluids(Fluid.of('gtceu:dense_steam', 100))
.outputFluids(Fluid.of('gtceu:uranium_waste', 20)) .outputFluids(Fluid.of('gtceu:uranium_waste', 20))
.duration(20*50) .duration(20*50)
.EUt(32) .EUt(32)*/
// Recipe for energy only reactor event.recipes.deafission.fission_reactor_fuel('tfg:thorium')
event.recipes.gtceu.fission_reactor('thorium_nuclear_waste') .itemInputs(Item.of('tfg:thorium_rod'))
.outputFluids(Fluid.of('gtceu:uranium_waste', 2500))
.itemOutputs(Item.of('tfg:empty_rod'))
.hideDuration(true);
event.recipes.deafission.fission_reactor_coolant('tfg:thorium_coolant')
.notConsumable(Item.of('tfg:thorium_rod'))
.perTick(true)
.inputFluids(Fluid.of('minecraft:water', 400))
.outputFluids(Fluid.of('gtceu:dense_steam', 2))
.perTick(false)
.duration(1);
// Recipe for energy only reactor Just keeping it in case we got mod issues
/* event.recipes.gtceu.fission_reactor('thorium_nuclear_waste')
.itemInputs('#forge:bolts/thorium_pellet') .itemInputs('#forge:bolts/thorium_pellet')
.inputFluids(Fluid.of('gtceu:distilled_water', 200)) .inputFluids(Fluid.of('gtceu:distilled_water', 200))
.outputFluids(Fluid.of('gtceu:dense_steam', 200)) .outputFluids(Fluid.of('gtceu:dense_steam', 200))
.outputFluids(Fluid.of('gtceu:nuclear_waste', 10)) .outputFluids(Fluid.of('gtceu:nuclear_waste', 10))
.duration(20*100) .duration(20*100)
.EUt(32) .EUt(32)*/
// Recipe for Uranium Reactor // Recipe for Uranium Reactor Just keeping it in case we got mod issues
event.recipes.gtceu.fission_reactor('uranium_radioactive') /* event.recipes.gtceu.fission_reactor('uranium_radioactive')
.itemInputs('#forge:bolts/uranium_pellet') .itemInputs('#forge:bolts/uranium_rod')
.inputFluids(Fluid.of('tfg:heavy_water', 750)) .inputFluids(Fluid.of('tfg:heavy_water', 75))
.outputFluids(Fluid.of('gtceu:radioactive_steam', 750)) .outputFluids(Fluid.of('gtceu:radioactive_steam', 75))
.outputFluids(Fluid.of('gtceu:radioactive_waste', 50)) .outputFluids(Fluid.of('gtceu:radioactive_waste', 50))
.duration(20*100) .duration(20*100)
.EUt(32) .EUt(32)*/
// Recipe for Plutonium Reactor event.recipes.deafission.fission_reactor_fuel('tfg:uranium')
event.recipes.gtceu.fission_reactor('plutonium_irradiated') .itemInputs(Item.of('tfg:uranium_rod'))
.itemInputs('#forge:bolts/plutonium_pellet') .outputFluids(Fluid.of('gtceu:radioactive_waste', 50000))
.itemOutputs(Item.of('tfg:empty_rod'))
.hideDuration(true);
event.recipes.deafission.fission_reactor_coolant('tfg:uranium_coolant')
.notConsumable(Item.of('tfg:uranium_rod'))
.perTick(true)
.inputFluids(Fluid.of('tfg:heavy_water', 25))
.outputFluids(Fluid.of('gtceu:radioactive_steam', 10))
.perTick(false)
.duration(1);
// Recipe for Plutonium Reactor Just keeping it in case we got mod issues
/* event.recipes.gtceu.fission_reactor('plutonium_irradiated')
.itemInputs('#forge:bolts/plutonium_rod')
.inputFluids(Fluid.of('tfg:heavy_water', 2000)) .inputFluids(Fluid.of('tfg:heavy_water', 2000))
.outputFluids(Fluid.of('gtceu:irradiated_steam', 2000)) .outputFluids(Fluid.of('gtceu:irradiated_steam', 2000))
.outputFluids(Fluid.of('gtceu:tritiated_water', 50)) .outputFluids(Fluid.of('gtceu:tritiated_water', 50))
.duration(20*100) .duration(20*100)
.EUt(32) .EUt(32)*/
// Fission Reactor for Energy event.recipes.deafission.fission_reactor_fuel('tfg:plutonium')
.itemInputs(Item.of('tfg:plutonium_rod'))
.outputFluids(Fluid.of('gtceu:tritiated_water', 5000))
.itemOutputs(Item.of('tfg:empty_rod'))
.hideDuration(true);
event.recipes.deafission.fission_reactor_coolant('tfg:plutonium_coolant')
.notConsumable(Item.of('tfg:plutonium_rod'))
.perTick(true)
.inputFluids(Fluid.of('tfg:heavy_water', 50))
.outputFluids(Fluid.of('gtceu:irradiated_steam', 10))
.perTick(false)
.duration(1);
// Fission Reactor for Energy Just keeping it in case we got mod issues
/*
event.recipes.gtceu.fission_reactor('tbu_reactor') event.recipes.gtceu.fission_reactor('tbu_reactor')
.itemInputs('#forge:bolts/tbu-232_pellet') .itemInputs('tfg:tbu_232_rod')
.inputFluids(Fluid.of('gtceu:flibe', 1000)) .inputFluids(Fluid.of('gtceu:flibe', 1000))
.outputFluids(Fluid.of('gtceu:hot_flibe', 1000)) .outputFluids(Fluid.of('gtceu:hot_flibe', 1000))
.outputFluids(Fluid.of('gtceu:nuclear_waste', 500)) .outputFluids(Fluid.of('gtceu:nuclear_waste', 500))
.duration(20*100) .duration(20*100)
.EUt(32) .EUt(32)
*/
//#endregion
//#region Fission Recipes for cooling
event.recipes.deafission.fission_reactor_processing('tfg:dry_ice')
.itemInputs('tfg:dry_ice')
.itemOutputs('minecraft:coal')
.blastFurnaceTemp(100)
.duration(20)
.EUt(1)
//#endregion //#endregion
//#region Power Generation //#region Power Generation
event.recipes.gtceu.gas_turbine('dense_steam') event.recipes.gtceu.nuclear_turbine('dense_steam')
.inputFluids(Fluid.of('gtceu:dense_steam', 1)) .inputFluids(Fluid.of('gtceu:dense_steam', 1))
.EUt(-(32)) .EUt(-(32))
.duration(20*2) .duration(20*1.5)
//#endregion //#endregion

View file

@ -149,7 +149,6 @@ function registerTFGSpaceOres(event) {
.dimension('ad_astra:mars') .dimension('ad_astra:mars')
.itemOutputsRanged('gtceu:ostrum_dust', 1, 5) .itemOutputsRanged('gtceu:ostrum_dust', 1, 5)
.duration(20 * 30) .duration(20 * 30)
.duration(20 * 30)
.EUt(GTValues.VA[GTValues.LV]); .EUt(GTValues.VA[GTValues.LV]);

View file

@ -52,6 +52,12 @@ const registerTFGItemTags = (event) => {
event.add('tfg:components/uv_leds', 'tfg:uv_led') event.add('tfg:components/uv_leds', 'tfg:uv_led')
event.add('tfg:components/uv_leds', 'tfg:smd_uv_led') event.add('tfg:components/uv_leds', 'tfg:smd_uv_led')
//Fission Nucleat Fuel
event.add('deafission:fuels', 'tfg:thorium_rod')
event.add('deafission:fuels', 'tfg:uranium_rod')
event.add('deafission:fuels', 'tfg:plutonium_rod')
event.add('tfg:fission_rods', '#deafission:fuels')
//#region Tools & Armor //#region Tools & Armor
event.add('forge:tools/fishing_nets', 'tfg:fishing_net/wood') event.add('forge:tools/fishing_nets', 'tfg:fishing_net/wood')
event.add('forge:tools/fishing_nets', 'tfg:fishing_net/brass') event.add('forge:tools/fishing_nets', 'tfg:fishing_net/brass')
@ -947,6 +953,23 @@ const registerTFGBlockTags = (event) => {
event.add('buildinggadgets2:deny', 'tfg:geyser_source_small') event.add('buildinggadgets2:deny', 'tfg:geyser_source_small')
event.add('ae2:blacklisted/spatial', 'tfg:geyser_source_small') event.add('ae2:blacklisted/spatial', 'tfg:geyser_source_small')
//#region Fision Components
var COMPONENTS = 'deafission:components';
// Max Heating
event.add(COMPONENTS, 'ad_astra:glacian_fur'); // Max Heat 2
event.add(COMPONENTS, 'minecraft:blue_ice'); // Max Heat 0.5
event.add(COMPONENTS, 'minecraft:bedrock'); // Max Heat 10000 CREATIVE BLOCK
// Increase Throttle
event.add(COMPONENTS, 'minecraft:iron_block');
// Increase Effiency
event.add(COMPONENTS, 'minecraft:packed_ice');
//#endregion
// #region Nether blocks // #region Nether blocks
event.add('minecraft:nether_carver_replaceables', 'tfg:rock/hardened_deepslate') event.add('minecraft:nether_carver_replaceables', 'tfg:rock/hardened_deepslate')
event.add('minecraft:moss_replaceable', 'tfg:rock/hardened_deepslate') event.add('minecraft:moss_replaceable', 'tfg:rock/hardened_deepslate')

View file

@ -332,8 +332,8 @@ const registerGTCEuMachines = (event) => {
"gtceu:block/casings/gcym/high_temperature_smelting_casing", "gtceu:block/casings/gcym/high_temperature_smelting_casing",
"gtceu:block/machines/fluid_heater") "gtceu:block/machines/fluid_heater")
// Nuclear Fission Reactor // Nuclear Fission Reactor - Just keeping it in case we got mod issues
/*
event.create('fission_reactor', 'multiblock') event.create('fission_reactor', 'multiblock')
.rotationState(RotationState.NON_Y_AXIS) .rotationState(RotationState.NON_Y_AXIS)
.recipeType('fission_reactor') .recipeType('fission_reactor')
@ -365,7 +365,7 @@ const registerGTCEuMachines = (event) => {
.workableCasingModel( .workableCasingModel(
"gtceu:block/casings/gcym/atomic_casing", "gtceu:block/casings/gcym/atomic_casing",
"gtceu:block/machines/electromagnetic_separator") "gtceu:block/machines/electromagnetic_separator")
*/
//#endregion //#endregion
//#region Ore Line //#region Ore Line

View file

@ -31,7 +31,7 @@ const registerGTCEuRecipeTypes = (event) => {
event.create('nuclear_fuel_factory') event.create('nuclear_fuel_factory')
.category('nuclear_fuel_factory') .category('nuclear_fuel_factory')
.setEUIO('in') .setEUIO('in')
.setMaxIOSize(2, 1, 1, 0) .setMaxIOSize(3, 1, 1, 0)
.setSlotOverlay(false, false, GuiTextures.ATOMIC_OVERLAY_1) .setSlotOverlay(false, false, GuiTextures.ATOMIC_OVERLAY_1)
.setProgressBar(GuiTextures.ATOMIC_OVERLAY_1, FillDirection.DOWN_TO_UP) .setProgressBar(GuiTextures.ATOMIC_OVERLAY_1, FillDirection.DOWN_TO_UP)
.setSound(GTSoundEntries.MINER) .setSound(GTSoundEntries.MINER)
@ -43,7 +43,7 @@ const registerGTCEuRecipeTypes = (event) => {
.setSlotOverlay(false, false, GuiTextures.ATOMIC_OVERLAY_1) .setSlotOverlay(false, false, GuiTextures.ATOMIC_OVERLAY_1)
.setProgressBar(GuiTextures.ATOMIC_OVERLAY_1, FillDirection.DOWN_TO_UP) .setProgressBar(GuiTextures.ATOMIC_OVERLAY_1, FillDirection.DOWN_TO_UP)
.setSound(GTSoundEntries.MINER) .setSound(GTSoundEntries.MINER)
/* Just keeping it in case we got mod issues
event.create('fission_reactor') event.create('fission_reactor')
.category('fission_reactor') .category('fission_reactor')
.setEUIO('in') .setEUIO('in')
@ -51,7 +51,7 @@ const registerGTCEuRecipeTypes = (event) => {
.setSlotOverlay(false, false, GuiTextures.ATOMIC_OVERLAY_1) .setSlotOverlay(false, false, GuiTextures.ATOMIC_OVERLAY_1)
.setProgressBar(GuiTextures.ATOMIC_OVERLAY_1, FillDirection.DOWN_TO_UP) .setProgressBar(GuiTextures.ATOMIC_OVERLAY_1, FillDirection.DOWN_TO_UP)
.setSound(GTSoundEntries.MINER) .setSound(GTSoundEntries.MINER)
*/
event.create('ostrum_harvester') event.create('ostrum_harvester')
.category('ostrum_harvester') .category('ostrum_harvester')
.setEUIO('in') .setEUIO('in')

View file

@ -474,4 +474,12 @@ const registerTFGItems = (event) => {
.translationKey('item.tfg.lab_equipment.dirty_lab_equipment') .translationKey('item.tfg.lab_equipment.dirty_lab_equipment')
.tooltip(Text.translatable('tfg.tooltip.lab_equipment.set_dirty')) .tooltip(Text.translatable('tfg.tooltip.lab_equipment.set_dirty'))
//#endregion //#endregion
// Empty Fission Rod
event.create('tfg:empty_rod')
.translationKey('item.tfg.empty_road')
.texture('tfg:item/fuel_rod_empty')
.tag('tfg:fission_rods')
} }

View file

@ -440,4 +440,23 @@ const registerTFGMaterials = (event) => {
.components('80x carbon_dioxide', '7x nitrogen', '5x argon', '3x oxygen', '1x neon', '1x krypton', '1x xenon') .components('80x carbon_dioxide', '7x nitrogen', '5x argon', '3x oxygen', '1x neon', '1x krypton', '1x xenon')
// #endregion // #endregion
//#region New Alloy for Turbines
event.create('tfg:tungsten_bismuth_oxide_composite')
.components('1x tungsten', '2x bismuth', '3x oxygen')
.color(0xf7cb48)
.secondaryColor(0xfffef0)
.iconSet(GTMaterialIconSet.getByName('tfc_cassiterite'))
.ingot()
.blastTemp(3700, 'mid', GTValues.VA[GTValues.IV], (20*120))
.rotorStats(205, 90, 2 ,620)
.flags(
GTMaterialFlags.DISABLE_DECOMPOSITION,
GTMaterialFlags.GENERATE_PLATE,
GTMaterialFlags.GENERATE_ROD,
GTMaterialFlags.GENERATE_BOLT_SCREW,
GTMaterialFlags.EXCLUDE_BLOCK_CRAFTING_BY_HAND_RECIPES,
)
} }

View file

@ -210,38 +210,50 @@ const registerTFGNuclearMaterials = (event) => {
//#region Fuel Pellet //#region Fuel Pellet
event.create('uranium_pellet') /*
.ingot() Adding the Fuel Rod, the textures are applied through a model.json
.element(GTElements.U) Durability
.iconSet(GTMaterialIconSet.METALLIC) Number of rod unused for now
.color(0x216614) %Heat
.radioactiveHazard(1000000) In ReactorCurve getHeating returns fuelHeat * 200.0d * throttle and getCooling returns _state.Heat() * (coolantConversion + 0.01).
.flags(GTMaterialFlags.GENERATE_BOLT_SCREW, GTMaterialFlags.EXCLUDE_BLOCK_CRAFTING_RECIPES, GTMaterialFlags.NO_SMELTING) Where coolantConversion is 1.00 if enough coolant is present. Solving that equation for a steady-state: heating + cooling = 0.
When throttle=coolantConversion=1:heat = fuelHeat * 200.0d / 1.01
event.create('thorium_pellet') So one 100% cell is 198.0198 heat it should reach. Simulation accuracy might of course throw that off by a small margin.
.ingot() So purely passively it reaches 20000.0 heat.
.element(GTElements.Th) */
.iconSet(GTMaterialIconSet.METALLIC)
.color(0x631e5a)
.radioactiveHazard(100000)
.flags(GTMaterialFlags.GENERATE_BOLT_SCREW, GTMaterialFlags.EXCLUDE_BLOCK_CRAFTING_RECIPES, GTMaterialFlags.NO_SMELTING)
event.create('plutonium_pellet')
.ingot()
.element(GTElements.Pu)
.iconSet(GTMaterialIconSet.METALLIC)
.color(0xc91414)
.radioactiveHazard(10000000)
.flags(GTMaterialFlags.GENERATE_BOLT_SCREW, GTMaterialFlags.EXCLUDE_BLOCK_CRAFTING_RECIPES, GTMaterialFlags.NO_SMELTING)
event.create('tbu-232_pellet')
.ingot()
.iconSet(GTMaterialIconSet.RADIOACTIVE)
.color(0xaa55ba)
.secondaryColor(0xECECEC)
.radioactiveHazard(10000000)
.flags(GTMaterialFlags.GENERATE_BOLT_SCREW, GTMaterialFlags.EXCLUDE_BLOCK_CRAFTING_RECIPES, GTMaterialFlags.NO_SMELTING)
//#endregion
} }
const $FuelCellItem = Java.loadClass("fi.dea.mc.deafission.common.data.items.FuelCellItem");
StartupEvents.registry("item", (event) => {
event.createCustom("tfg:thorium_rod", () => {
return new $FuelCellItem(
5000,
1,
0.7 // Max Heat 139 - 1 Fuel
);
})
event.createCustom("tfg:uranium_rod", () => {
return new $FuelCellItem(
20000,
1,
2.2 // Max Heat 435 - 1 Fuel
);
})
event.createCustom("tfg:plutonium_rod", () => {
return new $FuelCellItem(
30000,
1,
3.0 // Max Heat 595 - 1 Fuel
);
})
event.createCustom("tfg:tbu_232_rod", () => {
return new $FuelCellItem(
20000,
1,
2.0
);
})
});