diff --git a/.gitignore b/.gitignore index ec0e049dd..2327396b5 100644 --- a/.gitignore +++ b/.gitignore @@ -76,14 +76,8 @@ config/defaultworldtype/world-presets.txt /config/lostcities/profiles/* !/config/lostcities/profiles/monidefault.json -# NCN -!/config/NuclearCraft -/config/NuclearCraft/* -!/config/NuclearCraft/fission_fuel -!/config/NuclearCraft/heat_sinks -!/config/NuclearCraft/common.toml -!/config/NuclearCraft/fission.toml -!/config/NuclearCraft/materials.toml +# Phoenix Fission +!/config/phoenix_fission.yaml # SolarFlux !/config/solarflux diff --git a/KNOWN-ISSUES.md b/KNOWN-ISSUES.md index 273ac226c..e56a3762e 100644 --- a/KNOWN-ISSUES.md +++ b/KNOWN-ISSUES.md @@ -55,10 +55,6 @@ The most frequent offenders are listed below: GTM is being actively developed. You may run into bugs, but these are addressed relatively quickly. Please ensure you aren't creating a duplicate report before notifying the devs of an issue or submitting a bug report to the Github page above. -**Issues with [Nuclearcraft: Neoteric](https://github.com/igentuman/NuclearCraft-Neoteric)** - -Nuclearcraft: Neoteric is not in a great state. Many features (including some aspects of fission reactors!) are incomplete or buggy - **Issues with [LaserIO](https://github.com/Direwolf20-MC/LaserIO/issues)** Occasionally, there can be the occasional issue or feature request you may have. Send these to LaserIO directly. diff --git a/config/NuclearCraft/common.toml b/config/NuclearCraft/common.toml deleted file mode 100644 index 1a279dbf3..000000000 --- a/config/NuclearCraft/common.toml +++ /dev/null @@ -1,75 +0,0 @@ - -[Energy] - #Multiplier for all power generation in the mod - #Range: 0.001 ~ 1000.0 - generation_multiplier = 1.0 - #Allow solar panel registration: du, elite, advanced, basic - register_panel = [true, true, true, true] - #Solar panel power generation: du, elite, advanced, basic - panel_power = [448, 1792, 112, 28] - #Allow rtg registration: uranium_rtg, americium_rtg, plutonium_rtg, californium_rtg - register_rtg = [true, true, true, true] - #rtg generation: uranium_rtg, americium_rtg, plutonium_rtg, californium_rtg - rtg_power = [100, 400, 1200, 4000] - #rtg radiation: uranium_rtg, americium_rtg, plutonium_rtg, californium_rtg - rtg_radiation = [560, 57800, 200000, 1900000] - #Steam turbine (one block) base power gen - steam_turbine_power_gen = 80 - #Decay Generator base power gen - decay_generator_power_gen = 128 - -[energy_storage] - ligtning_rod_charge = 1048576 - #Allow block registration: basic_voltaic_pile, elite_voltaic_pile, advanced_voltaic_pile, basic_lithium_ion_battery, elite_lithium_ion_battery, du_lithium_ion_battery, du_voltaic_pile, advanced_lithium_ion_battery - energy_block_registration = [true, true, true, true, true, true, true, true] - #Storage: basic_voltaic_pile, elite_voltaic_pile, advanced_voltaic_pile, basic_lithium_ion_battery, elite_lithium_ion_battery, du_lithium_ion_battery, du_voltaic_pile, advanced_lithium_ion_battery - energy_block_storage = [1600000, 102400000, 6400000, 32000000, 2048000000, 512000000, 25600000, 128000000] - lithium_ion_battery_storage = 1048576 - qnp_energy_storage = 2097152 - qnp_energy_per_block = 200 - -[Misc] - #Debug logging. Enable in case of issues to collect more data - debug_logging = false - -["GregTech Energy Compatibility"] - #Tiers: ULV, LV, MV, HV, EV, IV, LuV, ZPM, UV, UHV, UEV, UIV, UXV, OpV, MAX - #ONLY_FE - Only FE energy system is used - #ONLY_GTCEU - Only GregTech Energy system is used - #GTCEU_AND_FE - Both systems are used, but GTCEU is preferred - #Allowed Values: ONLY_FE, ONLY_GTCEU, GTCEU_AND_FE - gregtech_energy_compatibility = "GTCEU_AND_FE" - #This only counts if GTCEU is supported - fission_reactor_energy_tier = "EV" - #This only counts if GTCEU is supported - #Explode machines when input energy is more than max input - #This doesn't count FE energy input - gregtech_energy_overcharge_explosions = true - #This only counts if GTCEU_AND_FE compatibility used - #Output FE/t will be limited to max GTCEU output - #Formula: FE/t = voltage * amperage * (EU to FE convertion rate, usually 4) - limit_fe_output = false - #This only counts if GTCEU is supported - turbine_energy_tier = "EV" - #This only counts if GTCEU is supported - fusion_reactor_energy_tier = "IV" - #This only counts if GTCEU is supported - kugelblitz_energy_tier = "LuV" - #This only counts if GTCEU is supported - accelerators_energy_tier = "LuV" - #This only counts if GTCEU is supported - processor_energy_tier = "MV" - #This only counts if GTCEU is supported - #How many energy upgrades are needed for processor to reach next energy tier - #Range: 8 ~ 64 - energy_upgrades_for_next_tier = 16 - -[storage_blocks] - #Blocks to store items, fluids, etc... - #Allow container registration: advanced_barrel, basic_barrel, elite_barrel, du_barrel - container_block_registration = [true, true, true, true] - #Allow barrel registration: advanced_barrel, basic_barrel, elite_barrel, du_barrel - barrel_block_registration = [true, true, true, true] - #Barrel capacity in Buckets: advanced_barrel, basic_barrel, elite_barrel, du_barrel - barrel_capacity = [512, 128, 8192, 2048] - diff --git a/config/NuclearCraft/fission.toml b/config/NuclearCraft/fission.toml deleted file mode 100644 index 01934e5bb..000000000 --- a/config/NuclearCraft/fission.toml +++ /dev/null @@ -1,58 +0,0 @@ - -#Settings for reactor fuel -[reactor_fuel] - #Heat multiplier. Affects to all fuels. - #Range: 0.01 ~ 100.0 - fuel_heat_multiplier = 1.0 - #Heat multiplier affects on heat/cooling ratio multiplier. - heat_multiplier = 3.24444444 - #Depletion multiplier. Affects how long fuel lasts. - #Range: 0.0 ~ 1000.0 - depletion_multiplier = 1.0 - -#Settings for Fission Reactor -[fission_reactor] - #Reactor min size. - #Range: 3 ~ 24 - min_size = 3 - #Reactor max size. - #Range: 5 ~ 32 - max_size = 13 - #Explosion size if reactor overheats. 4 - TNT size. Set to 0 to disable explosion. - #Range: 0.0 ~ 20.0 - reactor_explosion_radius = 4.0 - #How much reactor may collect heat before meltdown. - #Range: 1000.0 ~ 1.0E8 - heat_capacity = 1000000.0 - #Affects how relation of reactor cooling and heating affects to FE generation. - #Range: 0.01 ~ 20.0 - heat_multiplier = 3.0 - #Limit for heat_multiplier max value. - #Range: 0.01 ~ 3.0 - heat_multiplier_cap = 3.0 - #Each attachment of moderator to fuel cell will increase fuel FE generation by given percent value. - #Range: 0.0 ~ 1000.0 - moderator_fe_multiplier = 16.67 - #Each attachment of moderator to fuel cell will increase fuel heat generation by given percent value. - #Range: 0.0 ~ 1000.0 - moderator_heat_multiplier = 33.34 - #Rate at which steam recipes produced. - #Range: 0.01 ~ 1000000.0 - boiling_mult = 100.0 - #Affects how much energy reactors produce. - #Range: 0.01 ~ 1000000.0 - fe_generation_multiplier = 5.0 - #If true, active coolers will be counted in placement rules for other heat sinks. - active_heatsink_prime = true - #How much coolant active heat sink will consume per tick. - #Range: 1 ~ 10000 - active_heatsink_coolant_per_tick = 10 - #If you don't need reactor boiling mode, just disable. - supports_boiling_mode = true - -#Settings for Molten Salt Fission Reactor (MSR) -[msr_reactor] - #Number of pebbles that can be stored per fuel cell. Determines the maximum pebble capacity. - #Range: 1 ~ 100 - pebbles_per_fuel_cell = 4 - diff --git a/config/NuclearCraft/fission_fuel/americium.json b/config/NuclearCraft/fission_fuel/americium.json deleted file mode 100644 index 9a6eabbc9..000000000 --- a/config/NuclearCraft/fission_fuel/americium.json +++ /dev/null @@ -1,22 +0,0 @@ -[ - { - "group": "americium", - "name": "hea-242", - "forge_energy": 107520, - "heat": 282, - "criticality": 32, - "depletion": 92, - "efficiency": 140, - "isotopes": [242, 243] - }, - { - "group": "americium", - "name": "lea-242", - "forge_energy": 26880, - "heat": 94, - "criticality": 65, - "depletion": 74, - "efficiency": 135, - "isotopes": [242, 243] - } -] diff --git a/config/NuclearCraft/fission_fuel/berkelium.json b/config/NuclearCraft/fission_fuel/berkelium.json deleted file mode 100644 index 5506f0f09..000000000 --- a/config/NuclearCraft/fission_fuel/berkelium.json +++ /dev/null @@ -1,22 +0,0 @@ -[ - { - "group": "berkelium", - "name": "heb-248", - "forge_energy": 61440, - "heat": 156, - "criticality": 32, - "depletion": 92, - "efficiency": 170, - "isotopes": [248, 247] - }, - { - "group": "berkelium", - "name": "leb-248", - "forge_energy": 15360, - "heat": 52, - "criticality": 73, - "depletion": 108, - "efficiency": 165, - "isotopes": [248, 247] - } -] diff --git a/config/NuclearCraft/fission_fuel/californium.json b/config/NuclearCraft/fission_fuel/californium.json deleted file mode 100644 index 9b99931b3..000000000 --- a/config/NuclearCraft/fission_fuel/californium.json +++ /dev/null @@ -1,42 +0,0 @@ -[ - { - "group": "californium", - "name": "hecf-249", - "forge_energy": 138240, - "heat": 348, - "criticality": 30, - "depletion": 53, - "efficiency": 180, - "isotopes": [249, 252] - }, - { - "group": "californium", - "name": "hecf-251", - "forge_energy": 144000, - "heat": 360, - "criticality": 35, - "depletion": 100, - "efficiency": 185, - "isotopes": [251, 252] - }, - { - "group": "californium", - "name": "lecf-249", - "forge_energy": 34560, - "heat": 116, - "criticality": 60, - "depletion": 53, - "efficiency": 175, - "isotopes": [249, 252] - }, - { - "group": "californium", - "name": "lecf-251", - "forge_energy": 36000, - "heat": 120, - "criticality": 71, - "depletion": 100, - "efficiency": 180, - "isotopes": [251, 252] - } -] diff --git a/config/NuclearCraft/fission_fuel/curium.json b/config/NuclearCraft/fission_fuel/curium.json deleted file mode 100644 index 32b4304c3..000000000 --- a/config/NuclearCraft/fission_fuel/curium.json +++ /dev/null @@ -1,62 +0,0 @@ -[ - { - "group": "curium", - "name": "hecm-243", - "forge_energy": 122880, - "heat": 336, - "criticality": 33, - "depletion": 75, - "efficiency": 150, - "isotopes": [243, 246] - }, - { - "group": "curium", - "name": "hecm-245", - "forge_energy": 82560, - "heat": 204, - "criticality": 37, - "depletion": 121, - "efficiency": 155, - "isotopes": [245, 246] - }, - { - "group": "curium", - "name": "hecm-247", - "forge_energy": 65280, - "heat": 162, - "criticality": 36, - "depletion": 108, - "efficiency": 160, - "isotopes": [247, 246] - }, - { - "group": "curium", - "name": "lecm-243", - "forge_energy": 30720, - "heat": 112, - "criticality": 66, - "depletion": 75, - "efficiency": 145, - "isotopes": [243, 246] - }, - { - "group": "curium", - "name": "lecm-245", - "forge_energy": 20640, - "heat": 68, - "criticality": 75, - "depletion": 121, - "efficiency": 150, - "isotopes": [245, 246] - }, - { - "group": "curium", - "name": "lecm-247", - "forge_energy": 16320, - "heat": 54, - "criticality": 72, - "depletion": 108, - "efficiency": 155, - "isotopes": [247, 246] - } -] diff --git a/config/NuclearCraft/fission_fuel/mixed.json b/config/NuclearCraft/fission_fuel/mixed.json deleted file mode 100644 index e9103b3c8..000000000 --- a/config/NuclearCraft/fission_fuel/mixed.json +++ /dev/null @@ -1,22 +0,0 @@ -[ - { - "group": "mixed", - "name": "mix-239", - "forge_energy": 12400, - "heat": 57.5, - "criticality": 94, - "depletion": 218, - "efficiency": 105, - "isotopes": [239, 238] - }, - { - "group": "mixed", - "name": "mix-241", - "forge_energy": 18720, - "heat": 97.5, - "criticality": 80, - "depletion": 151, - "efficiency": 115, - "isotopes": [241, 238] - } -] diff --git a/config/NuclearCraft/fission_fuel/neptunium.json b/config/NuclearCraft/fission_fuel/neptunium.json deleted file mode 100644 index 6c9328a10..000000000 --- a/config/NuclearCraft/fission_fuel/neptunium.json +++ /dev/null @@ -1,22 +0,0 @@ -[ - { - "group": "neptunium", - "name": "hen-236", - "forge_energy": 28800, - "heat": 108, - "criticality": 35, - "depletion": 99, - "efficiency": 115, - "isotopes": [236, 237] - }, - { - "group": "neptunium", - "name": "len-236", - "forge_energy": 7200, - "heat": 36, - "criticality": 70, - "depletion": 99, - "efficiency": 110, - "isotopes": [236, 237] - } -] diff --git a/config/NuclearCraft/fission_fuel/plutonium.json b/config/NuclearCraft/fission_fuel/plutonium.json deleted file mode 100644 index 7523643b8..000000000 --- a/config/NuclearCraft/fission_fuel/plutonium.json +++ /dev/null @@ -1,42 +0,0 @@ -[ - { - "group": "plutonium", - "name": "hep-239", - "forge_energy": 38400, - "heat": 120, - "criticality": 49, - "depletion": 229, - "efficiency": 145, - "isotopes": [239, 242] - }, - { - "group": "plutonium", - "name": "hep-241", - "forge_energy": 94080, - "heat": 210, - "criticality": 42, - "depletion": 158, - "efficiency": 130, - "isotopes": [241, 242] - }, - { - "group": "plutonium", - "name": "lep-239", - "forge_energy": 9600, - "heat": 40, - "criticality": 99, - "depletion": 229, - "efficiency": 150, - "isotopes": [239, 242] - }, - { - "group": "plutonium", - "name": "lep-241", - "forge_energy": 23520, - "heat": 70, - "criticality": 84, - "depletion": 158, - "efficiency": 125, - "isotopes": [241, 242] - } -] diff --git a/config/NuclearCraft/fission_fuel/thorium.json b/config/NuclearCraft/fission_fuel/thorium.json deleted file mode 100644 index 47d776cef..000000000 --- a/config/NuclearCraft/fission_fuel/thorium.json +++ /dev/null @@ -1,12 +0,0 @@ -[ - { - "group": "thorium", - "name": "tbu", - "forge_energy": 4800, - "heat": 27, - "criticality": 234, - "depletion": 480, - "efficiency": 125, - "isotopes": [232, 232] - } -] diff --git a/config/NuclearCraft/fission_fuel/uranium.json b/config/NuclearCraft/fission_fuel/uranium.json deleted file mode 100644 index 868552d88..000000000 --- a/config/NuclearCraft/fission_fuel/uranium.json +++ /dev/null @@ -1,42 +0,0 @@ -[ - { - "group": "uranium", - "name": "heu-233", - "forge_energy": 69120, - "heat": 180, - "criticality": 39, - "depletion": 133, - "efficiency": 115, - "isotopes": [233, 238] - }, - { - "group": "uranium", - "name": "heu-235", - "forge_energy": 51840, - "heat": 150, - "criticality": 51, - "depletion": 240, - "efficiency": 105, - "isotopes": [235, 238] - }, - { - "group": "uranium", - "name": "leu-233", - "forge_energy": 17280, - "heat": 60, - "criticality": 78, - "depletion": 133, - "efficiency": 110, - "isotopes": [233, 238] - }, - { - "group": "uranium", - "name": "leu-235", - "forge_energy": 12960, - "heat": 50, - "criticality": 102, - "depletion": 240, - "efficiency": 100, - "isotopes": [235, 238] - } -] diff --git a/config/NuclearCraft/fission_fuel/version.txt b/config/NuclearCraft/fission_fuel/version.txt deleted file mode 100644 index 56a6051ca..000000000 --- a/config/NuclearCraft/fission_fuel/version.txt +++ /dev/null @@ -1 +0,0 @@ -1 \ No newline at end of file diff --git a/config/NuclearCraft/fission_fuel/xenorium.json b/config/NuclearCraft/fission_fuel/xenorium.json deleted file mode 100644 index c342d580a..000000000 --- a/config/NuclearCraft/fission_fuel/xenorium.json +++ /dev/null @@ -1,12 +0,0 @@ -[ - { - "group": "xenorium", - "name": "xen-298", - "forge_energy": 4536, - "heat": 768, - "criticality": 32, - "depletion": 92, - "efficiency": 140, - "isotopes": [298, 298] - } -] diff --git a/config/NuclearCraft/heat_sinks/! README.TXT b/config/NuclearCraft/heat_sinks/! README.TXT deleted file mode 100644 index 2362294ab..000000000 --- a/config/NuclearCraft/heat_sinks/! README.TXT +++ /dev/null @@ -1,12 +0,0 @@ -You can define blocks by block_name without namespace. So water_heat_sink will fall back to nuclearcraft:water_heat_sink. -Or qualify it with namespace like some_mod:some_block. -Or use block tag key. #nuclearcraft:fission_reactor_casing will fall back to blocks with this tag. Do not forget to put #. -if you need AND condition, add comma separated values "block1", "block2" means AND condition -if you need OR condition, use | separator. "block1|block2" means block1 or block2 -By default you have rule condition is 'At least 1'. So if you define some block, it will go in the rule as 'at least 1' -Validation options: >2 means at least 2 (use any number) --2 means between, it is always 2 (opposite sides) -<2 means less than 2 (use any number) -=2 means exact 2 (use any number) -^3 means 3 blocks in the corner (shared vertex or edge). possible values 2 and 3 -Default placement rules have all examples \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/active_cryotheum.json b/config/NuclearCraft/heat_sinks/active_cryotheum.json deleted file mode 100644 index cc41db863..000000000 --- a/config/NuclearCraft/heat_sinks/active_cryotheum.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "active_cryotheum", - "heat": 550, - "placement_rule": ["fission_reactor_solid_fuel_cell>2", "#nuclearcraft:moderators"] -}] diff --git a/config/NuclearCraft/heat_sinks/active_enderium.json b/config/NuclearCraft/heat_sinks/active_enderium.json deleted file mode 100644 index eec816aeb..000000000 --- a/config/NuclearCraft/heat_sinks/active_enderium.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "active_enderium", - "heat": 360, - "placement_rule": ["#nuclearcraft:fission_reactor_casing^3"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/active_liquid_helium.json b/config/NuclearCraft/heat_sinks/active_liquid_helium.json deleted file mode 100644 index ecc8cc7a8..000000000 --- a/config/NuclearCraft/heat_sinks/active_liquid_helium.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "active_liquid_helium", - "heat": 420, - "placement_rule": ["redstone_heat_sink", "#nuclearcraft:fission_reactor_casing"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/active_liquid_nitrogen.json b/config/NuclearCraft/heat_sinks/active_liquid_nitrogen.json deleted file mode 100644 index 32775b56a..000000000 --- a/config/NuclearCraft/heat_sinks/active_liquid_nitrogen.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "active_liquid_nitrogen", - "heat": 555, - "placement_rule": ["copper_heat_sink", "purpur_heat_sink"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/active_redstone.json b/config/NuclearCraft/heat_sinks/active_redstone.json deleted file mode 100644 index c1a32ed8d..000000000 --- a/config/NuclearCraft/heat_sinks/active_redstone.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "active_redstone", - "heat": 270, - "placement_rule": ["fission_reactor_solid_fuel_cell"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/active_water.json b/config/NuclearCraft/heat_sinks/active_water.json deleted file mode 100644 index 3f73b1316..000000000 --- a/config/NuclearCraft/heat_sinks/active_water.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "active_water", - "heat": 250, - "placement_rule": ["fission_reactor_solid_fuel_cell|#nuclearcraft:moderators"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/aluminum.json b/config/NuclearCraft/heat_sinks/aluminum.json deleted file mode 100644 index 9ce76709d..000000000 --- a/config/NuclearCraft/heat_sinks/aluminum.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "aluminum", - "heat": 175, - "placement_rule": ["quartz_heat_sink", "lapis_heat_sink"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/arsenic.json b/config/NuclearCraft/heat_sinks/arsenic.json deleted file mode 100644 index 2d0d60058..000000000 --- a/config/NuclearCraft/heat_sinks/arsenic.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "arsenic", - "heat": 135, - "placement_rule": ["#nuclearcraft:moderators>3"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/boron.json b/config/NuclearCraft/heat_sinks/boron.json deleted file mode 100644 index 9da950e7f..000000000 --- a/config/NuclearCraft/heat_sinks/boron.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "boron", - "heat": 160, - "placement_rule": ["quartz_heat_sink", "#nuclearcraft:fission_reactor_casing|#nuclearcraft:moderators"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/carobbiite.json b/config/NuclearCraft/heat_sinks/carobbiite.json deleted file mode 100644 index 299b54e1d..000000000 --- a/config/NuclearCraft/heat_sinks/carobbiite.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "carobbiite", - "heat": 140, - "placement_rule": ["end_stone_heat_sink", "fission_reactor_irradiation_chamber"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/cobalt.json b/config/NuclearCraft/heat_sinks/cobalt.json deleted file mode 100644 index 96ce1fdc2..000000000 --- a/config/NuclearCraft/heat_sinks/cobalt.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "cobalt", - "heat": 75, - "placement_rule": ["fission_reactor_irradiation_chamber"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/copper.json b/config/NuclearCraft/heat_sinks/copper.json deleted file mode 100644 index d6bbde4b5..000000000 --- a/config/NuclearCraft/heat_sinks/copper.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "copper", - "heat": 80, - "placement_rule": ["glowstone_heat_sink"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/cryotheum.json b/config/NuclearCraft/heat_sinks/cryotheum.json deleted file mode 100644 index 3dfaa7a07..000000000 --- a/config/NuclearCraft/heat_sinks/cryotheum.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "cryotheum", - "heat": 200, - "placement_rule": ["fission_reactor_solid_fuel_cell>2", "#nuclearcraft:moderators"] -}] diff --git a/config/NuclearCraft/heat_sinks/diamond.json b/config/NuclearCraft/heat_sinks/diamond.json deleted file mode 100644 index 91643cacd..000000000 --- a/config/NuclearCraft/heat_sinks/diamond.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "diamond", - "heat": 150, - "placement_rule": ["water_heat_sink", "quartz_heat_sink"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/emerald.json b/config/NuclearCraft/heat_sinks/emerald.json deleted file mode 100644 index fb9692ee7..000000000 --- a/config/NuclearCraft/heat_sinks/emerald.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "emerald", - "heat": 160, - "placement_rule": ["fission_reactor_solid_fuel_cell", "#nuclearcraft:moderators"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/empty.json b/config/NuclearCraft/heat_sinks/empty.json deleted file mode 100644 index 6b82b7462..000000000 --- a/config/NuclearCraft/heat_sinks/empty.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "empty", - "heat": 0, - "placement_rule": [] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/empty_active.json b/config/NuclearCraft/heat_sinks/empty_active.json deleted file mode 100644 index f8445a9ba..000000000 --- a/config/NuclearCraft/heat_sinks/empty_active.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "empty_active", - "heat": 0, - "placement_rule": [] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/end_stone.json b/config/NuclearCraft/heat_sinks/end_stone.json deleted file mode 100644 index 6bbb65218..000000000 --- a/config/NuclearCraft/heat_sinks/end_stone.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "end_stone", - "heat": 40, - "placement_rule": ["enderium_heat_sink"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/enderium.json b/config/NuclearCraft/heat_sinks/enderium.json deleted file mode 100644 index 60d1dd8c7..000000000 --- a/config/NuclearCraft/heat_sinks/enderium.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "enderium", - "heat": 120, - "placement_rule": ["#nuclearcraft:fission_reactor_casing^3"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/fluorite.json b/config/NuclearCraft/heat_sinks/fluorite.json deleted file mode 100644 index 6bcd8af9c..000000000 --- a/config/NuclearCraft/heat_sinks/fluorite.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "fluorite", - "heat": 160, - "placement_rule": ["gold_heat_sink", "prismarine_heat_sink"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/glowstone.json b/config/NuclearCraft/heat_sinks/glowstone.json deleted file mode 100644 index 8059b73bf..000000000 --- a/config/NuclearCraft/heat_sinks/glowstone.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "glowstone", - "heat": 130, - "placement_rule": ["#nuclearcraft:moderators>2"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/gold.json b/config/NuclearCraft/heat_sinks/gold.json deleted file mode 100644 index aeb7b453d..000000000 --- a/config/NuclearCraft/heat_sinks/gold.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "gold", - "heat": 120, - "placement_rule": ["water_heat_sink", "redstone_heat_sink"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/iron.json b/config/NuclearCraft/heat_sinks/iron.json deleted file mode 100644 index 7abc37a94..000000000 --- a/config/NuclearCraft/heat_sinks/iron.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "iron", - "heat": 80, - "placement_rule": ["gold_heat_sink"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/lapis.json b/config/NuclearCraft/heat_sinks/lapis.json deleted file mode 100644 index aab5fbb45..000000000 --- a/config/NuclearCraft/heat_sinks/lapis.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "lapis", - "heat": 120, - "placement_rule": ["fission_reactor_solid_fuel_cell", "#nuclearcraft:fission_reactor_casing"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/lead.json b/config/NuclearCraft/heat_sinks/lead.json deleted file mode 100644 index d26fa895e..000000000 --- a/config/NuclearCraft/heat_sinks/lead.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "lead", - "heat": 60, - "placement_rule": ["iron_heat_sink"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/liquid_helium.json b/config/NuclearCraft/heat_sinks/liquid_helium.json deleted file mode 100644 index 3cc51720f..000000000 --- a/config/NuclearCraft/heat_sinks/liquid_helium.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "liquid_helium", - "heat": 140, - "placement_rule": ["redstone_heat_sink", "#nuclearcraft:fission_reactor_casing"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/liquid_nitrogen.json b/config/NuclearCraft/heat_sinks/liquid_nitrogen.json deleted file mode 100644 index 1743f9b8b..000000000 --- a/config/NuclearCraft/heat_sinks/liquid_nitrogen.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "liquid_nitrogen", - "heat": 185, - "placement_rule": ["copper_heat_sink", "purpur_heat_sink"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/lithium.json b/config/NuclearCraft/heat_sinks/lithium.json deleted file mode 100644 index 623b0879b..000000000 --- a/config/NuclearCraft/heat_sinks/lithium.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "lithium", - "heat": 130, - "placement_rule": ["lead_heat_sink-2"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/magnesium.json b/config/NuclearCraft/heat_sinks/magnesium.json deleted file mode 100644 index bb19f6720..000000000 --- a/config/NuclearCraft/heat_sinks/magnesium.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "magnesium", - "heat": 110, - "placement_rule": ["#nuclearcraft:fission_reactor_casing", "#nuclearcraft:moderators"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/manganese.json b/config/NuclearCraft/heat_sinks/manganese.json deleted file mode 100644 index 6309666fd..000000000 --- a/config/NuclearCraft/heat_sinks/manganese.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "manganese", - "heat": 150, - "placement_rule": ["fission_reactor_solid_fuel_cell>2"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/nether_brick.json b/config/NuclearCraft/heat_sinks/nether_brick.json deleted file mode 100644 index 1b3ca4b2a..000000000 --- a/config/NuclearCraft/heat_sinks/nether_brick.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "nether_brick", - "heat": 70, - "placement_rule": ["obsidian_heat_sink"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/netherite.json b/config/NuclearCraft/heat_sinks/netherite.json deleted file mode 100644 index 984e13473..000000000 --- a/config/NuclearCraft/heat_sinks/netherite.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "netherite", - "heat": 150, - "placement_rule": ["obsidian_heat_sink", "fission_reactor_irradiation_chamber"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/obsidian.json b/config/NuclearCraft/heat_sinks/obsidian.json deleted file mode 100644 index 68000ba49..000000000 --- a/config/NuclearCraft/heat_sinks/obsidian.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "obsidian", - "heat": 40, - "placement_rule": ["glowstone_heat_sink-2"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/platinum.json b/config/NuclearCraft/heat_sinks/platinum.json deleted file mode 100644 index 610bc2534..000000000 --- a/config/NuclearCraft/heat_sinks/platinum.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "platinum", - "heat": 180, - "placement_rule": ["fission_reactor_irradiation_chamber","#nuclearcraft:moderators"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/prismarine.json b/config/NuclearCraft/heat_sinks/prismarine.json deleted file mode 100644 index 0d899ede2..000000000 --- a/config/NuclearCraft/heat_sinks/prismarine.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "prismarine", - "heat": 115, - "placement_rule": ["water_heat_sink"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/purpur.json b/config/NuclearCraft/heat_sinks/purpur.json deleted file mode 100644 index a4cc469dc..000000000 --- a/config/NuclearCraft/heat_sinks/purpur.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "purpur", - "heat": 95, - "placement_rule": ["#nuclearcraft:fission_reactor_casing", "iron_heat_sink"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/quartz.json b/config/NuclearCraft/heat_sinks/quartz.json deleted file mode 100644 index e43827e14..000000000 --- a/config/NuclearCraft/heat_sinks/quartz.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "quartz", - "heat": 90, - "placement_rule": ["#nuclearcraft:moderators"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/redstone.json b/config/NuclearCraft/heat_sinks/redstone.json deleted file mode 100644 index 6cef3da44..000000000 --- a/config/NuclearCraft/heat_sinks/redstone.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "redstone", - "heat": 90, - "placement_rule": ["fission_reactor_solid_fuel_cell"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/silver.json b/config/NuclearCraft/heat_sinks/silver.json deleted file mode 100644 index 32bac1b59..000000000 --- a/config/NuclearCraft/heat_sinks/silver.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "silver", - "heat": 170, - "placement_rule": ["glowstone_heat_sink>2", "tin_heat_sink|fission_reactor_irradiation_chamber"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/slime.json b/config/NuclearCraft/heat_sinks/slime.json deleted file mode 100644 index f67e12274..000000000 --- a/config/NuclearCraft/heat_sinks/slime.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "slime", - "heat": 145, - "placement_rule": ["water_heat_sink", "lead_heat_sink"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/tin.json b/config/NuclearCraft/heat_sinks/tin.json deleted file mode 100644 index cc2474e4e..000000000 --- a/config/NuclearCraft/heat_sinks/tin.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "tin", - "heat": 120, - "placement_rule": ["lapis_heat_sink-2"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/version.txt b/config/NuclearCraft/heat_sinks/version.txt deleted file mode 100644 index 56a6051ca..000000000 --- a/config/NuclearCraft/heat_sinks/version.txt +++ /dev/null @@ -1 +0,0 @@ -1 \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/villiaumite.json b/config/NuclearCraft/heat_sinks/villiaumite.json deleted file mode 100644 index f658229d0..000000000 --- a/config/NuclearCraft/heat_sinks/villiaumite.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "villiaumite", - "heat": 180, - "placement_rule": ["redstone_heat_sink", "end_stone_heat_sink"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/heat_sinks/water.json b/config/NuclearCraft/heat_sinks/water.json deleted file mode 100644 index 318d260e5..000000000 --- a/config/NuclearCraft/heat_sinks/water.json +++ /dev/null @@ -1,5 +0,0 @@ -[{ - "type": "water", - "heat": 60, - "placement_rule": ["fission_reactor_solid_fuel_cell|#nuclearcraft:moderators"] -}] \ No newline at end of file diff --git a/config/NuclearCraft/materials.toml b/config/NuclearCraft/materials.toml deleted file mode 100644 index d908c9186..000000000 --- a/config/NuclearCraft/materials.toml +++ /dev/null @@ -1,276 +0,0 @@ - -[raw_chunks] - lithium = false - platinum = false - thorium = false - tin = false - magnesium = false - silver = false - cobalt = false - uranium = false - zinc = false - boron = false - lead = false - -[ingots] - manganese_oxide = false - niobium_tin = false - graphite = false - lithium = false - platinum = false - tungsten = false - zircaloy = false - yttrium = false - thermoconducting = false - thorium = false - zirconium_molybdenum = false - tin = false - palladium = false - beryllium = false - silicon_carbide = false - zinc = false - carbon_manganese = false - extreme = true - shibuichi = false - tungsten_carbide = false - stainless_steel = false - magnesium = false - bronze = false - sodium = false - tin_silver = false - pyrolitic_carbon = false - manganese_dioxide = false - silver = false - uranium = false - niobium_titanium = false - tough_alloy = true - steel = false - potassium = false - neutronium = false - ferroboron = false - titanium = false - super_alloy = false - cobalt = false - aluminum = false - manganese = false - sic_sic_cmc = false - iridium = false - hard_carbon = true - niobium = false - zirconium = false - electrum = false - chromium = false - calcium = false - strontium = false - osmium = false - lithium_manganese_dioxide = false - lead = false - osmiridium = false - lead_platinum = false - hsla_steel = false - nichrome = false - boron = false - magnesium_diboride = false - hafnium = false - -[nuggets] - steel = false - electrum = false - magnesium = false - cobalt = false - aluminum = false - lead = false - bronze = false - lithium = false - platinum = false - thorium = false - tin = false - beryllium = false - silver = false - uranium = false - zirconium = false - zinc = false - boron = false - -[plates] - tough_alloy = false - steel = false - ferroboron = false - cobalt = false - aluminum = false - graphite = false - manganese = false - sic_sic_cmc = false - netherite = false - lithium = false - platinum = false - thermoconducting = false - thorium = false - hard_carbon = false - tin = false - palladium = false - copper = false - beryllium = false - zirconium = false - zinc = false - extreme = false - electrum = false - magnesium = false - lithium_manganese_dioxide = false - lead = false - bronze = false - iron = false - silver = false - hsla_steel = false - uranium = false - boron = false - -[dusts] - barium = false - germanium = false - tungsten = false - zircaloy = false - yttrium = false - thermoconducting = false - thorium = false - zirconium_molybdenum = false - palladium = false - sulfur = false - fluorite = false - lapis = false - silicon_carbide = false - zinc = false - carbon_manganese = false - molybdenum = false - purpur = false - borax = false - magnesium = false - bronze = false - manganese_dioxide = false - silver = false - boron_nitride = false - gadolinium = false - tough_alloy = true - steel = false - ferroboron = true - cobalt = false - strontium_90 = false - potassium_hydroxide = false - alugentum = false - aluminum = false - manganese = false - sic_sic_cmc = false - protactinium_233 = false - gold = false - europium_155 = false - hard_carbon = true - end_stone = false - niobium = false - yellowcake = false - copper = false - iodine = false - zirconium = false - electrum = false - caesium_137 = false - strontium = false - rhodochrosite = true - lead = false - boron_arsenide = false - neodymium = false - lead_platinum = false - crystal_binder = false - charcoal = false - hafnium = false - sodium_hydroxide = false - manganese_oxide = false - samarium = false - erbium = false - radium = false - bscco = false - graphite = false - netherite = false - lithium = false - platinum = false - carobbiite = false - tin = false - beryllium = false - ruthenium_106 = false - extreme = true - shibuichi = false - obsidian = false - polonium = false - arsenic = false - energetic_blend = false - sodium = false - tin_silver = false - pyrolitic_carbon = false - potassium_fluoride = false - coal = false - uranium = false - emerald = false - c_mn_blend = false - potassium = false - tbp = false - ytterbium = false - titanium = false - dimensional_blend = false - thallium = false - iridium = false - enderium = false - sodium_fluoride = false - irradiated_borax = false - terbium = false - calcium_sulfate = false - chromium = false - promethium_147 = false - calcium = false - potassium_iodide = false - villiaumite = false - osmium = false - lithium_manganese_dioxide = false - quartz = false - diamond = false - iron = false - hsla_steel = false - boron = false - bismuth = false - protactinium_231 = false - -[blocks] - steel = false - electrum = false - supercold_ice = false - magnesium = false - cobalt = false - aluminum = false - graphite = true - lead = false - bronze = false - californium250 = false - lithium = false - platinum = false - thorium = false - americium241 = false - plutonium238 = false - tin = false - beryllium = true - uranium238 = false - silver = false - uranium = false - zirconium = false - zinc = false - boron = false - -[gems] - boron_arsenide = false - carobbiite = false - silicon = false - villiaumite = false - fluorite = false - rhodochrosite = true - boron_nitride = false - -[forge_tag_priority] - #Priority of mods to resolve forge tags to itemstack and fluidstack. - mods_priority = ["minecraft", "nuclearcraft", "mekanism", "immersiveengineering", "tconstruct"] - diff --git a/config/NuclearCraft/world.toml b/config/NuclearCraft/world.toml deleted file mode 100644 index 6be6f76b2..000000000 --- a/config/NuclearCraft/world.toml +++ /dev/null @@ -1,15 +0,0 @@ - -[Dimension] - #Register Wasteland Dimension - wasteland = false - -[Biome] - #Generate Wasteland Biome in Overworld - wasteland = false - -[Villages] - #Generate Scientist House in Villages - scientist_house = false - #Add Wandering Trader trades - wandering_trader_trades = false - diff --git a/config/phoenix_fission.yaml b/config/phoenix_fission.yaml new file mode 100644 index 000000000..cd8ddb56b --- /dev/null +++ b/config/phoenix_fission.yaml @@ -0,0 +1,181 @@ +fission: + # Enable the base Fission Reactor multiblock. + fissionReactorEnabled: false + + # Enable the High-Performance Breeder Reactor multiblock. + breederReactorEnabled: false + + # Enable the Molten Salt Reactor multiblock. + msrEnabled: false + + # The Fluid that poisons the Molten Salt Reactor's efficiency + msrReactorPoisoningOutputFluid: minecraft:lava + + # Enable the Nuke block. + nukeEnabled: true + + # If false, the reactor produces no EU/t at all. + # Heat, fuel consumption, and cooling still function normally. + # Use this for heat-only or steam-only pack configs. + enableDirectEUOutput: false + + # If false, coolant fluid is never consumed or required (cooling still reduces heat via temperature differential). + coolingRequiresCoolant: true + + # If true, every installed cooler type contributes its cooling each tick. If false, only one coolant loop is processed. + coolantUsageAdditive: true + + # If true, all installed blanket types are processed each breeding cycle. If false, only the highest-tier blanket is used. + blanketUsageAdditive: true + + heatModel: + # Safe operating temperature threshold in Kelvin. + # Meltdown sequence begins when the reactor temperature exceeds this value. + # Actual HU threshold = maxSafeTempK * heatCapacity (scales with multi size). + # Default 1000 K matches old 100 000 HU behaviour for a 100-block reactor. + maxSafeTempK: 1200.0 + + # Heat floor - reactor cannot cool below ambient temperature. + minHeat: 0.0 + + # Absolute temperature ceiling in Kelvin to prevent numeric overflow. + # Actual HU ceiling = maxHeatClampTempK * heatCapacity (scales with multi size). + # Default 2500 K matches old 250 000 HU behaviour for a 100-block reactor. + maxHeatClampTempK: 2500.0 + + # Heat capacity per structural block (HU per Kelvin per block). + # Temperature (K) = storedHeat (HU) / heatCapacity. + # heatCapacity = blockCount * heatCapacityPerBlock. + # Larger reactors therefore have a higher HU buffer at the same K threshold, + # giving bigger structures a greater safety margin without changing the K thresholds. + heatCapacityPerBlock: 1.0 + + # Ambient temperature in Kelvin. + # Initialized as room temperature (293K). Passive cooling pulls toward this value. + ambientTemperatureHU: 293.0 + + # Fuel heat conductivity constant (C_fuel). + # Scales how effectively your fuel rods emit thermal energy. + # Formula: baseHeatRate * ((totalRods+1)/2) * (1 + temp/maxSafeTemp)^2 * parallels * moderatorBonus * reactivity * C_fuel + fuelConductivity: 0.2 + + # Exponent scaling for the fuel consumption rate curve. Xefyr recommends: 4.0 + fuelConsumptionExponent: 4.0 + + # Exponent scaling for the fuel heat generation curve. Xefyr recommends: 2.0 + heatGenerationExponent: 2.0 + + # Active cooling conductivity constant (C_active). + # Scales how effectively coolant cells transfer heat away. + # Formula: (coolantTemp - reactorTemp) * parallels * C_active + activeCoolingConductivity: 0.005 + + # Passive cooling conductivity constant (C_passive). + # Scales the thermal leak rate to ambient air. + # Formula: (ambientTemp - reactorTemp) * C_passive + passiveCoolingConductivity: 0.0015 + + # How quickly the reactor ramps reactivity up or down when control state changes, as a fraction per tick. + # 1.0 = instant transition, 0.02 = ~1-second ramp, 0.005 = ~4-second ramp. + reactivityRampRatePerTick: 0.02 + + # Reference active-cooling heat removal (HU/t) that corresponds to 100% of an active cooler's + # configured coolant usage per tick (both input coolant consumed and hot coolant produced). + # Coolant usage scales linearly with how much heat a cooler is actually removing this tick: + # coolantConsumed = coolantUsagePerTick * (actualHeatRemoved / coolantReferenceHeatRemovalHUt). + # Lower this to make coolers burn through coolant faster as load increases; raise it to soften the scaling. + coolantReferenceHeatRemovalHUt: 100.0 + + # Base GT recipe parallels contributed by each installed fuel rod. + parallelsPerFuelRod: 1 + + # Hard ceiling on total GT recipe parallels. + maxParallels: 256 + + euOutput: + # EU generated per unit of heat activity per tick. + euPerHeatUnit: 0.0 + + # Optional EU/t ceiling. Set <= 0 for no cap. + maxGeneratedEUt: 0 + + # Minimum EU/t while the reactor is active. Set 0 to allow zero output. + minGeneratedEUt: 0 + + # Exponent for the heat-to-power curve. 1 = linear, >1 rewards high heat. + powerCurveExponent: 2.0 + + # Heat fraction of maxSafeHeat at which EU generation begins. 0.0 = always generating. + powerStartFraction: 0.0 + + # Maximum bonus percent applied to heat production and EU output after long continuous run. Example: 30 = up to +30%. + burnBonusMaxPercent: 30.0 + + # Seconds of continuous running required to reach the full burn bonus. + burnBonusRampSeconds: 1200.0 + + # Maximum total fuel discount percent that moderators can contribute. + maxFuelDiscountPercent: 90 + + # Maximum total EU/heat boost percent that moderators can contribute. + maxEUBoostPercent: 100 + + meltdown: + # Grace period in seconds when heat barely exceeds maxSafeHeat. + baseGraceSeconds: 10.0 + + # Minimum grace period in seconds when heat is far above maxSafeHeat. + minGraceSeconds: 5.0 + + # Severity multiplier - higher values shorten the grace period faster as heat rises. + excessHeatSeverity: 1.0 + + # If true, dropping back below maxSafeHeat cancels the meltdown timer. + clearTimerWhenSafe: true + + explosion: + # If true, replaces blocks with air/fire. If false, uses standard GT explosion (drops items). + destructiveExplosion: false + + # Base explosion power added before fuel scaling. + baseExplosionPower: 2.0 + + # Additional explosion power per installed fuel rod. + # Power = baseExplosionPower + (rodCount * perRod) + (avgFuelHeat * perHeatUnit). + explosionPowerPerFuelRod: 1.5 + + # Additional explosion power per unit of average fuel rod base heat production. + explosionPowerPerHeatUnit: 0.001 + + thermoelectricGenerator: + # Cold coolant fluid the Thermoelectric Generator consumes (when not running on the helium cryo-boost loop). + coldCoolantFluidId: gtceu:distilled_water + + # Hot coolant fluid produced from the cold coolant. + hotCoolantFluidId: gtceu:superheated_steam + + # Base mB/s of cold coolant consumed (and hot coolant produced) at 1 exchange column. + # Actual usage scales with column count the same way it always has: base * (1 + (columns - 1) * 0.2). + baseCoolantAmount: 1000 + + # Cube radius in blocks. Total affected volume is (2r+1)^3. + nukeCubeRadius: 16 + + # Hard cap on nuke cube radius to prevent insane values. + nukeCubeRadiusCap: 48 + + # Fuse time in ticks before the nuke detonates (20 ticks = 1 second). + nukeFuseTicks: 120 + + # Blocks processed per tick during the nuke wipe pass. + nukeBatchPerTick: 4000 + + # Skip blocks containing a BlockEntity (machines, chests, etc.) during the nuke wipe. + nukeSkipBlockEntities: true + + # Skip blocks in unloaded chunks (prevents forced chunk loading). + nukeSkipUnloadedChunks: true + + # Replace destroyed blocks with fire instead of air. + nukeReplaceWithFire: false + diff --git a/kubejs/assets/gtceu/lang/de_de.json b/kubejs/assets/gtceu/lang/de_de.json index c58f2c340..2b26565ae 100644 --- a/kubejs/assets/gtceu/lang/de_de.json +++ b/kubejs/assets/gtceu/lang/de_de.json @@ -537,8 +537,7 @@ "material.gtceu.rotten_meat": "Tainted Meat", "material.gtceu.polymineral_leachate": "Polymineral Leachate", "material.gtceu.uranium_233": "Uranium 233", - "material.gtceu.plutonium_242": "Plutonium 242", - "material.gtceu.plutonium_238": "Plutonium 238", + "material.gtceu.plutonium_240": "Plutonium 240", "__TRANSGENDER__.footer": "========", "__TRANSGENDER__.flufff": "> Transcendental Matrix <", "__TRANSGENDER__.header": "========", diff --git a/kubejs/assets/gtceu/lang/en_us.json b/kubejs/assets/gtceu/lang/en_us.json index 1fb17cbc2..4c256178b 100644 --- a/kubejs/assets/gtceu/lang/en_us.json +++ b/kubejs/assets/gtceu/lang/en_us.json @@ -165,6 +165,11 @@ "gtceu.anti_collider": "Annihilation", "gtceu.recipe.cleanroom_sterile.display_name": "Sterile Hatch", "gtceu.antimatter_manipulation": "Antimatter Manipulation", + "block.gtceu.fission_reactor": "Fission Reactor", + "block.gtceu.high_pressure_steam_turbine": "High Pressure Steam Turbine", + "gtceu.hp_steam_turbine": "High Pressure Steam Turbine", + "block.gtceu.thermoelectric_generator": "Thermoelectric Generator", + "gtceu.thermoelectric_generator": "Thermoelectric Generation", "__CREATIVE_MACHINES__.header": "=====================", "__CREATIVE_MACHINES__.flufff": "> Creative Machines <", "__CREATIVE_MACHINES__.footer": "=====================", @@ -225,6 +230,10 @@ "material.gtceu.elemental_reduction_fluid": "Elemental Reduction Fluid", "material.gtceu.sulfolane": "Sulfolane", "material.gtceu.fluxed_ardite": "Fluxed Ardite", + "material.gtceu.superheated_steam": "Superheated Steam", + "material.gtceu.hot_sodium_potassium": "Hot Sodium Potassium", + "material.gtceu.ferroboron": "Ferroboron", + "material.gtceu.tough_alloy": "Tough Alloy", "__POST_TANK_MATERIALS__.header": "=======================", "__POST_TANK_MATERIALS__.flufff": "> Post-Tank Materials <", "__POST_TANK_MATERIALS__.footer": "=======================", @@ -456,11 +465,15 @@ "material.gtceu.manganese_ii_chloride": "Manganese II Chloride", "material.gtceu.iron_ii_fluoride": "Iron II Fluoride", "material.gtceu.uranium_233": "Uranium 233", - "material.gtceu.plutonium_238": "Plutonium 238", - "material.gtceu.plutonium_242": "Plutonium 242", + "material.gtceu.plutonium_240": "Plutonium 240", "gtceu.uhv_voltage_coil.desc": "Legendary Coil", "gtceu.uev_voltage_coil.desc": "Supreme Coil", "item.gtceu.compost_mix_dust": "Compost Mix", + "material.gtceu.pasteurized_milk": "Pasteurized Milk", + "material.gtceu.marshmallow": "Marshmallow", + "material.gtceu.milk_chocolate": "Milk Chocolate", + "material.gtceu.chocolate_liquor": "Chocolate Liquor", + "item.gtceu.compost_mix_dust": "Compost Mix", "__HM_MISC__.header": "============", "__HM_MISC__.flufff": "> HM Misc. <", "__HM_MISC__.footer": "============", diff --git a/kubejs/assets/gtceu/lang/es_es.json b/kubejs/assets/gtceu/lang/es_es.json index 90665cddd..9613334fa 100644 --- a/kubejs/assets/gtceu/lang/es_es.json +++ b/kubejs/assets/gtceu/lang/es_es.json @@ -537,8 +537,7 @@ "material.gtceu.nitrotoluene": "Nitrotoluene", "material.gtceu.polymineral_leachate": "Polymineral Leachate", "material.gtceu.uranium_233": "Uranium 233", - "material.gtceu.plutonium_242": "Plutonium 242", - "material.gtceu.plutonium_238": "Plutonium 238", + "material.gtceu.plutonium_240": "Plutonium 240", "__TRANSGENDER__.footer": "========", "__TRANSGENDER__.flufff": "> Transcendental Matrix <", "__TRANSGENDER__.header": "========", diff --git a/kubejs/assets/gtceu/lang/fr_fr.json b/kubejs/assets/gtceu/lang/fr_fr.json index 3d2302556..d49539ff8 100644 --- a/kubejs/assets/gtceu/lang/fr_fr.json +++ b/kubejs/assets/gtceu/lang/fr_fr.json @@ -537,8 +537,7 @@ "material.gtceu.rotten_meat": "Viande Contaminée", "material.gtceu.polymineral_leachate": "Lixiviat Polyminéral", "material.gtceu.uranium_233": "Uranium 233", - "material.gtceu.plutonium_242": "Plutonium 242", - "material.gtceu.plutonium_238": "Plutonium 238", + "material.gtceu.plutonium_240": "Plutonium 240", "__TRANSGENDER__.footer": "========", "__TRANSGENDER__.flufff": "> Matrice Transcendente <", "__TRANSGENDER__.header": "========", diff --git a/kubejs/assets/gtceu/lang/it_it.json b/kubejs/assets/gtceu/lang/it_it.json index c8618c845..ada2d8caa 100644 --- a/kubejs/assets/gtceu/lang/it_it.json +++ b/kubejs/assets/gtceu/lang/it_it.json @@ -439,8 +439,7 @@ "material.gtceu.manganese_ii_chloride": "Coluror di Manganese II", "material.gtceu.iron_ii_fluoride": "Fluoruro di Ferro II", "material.gtceu.uranium_233": "Uranio 233", - "material.gtceu.plutonium_238": "Plutonio 238", - "material.gtceu.plutonium_242": "Plutonio 242", + "material.gtceu.plutonium_240": "Plutonio 240", "gtceu.uhv_voltage_coil.desc": "Bobina Leggendaria", "gtceu.uev_voltage_coil.desc": "Bobina Suprema", "__HM_MISC__.header": "============", diff --git a/kubejs/assets/gtceu/lang/ja_jp.json b/kubejs/assets/gtceu/lang/ja_jp.json index 0413ab1f4..89634ff8a 100644 --- a/kubejs/assets/gtceu/lang/ja_jp.json +++ b/kubejs/assets/gtceu/lang/ja_jp.json @@ -537,8 +537,7 @@ "material.gtceu.nitrotoluene": "ニトロトルエン", "material.gtceu.polymineral_leachate": "多鉱物浸出液", "material.gtceu.uranium_233": "ウラン233", - "material.gtceu.plutonium_242": "プルトニウム242", - "material.gtceu.plutonium_238": "プルトニウム238", + "material.gtceu.plutonium_240": "プルトニウム240", "__TRANSGENDER__.footer": "========", "__TRANSGENDER__.flufff": "> Transcendental Matrix <", "__TRANSGENDER__.header": "========", diff --git a/kubejs/assets/gtceu/lang/ko_kr.json b/kubejs/assets/gtceu/lang/ko_kr.json index c5249ec7b..46060716a 100644 --- a/kubejs/assets/gtceu/lang/ko_kr.json +++ b/kubejs/assets/gtceu/lang/ko_kr.json @@ -439,8 +439,7 @@ "material.gtceu.manganese_ii_chloride": "Manganese II Chloride", "material.gtceu.iron_ii_fluoride": "Iron II Fluoride", "material.gtceu.uranium_233": "Uranium 233", - "material.gtceu.plutonium_238": "Plutonium 238", - "material.gtceu.plutonium_242": "Plutonium 242", + "material.gtceu.plutonium_240": "Plutonium 240", "gtceu.uhv_voltage_coil.desc": "Legendary Coil", "gtceu.uev_voltage_coil.desc": "Supreme Coil", "__HM_MISC__.header": "============", diff --git a/kubejs/assets/gtceu/lang/lv_lv.json b/kubejs/assets/gtceu/lang/lv_lv.json index 3ec1781e5..f9fef931e 100644 --- a/kubejs/assets/gtceu/lang/lv_lv.json +++ b/kubejs/assets/gtceu/lang/lv_lv.json @@ -447,8 +447,7 @@ "material.gtceu.manganese_ii_chloride": "Manganese II Chloride", "material.gtceu.iron_ii_fluoride": "Iron II Fluoride", "material.gtceu.uranium_233": "Uranium 233", - "material.gtceu.plutonium_238": "Plutonium 238", - "material.gtceu.plutonium_242": "Plutonium 242", + "material.gtceu.plutonium_240": "Plutonium 240", "gtceu.uhv_voltage_coil.desc": "Legendary Coil", "gtceu.uev_voltage_coil.desc": "Supreme Coil", "__HM_MISC__.header": "============", diff --git a/kubejs/assets/gtceu/lang/nl_nl.json b/kubejs/assets/gtceu/lang/nl_nl.json index 775e1ddb2..5d8a48c05 100644 --- a/kubejs/assets/gtceu/lang/nl_nl.json +++ b/kubejs/assets/gtceu/lang/nl_nl.json @@ -424,8 +424,7 @@ "material.gtceu.manganese_ii_chloride": "Manganese II Chloride", "material.gtceu.iron_ii_fluoride": "Iron II Fluoride", "material.gtceu.uranium_233": "Uranium 233", - "material.gtceu.plutonium_238": "Plutonium 238", - "material.gtceu.plutonium_242": "Plutonium 242", + "material.gtceu.plutonium_240": "Plutonium 240", "__HM_MISC__.header": "============", "__HM_MISC__.flufff": "> HM Misc. <", "__HM_MISC__.footer": "============", diff --git a/kubejs/assets/gtceu/lang/pl_pl.json b/kubejs/assets/gtceu/lang/pl_pl.json index 217ef3372..ea8244f4d 100644 --- a/kubejs/assets/gtceu/lang/pl_pl.json +++ b/kubejs/assets/gtceu/lang/pl_pl.json @@ -537,8 +537,7 @@ "material.gtceu.rotten_meat": "Tainted Meat", "material.gtceu.polymineral_leachate": "Polymineral Leachate", "material.gtceu.uranium_233": "Uranium 233", - "material.gtceu.plutonium_242": "Plutonium 242", - "material.gtceu.plutonium_238": "Plutonium 238", + "material.gtceu.plutonium_240": "Plutonium 240", "__TRANSGENDER__.footer": "========", "__TRANSGENDER__.flufff": "> Transcendental Matrix <", "__TRANSGENDER__.header": "========", diff --git a/kubejs/assets/gtceu/lang/pt_br.json b/kubejs/assets/gtceu/lang/pt_br.json index 76dcaba7f..e720354b0 100644 --- a/kubejs/assets/gtceu/lang/pt_br.json +++ b/kubejs/assets/gtceu/lang/pt_br.json @@ -436,8 +436,7 @@ "material.gtceu.manganese_ii_chloride": "Manganese II Chloride", "material.gtceu.iron_ii_fluoride": "Iron II Fluoride", "material.gtceu.uranium_233": "Uranium 233", - "material.gtceu.plutonium_238": "Plutonium 238", - "material.gtceu.plutonium_242": "Plutonium 242", + "material.gtceu.plutonium_240": "Plutonium 240", "gtceu.uhv_voltage_coil.desc": "Legendary Coil", "gtceu.uev_voltage_coil.desc": "Supreme Coil", "__HM_MISC__.header": "============", diff --git a/kubejs/assets/gtceu/lang/pt_pt.json b/kubejs/assets/gtceu/lang/pt_pt.json index 0c55c44a2..db8c5dee5 100644 --- a/kubejs/assets/gtceu/lang/pt_pt.json +++ b/kubejs/assets/gtceu/lang/pt_pt.json @@ -439,8 +439,7 @@ "material.gtceu.manganese_ii_chloride": "Manganese II Chloride", "material.gtceu.iron_ii_fluoride": "Iron II Fluoride", "material.gtceu.uranium_233": "Uranium 233", - "material.gtceu.plutonium_238": "Plutonium 238", - "material.gtceu.plutonium_242": "Plutonium 242", + "material.gtceu.plutonium_240": "Plutonium 240", "gtceu.uhv_voltage_coil.desc": "Legendary Coil", "gtceu.uev_voltage_coil.desc": "Supreme Coil", "__HM_MISC__.header": "============", diff --git a/kubejs/assets/gtceu/lang/ru_ru.json b/kubejs/assets/gtceu/lang/ru_ru.json index 709f9677e..a68e766af 100644 --- a/kubejs/assets/gtceu/lang/ru_ru.json +++ b/kubejs/assets/gtceu/lang/ru_ru.json @@ -537,8 +537,7 @@ "__MPR_LINES__.header": "==========================", "material.gtceu.polymineral_leachate": "Полиминеральный фильтрат", "material.gtceu.uranium_233": "Уран 233", - "material.gtceu.plutonium_242": "Плутоний 242", - "material.gtceu.plutonium_238": "Плутоний 238", + "material.gtceu.plutonium_240": "Плутоний 240", "__TRANSGENDER__.footer": "========", "__TRANSGENDER__.flufff": "> Трансцендентная матрица <", "__TRANSGENDER__.header": "========", diff --git a/kubejs/assets/gtceu/lang/uk_ua.json b/kubejs/assets/gtceu/lang/uk_ua.json index 2100934b1..6c4c2dd9e 100644 --- a/kubejs/assets/gtceu/lang/uk_ua.json +++ b/kubejs/assets/gtceu/lang/uk_ua.json @@ -444,8 +444,7 @@ "material.gtceu.manganese_ii_chloride": "Manganese II Chloride", "material.gtceu.iron_ii_fluoride": "Iron II Fluoride", "material.gtceu.uranium_233": "Uranium 233", - "material.gtceu.plutonium_238": "Plutonium 238", - "material.gtceu.plutonium_242": "Plutonium 242", + "material.gtceu.plutonium_240": "Plutonium 240", "gtceu.uhv_voltage_coil.desc": "Legendary Coil", "gtceu.uev_voltage_coil.desc": "Supreme Coil", "__HM_MISC__.header": "============", diff --git a/kubejs/assets/gtceu/lang/zh_cn.json b/kubejs/assets/gtceu/lang/zh_cn.json index 1e6c19142..39c985ae6 100644 --- a/kubejs/assets/gtceu/lang/zh_cn.json +++ b/kubejs/assets/gtceu/lang/zh_cn.json @@ -537,8 +537,7 @@ "material.gtceu.nitrotoluene": "硝基甲苯", "material.gtceu.polymineral_leachate": "多矿物浸出液", "material.gtceu.uranium_233": "铀233", - "material.gtceu.plutonium_242": "钚242", - "material.gtceu.plutonium_238": "钚238", + "material.gtceu.plutonium_240": "钚240", "__TRANSGENDER__.footer": "========", "__TRANSGENDER__.flufff": "> 超越矩阵 <", "__TRANSGENDER__.header": "========", diff --git a/kubejs/assets/gtceu/lang/zh_tw.json b/kubejs/assets/gtceu/lang/zh_tw.json index 2100934b1..6c4c2dd9e 100644 --- a/kubejs/assets/gtceu/lang/zh_tw.json +++ b/kubejs/assets/gtceu/lang/zh_tw.json @@ -444,8 +444,7 @@ "material.gtceu.manganese_ii_chloride": "Manganese II Chloride", "material.gtceu.iron_ii_fluoride": "Iron II Fluoride", "material.gtceu.uranium_233": "Uranium 233", - "material.gtceu.plutonium_238": "Plutonium 238", - "material.gtceu.plutonium_242": "Plutonium 242", + "material.gtceu.plutonium_240": "Plutonium 240", "gtceu.uhv_voltage_coil.desc": "Legendary Coil", "gtceu.uev_voltage_coil.desc": "Supreme Coil", "__HM_MISC__.header": "============", diff --git a/kubejs/assets/gtceu/textures/block/multiblock/fission_reactor/overlay_front.png b/kubejs/assets/gtceu/textures/block/multiblock/fission_reactor/overlay_front.png new file mode 100644 index 000000000..9738cd533 Binary files /dev/null and b/kubejs/assets/gtceu/textures/block/multiblock/fission_reactor/overlay_front.png differ diff --git a/kubejs/assets/gtceu/textures/block/multiblock/fission_reactor/overlay_front_active.png b/kubejs/assets/gtceu/textures/block/multiblock/fission_reactor/overlay_front_active.png new file mode 100644 index 000000000..9cdaacd8d Binary files /dev/null and b/kubejs/assets/gtceu/textures/block/multiblock/fission_reactor/overlay_front_active.png differ diff --git a/kubejs/assets/kubejs/blockstates/block/lead_shield_casing.json b/kubejs/assets/kubejs/blockstates/block/lead_shield_casing.json new file mode 100644 index 000000000..67cbe66a1 --- /dev/null +++ b/kubejs/assets/kubejs/blockstates/block/lead_shield_casing.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "kubejs:block/lead_shield_casing.json" + } + } +} diff --git a/kubejs/assets/kubejs/lang/en_us.json b/kubejs/assets/kubejs/lang/en_us.json index 80b7ff3f4..2b6f43b66 100644 --- a/kubejs/assets/kubejs/lang/en_us.json +++ b/kubejs/assets/kubejs/lang/en_us.json @@ -1,4 +1,7 @@ { + "item.kubejs.marshmallow": "Marshmallow", + "item.kubejs.milk_chocolate": "Milk Chocolate", + "item.kubejs.graham_cracker": "Graham Cracker", "item.kubejs.smore_1": "S'more S'mingot", "item.kubejs.smore_2": "MoreS'more DoubleS'mingot", "item.kubejs.smore_4": "FourS'more QuadS'mingot", diff --git a/kubejs/assets/kubejs/textures/item/smore/graham_cracker.png b/kubejs/assets/kubejs/textures/item/smore/graham_cracker.png new file mode 100644 index 000000000..6d9be4fb1 Binary files /dev/null and b/kubejs/assets/kubejs/textures/item/smore/graham_cracker.png differ diff --git a/kubejs/assets/kubejs/textures/item/smore/marshmallow.png b/kubejs/assets/kubejs/textures/item/smore/marshmallow.png new file mode 100644 index 000000000..4d6a6b82a Binary files /dev/null and b/kubejs/assets/kubejs/textures/item/smore/marshmallow.png differ diff --git a/kubejs/assets/kubejs/textures/item/smore/milk_chocolate.png b/kubejs/assets/kubejs/textures/item/smore/milk_chocolate.png new file mode 100644 index 000000000..f67c747dd Binary files /dev/null and b/kubejs/assets/kubejs/textures/item/smore/milk_chocolate.png differ diff --git a/kubejs/assets/nuclearcraft/lang/en_us.json b/kubejs/assets/nuclearcraft/lang/en_us.json deleted file mode 100644 index 79d0eb0f7..000000000 --- a/kubejs/assets/nuclearcraft/lang/en_us.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "item.nuclearcraft.plate_advanced": "Advanced Nuclear Plate", - "item.nuclearcraft.plate_basic": "Basic Nuclear Plate", - "item.nuclearcraft.plate_du": "DU Nuclear Plate", - "item.nuclearcraft.plate_elite": "Elite Nuclear Plate", - "item.nuclearcraft.coil_copper": "Copper Coil", - "item.nuclearcraft.coil_magnesium_diboride": "Magnesium Diboride Coil", - "block.nuclearcraft.graphite_block": "Graphite Moderator", - "block.nuclearcraft.beryllium_block": "Beryllium Moderator" -} \ No newline at end of file diff --git a/kubejs/assets/nuclearcraft/lang/it_it.json b/kubejs/assets/nuclearcraft/lang/it_it.json deleted file mode 100644 index d2a0c6752..000000000 --- a/kubejs/assets/nuclearcraft/lang/it_it.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "item.nuclearcraft.plate_advanced": "Placcatura Nucleare Avanzata", - "item.nuclearcraft.plate_basic": "Placcatura Nucleare Basilare", - "item.nuclearcraft.plate_du": "Placcatura Nucleare DU", - "item.nuclearcraft.plate_elite": "Placcatura Nucleare Elite", - "item.nuclearcraft.coil_copper": "Bobina in Rame", - "item.nuclearcraft.coil_magnesium_diboride": "Bobina in Diboruro di Magnesio", - "block.nuclearcraft.graphite_block": "Moderatore in Grafite", - "block.nuclearcraft.beryllium_block": "Moderatore in Berillio" -} \ No newline at end of file diff --git a/kubejs/assets/nuclearcraft/lang/pt_br.json b/kubejs/assets/nuclearcraft/lang/pt_br.json deleted file mode 100644 index 714d32db4..000000000 --- a/kubejs/assets/nuclearcraft/lang/pt_br.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "item.nuclearcraft.plate_advanced": "Placa nuclear avançada", - "item.nuclearcraft.plate_basic": "Placa nuclear básica", - "item.nuclearcraft.plate_du": "Placa nuclear DU", - "item.nuclearcraft.plate_elite": "Placa nuclear de elite", - "item.nuclearcraft.coil_copper": "Bobina de cobre", - "item.nuclearcraft.coil_magnesium_diboride": "Bobina de diboreto de magnésio", - "block.nuclearcraft.graphite_block": "Moderador de grafite", - "block.nuclearcraft.beryllium_block": "Moderador de berílio" -} diff --git a/kubejs/assets/nuclearcraft/lang/ru_ru.json b/kubejs/assets/nuclearcraft/lang/ru_ru.json deleted file mode 100644 index 67fb6050a..000000000 --- a/kubejs/assets/nuclearcraft/lang/ru_ru.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "item.nuclearcraft.plate_advanced": "Улучшенная ядерная обшивка", - "item.nuclearcraft.plate_basic": "Базовая ядерная обшивка", - "item.nuclearcraft.plate_du": "ДУ ядерная ошибка", - "item.nuclearcraft.plate_elite": "Элитная ядерная обшивка", - "item.nuclearcraft.coil_copper": "Медная катушка", - "item.nuclearcraft.coil_magnesium_diboride": "Катушка из диборгита магния", - "block.nuclearcraft.graphite_block": "Графитовый замедлитель", - "block.nuclearcraft.beryllium_block": "Бериллиевый замедлитель" -} diff --git a/kubejs/assets/nuclearcraft/lang/zh_cn.json b/kubejs/assets/nuclearcraft/lang/zh_cn.json deleted file mode 100644 index cc6599d71..000000000 --- a/kubejs/assets/nuclearcraft/lang/zh_cn.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "item.nuclearcraft.plate_advanced": "高级核子板", - "item.nuclearcraft.plate_basic": "基础核子板", - "item.nuclearcraft.plate_du": "贫铀核子板", - "item.nuclearcraft.plate_elite": "精英核子板", - "item.nuclearcraft.coil_copper": "铜线圈", - "item.nuclearcraft.coil_magnesium_diboride": "二硼化镁线圈", - "block.nuclearcraft.graphite_block": "石墨减速剂", - "block.nuclearcraft.beryllium_block": "铍减速剂" -} diff --git a/kubejs/assets/nuclearcraft/textures/item/fuel/readme.txt b/kubejs/assets/nuclearcraft/textures/item/fuel/readme.txt deleted file mode 100644 index f02a4c4b5..000000000 --- a/kubejs/assets/nuclearcraft/textures/item/fuel/readme.txt +++ /dev/null @@ -1,50 +0,0 @@ -NuclearCraft Custom Fuel Textures -================================================== - -This directory contains textures for custom fission fuels. - -AUTOMATIC TEXTURE GENERATION: - Textures are automatically generated from the blank fuel template - with color tints based on fuel name and type. The system will: - - Generate unique colors for each fuel based on its name - - Apply darker tones for depleted fuels - - Apply variant-specific color shifts (oxide, nitride, etc.) - - Skip generation if a texture already exists - -CUSTOM TEXTURES: - You can override auto-generated textures by placing your own - PNG files in the appropriate directories. The generator will - not overwrite existing textures. - -Directory Structure: - fuel/ - / (e.g., uranium, thorium, plutonium) - .png Active fuel texture - _ox.png Oxide variant - _ni.png Nitride variant - _za.png Zirconium Alloy variant - _tr.png TRISO variant - depleted/ - .png Depleted fuel texture - _ox.png Depleted oxide - _ni.png Depleted nitride - _za.png Depleted zirconium alloy - _tr.png Depleted TRISO - -Texture Specifications: - - Format: PNG with transparency support - - Size: 16x16 pixels (or 32x32 for HD) - - Color coding (auto-applied): - * Base: Bright, vibrant colors (hash-based) - * Oxide (_ox): Lighter with white/gray tones - * Nitride (_ni): Blue/purple tones - * Zirconium Alloy (_za): Metallic silver - * TRISO (_tr): Warmer tones - * Depleted: Darker, grayer versions - -Registered Custom Fuel Groups: - -To regenerate textures: - 1. Delete the texture files you want to regenerate - 2. Run the command: /nc_fuel_models - 3. Press F3+T in-game to reload resources diff --git a/kubejs/assets/nuclearcraft/textures/item/material/isotope/americium/241.png b/kubejs/assets/nuclearcraft/textures/item/material/isotope/americium/241.png deleted file mode 100644 index 726257381..000000000 Binary files a/kubejs/assets/nuclearcraft/textures/item/material/isotope/americium/241.png and /dev/null differ diff --git a/kubejs/assets/nuclearcraft/textures/item/material/isotope/americium/242.png b/kubejs/assets/nuclearcraft/textures/item/material/isotope/americium/242.png deleted file mode 100644 index 2a534a993..000000000 Binary files a/kubejs/assets/nuclearcraft/textures/item/material/isotope/americium/242.png and /dev/null differ diff --git a/kubejs/assets/nuclearcraft/textures/item/material/isotope/americium/243.png b/kubejs/assets/nuclearcraft/textures/item/material/isotope/americium/243.png deleted file mode 100644 index e2ef732e3..000000000 Binary files a/kubejs/assets/nuclearcraft/textures/item/material/isotope/americium/243.png and /dev/null differ diff --git a/kubejs/assets/nuclearcraft/textures/item/material/isotope/berkelium/000.png b/kubejs/assets/nuclearcraft/textures/item/material/isotope/berkelium/000.png deleted file mode 100644 index a76980990..000000000 Binary files a/kubejs/assets/nuclearcraft/textures/item/material/isotope/berkelium/000.png and /dev/null differ diff --git a/kubejs/assets/nuclearcraft/textures/item/material/isotope/berkelium/247.png b/kubejs/assets/nuclearcraft/textures/item/material/isotope/berkelium/247.png deleted file mode 100644 index 6e26640f6..000000000 Binary files a/kubejs/assets/nuclearcraft/textures/item/material/isotope/berkelium/247.png and /dev/null differ diff --git a/kubejs/assets/nuclearcraft/textures/item/material/isotope/berkelium/248.png b/kubejs/assets/nuclearcraft/textures/item/material/isotope/berkelium/248.png deleted file mode 100644 index 94d9fadc0..000000000 Binary files a/kubejs/assets/nuclearcraft/textures/item/material/isotope/berkelium/248.png and /dev/null differ diff --git a/kubejs/assets/nuclearcraft/textures/item/material/isotope/californium/250.png b/kubejs/assets/nuclearcraft/textures/item/material/isotope/californium/250.png deleted file mode 100644 index 85f0ef0b3..000000000 Binary files a/kubejs/assets/nuclearcraft/textures/item/material/isotope/californium/250.png and /dev/null differ diff --git a/kubejs/assets/nuclearcraft/textures/item/material/isotope/californium/251.png b/kubejs/assets/nuclearcraft/textures/item/material/isotope/californium/251.png deleted file mode 100644 index 7a531fb87..000000000 Binary files a/kubejs/assets/nuclearcraft/textures/item/material/isotope/californium/251.png and /dev/null differ diff --git a/kubejs/assets/nuclearcraft/textures/item/material/isotope/californium/252.png b/kubejs/assets/nuclearcraft/textures/item/material/isotope/californium/252.png deleted file mode 100644 index f7972d0f9..000000000 Binary files a/kubejs/assets/nuclearcraft/textures/item/material/isotope/californium/252.png and /dev/null differ diff --git a/kubejs/assets/nuclearcraft/textures/item/material/isotope/curium/000.png b/kubejs/assets/nuclearcraft/textures/item/material/isotope/curium/000.png deleted file mode 100644 index 7787fd96b..000000000 Binary files a/kubejs/assets/nuclearcraft/textures/item/material/isotope/curium/000.png and /dev/null differ diff --git a/kubejs/assets/nuclearcraft/textures/item/material/isotope/curium/243.png b/kubejs/assets/nuclearcraft/textures/item/material/isotope/curium/243.png deleted file mode 100644 index 42879ab67..000000000 Binary files a/kubejs/assets/nuclearcraft/textures/item/material/isotope/curium/243.png and /dev/null differ diff --git a/kubejs/assets/nuclearcraft/textures/item/material/isotope/curium/245.png b/kubejs/assets/nuclearcraft/textures/item/material/isotope/curium/245.png deleted file mode 100644 index 441956018..000000000 Binary files a/kubejs/assets/nuclearcraft/textures/item/material/isotope/curium/245.png and /dev/null differ diff --git a/kubejs/assets/nuclearcraft/textures/item/material/isotope/neptunium/000.png b/kubejs/assets/nuclearcraft/textures/item/material/isotope/neptunium/000.png deleted file mode 100644 index 1e2dc0899..000000000 Binary files a/kubejs/assets/nuclearcraft/textures/item/material/isotope/neptunium/000.png and /dev/null differ diff --git a/kubejs/assets/nuclearcraft/textures/item/material/isotope/neptunium/236.png b/kubejs/assets/nuclearcraft/textures/item/material/isotope/neptunium/236.png deleted file mode 100644 index 928db8fc1..000000000 Binary files a/kubejs/assets/nuclearcraft/textures/item/material/isotope/neptunium/236.png and /dev/null differ diff --git a/kubejs/assets/nuclearcraft/textures/item/material/isotope/neptunium/237.png b/kubejs/assets/nuclearcraft/textures/item/material/isotope/neptunium/237.png deleted file mode 100644 index 3c8c34e73..000000000 Binary files a/kubejs/assets/nuclearcraft/textures/item/material/isotope/neptunium/237.png and /dev/null differ diff --git a/kubejs/assets/nuclearcraft/textures/item/material/isotope/plutonium/000.png b/kubejs/assets/nuclearcraft/textures/item/material/isotope/plutonium/000.png deleted file mode 100644 index fcaa2edff..000000000 Binary files a/kubejs/assets/nuclearcraft/textures/item/material/isotope/plutonium/000.png and /dev/null differ diff --git a/kubejs/assets/nuclearcraft/textures/item/material/isotope/plutonium/238.png b/kubejs/assets/nuclearcraft/textures/item/material/isotope/plutonium/238.png deleted file mode 100644 index 6d41bb245..000000000 Binary files a/kubejs/assets/nuclearcraft/textures/item/material/isotope/plutonium/238.png and /dev/null differ diff --git a/kubejs/assets/nuclearcraft/textures/item/material/isotope/plutonium/242.png b/kubejs/assets/nuclearcraft/textures/item/material/isotope/plutonium/242.png deleted file mode 100644 index 521b53837..000000000 Binary files a/kubejs/assets/nuclearcraft/textures/item/material/isotope/plutonium/242.png and /dev/null differ diff --git a/kubejs/assets/nuclearcraft/textures/item/material/isotope/uranium/000.png b/kubejs/assets/nuclearcraft/textures/item/material/isotope/uranium/000.png deleted file mode 100644 index ffb30db76..000000000 Binary files a/kubejs/assets/nuclearcraft/textures/item/material/isotope/uranium/000.png and /dev/null differ diff --git a/kubejs/assets/nuclearcraft/textures/item/material/isotope/uranium/233.png b/kubejs/assets/nuclearcraft/textures/item/material/isotope/uranium/233.png deleted file mode 100644 index 27983da1f..000000000 Binary files a/kubejs/assets/nuclearcraft/textures/item/material/isotope/uranium/233.png and /dev/null differ diff --git a/kubejs/assets/nuclearcraft/textures/item/material/isotope/uranium/234.png b/kubejs/assets/nuclearcraft/textures/item/material/isotope/uranium/234.png deleted file mode 100644 index 94fd64e4a..000000000 Binary files a/kubejs/assets/nuclearcraft/textures/item/material/isotope/uranium/234.png and /dev/null differ diff --git a/kubejs/assets/phoenix_fission/lang/en_us.json b/kubejs/assets/phoenix_fission/lang/en_us.json new file mode 100644 index 000000000..6c32cf518 --- /dev/null +++ b/kubejs/assets/phoenix_fission/lang/en_us.json @@ -0,0 +1,52 @@ +{ + "item.phoenix_fission.tbu_fuel": "TBU Fuel", + "item.phoenix_fission.leu_235_fuel": "LEU-235 Fuel", + "item.phoenix_fission.heu_235_fuel": "HEU-235 Fuel", + "item.phoenix_fission.leu_233_fuel": "LEU-233 Fuel", + "item.phoenix_fission.heu_233_fuel": "HEU-233 Fuel", + "item.phoenix_fission.mix_237_fuel": "MIX-237 Fuel", + "item.phoenix_fission.mix_239_fuel": "MIX-239 Fuel", + "item.phoenix_fission.mix_241_fuel": "MIX-241 Fuel", + "item.phoenix_fission.lep_239_fuel": "LEP-239 Fuel", + "item.phoenix_fission.hep_239_fuel": "HEP-239 Fuel", + "item.phoenix_fission.lep_241_fuel": "LEP-241 Fuel", + "item.phoenix_fission.hep_241_fuel": "HEP-241 Fuel", + "item.phoenix_fission.depleted_tbu_fuel": "Depleted TBU Fuel", + "item.phoenix_fission.depleted_leu_235_fuel": "Depleted LEU-235 Fuel", + "item.phoenix_fission.depleted_heu_235_fuel": "Depleted HEU-235 Fuel", + "item.phoenix_fission.depleted_leu_233_fuel": "Depleted LEU-233 Fuel", + "item.phoenix_fission.depleted_heu_233_fuel": "Depleted HEU-233 Fuel", + "item.phoenix_fission.depleted_mix_237_fuel": "Depleted MIX-237 Fuel", + "item.phoenix_fission.depleted_mix_239_fuel": "Depleted MIX-239 Fuel", + "item.phoenix_fission.depleted_mix_241_fuel": "Depleted MIX-241 Fuel", + "item.phoenix_fission.depleted_lep_239_fuel": "Depleted LEP-239 Fuel", + "item.phoenix_fission.depleted_hep_239_fuel": "Depleted HEP-239 Fuel", + "item.phoenix_fission.depleted_lep_241_fuel": "Depleted LEP-241 Fuel", + "item.phoenix_fission.depleted_hep_241_fuel": "Depleted HEP-241 Fuel", + "block.phoenix_fission.tbu_fuel_rod": "TBU Fuel Rod", + "block.phoenix_fission.leu_235_fuel_rod": "LEU-235 Fuel Rod", + "block.phoenix_fission.heu_235_fuel_rod": "HEU-235 Fuel Rod", + "block.phoenix_fission.leu_233_fuel_rod": "LEU-233 Fuel Rod", + "block.phoenix_fission.heu_233_fuel_rod": "HEU-233 Fuel Rod", + "block.phoenix_fission.mix_237_fuel_rod": "MIX-237 Fuel Rod", + "block.phoenix_fission.mix_239_fuel_rod": "MIX-239 Fuel Rod", + "block.phoenix_fission.mix_241_fuel_rod": "MIX-241 Fuel Rod", + "block.phoenix_fission.lep_239_fuel_rod": "LEP-239 Fuel Rod", + "block.phoenix_fission.hep_239_fuel_rod": "HEP-239 Fuel Rod", + "block.phoenix_fission.lep_241_fuel_rod": "LEP-241 Fuel Rod", + "block.phoenix_fission.hep_241_fuel_rod": "HEP-241 Fuel Rod", + "block.phoenix_fission.heat_vent": "Fission Reactor Heat Vent", + "block.phoenix_fission.cryotheum_heat_sink": "Cryotheum Heat Sink", + "block.phoenix_fission.water_cooler": "Fission Reactor Water Cooler", + "block.phoenix_fission.distilled_water_cooler": "Advanced Fission Reactor Water Cooler", + "block.phoenix_fission.ice_cooler": "Fission Reactor Ice Cooler", + "block.phoenix_fission.sodium_potassium_cooler": "Fission Reactor Molten Salt Cooler", + "block.phoenix_fission.liquid_helium_cooler": "Fission Reactor Gas Cooler", + "block.phoenix_fission.graphite_moderator": "Graphite Moderator", + "block.phoenix_fission.beryllium_moderator": "Beryllium Moderator", + "item.phoenix_fission.control_rod": "Fission Control Rod", + "block.phoenix_fission.control_rod_assembly": "Fission Control Rod Assembly", + "block.phoenix_fission.seebeck_module": "Seebeck Module", + "item.phoenix_fission.light_radiation_shielding": "Light Radiation Shielding", + "item.phoenix_fission.heavy_radiation_shielding": "Heavy Radiation Shielding" +} diff --git a/kubejs/assets/phoenix_fission/models/block/control_rod_assembly.json b/kubejs/assets/phoenix_fission/models/block/control_rod_assembly.json new file mode 100644 index 000000000..e97fb9244 --- /dev/null +++ b/kubejs/assets/phoenix_fission/models/block/control_rod_assembly.json @@ -0,0 +1,113 @@ +{ + "format_version": "1.9.0", + "credit": "Made with Blockbench", + "parent": "minecraft:block/block", + "texture_size": [48, 32], + "textures": { + "0": "phoenix_fission:block/control_rod_assembly", + "particle": "phoenix_fission:block/control_rod_assembly" + }, + "elements": [ + { + "name": "Rod 1", + "from": [3, 2, 3], + "to": [6, 14, 6], + "rotation": {"angle": 0, "axis": "y", "origin": [3, 1, 3]}, + "faces": { + "north": {"uv": [6.33333, 10, 7.33333, 16], "texture": "#0"}, + "east": {"uv": [7.33333, 10, 8.33333, 16], "texture": "#0"}, + "south": {"uv": [8.33333, 10, 9.33333, 16], "texture": "#0"}, + "west": {"uv": [9.33333, 10, 10.33333, 16], "texture": "#0"} + } + }, + { + "name": "Rod 2", + "from": [10, 2, 3], + "to": [13, 14, 6], + "rotation": {"angle": 0, "axis": "y", "origin": [3, 1, 3]}, + "faces": { + "north": {"uv": [6.33333, 10, 7.33333, 16], "texture": "#0"}, + "east": {"uv": [7.33333, 10, 8.33333, 16], "texture": "#0"}, + "south": {"uv": [8.33333, 10, 9.33333, 16], "texture": "#0"}, + "west": {"uv": [9.33333, 10, 10.33333, 16], "texture": "#0"} + } + }, + { + "name": "Rod 3", + "from": [10, 2, 10], + "to": [13, 14, 13], + "rotation": {"angle": 0, "axis": "y", "origin": [3, 1, 3]}, + "faces": { + "north": {"uv": [6.33333, 10, 7.33333, 16], "texture": "#0"}, + "east": {"uv": [7.33333, 10, 8.33333, 16], "texture": "#0"}, + "south": {"uv": [8.33333, 10, 9.33333, 16], "texture": "#0"}, + "west": {"uv": [9.33333, 10, 10.33333, 16], "texture": "#0"} + } + }, + { + "name": "Rod 4", + "from": [3, 2, 10], + "to": [6, 14, 13], + "rotation": {"angle": 0, "axis": "y", "origin": [3, 1, 3]}, + "faces": { + "north": {"uv": [6.33333, 10, 7.33333, 16], "texture": "#0"}, + "east": {"uv": [7.33333, 10, 8.33333, 16], "texture": "#0"}, + "south": {"uv": [8.33333, 10, 9.33333, 16], "texture": "#0"}, + "west": {"uv": [9.33333, 10, 10.33333, 16], "texture": "#0"} + } + }, + { + "name": "Plate 1", + "from": [0, 0, 0], + "to": [16, 2, 16], + "faces": { + "north": {"uv": [5.33333, 0, 10.66667, 1], "texture": "#0"}, + "east": {"uv": [5.33333, 1, 10.66667, 2], "texture": "#0"}, + "south": {"uv": [5.33333, 2, 10.66667, 3], "texture": "#0"}, + "west": {"uv": [5.33333, 3, 10.66667, 4], "texture": "#0"}, + "up": {"uv": [0, 0, 5.33333, 8], "texture": "#0"}, + "down": {"uv": [0, 8, 5.33333, 16], "texture": "#0"} + } + }, + { + "name": "Plate 2", + "from": [1, 5, 1], + "to": [15, 6, 15], + "faces": { + "north": {"uv": [11.33333, 14, 16, 14.5], "texture": "#0"}, + "east": {"uv": [11.33333, 14.5, 16, 15], "texture": "#0"}, + "south": {"uv": [11.33333, 15, 16, 15.5], "texture": "#0"}, + "west": {"uv": [11.33333, 15.5, 16, 16], "texture": "#0"}, + "up": {"uv": [11.33333, 0, 16, 7], "texture": "#0"}, + "down": {"uv": [11.33333, 7, 16, 14], "texture": "#0"} + } + }, + { + "name": "Plate 3", + "from": [1, 10, 1], + "to": [15, 11, 15], + "faces": { + "north": {"uv": [11.33333, 14, 16, 14.5], "texture": "#0"}, + "east": {"uv": [11.33333, 14.5, 16, 15], "texture": "#0"}, + "south": {"uv": [11.33333, 15, 16, 15.5], "texture": "#0"}, + "west": {"uv": [11.33333, 15.5, 16, 16], "texture": "#0"}, + "up": {"uv": [11.33333, 0, 16, 7], "texture": "#0"}, + "down": {"uv": [11.33333, 7, 16, 14], "texture": "#0"} + } + }, + { + "name": "Plate 4", + "from": [0, 14, 0], + "to": [16, 16, 16], + "faces": { + "north": {"uv": [5.33333, 0, 10.66667, 1], "texture": "#0"}, + "east": {"uv": [5.33333, 1, 10.66667, 2], "texture": "#0"}, + "south": {"uv": [5.33333, 2, 10.66667, 3], "texture": "#0"}, + "west": {"uv": [5.33333, 3, 10.66667, 4], "texture": "#0"}, + "up": {"uv": [0, 0, 5.33333, 8], "texture": "#0"}, + "down": {"uv": [0, 8, 5.33333, 16], "texture": "#0"} + } + } + ], + "display": {} +} diff --git a/kubejs/assets/phoenix_fission/models/block/lead_lined_casing.json b/kubejs/assets/phoenix_fission/models/block/lead_lined_casing.json new file mode 100644 index 000000000..7d78ce0f4 --- /dev/null +++ b/kubejs/assets/phoenix_fission/models/block/lead_lined_casing.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "phoenix_fission:block/casings/lead_lined/casing" + } +} diff --git a/kubejs/assets/phoenix_fission/models/block/seebeck_module.json b/kubejs/assets/phoenix_fission/models/block/seebeck_module.json new file mode 100644 index 000000000..e2e127724 --- /dev/null +++ b/kubejs/assets/phoenix_fission/models/block/seebeck_module.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "phoenix_fission:block/seebeck_module" + } +} diff --git a/kubejs/assets/phoenix_fission/textures/block/casings/lead_lined/casing.png b/kubejs/assets/phoenix_fission/textures/block/casings/lead_lined/casing.png new file mode 100644 index 000000000..e627b4682 Binary files /dev/null and b/kubejs/assets/phoenix_fission/textures/block/casings/lead_lined/casing.png differ diff --git a/kubejs/assets/phoenix_fission/textures/block/casings/lead_lined/casing.png.mcmeta b/kubejs/assets/phoenix_fission/textures/block/casings/lead_lined/casing.png.mcmeta new file mode 100644 index 000000000..d033a14e3 --- /dev/null +++ b/kubejs/assets/phoenix_fission/textures/block/casings/lead_lined/casing.png.mcmeta @@ -0,0 +1,5 @@ +{ + "ldlib": { + "connection": "phoenix_fission:block/casings/lead_lined/casing_ctm" + } +} diff --git a/kubejs/assets/phoenix_fission/textures/block/casings/lead_lined/casing_ctm.png b/kubejs/assets/phoenix_fission/textures/block/casings/lead_lined/casing_ctm.png new file mode 100644 index 000000000..df665ad83 Binary files /dev/null and b/kubejs/assets/phoenix_fission/textures/block/casings/lead_lined/casing_ctm.png differ diff --git a/kubejs/assets/phoenix_fission/textures/block/casings/lead_lined/glass.png b/kubejs/assets/phoenix_fission/textures/block/casings/lead_lined/glass.png new file mode 100644 index 000000000..71578e48a Binary files /dev/null and b/kubejs/assets/phoenix_fission/textures/block/casings/lead_lined/glass.png differ diff --git a/kubejs/assets/phoenix_fission/textures/block/control_rod_assembly.png b/kubejs/assets/phoenix_fission/textures/block/control_rod_assembly.png new file mode 100644 index 000000000..98a08d2ab Binary files /dev/null and b/kubejs/assets/phoenix_fission/textures/block/control_rod_assembly.png differ diff --git a/kubejs/assets/phoenix_fission/textures/block/mechanic/cooler_cell.png b/kubejs/assets/phoenix_fission/textures/block/mechanic/cooler_cell.png new file mode 100644 index 000000000..71578e48a Binary files /dev/null and b/kubejs/assets/phoenix_fission/textures/block/mechanic/cooler_cell.png differ diff --git a/kubejs/assets/phoenix_fission/textures/block/mechanic/fuel_cell.png b/kubejs/assets/phoenix_fission/textures/block/mechanic/fuel_cell.png new file mode 100644 index 000000000..5eca61603 Binary files /dev/null and b/kubejs/assets/phoenix_fission/textures/block/mechanic/fuel_cell.png differ diff --git a/kubejs/assets/phoenix_fission/textures/block/mechanic/moderation_cell.png b/kubejs/assets/phoenix_fission/textures/block/mechanic/moderation_cell.png new file mode 100644 index 000000000..5eca61603 Binary files /dev/null and b/kubejs/assets/phoenix_fission/textures/block/mechanic/moderation_cell.png differ diff --git a/kubejs/assets/phoenix_fission/textures/block/seebeck_module.png b/kubejs/assets/phoenix_fission/textures/block/seebeck_module.png new file mode 100644 index 000000000..bba74e4cd Binary files /dev/null and b/kubejs/assets/phoenix_fission/textures/block/seebeck_module.png differ diff --git a/kubejs/assets/phoenix_fission/textures/item/control_rod.png b/kubejs/assets/phoenix_fission/textures/item/control_rod.png new file mode 100644 index 000000000..4187155a2 Binary files /dev/null and b/kubejs/assets/phoenix_fission/textures/item/control_rod.png differ diff --git a/kubejs/assets/nuclearcraft/textures/item/fuel/americium/depleted/hea_242.png b/kubejs/assets/phoenix_fission/textures/item/fuel/americium/depleted/hea_242.png similarity index 100% rename from kubejs/assets/nuclearcraft/textures/item/fuel/americium/depleted/hea_242.png rename to kubejs/assets/phoenix_fission/textures/item/fuel/americium/depleted/hea_242.png diff --git a/kubejs/assets/nuclearcraft/textures/item/fuel/americium/depleted/lea_242.png b/kubejs/assets/phoenix_fission/textures/item/fuel/americium/depleted/lea_242.png similarity index 100% rename from kubejs/assets/nuclearcraft/textures/item/fuel/americium/depleted/lea_242.png rename to kubejs/assets/phoenix_fission/textures/item/fuel/americium/depleted/lea_242.png diff --git a/kubejs/assets/nuclearcraft/textures/item/fuel/americium/hea_242.png b/kubejs/assets/phoenix_fission/textures/item/fuel/americium/hea_242.png similarity index 100% rename from kubejs/assets/nuclearcraft/textures/item/fuel/americium/hea_242.png rename to kubejs/assets/phoenix_fission/textures/item/fuel/americium/hea_242.png diff --git a/kubejs/assets/nuclearcraft/textures/item/fuel/americium/lea_242.png b/kubejs/assets/phoenix_fission/textures/item/fuel/americium/lea_242.png similarity index 100% rename from kubejs/assets/nuclearcraft/textures/item/fuel/americium/lea_242.png rename to kubejs/assets/phoenix_fission/textures/item/fuel/americium/lea_242.png diff --git a/kubejs/assets/nuclearcraft/textures/item/fuel/neptunium/depleted/hen_236.png b/kubejs/assets/phoenix_fission/textures/item/fuel/neptunium/depleted/hen_236.png similarity index 100% rename from kubejs/assets/nuclearcraft/textures/item/fuel/neptunium/depleted/hen_236.png rename to kubejs/assets/phoenix_fission/textures/item/fuel/neptunium/depleted/hen_236.png diff --git a/kubejs/assets/nuclearcraft/textures/item/fuel/neptunium/depleted/len_236.png b/kubejs/assets/phoenix_fission/textures/item/fuel/neptunium/depleted/len_236.png similarity index 100% rename from kubejs/assets/nuclearcraft/textures/item/fuel/neptunium/depleted/len_236.png rename to kubejs/assets/phoenix_fission/textures/item/fuel/neptunium/depleted/len_236.png diff --git a/kubejs/assets/phoenix_fission/textures/item/fuel/neptunium/depleted/mix_237.png b/kubejs/assets/phoenix_fission/textures/item/fuel/neptunium/depleted/mix_237.png new file mode 100644 index 000000000..536427fcf Binary files /dev/null and b/kubejs/assets/phoenix_fission/textures/item/fuel/neptunium/depleted/mix_237.png differ diff --git a/kubejs/assets/nuclearcraft/textures/item/fuel/neptunium/hen_236.png b/kubejs/assets/phoenix_fission/textures/item/fuel/neptunium/hen_236.png similarity index 100% rename from kubejs/assets/nuclearcraft/textures/item/fuel/neptunium/hen_236.png rename to kubejs/assets/phoenix_fission/textures/item/fuel/neptunium/hen_236.png diff --git a/kubejs/assets/nuclearcraft/textures/item/fuel/neptunium/len_236.png b/kubejs/assets/phoenix_fission/textures/item/fuel/neptunium/len_236.png similarity index 100% rename from kubejs/assets/nuclearcraft/textures/item/fuel/neptunium/len_236.png rename to kubejs/assets/phoenix_fission/textures/item/fuel/neptunium/len_236.png diff --git a/kubejs/assets/phoenix_fission/textures/item/fuel/neptunium/mix_237.png b/kubejs/assets/phoenix_fission/textures/item/fuel/neptunium/mix_237.png new file mode 100644 index 000000000..23d1968cd Binary files /dev/null and b/kubejs/assets/phoenix_fission/textures/item/fuel/neptunium/mix_237.png differ diff --git a/kubejs/assets/nuclearcraft/textures/item/fuel/plutonium/depleted/hep_239.png b/kubejs/assets/phoenix_fission/textures/item/fuel/plutonium/depleted/hep_239.png similarity index 100% rename from kubejs/assets/nuclearcraft/textures/item/fuel/plutonium/depleted/hep_239.png rename to kubejs/assets/phoenix_fission/textures/item/fuel/plutonium/depleted/hep_239.png diff --git a/kubejs/assets/nuclearcraft/textures/item/fuel/plutonium/depleted/hep_241.png b/kubejs/assets/phoenix_fission/textures/item/fuel/plutonium/depleted/hep_241.png similarity index 100% rename from kubejs/assets/nuclearcraft/textures/item/fuel/plutonium/depleted/hep_241.png rename to kubejs/assets/phoenix_fission/textures/item/fuel/plutonium/depleted/hep_241.png diff --git a/kubejs/assets/nuclearcraft/textures/item/fuel/plutonium/depleted/lep_239.png b/kubejs/assets/phoenix_fission/textures/item/fuel/plutonium/depleted/lep_239.png similarity index 100% rename from kubejs/assets/nuclearcraft/textures/item/fuel/plutonium/depleted/lep_239.png rename to kubejs/assets/phoenix_fission/textures/item/fuel/plutonium/depleted/lep_239.png diff --git a/kubejs/assets/nuclearcraft/textures/item/fuel/plutonium/depleted/lep_241.png b/kubejs/assets/phoenix_fission/textures/item/fuel/plutonium/depleted/lep_241.png similarity index 100% rename from kubejs/assets/nuclearcraft/textures/item/fuel/plutonium/depleted/lep_241.png rename to kubejs/assets/phoenix_fission/textures/item/fuel/plutonium/depleted/lep_241.png diff --git a/kubejs/assets/phoenix_fission/textures/item/fuel/plutonium/depleted/mix_239.png b/kubejs/assets/phoenix_fission/textures/item/fuel/plutonium/depleted/mix_239.png new file mode 100644 index 000000000..d95eb2c2e Binary files /dev/null and b/kubejs/assets/phoenix_fission/textures/item/fuel/plutonium/depleted/mix_239.png differ diff --git a/kubejs/assets/phoenix_fission/textures/item/fuel/plutonium/depleted/mix_241.png b/kubejs/assets/phoenix_fission/textures/item/fuel/plutonium/depleted/mix_241.png new file mode 100644 index 000000000..ff229de12 Binary files /dev/null and b/kubejs/assets/phoenix_fission/textures/item/fuel/plutonium/depleted/mix_241.png differ diff --git a/kubejs/assets/nuclearcraft/textures/item/fuel/plutonium/hep_239.png b/kubejs/assets/phoenix_fission/textures/item/fuel/plutonium/hep_239.png similarity index 100% rename from kubejs/assets/nuclearcraft/textures/item/fuel/plutonium/hep_239.png rename to kubejs/assets/phoenix_fission/textures/item/fuel/plutonium/hep_239.png diff --git a/kubejs/assets/nuclearcraft/textures/item/fuel/plutonium/hep_241.png b/kubejs/assets/phoenix_fission/textures/item/fuel/plutonium/hep_241.png similarity index 100% rename from kubejs/assets/nuclearcraft/textures/item/fuel/plutonium/hep_241.png rename to kubejs/assets/phoenix_fission/textures/item/fuel/plutonium/hep_241.png diff --git a/kubejs/assets/nuclearcraft/textures/item/fuel/plutonium/lep_239.png b/kubejs/assets/phoenix_fission/textures/item/fuel/plutonium/lep_239.png similarity index 100% rename from kubejs/assets/nuclearcraft/textures/item/fuel/plutonium/lep_239.png rename to kubejs/assets/phoenix_fission/textures/item/fuel/plutonium/lep_239.png diff --git a/kubejs/assets/nuclearcraft/textures/item/fuel/plutonium/lep_241.png b/kubejs/assets/phoenix_fission/textures/item/fuel/plutonium/lep_241.png similarity index 100% rename from kubejs/assets/nuclearcraft/textures/item/fuel/plutonium/lep_241.png rename to kubejs/assets/phoenix_fission/textures/item/fuel/plutonium/lep_241.png diff --git a/kubejs/assets/phoenix_fission/textures/item/fuel/plutonium/mix_239.png b/kubejs/assets/phoenix_fission/textures/item/fuel/plutonium/mix_239.png new file mode 100644 index 000000000..8ba8a1d5d Binary files /dev/null and b/kubejs/assets/phoenix_fission/textures/item/fuel/plutonium/mix_239.png differ diff --git a/kubejs/assets/phoenix_fission/textures/item/fuel/plutonium/mix_241.png b/kubejs/assets/phoenix_fission/textures/item/fuel/plutonium/mix_241.png new file mode 100644 index 000000000..fde12d883 Binary files /dev/null and b/kubejs/assets/phoenix_fission/textures/item/fuel/plutonium/mix_241.png differ diff --git a/kubejs/assets/nuclearcraft/textures/item/fuel/thorium/depleted/tbu.png b/kubejs/assets/phoenix_fission/textures/item/fuel/thorium/depleted/tbu.png similarity index 100% rename from kubejs/assets/nuclearcraft/textures/item/fuel/thorium/depleted/tbu.png rename to kubejs/assets/phoenix_fission/textures/item/fuel/thorium/depleted/tbu.png diff --git a/kubejs/assets/nuclearcraft/textures/item/fuel/thorium/tbu.png b/kubejs/assets/phoenix_fission/textures/item/fuel/thorium/tbu.png similarity index 100% rename from kubejs/assets/nuclearcraft/textures/item/fuel/thorium/tbu.png rename to kubejs/assets/phoenix_fission/textures/item/fuel/thorium/tbu.png diff --git a/kubejs/assets/nuclearcraft/textures/item/fuel/uranium/depleted/heu_233.png b/kubejs/assets/phoenix_fission/textures/item/fuel/uranium/depleted/heu_233.png similarity index 100% rename from kubejs/assets/nuclearcraft/textures/item/fuel/uranium/depleted/heu_233.png rename to kubejs/assets/phoenix_fission/textures/item/fuel/uranium/depleted/heu_233.png diff --git a/kubejs/assets/nuclearcraft/textures/item/fuel/uranium/depleted/heu_235.png b/kubejs/assets/phoenix_fission/textures/item/fuel/uranium/depleted/heu_235.png similarity index 100% rename from kubejs/assets/nuclearcraft/textures/item/fuel/uranium/depleted/heu_235.png rename to kubejs/assets/phoenix_fission/textures/item/fuel/uranium/depleted/heu_235.png diff --git a/kubejs/assets/nuclearcraft/textures/item/fuel/uranium/depleted/leu_233.png b/kubejs/assets/phoenix_fission/textures/item/fuel/uranium/depleted/leu_233.png similarity index 100% rename from kubejs/assets/nuclearcraft/textures/item/fuel/uranium/depleted/leu_233.png rename to kubejs/assets/phoenix_fission/textures/item/fuel/uranium/depleted/leu_233.png diff --git a/kubejs/assets/nuclearcraft/textures/item/fuel/uranium/depleted/leu_235.png b/kubejs/assets/phoenix_fission/textures/item/fuel/uranium/depleted/leu_235.png similarity index 100% rename from kubejs/assets/nuclearcraft/textures/item/fuel/uranium/depleted/leu_235.png rename to kubejs/assets/phoenix_fission/textures/item/fuel/uranium/depleted/leu_235.png diff --git a/kubejs/assets/nuclearcraft/textures/item/fuel/uranium/heu_233.png b/kubejs/assets/phoenix_fission/textures/item/fuel/uranium/heu_233.png similarity index 100% rename from kubejs/assets/nuclearcraft/textures/item/fuel/uranium/heu_233.png rename to kubejs/assets/phoenix_fission/textures/item/fuel/uranium/heu_233.png diff --git a/kubejs/assets/nuclearcraft/textures/item/fuel/uranium/heu_235.png b/kubejs/assets/phoenix_fission/textures/item/fuel/uranium/heu_235.png similarity index 100% rename from kubejs/assets/nuclearcraft/textures/item/fuel/uranium/heu_235.png rename to kubejs/assets/phoenix_fission/textures/item/fuel/uranium/heu_235.png diff --git a/kubejs/assets/nuclearcraft/textures/item/fuel/uranium/leu_233.png b/kubejs/assets/phoenix_fission/textures/item/fuel/uranium/leu_233.png similarity index 100% rename from kubejs/assets/nuclearcraft/textures/item/fuel/uranium/leu_233.png rename to kubejs/assets/phoenix_fission/textures/item/fuel/uranium/leu_233.png diff --git a/kubejs/assets/nuclearcraft/textures/item/fuel/uranium/leu_235.png b/kubejs/assets/phoenix_fission/textures/item/fuel/uranium/leu_235.png similarity index 100% rename from kubejs/assets/nuclearcraft/textures/item/fuel/uranium/leu_235.png rename to kubejs/assets/phoenix_fission/textures/item/fuel/uranium/leu_235.png diff --git a/kubejs/assets/phoenix_fission/textures/item/heavy_radiation_shielding.png b/kubejs/assets/phoenix_fission/textures/item/heavy_radiation_shielding.png new file mode 100644 index 000000000..145838762 Binary files /dev/null and b/kubejs/assets/phoenix_fission/textures/item/heavy_radiation_shielding.png differ diff --git a/kubejs/assets/phoenix_fission/textures/item/light_radiation_shielding.png b/kubejs/assets/phoenix_fission/textures/item/light_radiation_shielding.png new file mode 100644 index 000000000..134347f0d Binary files /dev/null and b/kubejs/assets/phoenix_fission/textures/item/light_radiation_shielding.png differ diff --git a/kubejs/client_scripts/JEI.js b/kubejs/client_scripts/JEI.js index 3414b7df0..a493e8998 100644 --- a/kubejs/client_scripts/JEI.js +++ b/kubejs/client_scripts/JEI.js @@ -60,32 +60,11 @@ JEIEvents.addItems(event => { event.add(Item.of("ironjetpacks:cell", {Id: "ironjetpacks:reinforced"})) event.add(Item.of("ironjetpacks:cell", {Id: "ironjetpacks:resonant"})) - // NuclearCraft - event.add(["nuclearcraft:tough_alloy_ingot", "nuclearcraft:hard_carbon_ingot", "nuclearcraft:ferroboron_ingot", "nuclearcraft:rhodochrosite_dust"]) - // Thermal event.add("thermal:nuke_tnt") }) JEIEvents.hideFluids(event => { - // hiding NuclearCraft Fluids - // get all nc fluids from index - let ncFluids = Fluid.getTypes().filter(id => id.includes("nuclearcraft")) - - // list of used fluids to not remove - let ncUsedFluid = ["nuclearcraft:hydrated_gelatin", "nuclearcraft:gelatin", "nuclearcraft:sugar", "nuclearcraft:marshmallow", "nuclearcraft:cocoa_butter", "nuclearcraft:pasteurized_milk", "nuclearcraft:chocolate_liquor", "nuclearcraft:unsweetened_chocolate", "nuclearcraft:dark_chocolate", "nuclearcraft:milk_chocolate", "nuclearcraft:technical_water", "nuclearcraft:high_pressure_steam", "nuclearcraft:exhaust_steam"] - - // adds flowing fluid variants to the list so they aren't hidden - ncUsedFluid.forEach(fluid => { ncUsedFluid.push(`${fluid}_flowing`) }) - - // remove used fluids from the full list - ncFluids = ncFluids.filter((el) => !ncUsedFluid.includes(el)) - - // loops through the list and hides all the unwanted fluids for nc - ncFluids.forEach(element => { - event.hide(element) - }) - // Hide Ad Astra fluids Fluid.getTypes().filter(id=>id.includes("ad_astra")).forEach(id => event.hide(id)) diff --git a/kubejs/client_scripts/nukelists.js b/kubejs/client_scripts/nukelists.js index 1b3c684f5..b9c85f90b 100644 --- a/kubejs/client_scripts/nukelists.js +++ b/kubejs/client_scripts/nukelists.js @@ -13,8 +13,6 @@ JEIEvents.hideItems(event => { // Hide items matching the unification patterns. // For definitions, see KubeJS/startup_scripts/unificationPatterns.js event.hide(global.unificationPattern) - event.hide(global.nuclearcraftFuelPattern) - event.hide(global.nuclearcraftIsotopePattern) }) JEIEvents.hideFluids(event => { diff --git a/kubejs/client_scripts/tooltips.js b/kubejs/client_scripts/tooltips.js index 610712b9e..f64278ac7 100644 --- a/kubejs/client_scripts/tooltips.js +++ b/kubejs/client_scripts/tooltips.js @@ -216,24 +216,6 @@ ItemEvents.tooltip(tooltip => { }) }) - // NuclearCraft - tooltip.add("nuclearcraft:rhodochrosite_dust", "§eMnCO₃"); - tooltip.add("nuclearcraft:tough_alloy_ingot", "§eLiFeB"); - tooltip.add("nuclearcraft:ferroboron_ingot", "§eFe₄B"); - tooltip.add("nuclearcraft:hard_carbon_ingot", "§eFe₃C"); - tooltip.add("nuclearcraft:uranium_233", "§eU²³³"); - tooltip.add("nuclearcraft:plutonium_238", "§ePu²³⁸"); - tooltip.add("nuclearcraft:plutonium_242", "§ePu²⁴²"); - tooltip.add("nuclearcraft:neptunium_236", "§eNp²³⁶"); - tooltip.add("nuclearcraft:neptunium_237", "§eNp²³⁷"); - tooltip.add("nuclearcraft:americium_241", "§eAm²⁴¹"); - tooltip.add("nuclearcraft:americium_242", "§eAm²⁴²"); - tooltip.add("nuclearcraft:americium_243", "§eAm²⁴³"); - tooltip.add("nuclearcraft:curium_243", "§eCm²⁴³"); - tooltip.add("nuclearcraft:curium_245", "§eCm²⁴⁵"); - tooltip.add("nuclearcraft:californium_251", "§eCf²⁵¹"); - tooltip.add("nuclearcraft:californium_252", "§eCf²⁵²"); - tooltip.addAdvanced(["/^kubejs:.+infinity_dust_block$/", "kubejs:infinity_dust_block"], (item, adv, text) => { text.add(1, Text.translatable("item.kubejs.infinity_dust_block.tooltip")) }) diff --git a/kubejs/server_scripts/End_Game.js b/kubejs/server_scripts/End_Game.js index b6bf22a51..6a7bb4c2f 100644 --- a/kubejs/server_scripts/End_Game.js +++ b/kubejs/server_scripts/End_Game.js @@ -5,19 +5,19 @@ ServerEvents.recipes(event => { event.recipes.gtceu.assembler("neutron_emitter_plutonium") - .itemInputs("1x nuclearcraft:heavy", "1x gtceu:dense_rhodium_plated_palladium_plate",) + .itemInputs("1x phoenix_fission:heavy_radiation_shielding", "1x gtceu:dense_rhodium_plated_palladium_plate",) .inputFluids("gtceu:americium 432") .itemOutputs("kubejs:neutron_emitter") .duration(1600) .EUt(GTValues.VA[GTValues.UV]) event.recipes.gtceu.assembler("neutron_emitter_curium") - .itemInputs("1x nuclearcraft:heavy", "1x gtceu:dense_rhodium_plated_palladium_plate",) + .itemInputs("1x phoenix_fission:heavy_radiation_shielding", "1x gtceu:dense_rhodium_plated_palladium_plate",) .inputFluids("gtceu:curium 288") .itemOutputs("kubejs:neutron_emitter") .duration(1000) .EUt(GTValues.VA[GTValues.UV]) event.recipes.gtceu.assembler("neutron_emitter_californium") - .itemInputs("1x nuclearcraft:heavy", "1x gtceu:dense_rhodium_plated_palladium_plate",) + .itemInputs("1x phoenix_fission:heavy_radiation_shielding", "1x gtceu:dense_rhodium_plated_palladium_plate",) .inputFluids("gtceu:californium 144") .itemOutputs("kubejs:neutron_emitter") .duration(1200) @@ -299,7 +299,7 @@ ServerEvents.recipes(event => { B: "kubejs:stabilized_plutonium", C: "kubejs:stabilized_californium", F: "gtceu:zpm_field_generator", - P: "nuclearcraft:plate_elite", + P: "phoenix_fission:heavy_radiation_shielding", Z: "#gtceu:circuits/zpm" }) diff --git a/kubejs/server_scripts/Remove_Recipes.js b/kubejs/server_scripts/Remove_Recipes.js index 56a72d6f1..beae01c43 100644 --- a/kubejs/server_scripts/Remove_Recipes.js +++ b/kubejs/server_scripts/Remove_Recipes.js @@ -26,17 +26,6 @@ ServerEvents.recipes(event => { event.remove({ id: "redstone_arsenal:storage/flux_ingot_from_block" }) event.remove({ id: "redstone_arsenal:storage/flux_metal_block" }) - // NuclearCraft - event.remove(/nuclearcraft:fusion.*/) - event.remove(/nuclearcraft:.*electromagnet.*/) - event.remove({ output: ["nuclearcraft:tough_alloy_ingot"] }); - event.remove({ output: ["nuclearcraft:rock_crusher", "nuclearcraft:decay_hastener", "nuclearcraft:irradiator", "nuclearcraft:nuclear_furnace", "nuclearcraft:extractor", "nuclearcraft:electrolyzer", "nuclearcraft:pressurizer", "nuclearcraft:alloy_smelter", "nuclearcraft:centrifuge", "nuclearcraft:manufactory", "nuclearcraft:gas_scrubber", "nuclearcraft:fluid_enricher", "nuclearcraft:isotope_separator", "nuclearcraft:fluid_infuser", "nuclearcraft:chemical_reactor", "nuclearcraft:analyzer", "nuclearcraft:ingot_former", "nuclearcraft:pump", "nuclearcraft:fuel_reprocessor", "nuclearcraft:leacher", "nuclearcraft:crystallizer", "nuclearcraft:assembler", "nuclearcraft:steam_turbine", "nuclearcraft:melter"] }) - event.remove({ output: ["nuclearcraft:nitrogen_collector", "nuclearcraft:compact_nitrogen_collector", "nuclearcraft:lava_collector", "nuclearcraft:dense_nitrogen_collector", "nuclearcraft:compact_helium_collector", "nuclearcraft:helium_collector", "nuclearcraft:dense_helium_collector"] }) - event.remove({ output: ["nuclearcraft:magnesium_deepslate_ore", "nuclearcraft:thorium_deepslate_ore", "nuclearcraft:uranium_deepslate_ore", "nuclearcraft:magnesium_ore", "nuclearcraft:boron_deepslate_ore", "nuclearcraft:cobalt_ore", "nuclearcraft:platinum_deepslate_ore", "nuclearcraft:silver_deepslate_ore", "nuclearcraft:lead_ore", "nuclearcraft:lithium_ore", "nuclearcraft:thorium_ore", "nuclearcraft:tin_ore", "nuclearcraft:cobalt_deepslate_ore", "nuclearcraft:silver_ore", "nuclearcraft:uranium_ore", "nuclearcraft:zinc_ore", "nuclearcraft:boron_ore", "nuclearcraft:lithium_deepslate_ore"] }) - event.remove({ output: ["nuclearcraft:foursmore", "nuclearcraft:evenmoresmore", "nuclearcraft:moresmore", "nuclearcraft:smore"] }) - event.remove({ output: ["nuclearcraft:quantum_flux_regulator", "nuclearcraft:fission_reactor_irradiation_chamber", "nuclearcraft:chamber_port", "nuclearcraft:chamber_terminal", "nuclearcraft:event_horizon_stabilizer", "nuclearcraft:quantum_transformer", "nuclearcraft:black_hole", "nuclearcraft:neutronium_frame", "nuclearcraft:photon_concentrator", "nuclearcraft:redstone_dimmer"] }) - event.remove({ id: "minecraft:nuclearcraft_hard_carbon_dust" }) - // Water Collector event.remove({ output: /water_collector/ }); diff --git a/kubejs/server_scripts/_hardmode/hardmode_processing.js b/kubejs/server_scripts/_hardmode/hardmode_processing.js index 95a9cf2aa..8a5fedf60 100644 --- a/kubejs/server_scripts/_hardmode/hardmode_processing.js +++ b/kubejs/server_scripts/_hardmode/hardmode_processing.js @@ -374,7 +374,7 @@ ServerEvents.recipes(event => { event.recipes.gtceu.large_chemical_reactor("tributyl_phosphate") .inputFluids("gtceu:phosphoryl_chloride 1000", "gtceu:butanol 3000") .outputFluids("gtceu:tributyl_phosphate 1000") - .duration(600).EUt(23040) + .duration(600).EUt(GTValues.VA[GTValues.IV]) // Rare Earth event.recipes.gtceu.electrolyzer("electrolyzing_rare_earth_with_tributyl_phosphate") diff --git a/kubejs/server_scripts/extractor_solidifer.js b/kubejs/server_scripts/extractor_solidifer.js index 573b2bfb3..399c12bc6 100644 --- a/kubejs/server_scripts/extractor_solidifer.js +++ b/kubejs/server_scripts/extractor_solidifer.js @@ -7,20 +7,6 @@ ServerEvents.recipes(event => { extractgas("krypton", "kubejs:solidified_krypton", Fluid.of("gtceu:krypton", 1000)); extractgas("xenon", "kubejs:solidified_xenon", Fluid.of("gtceu:xenon", 1000)); extractgas("argon", "kubejs:solidified_argon", Fluid.of("gtceu:argon", 1000)); - // Extract Nuclearcraft Isotopes - extractisotope("uranium_233", "nuclearcraft:uranium_233", Fluid.of("gtceu:uranium_233", 144)); - extractisotope("plutonium_238", "nuclearcraft:plutonium_238", Fluid.of("gtceu:plutonium_238", 144)) - extractisotope("plutonium_242", "nuclearcraft:plutonium_242", Fluid.of("gtceu:plutonium_242", 144)) - extractisotope("neptunium_237", "nuclearcraft:neptunium_237", Fluid.of("gtceu:neptunium", 144)); - extractisotope("neptunium_236", "nuclearcraft:neptunium_236", Fluid.of("gtceu:neptunium", 144)); - extractisotope("curium_243", "nuclearcraft:curium_243", Fluid.of("gtceu:curium", 144)); - extractisotope("curium_245", "nuclearcraft:curium_245", Fluid.of("gtceu:curium", 144)); - extractisotope("americium_241", "nuclearcraft:americium_241", Fluid.of("gtceu:americium", 144)); - extractisotope("americium_242", "nuclearcraft:americium_242", Fluid.of("gtceu:americium", 144)); - extractisotope("americium_243", "nuclearcraft:americium_243", Fluid.of("gtceu:americium", 144)); - extractisotope("californium_250", "nuclearcraft:californium_250", Fluid.of("gtceu:californium", 144)); - extractisotope("californium_251", "nuclearcraft:californium_251", Fluid.of("gtceu:californium", 144)); - extractisotope("californium_252", "nuclearcraft:californium_252", Fluid.of("gtceu:californium", 144)); function extractgas(recipename, input, output) { event.recipes.gtceu.extractor(recipename) diff --git a/kubejs/server_scripts/fixes_tweaks/ore_smelting.js b/kubejs/server_scripts/fixes_tweaks/ore_smelting.js index 23bbb86b4..b09558cb1 100644 --- a/kubejs/server_scripts/fixes_tweaks/ore_smelting.js +++ b/kubejs/server_scripts/fixes_tweaks/ore_smelting.js @@ -4,8 +4,6 @@ ServerEvents.recipes(event => { // Remove overlapping ore blocks to ingot/dust recipes - event.remove({ id: /^minecraft:nuclearcraft_\w+_ore$/ }) - event.remove({ id: /^minecraft:\w+_from_smelting_[\w_]+_ore$/ }) event.remove({ id: /^minecraft:\w+_from_blasting_[\w_]+_ore$/ }) diff --git a/kubejs/server_scripts/fixes_tweaks/unification/tags.js b/kubejs/server_scripts/fixes_tweaks/unification/tags.js index bda0e0b04..946f74ef0 100644 --- a/kubejs/server_scripts/fixes_tweaks/unification/tags.js +++ b/kubejs/server_scripts/fixes_tweaks/unification/tags.js @@ -79,10 +79,16 @@ ServerEvents.tags("item", event => { // For stonecutting Marble event.add("moni:marble", /^(gtceu:(marble|polished_marble|marble_bricks|cracked_marble_bricks|chiseled_marble|marble_tile|marble_small_tile|marble_windmill_a|marble_windmill_b|small_marble_bricks|square_marble_bricks))$/) - // We're making these Nuclearcraft storage blocks function solely as moderators, so they should not have the tags - event.remove("forge:storage_blocks", ["nuclearcraft:beryllium_block", "nuclearcraft:graphite_block"]); - event.remove("forge:storage_blocks/beryllium", "nuclearcraft:beryllium_block"); - event.remove("forge:storage_blocks/graphite", "nuclearcraft:graphite_block"); + event.add("forge:plastic_plates", "gtceu:polyvinyl_chloride_plate") + event.add("forge:plastic_plates", "gtceu:polybenzimidazole_plate") + event.add("forge:plastic_plates", "gtceu:polyethylene_plate") + event.add("forge:plastic_plates", "gtceu:polytetrafluoroethylene_plate") + event.add("forge:plastic_plates", "gtceu:polyethyl_cyanoacrylate_plate") + event.add("forge:plastic_plates", "gtceu:polyether_ether_ketone_plate") + + event.add("forge:rubber_plates", "gtceu:silicone_rubber_plate") + event.add("forge:rubber_plates", "gtceu:styrene_butadiene_rubber_plate") + event.add("forge:rubber_plates", "gtceu:rubber_plate") // AE2 P2P Attunements event.add("mae2:p2p_attunements/pattern_p2p_tunnel", "expatternprovider:pattern_modifier"); @@ -110,10 +116,5 @@ ServerEvents.tags("block", event => { event.add("minecraft:azalea_grows_on", compacted_sand); event.add("framedblocks:camo_sustain_plant", compacted_sand); - // We're making these Nuclearcraft storage blocks function solely as moderators, so they should not have the tags - event.remove("forge:storage_blocks", ["nuclearcraft:beryllium_block", "nuclearcraft:graphite_block"]); - event.remove("forge:storage_blocks/beryllium", "nuclearcraft:beryllium_block"); - event.remove("forge:storage_blocks/graphite", "nuclearcraft:graphite_block"); - unifyChisel(event); }) diff --git a/kubejs/server_scripts/gregtech/Alloys_Recipes.js b/kubejs/server_scripts/gregtech/Alloys_Recipes.js index 63b517214..0d4cb6759 100644 --- a/kubejs/server_scripts/gregtech/Alloys_Recipes.js +++ b/kubejs/server_scripts/gregtech/Alloys_Recipes.js @@ -72,23 +72,12 @@ ServerEvents.recipes(event => { alloySmeltingVariant( ["4x #forge:dusts/steel", "4x #forge:ingots/steel"], ["#forge:dusts/boron"], - "5x nuclearcraft:ferroboron", 15, GTValues.VA[GTValues.MV], true); + "5x gtceu:ferroboron", 15, GTValues.VA[GTValues.MV], true); alloySmeltingVariant( - ["#forge:ingots/ferroboron"], - ["#forge:dusts/lithium"], - "2x nuclearcraft:tough_alloy", 15, GTValues.VHA[GTValues.LV], false); - - alloySmeltingVariant( - ["#forge:dusts/diamond", "#forge:gems/diamond"], - ["3x #forge:dusts/steel", "3x #forge:ingots/steel"], - "nuclearcraft:hard_carbon", 15, GTValues.VA[GTValues.HV], true); - - event.recipes.gtceu.alloy_smelter("kubejs:fission_reactor_glass") - .itemInputs("nuclearcraft:fission_reactor_casing", "#forge:glass/colorless") - .itemOutputs("nuclearcraft:fission_reactor_glass") - .duration(50) - .EUt(GTValues.VHA[GTValues.LV]) + ["5x #forge:dusts/ferroboron", "5x #forge:ingots/ferroboron"], + ["2x #forge:dusts/lithium"], + "7x gtceu:tough_alloy", 15, GTValues.VHA[GTValues.LV], false); event.remove({ output: "minecraft:netherite_ingot" }) event.recipes.gtceu.alloy_smelter("kubejs:netherite_ingot") diff --git a/kubejs/server_scripts/gregtech/naquadah_reactor.js b/kubejs/server_scripts/gregtech/naquadah_reactor.js index f69f08d3a..80868700f 100644 --- a/kubejs/server_scripts/gregtech/naquadah_reactor.js +++ b/kubejs/server_scripts/gregtech/naquadah_reactor.js @@ -49,7 +49,7 @@ ServerEvents.recipes(event => { // Refinery Recipe event.recipes.gtceu.assembly_line("kubejs:naquadah_refinery") - .itemInputs("gtceu:large_mixer", "4x #gtceu:circuits/uv", "8x nuclearcraft:plate_elite", "4x gtceu:zpm_field_generator", "4x gtceu:uv_hermetic_casing", "2x kubejs:empty_fuel_rod", "2x gtceu:zpm_electric_pump", "2x gtceu:duranium_huge_fluid_pipe", "16x gtceu:double_tritanium_plate") + .itemInputs("gtceu:large_mixer", "4x #gtceu:circuits/uv", "8x phoenix_fission:heavy_radiation_shielding", "4x gtceu:zpm_field_generator", "4x gtceu:uv_hermetic_casing", "2x kubejs:empty_fuel_rod", "2x gtceu:zpm_electric_pump", "2x gtceu:duranium_huge_fluid_pipe", "16x gtceu:double_tritanium_plate") .inputFluids("gtceu:omnium 1152", "gtceu:living_soldering_alloy 1152", "gtceu:polyethyl_cyanoacrylate 2304") .itemOutputs("gtceu:naquadah_refinery") .duration(1500) diff --git a/kubejs/server_scripts/microverse/elite_missions.js b/kubejs/server_scripts/microverse/elite_missions.js index cfd81b144..a3258a0e5 100644 --- a/kubejs/server_scripts/microverse/elite_missions.js +++ b/kubejs/server_scripts/microverse/elite_missions.js @@ -175,7 +175,7 @@ ServerEvents.recipes(event => { .itemInputs("48x gtceu:flawless_dilithium_gem") .itemInputs("kubejs:elite_drilling_kit") .itemInputs("gtceu:duranium_drill_head") - .itemInputs("4x nuclearcraft:plate_du") + .itemInputs("4x phoenix_fission:heavy_radiation_shielding") .itemInputs("gtceu:uranium_block") .damageRate(6) .itemOutputs( diff --git a/kubejs/server_scripts/microverse/miners.js b/kubejs/server_scripts/microverse/miners.js index 1a9452cdb..a805986a0 100644 --- a/kubejs/server_scripts/microverse/miners.js +++ b/kubejs/server_scripts/microverse/miners.js @@ -93,8 +93,8 @@ ServerEvents.recipes(event => { A: "gtceu:ev_field_generator", B: "gtceu:mv_super_chest", F: "kubejs:signalum_micro_miner_core", - C: "nuclearcraft:fission_reactor_controller", - P: "nuclearcraft:fission_reactor_port", + C: "gtceu:fission_reactor", + P: "phoenix_fission:empty_reactor_component", T: "kubejs:vibrant_thruster", }) @@ -114,8 +114,8 @@ ServerEvents.recipes(event => { A: "gtceu:mv_super_chest", F: "kubejs:enderium_micro_miner_core", B: "gtceu:iv_field_generator", - C: "nuclearcraft:fission_reactor_controller", - P: "nuclearcraft:fission_reactor_port", + C: "gtceu:fission_reactor", + P: "phoenix_fission:empty_reactor_component", T: "kubejs:resonant_thruster" }) diff --git a/kubejs/server_scripts/mods/NuclearCraft.js b/kubejs/server_scripts/mods/NuclearCraft.js deleted file mode 100644 index 6959b9424..000000000 --- a/kubejs/server_scripts/mods/NuclearCraft.js +++ /dev/null @@ -1,389 +0,0 @@ -// priority: 0 -/** - * NuclearCraft configuration - */ - -// Live Fuel decomp -// Could also use this to change how these fuels are created? -ServerEvents.recipes(event => { - - function decomp(name, fuel, ing1, ing2) { - event.recipes.gtceu.thermal_centrifuge(`kubejs:${name}_decomp`) - .itemInputs(fuel) - .itemOutputs(ing1, ing2) - .duration(3200) - .EUt(48) - } - - function decomp_single(name, fuel, ing) { - event.recipes.gtceu.thermal_centrifuge(`kubejs:${name}_decomp`) - .itemInputs(fuel) - .itemOutputs(ing) - .duration(3200) - .EUt(48) - } - - decomp_single("thorium_tbu_232", "nuclearcraft:fuel_thorium_tbu", "9x gtceu:thorium_dust"); - decomp("uranium_leu_233", "nuclearcraft:fuel_uranium_leu_233", "8x gtceu:uranium_dust", "nuclearcraft:uranium_233"); - decomp("uranium_heu_233", "nuclearcraft:fuel_uranium_heu_233", "5x gtceu:uranium_dust", "4x nuclearcraft:uranium_233"); - decomp("uranium_leu_235", "nuclearcraft:fuel_uranium_leu_235", "8x gtceu:uranium_dust", "gtceu:uranium_235_dust"); - decomp("uranium_heu_235", "nuclearcraft:fuel_uranium_heu_235", "5x gtceu:uranium_dust", "4x gtceu:uranium_235_dust"); - decomp("neptunium_len_236", "nuclearcraft:fuel_neptunium_len_236", "8x nuclearcraft:neptunium_237", "nuclearcraft:neptunium_236"); - decomp("neptunium_hen_236", "nuclearcraft:fuel_neptunium_hen_236", "5x nuclearcraft:neptunium_237", "4x nuclearcraft:neptunium_236"); - decomp("plutonium_lep_239", "nuclearcraft:fuel_plutonium_lep_239", "8x nuclearcraft:plutonium_242", "gtceu:plutonium_dust"); - decomp("plutonium_hep_239", "nuclearcraft:fuel_plutonium_hep_239", "5x nuclearcraft:plutonium_242", "4x gtceu:plutonium_dust"); - decomp("plutonium_lep_241", "nuclearcraft:fuel_plutonium_lep_241", "8x nuclearcraft:plutonium_242", "gtceu:plutonium_241_dust"); - decomp("plutonium_hep_241", "nuclearcraft:fuel_plutonium_hep_241", "5x nuclearcraft:plutonium_242", "4x gtceu:plutonium_241_dust"); - decomp("americium_lea_242", "nuclearcraft:fuel_americium_lea_242", "8x nuclearcraft:americium_243", "nuclearcraft:americium_242"); - decomp("americium_hea_242", "nuclearcraft:fuel_americium_hea_242", "5x nuclearcraft:americium_243", "4x nuclearcraft:americium_242"); - - function decompdepleted(fuelType, out, out2, out3, out4, voltageTier) { - - event.recipes.gtceu.centrifuge(`${fuelType}decompdepleted`) - .itemInputs(`nuclearcraft:depleted_fuel_${fuelType}`) - .itemOutputs(out, out2, out3, out4) - .duration(400) - .EUt(GTValues.VHA[voltageTier]) - } - - - /* - Math: 8 nuggets = 1 NCN isotope. Total should be ~8 isotopes for all. - IRL the vast majority of spent nuclear fuel is the fertile isotope, with trace amounts of transmuted fissile product. This is disregarded in Moni for gameplay reasons. - However to encourage use of HE-fuels, LE fuels and only LE fuels return 1-2 units of the fertile isotope that was burned, except TBU, LEU-233, and LEA-242. - - RTG & other exclusive isotopes: - U-233 only comes from TBU. - Cu-243 only comes from HEP-241. - Pu-238 only comes from HEN-236. - Am-241 only comes from HEP-239. - Cf-250 only comes from HEA-242. - */ - - // Thorium yields U-233, U-235, and Np-237 IRL. Np-236 added to make it possible to source Neptunium fuel just from TBU. - decompdepleted("thorium_tbu", "2x nuclearcraft:uranium_233", "8x gtceu:uranium_235_nugget", "nuclearcraft:neptunium_236", "4x nuclearcraft:neptunium_237", GTValues.EV) - - // Uranium yields primarily isotopes of Plutonium (Especially Pu-239) with a little bit of Np-237 from U-235 fuels, and Americium from U-233 fuels. Np-236 added to LEU-233 to make it an alternative source aside from TBU. - decompdepleted("uranium_leu_233", "3x nuclearcraft:neptunium_236", "nuclearcraft:neptunium_237", "2x nuclearcraft:plutonium_242", "2x nuclearcraft:americium_243", GTValues.IV) - decompdepleted("uranium_heu_233", "5x nuclearcraft:plutonium_242", "4x gtceu:plutonium_nugget", "4x gtceu:plutonium_241_nugget", "2x nuclearcraft:americium_242", GTValues.IV) - decompdepleted("uranium_leu_235", "32x gtceu:uranium_nugget", "nuclearcraft:neptunium_237", "8x gtceu:plutonium_nugget", "2x nuclearcraft:plutonium_242", GTValues.IV) - decompdepleted("uranium_heu_235", "20x gtceu:uranium_nugget", "2x nuclearcraft:neptunium_237", "20x gtceu:plutonium_nugget", "8x gtceu:plutonium_241_nugget", GTValues.IV) - - // HEN yields Pu-238 (RTG Plutonium) and both fuels yield a mix of Plutonium and Americium. - decompdepleted("neptunium_len_236", "nuclearcraft:neptunium_237", "3x nuclearcraft:plutonium_242", "8x gtceu:plutonium_nugget", "3x nuclearcraft:americium_243", GTValues.IV) - decompdepleted("neptunium_hen_236", "nuclearcraft:plutonium_238", "3x nuclearcraft:plutonium_242", "16x gtceu:plutonium_nugget", "2x nuclearcraft:americium_242", GTValues.IV) - - // Plutonium fuels yield Curium. (Especially Cu-245, which comes from Pu-242) Pu-239 fuels yield a bit of Np-237, while Pu-241 fuels yield Am-243. LE fuels, with their high Pu-242 content, also yield Am-243. - decompdepleted("plutonium_lep_239", "2x nuclearcraft:plutonium_242", "nuclearcraft:neptunium_237", "4x nuclearcraft:curium_245", "8x gtceu:plutonium_nugget", GTValues.LuV) - decompdepleted("plutonium_hep_239", "nuclearcraft:americium_241", "2x nuclearcraft:neptunium_237", "3x nuclearcraft:curium_245", "2x nuclearcraft:plutonium_239", GTValues.LuV) - decompdepleted("plutonium_lep_241", "nuclearcraft:plutonium_242", "nuclearcraft:americium_243", "4x nuclearcraft:curium_245", "2x nuclearcraft:plutonium_239", GTValues.LuV) - decompdepleted("plutonium_hep_241", "2x nuclearcraft:americium_243", "3x nuclearcraft:curium_243", "1x nuclearcraft:americium_242", "2x nuclearcraft:plutonium_241", GTValues.LuV) - - // Americium yields Curium. (Cu-243 from Americium-241, and Cu-245 from Americium-243) LEA, with its high Am-243 content, also yields Pu-239. - decompdepleted("americium_lea_242", "8x gtceu:plutonium_nugget", "5x nuclearcraft:curium_245", "nuclearcraft:californium_251", "nuclearcraft:californium_252", GTValues.LuV) - decompdepleted("americium_hea_242", "3x nuclearcraft:curium_245", "2x nuclearcraft:californium_251", "2x nuclearcraft:californium_252", "nuclearcraft:californium_250", GTValues.LuV) - - function cansolid(name, input) { - event.remove({ output: `nuclearcraft:${name}_heat_sink` }) - event.recipes.gtceu.canner(name) - .itemInputs("nuclearcraft:empty_heat_sink", `16x ${input}`) - .itemOutputs(`nuclearcraft:${name}_heat_sink`) - .duration(400) - .EUt(2) - .addMaterialInfo(true) - } - - function canfluid(name, input) { - event.remove({ output: `nuclearcraft:${name}_heat_sink` }) - event.recipes.gtceu.canner(`${name}_heat_sink`) - .itemInputs("nuclearcraft:empty_heat_sink") - .inputFluids(Fluid.of(input, 1000)) - .itemOutputs(`nuclearcraft:${name}_heat_sink`) - .duration(400) - .EUt(2) - .addMaterialInfo(true) - } - - canfluid("water", "minecraft:water") - cansolid("redstone", "minecraft:redstone") - cansolid("quartz", "gtceu:nether_quartz_dust") - cansolid("glowstone", "minecraft:glowstone_dust") - cansolid("lapis", "gtceu:lapis_dust") - canfluid("liquid_helium", "gtceu:liquid_helium") - cansolid("enderium", "gtceu:enderium_dust") - canfluid("cryotheum", "kubejs:molten_cryotheum") - cansolid("emerald", "gtceu:emerald_dust") - cansolid("copper", "gtceu:copper_dust") - cansolid("magnesium", "gtceu:magnesium_dust") - cansolid("boron", "gtceu:boron_dust") - cansolid("tin", "gtceu:tin_dust") - cansolid("aluminum", "gtceu:aluminium_dust") - cansolid("manganese", "gtceu:manganese_dust") - - event.remove({ id: "nuclearcraft:empty_heat_sink" }) - event.recipes.gtceu.shaped("nuclearcraft:empty_heat_sink", [ - "TST", - "S S", - "TST" - ], { - T: "nuclearcraft:tough_alloy_ingot", - S: "gtceu:steel_ingot" - }).addMaterialInfo() - - event.remove({ output: "nuclearcraft:plate_basic" }) - event.recipes.gtceu.shaped("2x nuclearcraft:plate_basic", [ - "TST", - "SDS", - "TST" - ], { - T: "nuclearcraft:tough_alloy_ingot", - S: "gtceu:tungsten_plate", - D: "gtceu:double_steel_plate" - }).addMaterialInfo() - - event.remove({ id: "nuclearcraft:plate_advanced" }) - event.recipes.gtceu.shaped("2x nuclearcraft:plate_advanced", [ - "TST", - "SDS", - "TST" - ], { - T: "nuclearcraft:hard_carbon_ingot", - S: "gtceu:yttrium_barium_cuprate_plate", - D: "nuclearcraft:plate_basic" - }).addMaterialInfo() - - event.remove({ id: "nuclearcraft:plate_du" }) - event.recipes.gtceu.alloy_smelter("du_plating") - .itemInputs("nuclearcraft:plate_advanced", "kubejs:stabilized_uranium") - .itemOutputs("2x nuclearcraft:plate_du") - .duration(400) - .EUt(2000) - - event.remove({ id: "nuclearcraft:plate_elite" }) - event.shaped("2x nuclearcraft:plate_elite", [ - "TST", - "SDS", - "TST" - ], { - T: "nuclearcraft:rhodochrosite_dust", - S: "gtceu:enderium_plate", - D: "nuclearcraft:plate_du" - }) - - - event.remove({ id: "nuclearcraft:fission_reactor_casing" }) - event.recipes.gtceu.shaped("8x nuclearcraft:fission_reactor_casing", [ - "DDD", - "DFD", - "DDD" - ], { - F: "gtceu:robust_machine_casing", - D: "nuclearcraft:plate_basic" - }).addMaterialInfo() - - event.remove({ id: "nuclearcraft:fission_reactor_solid_fuel_cell" }) - event.recipes.gtceu.shaped("nuclearcraft:fission_reactor_solid_fuel_cell", [ - "TST", - "S S", - "TST" - ], { - T: "nuclearcraft:tough_alloy_ingot", - S: "gtceu:tempered_glass" - }).addMaterialInfo() - - event.remove({ id: "nuclearcraft:fission_reactor_controller" }) - event.recipes.gtceu.shaped("nuclearcraft:fission_reactor_controller", [ - "DED", - "EFE", - "DED" - ], { - F: "gtceu:robust_machine_casing", - E: "#gtceu:circuits/ev", - D: "nuclearcraft:plate_advanced" - }).addMaterialInfo() - - event.remove({ id: "nuclearcraft:fission_reactor_port" }) - event.shapeless("nuclearcraft:fission_reactor_port", ["nuclearcraft:fission_reactor_casing", "minecraft:hopper"]) - - event.recipes.gtceu.chemical_reactor("rhodochrosite_dust") - .itemInputs("12x gtceu:raw_redstone") - .inputFluids("gtceu:sulfuric_acid 6000") - .itemOutputs("nuclearcraft:rhodochrosite_dust") - .outputFluids("gtceu:redstone 15840") - .EUt(2000) - .duration(200) - - event.recipes.gtceu.thermal_centrifuge("thoriumdecomp") - .itemInputs("gtceu:thorium_dust") - .itemOutputs("nuclearcraft:thorium_232") - .duration(1100) - .EUt(48) - - event.remove({ - output: [ - "nuclearcraft:fuel_thorium_tbu", - "nuclearcraft:fuel_uranium_leu_233", - "nuclearcraft:fuel_uranium_heu_233", - "nuclearcraft:fuel_uranium_leu_235", - "nuclearcraft:fuel_uranium_heu_235", - "nuclearcraft:fuel_neptunium_len_236", - "nuclearcraft:fuel_americium_hea_242", - "nuclearcraft:fuel_americium_lea_242", - "nuclearcraft:fuel_plutonium_hep_241", - "nuclearcraft:fuel_plutonium_lep_241", - "nuclearcraft:fuel_plutonium_hep_239", - "nuclearcraft:fuel_plutonium_lep_239", - "nuclearcraft:fuel_neptunium_hen_236", - ] - }) - - event.remove({ - output: [ - "nuclearcraft:depleted_fuel_thorium_tbu", - "nuclearcraft:depleted_fuel_uranium_leu_233", - "nuclearcraft:depleted_fuel_uranium_heu_233", - "nuclearcraft:depleted_fuel_uranium_leu_235", - "nuclearcraft:depleted_fuel_uranium_heu_235", - "nuclearcraft:depleted_fuel_neptunium_len_236", - "nuclearcraft:depleted_fuel_americium_hea_242", - "nuclearcraft:depleted_fuel_americium_lea_242", - "nuclearcraft:depleted_fuel_plutonium_hep_241", - "nuclearcraft:depleted_fuel_plutonium_lep_241", - "nuclearcraft:depleted_fuel_plutonium_hep_239", - "nuclearcraft:depleted_fuel_plutonium_lep_239", - "nuclearcraft:depleted_fuel_neptunium_hen_236", - ], - type: "minecraft:smelting" - }) - - event.remove({ - output: [ - "nuclearcraft:neptunium_236", - "nuclearcraft:neptunium_237", - "nuclearcraft:curium_245", - "nuclearcraft:curium_243", - "nuclearcraft:uranium_233", - "nuclearcraft:americium_241", - "nuclearcraft:americium_242", - "nuclearcraft:americium_243", - "nuclearcraft:plutonium_238", - "nuclearcraft:plutonium_242", - "nuclearcraft:californium_250", - "nuclearcraft:californium_251", - "nuclearcraft:californium_252" - ], type: "minecraft:smelting" - }) - - - event.shaped("nuclearcraft:fuel_thorium_tbu", ["AAA", "AAA", "AAA"], { A: "gtceu:thorium_dust" }) - event.shaped("nuclearcraft:fuel_uranium_leu_233", ["ABB", "BBB", "BBB"], { A: "nuclearcraft:uranium_233", B: "gtceu:uranium_ingot" }) - event.shaped("nuclearcraft:fuel_uranium_heu_233", ["AAA", "ABB", "BBB"], { A: "nuclearcraft:uranium_233", B: "gtceu:uranium_ingot" }) - event.shaped("nuclearcraft:fuel_uranium_leu_235", ["ABB", "BBB", "BBB"], { A: "gtceu:uranium_235_ingot", B: "gtceu:uranium_ingot" }) - event.shaped("nuclearcraft:fuel_uranium_heu_235", ["AAA", "ABB", "BBB"], { A: "gtceu:uranium_235_ingot", B: "gtceu:uranium_ingot" }) - event.shaped("nuclearcraft:fuel_neptunium_len_236", ["ABB", "BBB", "BBB"], { A: "nuclearcraft:neptunium_236", B: "nuclearcraft:neptunium_237" }) - event.shaped("nuclearcraft:fuel_neptunium_hen_236", ["AAA", "ABB", "BBB"], { A: "nuclearcraft:neptunium_236", B: "nuclearcraft:neptunium_237" }) - event.shaped("nuclearcraft:fuel_plutonium_lep_239", ["ABB", "BBB", "BBB"], { A: "gtceu:plutonium_ingot", B: "nuclearcraft:plutonium_242" }) - event.shaped("nuclearcraft:fuel_plutonium_hep_239", ["AAA", "ABB", "BBB"], { A: "gtceu:plutonium_ingot", B: "nuclearcraft:plutonium_242" }) - event.shaped("nuclearcraft:fuel_plutonium_lep_241", ["ABB", "BBB", "BBB"], { A: "gtceu:plutonium_241_ingot", B: "nuclearcraft:plutonium_242" }) - event.shaped("nuclearcraft:fuel_plutonium_hep_241", ["AAA", "ABB", "BBB"], { A: "gtceu:plutonium_241_ingot", B: "nuclearcraft:plutonium_242" }) - event.shaped("nuclearcraft:fuel_americium_lea_242", ["ABB", "BBB", "BBB"], { A: "nuclearcraft:americium_242", B: "nuclearcraft:americium_243" }) - event.shaped("nuclearcraft:fuel_americium_hea_242", ["AAA", "ABB", "BBB"], { A: "nuclearcraft:americium_242", B: "nuclearcraft:americium_243" }) - - event.recipes.gtceu.distillery("distill_tech_water") - .inputFluids("gtceu:distilled_water 20") - .circuit(5) - .outputFluids("nuclearcraft:technical_water 20") - .duration(20).EUt(GTValues.VA[GTValues.MV]) - - function rtg(name, input) { - event.remove({ output: `nuclearcraft:${name}_rtg` }) - event.recipes.gtceu.assembler(name) - .itemInputs("4x gtceu:graphite_plate", "4x nuclearcraft:plate_advanced", `4x ${input}`) - .itemOutputs(`nuclearcraft:${name}_rtg`) - .duration(200) - .EUt(GTValues.VA[GTValues.EV]) - .addMaterialInfo(true) - } - - rtg("americium", "nuclearcraft:americium_241") - rtg("plutonium", "nuclearcraft:plutonium_238") - rtg("uranium", "nuclearcraft:uranium_233") - rtg("californium", "nuclearcraft:californium_250") - - function coils(name) { - event.remove({ output: `nuclearcraft:coil_${name}` }) - event.recipes.gtceu.assembler(name) - .itemInputs("1x gtceu:magnetic_steel_rod", `16x gtceu:fine_${name}_wire`) - .itemOutputs(`nuclearcraft:coil_${name}`) - .circuit(1) - .duration(200) - .EUt(GTValues.VA[GTValues.HV]) - } - - coils("copper") - coils("magnesium_diboride") - - event.replaceInput({ input: "nuclearcraft:bioplastic" }, "nuclearcraft:bioplastic", "#forge:plastic_plates") - event.replaceInput({ input: "nuclearcraft:basic_electronic_circuit" }, "nuclearcraft:basic_electric_circuit", "#gtceu:circuits/hv") - event.replaceInput({ input: "nuclearcraft:gelatin" }, "nuclearcraft:gelatin", "#forge:rubber_plates") - event.replaceInput({ input: "nuclearcraft:lithium_ion_cell" }, "nuclearcraft:lithium_ion_cell", "#gtceu:batteries/hv") - event.replaceInput({ output: /nuclearcraft:hev/ }, "nuclearcraft:plate_extreme", "nuclearcraft:plate_advanced") - - event.remove({ id: "nuclearcraft:heavy_shielding" }) - event.shaped("nuclearcraft:heavy", [ - "BBB", - "MPM", - "DDD" - ], { - B: "#forge:plates/beryllium", - M: "nuclearcraft:medium", - P: "#forge:plastic_plates", - D: "nuclearcraft:plate_du" - }) - - // Fix fission boiling recipe - event.custom( - { - "type": "nuclearcraft:fission_boiling", - "heatRequired": 1.0, - "inputFluids": [ - { - "amount": 1, - "tag": "minecraft:water" - } - ], - "outputFluids": [ - { - "amount": 160, - "fluid": "gtceu:steam" - } - ] - } - ).id("nuclearcraft:fission_boiling/water-steam") - - // High Pressure Steam Turbine recipe. - // High Pressure steam is 16x more energy dense than regular steam, - // and is 60% more efficient on the fuel spent to get that energy - event.recipes.gtceu.steam_turbine("high_pressure_steam") - .inputFluids("nuclearcraft:high_pressure_steam 40") - .outputFluids("nuclearcraft:technical_water 40") - .duration(0.5 * 20) - .EUt(-GTValues.V[GTValues.LV]) - - // Remove recipes that use empty NCN tags - event.remove({ id: "minecraft:nuclearcraft_ferroboron_plate" }) - event.remove({ id: "minecraft:nuclearcraft_hard_carbon_plate"}) -}); - -ServerEvents.tags("item", event => { - - event.add("forge:plastic_plates", "gtceu:polyvinyl_chloride_plate") - event.add("forge:plastic_plates", "gtceu:polybenzimidazole_plate") - event.add("forge:plastic_plates", "gtceu:polyethylene_plate") - event.add("forge:plastic_plates", "gtceu:polytetrafluoroethylene_plate") - event.add("forge:plastic_plates", "gtceu:polyethyl_cyanoacrylate_plate") - - event.add("forge:rubber_plates", "gtceu:silicone_rubber_plate") - event.add("forge:rubber_plates", "gtceu:styrene_butadiene_rubber_plate") - event.add("forge:rubber_plates", "gtceu:rubber_plate") -}); diff --git a/kubejs/server_scripts/mods/kubeJS.js b/kubejs/server_scripts/mods/kubeJS.js index 6cc10e9d5..ccee5d07e 100644 --- a/kubejs/server_scripts/mods/kubeJS.js +++ b/kubejs/server_scripts/mods/kubeJS.js @@ -12,9 +12,8 @@ ServerEvents.recipes(event => { solidify("stabilized_neptunium", Fluid.of("gtceu:neptunium", 144), "2x kubejs:stabilized_neptunium"); solidify("stabilized_plutonium", Fluid.of("gtceu:plutonium", 144), "2x kubejs:stabilized_plutonium"); + solidify("stabilized_plutonium_240", Fluid.of("gtceu:plutonium_240", 144), "3x kubejs:stabilized_plutonium"); solidify("stabilized_plutonium_241", Fluid.of("gtceu:plutonium_241", 144), "4x kubejs:stabilized_plutonium"); - solidify("stabilized_plutonium_238", Fluid.of("gtceu:plutonium_238", 144), "3x kubejs:stabilized_plutonium"); - solidify("stabilized_plutonium_242", Fluid.of("gtceu:plutonium_242", 144), "2x kubejs:stabilized_plutonium"); solidify("stabilized_uranium", Fluid.of("gtceu:uranium", 144), "kubejs:stabilized_uranium"); solidify("stabilized_uranium_235", Fluid.of("gtceu:uranium_235", 144), "2x kubejs:stabilized_uranium"); solidify("stabilized_uranium_233", Fluid.of("gtceu:uranium_233", 144), "2x kubejs:stabilized_uranium"); diff --git a/kubejs/server_scripts/mods/phoenix_fission.js b/kubejs/server_scripts/mods/phoenix_fission.js new file mode 100644 index 000000000..bfc21c7e6 --- /dev/null +++ b/kubejs/server_scripts/mods/phoenix_fission.js @@ -0,0 +1,431 @@ +/** + * Recipes for Phoenix Fission, fission fuels, and reactor components. + */ +ServerEvents.recipes(event => { + // Fission fuels + /** + * Other data is in startup_scripts/fission/fission_fuel_data.js + * @type {{identifier: string, category: string, material1: com.gregtechceu.gtceu.api.data.chemical.material.Material, material2: com.gregtechceu.gtceu.api.data.chemical.material.Material, enrichment:Boolean}[]} + */ + const fission_fuels = [ + {identifier: "tbu", category: "thorium", material1: GTMaterials.Thorium, material2: GTMaterials.Uranium235, enrichment: false}, + {identifier: "235", category: "uranium", material1: GTMaterials.Uranium238, material2: GTMaterials.Uranium235, enrichment: true}, + {identifier: "233", category: "uranium", material1: GTMaterials.Uranium238, material2: GTMaterials.get("uranium_233"), enrichment: true}, + {identifier: "mix_237", category: "neptunium", material1: GTMaterials.Uranium238, material2: GTMaterials.Neptunium, enrichment: false}, + {identifier: "mix_239", category: "plutonium", material1: GTMaterials.Uranium238, material2: GTMaterials.Plutonium239, enrichment: false}, + {identifier: "mix_241", category: "plutonium", material1: GTMaterials.Uranium238, material2: GTMaterials.Plutonium241, enrichment: false}, + {identifier: "239", category: "plutonium", material1: GTMaterials.get("plutonium_240"), material2: GTMaterials.Plutonium239, enrichment: true}, + {identifier: "241", category: "plutonium", material1: GTMaterials.get("plutonium_240"), material2: GTMaterials.Plutonium241, enrichment: true}, + ] + fission_fuels.forEach(fuel_type => { + let identifier = ""; + if(fuel_type.enrichment) { + // Low-enriched fuels + identifier = `le${fuel_type.category.charAt(0)}_${fuel_type.identifier}` + // Fuel recipe + event.shaped(`phoenix_fission:${identifier}_fuel`, ["ABB", "BBB", "BBB"], { A: ChemicalHelper.getDust(fuel_type.material2, GTValues.M).asIngredient(), B: ChemicalHelper.getDust(fuel_type.material1, GTValues.M).asIngredient() }) + // GT Fuel recipe + event.recipes.gtceu.forming_press(`phoenix_fission:${identifier}_press`) + .notConsumable(GTItems.SHAPE_MOLD_CYLINDER) + .itemInputs(ChemicalHelper.getDust(fuel_type.material1, 8 * GTValues.M), ChemicalHelper.getDust(fuel_type.material2, GTValues.M)) + .itemOutputs(`phoenix_fission:${identifier}_fuel`) + .duration(20 * GTValues.SECONDS) + .EUt(48) + // Recycle unused fuel + event.recipes.gtceu.thermal_centrifuge(`phoenix_fission:${identifier}_decomp`) + .itemInputs(`phoenix_fission:${identifier}_fuel`) + .itemOutputs(ChemicalHelper.getDust(fuel_type.material1, 8 * GTValues.M), ChemicalHelper.getDust(fuel_type.material2, GTValues.M)) + .duration(80 * GTValues.SECONDS) + .EUt(48) + // Fuel rod recipe + event.recipes.gtceu.canner(`phoenix_fission:${identifier}_fuel_rod`) + .itemInputs(Item.of("phoenix_fission:empty_reactor_component"), Item.of(`phoenix_fission:${identifier}_fuel`)) + .itemOutputs(Item.of(`phoenix_fission:${identifier}_fuel_rod`)) + .duration(10 * GTValues.SECONDS) + .EUt(GTValues.VHA[GTValues.ULV]) + event.recipes.gtceu.canner(`phoenix_fission:uncan_${identifier}_fuel_rod`) + .itemOutputs(Item.of("phoenix_fission:empty_reactor_component"), Item.of(`phoenix_fission:${identifier}_fuel`)) + .itemInputs(Item.of(`phoenix_fission:${identifier}_fuel_rod`)) + .duration(5 * GTValues.SECONDS) + .EUt(GTValues.VHA[GTValues.ULV]) + + // High-enriched fuels + identifier = `he${fuel_type.category.charAt(0)}_${fuel_type.identifier}` + // Fuel recipe + event.shaped(`phoenix_fission:${identifier}_fuel`, ["AAA", "ABB", "BBB"], { A: ChemicalHelper.getDust(fuel_type.material2, GTValues.M).asIngredient(), B: ChemicalHelper.getDust(fuel_type.material1, GTValues.M).asIngredient() }) + // GT Fuel recipe + event.recipes.gtceu.forming_press(`phoenix_fission:${identifier}_press`) + .notConsumable(GTItems.SHAPE_MOLD_CYLINDER) + .itemInputs(ChemicalHelper.getDust(fuel_type.material1, 5 * GTValues.M), ChemicalHelper.getDust(fuel_type.material2, 4 * GTValues.M)) + .itemOutputs(`phoenix_fission:${identifier}_fuel`) + .duration(20 * GTValues.SECONDS) + .EUt(48) + // Recycle unused fuel + event.recipes.gtceu.thermal_centrifuge(`phoenix_fission:${identifier}_decomp`) + .itemInputs(`phoenix_fission:${identifier}_fuel`) + .itemOutputs(ChemicalHelper.getDust(fuel_type.material1, 5 * GTValues.M), ChemicalHelper.getDust(fuel_type.material2, 4 * GTValues.M)) + .duration(80 * GTValues.SECONDS) + .EUt(48) + // Fuel rod recipe + event.recipes.gtceu.canner(`phoenix_fission:${identifier}_fuel_rod`) + .itemInputs(Item.of("phoenix_fission:empty_reactor_component"), Item.of(`phoenix_fission:${identifier}_fuel`)) + .itemOutputs(Item.of(`phoenix_fission:${identifier}_fuel_rod`)) + .duration(10 * GTValues.SECONDS) + .EUt(GTValues.VHA[GTValues.ULV]) + event.recipes.gtceu.canner(`phoenix_fission:uncan_${identifier}_fuel_rod`) + .itemOutputs(Item.of("phoenix_fission:empty_reactor_component"), Item.of(`phoenix_fission:${identifier}_fuel`)) + .itemInputs(Item.of(`phoenix_fission:${identifier}_fuel_rod`)) + .duration(5 * GTValues.SECONDS) + .EUt(GTValues.VHA[GTValues.ULV]) + } else { + identifier = fuel_type.identifier; + // Fuel recipe + event.shaped(`phoenix_fission:${identifier}_fuel`, ["ABB", "BBB", "BBB"], { A: ChemicalHelper.getDust(fuel_type.material2, GTValues.M).asIngredient(), B: ChemicalHelper.getDust(fuel_type.material1, GTValues.M).asIngredient() }) + // GT Fuel recipe + event.recipes.gtceu.forming_press(`phoenix_fission:${identifier}_press`) + .notConsumable(GTItems.SHAPE_MOLD_CYLINDER) + .itemInputs(ChemicalHelper.getDust(fuel_type.material1, 8 * GTValues.M), ChemicalHelper.getDust(fuel_type.material2, GTValues.M)) + .itemOutputs(`phoenix_fission:${identifier}_fuel`) + .duration(20 * GTValues.SECONDS) + .EUt(48) + // Recycle unused fuel + event.recipes.gtceu.thermal_centrifuge(`phoenix_fission:${identifier}_decomp`) + .itemInputs(`phoenix_fission:${identifier}_fuel`) + .itemOutputs(ChemicalHelper.getDust(fuel_type.material1, 8 * GTValues.M), ChemicalHelper.getDust(fuel_type.material2, GTValues.M)) + .duration(80 * GTValues.SECONDS) + .EUt(48) + // Fuel rod recipe + event.recipes.gtceu.canner(`phoenix_fission:${identifier}_fuel_rod`) + .itemInputs(Item.of("phoenix_fission:empty_reactor_component"), Item.of(`phoenix_fission:${identifier}_fuel`)) + .itemOutputs(Item.of(`phoenix_fission:${identifier}_fuel_rod`)) + .duration(10 * GTValues.SECONDS) + .EUt(GTValues.VHA[GTValues.ULV]) + event.recipes.gtceu.canner(`phoenix_fission:uncan_${identifier}_fuel_rod`) + .itemOutputs(Item.of("phoenix_fission:empty_reactor_component"), Item.of(`phoenix_fission:${identifier}_fuel`)) + .itemInputs(Item.of(`phoenix_fission:${identifier}_fuel_rod`)) + .duration(5 * GTValues.SECONDS) + .EUt(GTValues.VHA[GTValues.ULV]) + } + }); + + // Depleted fuel decomposition + /** + * Helper method for defining recipes for recovering isotopes from depleted nuclear fuel. + * @param {string} fuel_type Fuel type. + * @param {com.gregtechceu.gtceu.api.data.chemical.material.stack.MaterialStack[]} outputs + * @param {number} voltage_tier Voltage tier the centrifuge recipe operates at. + */ + function decompdepleted(fuel_name, outputs, voltage_tier) { + let outputDusts = outputs.map((value, index, array) => { + return ChemicalHelper.getDust(value) + }) + if(doHarderProcessing) { + event.recipes.gtceu.centrifuge(`depleted_${fuel_name}_fuel_decomposition`) + .itemInputs(`phoenix_fission:depleted_${fuel_name}_fuel`) + .inputFluids(Fluid.of("gtceu:tributyl_phosphate", 100)) + .itemOutputs(outputDusts) + .duration(400) + .EUt(GTValues.VHA[voltage_tier]) + } else { + event.recipes.gtceu.centrifuge(`depleted_${fuel_name}_fuel_decomposition`) + .itemInputs(`phoenix_fission:depleted_${fuel_name}_fuel`) + .itemOutputs(outputDusts) + .duration(400) + .EUt(GTValues.VHA[voltage_tier]) + } + } + /* + IRL the vast majority of spent nuclear fuel is the fertile isotope, with trace amounts of transmuted fissile product. + In Moni, the transmuted product is exaggerated for gameplay reasons. + */ + + // Thorium yields U-233, U-235, and Np-237 IRL. + decompdepleted("tbu", [GTMaterials.Thorium.multiply(GTValues.M * 3), GTMaterials.Uranium235.multiply(GTValues.M * 0.25), GTMaterials.get("uranium_233").multiply(GTValues.M * 1.75), GTMaterials.Neptunium.multiply(GTValues.M * 0.25)], GTValues.EV) + + // Uranium yields primarily isotopes of Plutonium (Especially Pu-239) with a little bit of Np-237 from U-235 fuels, and Americium from U-233 fuels. + decompdepleted("leu_233", [GTMaterials.Uranium238.multiply(GTValues.M * 3), GTMaterials.get("uranium_233").multiply(GTValues.M * 0.25), GTMaterials.get("plutonium_240").multiply(GTValues.M * 0.75), GTMaterials.Plutonium239.multiply(GTValues.M * 0.5), GTMaterials.Plutonium241.multiply(GTValues.M * 0.25)], GTValues.IV) + decompdepleted("heu_233", [GTMaterials.Uranium238.multiply(GTValues.M * 2), GTMaterials.get("uranium_233").multiply(GTValues.M * 1.25), GTMaterials.get("plutonium_240").multiply(GTValues.M * 0.75), GTMaterials.Plutonium239.multiply(GTValues.M * 0.5), GTMaterials.Plutonium241.multiply(GTValues.M * 0.25)], GTValues.IV) + decompdepleted("leu_235", [GTMaterials.Uranium238.multiply(GTValues.M * 3), GTMaterials.Uranium235.multiply(GTValues.M * 0.25), GTMaterials.get("plutonium_240").multiply(GTValues.M * 0.75), GTMaterials.Plutonium239.multiply(GTValues.M * 0.5), GTMaterials.Neptunium.multiply(GTValues.M * 0.5)], GTValues.IV) + decompdepleted("heu_235", [GTMaterials.Uranium238.multiply(GTValues.M * 2), GTMaterials.Uranium235.multiply(GTValues.M * 1.25), GTMaterials.get("plutonium_240").multiply(GTValues.M * 0.75), GTMaterials.Plutonium239.multiply(GTValues.M * 0.5), GTMaterials.Neptunium.multiply(GTValues.M * 0.5)], GTValues.IV) + + // MIX-237 yields a mix of Plutonium and Americium. + decompdepleted("mix_237", [GTMaterials.Uranium238.multiply(GTValues.M * 3), GTMaterials.Neptunium.multiply(GTValues.M * 0.25), GTMaterials.get("uranium_233").multiply(GTValues.M * 1.75), GTMaterials.Plutonium241.multiply(GTValues.M * 0.25), GTMaterials.Americium.multiply(GTValues.M * 0.25)], GTValues.IV) + + // MIX-239 yields a bunch of Pu-240 for purer Plutonium fuel. + decompdepleted("mix_239", [GTMaterials.Uranium238.multiply(GTValues.M * 3), GTMaterials.Plutonium239.multiply(GTValues.M * 0.25), GTMaterials.get("plutonium_240").multiply(GTValues.M * 1.75), GTMaterials.Plutonium241.multiply(GTValues.M * 0.5), GTMaterials.Neptunium.multiply(GTValues.M * 0.5)], GTValues.LuV) + decompdepleted("mix_241", [GTMaterials.Uranium238.multiply(GTValues.M * 2), GTMaterials.Plutonium241.multiply(GTValues.M * 0.25), GTMaterials.get("plutonium_240").multiply(GTValues.M * 1.75), GTMaterials.Neptunium.multiply(GTValues.M * 0.5), GTMaterials.Americium.multiply(GTValues.M * 0.5), ], GTValues.LuV) + + // Plutonium fuels yield Curium. (Especially Cu-245, which comes from Pu-242) Pu-239 fuels yield a bit of Np-237, while Pu-241 fuels yield Am-243. LE fuels, with their high Pu-242 content, also yield Am-243. + decompdepleted("lep_239", [GTMaterials.get("plutonium_240").multiply(GTValues.M * 3), GTMaterials.Plutonium239.multiply(GTValues.M * 0.25), GTMaterials.Plutonium241.multiply(GTValues.M * 0.5), GTMaterials.Curium.multiply(GTValues.M * 0.5), GTMaterials.Neptunium.multiply(GTValues.M * 0.75)], GTValues.LuV) + decompdepleted("hep_239", [GTMaterials.get("plutonium_240").multiply(GTValues.M * 2), GTMaterials.Plutonium239.multiply(GTValues.M * 1.25), GTMaterials.Plutonium241.multiply(GTValues.M * 0.5), GTMaterials.Curium.multiply(GTValues.M * 0.5), GTMaterials.Neptunium.multiply(GTValues.M * 0.75)], GTValues.LuV) + decompdepleted("lep_241", [GTMaterials.get("plutonium_240").multiply(GTValues.M * 3), GTMaterials.Plutonium241.multiply(GTValues.M * 0.25), GTMaterials.Americium.multiply(GTValues.M * 0.5), GTMaterials.Curium.multiply(GTValues.M * 0.5), GTMaterials.Californium.multiply(GTValues.M * 0.25)], GTValues.LuV) + decompdepleted("hep_241", [GTMaterials.get("plutonium_240").multiply(GTValues.M * 2), GTMaterials.Plutonium241.multiply(GTValues.M * 1.25), GTMaterials.Americium.multiply(GTValues.M * 0.5), GTMaterials.Curium.multiply(GTValues.M * 0.5), GTMaterials.Californium.multiply(GTValues.M * 0.25)], GTValues.LuV) + + /* + // Americium yields Curium. (Cu-243 from Americium-241, and Cu-245 from Americium-243) LEA, with its high Am-243 content, also yields Pu-239. + decompdepleted("americium_lea_242", "8x gtceu:plutonium_nugget", "5x nuclearcraft:curium_245", "nuclearcraft:californium_251", "nuclearcraft:californium_252", GTValues.LuV) + decompdepleted("americium_hea_242", "3x nuclearcraft:curium_245", "2x nuclearcraft:californium_251", "2x nuclearcraft:californium_252", "nuclearcraft:californium_250", GTValues.LuV) + */ + + // Common fissile byproducts: Xenon, Iodine, [Steep drop] Caesium, [Rare fissile byproducts] + // Rare fissile byproducts: Fissile products: Inert Metal Mixture, Rare Earth, Barium, Tin, Molybdenum (Zirconium) + + // Reactor component recipes + event.recipes.gtceu.assembler("phoenix_fission:lead_lined_casing") + .itemInputs(Item.of("gtceu:tungsten_steel_frame"), Item.of("phoenix_fission:light_radiation_shielding", 6)) + .inputFluids(Fluid.of("gtceu:concrete", 144)) + .itemOutputs(Item.of("phoenix_fission:lead_lined_casing", 2)) + .duration(10 * GTValues.SECONDS) + .EUt(GTValues.VA[GTValues.HV]) + .addMaterialInfo(true) + + event.shapeless("phoenix_fission:lead_lined_glass", ["phoenix_fission:lead_lined_casing", "gtceu:tempered_glass"]) + + event.recipes.gtceu.forming_press("phoenix_fission:control_rod") + .notConsumable(Item.of("gtceu:rod_extruder_mold")) + .itemInputs(Item.of("gtceu:silver_dust", 2), Item.of("gtceu:cadmium_dust")) + .itemOutputs(Item.of("phoenix_fission:control_rod")) + .duration(7 * GTValues.SECONDS) + .EUt(GTValues.VA[GTValues.MV]) + + event.recipes.gtceu.assembler("phoenix_fission:control_rod_assembly") + .itemInputs(Item.of("phoenix_fission:control_rod", 4), Item.of("gtceu:ferroboron_plate", 3), Item.of("gtceu:mv_electric_motor"), Item.of("minecraft:chain", 4)) + .itemOutputs(Item.of("phoenix_fission:control_rod_assembly", 2)) + .duration(10 * GTValues.SECONDS) + .EUt(GTValues.VA[GTValues.HV]) + .addMaterialInfo(true) + + // Empty Reactor Component (+ alternate recipe) + event.recipes.gtceu.shaped("2x phoenix_fission:empty_reactor_component", [ + "PGP", + "GTG", + "PGP" + ], { + T: "gtceu:tough_alloy_frame", + P: "gtceu:stainless_steel_ingot", + G: "gtceu:tempered_glass" + }) + event.recipes.gtceu.shaped("2x phoenix_fission:empty_reactor_component", [ + "PGP", + "GTG", + "PGP" + ], { + T: "gtceu:tough_alloy_frame", + P: "gtceu:vanadium_steel_ingot", + G: "gtceu:tempered_glass" + }) + + // Passive coolers + event.recipes.gtceu.canner("phoenix_fission:reactor_heat_vent") + .itemInputs(Item.of("phoenix_fission:empty_reactor_component"), Item.of("gtceu:heat_vent")) + .itemOutputs(Item.of("phoenix_fission:reactor_heat_vent")) + .duration(10 * GTValues.SECONDS) + .EUt(GTValues.VHA[GTValues.ULV]) + event.recipes.gtceu.canner("phoenix_fission:uncan_reactor_heat_vent") + .itemOutputs(Item.of("phoenix_fission:empty_reactor_component"), Item.of("gtceu:heat_vent")) + .itemInputs(Item.of("phoenix_fission:reactor_heat_vent")) + .duration(5 * GTValues.SECONDS) + .EUt(GTValues.VHA[GTValues.ULV]) + + event.recipes.gtceu.canner("phoenix_fission:cryotheum_heat_sink") + .itemInputs(Item.of("phoenix_fission:empty_reactor_component")) + .inputFluids(Fluid.of("kubejs:molten_cryotheum")) + .itemOutputs(Item.of("phoenix_fission:cryotheum_heat_sink")) + .duration(10 * GTValues.SECONDS) + .EUt(GTValues.VHA[GTValues.ULV]) + event.recipes.gtceu.canner("phoenix_fission:uncan_cryotheum_heat_sink") + .itemOutputs(Item.of("phoenix_fission:empty_reactor_component")) + .outputFluids(Fluid.of("kubejs:molten_cryotheum")) + .itemInputs(Item.of("phoenix_fission:cryotheum_heat_sink")) + .duration(5 * GTValues.SECONDS) + .EUt(GTValues.VHA[GTValues.ULV]) + + // Active coolers + let coolants = [ + {namespace: "minecraft", coolantID: "water"}, + {namespace: "gtceu", coolantID: "distilled_water"}, + {namespace: "gtceu", coolantID: "ice"}, + {namespace: "gtceu", coolantID: "sodium_potassium"}, + {namespace: "gtceu", coolantID: "liquid_helium"}, + ] + coolants.forEach(coolant_type => { + event.recipes.gtceu.canner(`phoenix_fission:${coolant_type.coolantID}_cooler`) + .itemInputs(Item.of("phoenix_fission:empty_reactor_component")) + .inputFluids(coolant_type.namespace + ":" + coolant_type.coolantID) + .itemOutputs(Item.of(`phoenix_fission:${coolant_type.coolantID}_cooler`)) + .duration(10 * GTValues.SECONDS) + .EUt(GTValues.VHA[GTValues.ULV]) + event.recipes.gtceu.canner(`phoenix_fission:uncan_${coolant_type.coolantID}_cooler`) + .itemOutputs(Item.of("phoenix_fission:empty_reactor_component")) + .outputFluids(coolant_type.namespace + ":" + coolant_type.coolantID) + .itemInputs(Item.of(`phoenix_fission:${coolant_type.coolantID}_cooler`)) + .duration(5 * GTValues.SECONDS) + .EUt(GTValues.VHA[GTValues.ULV]) + }) + + // Moderators + event.recipes.gtceu.canner("phoenix_fission:graphite_moderator") + .itemInputs(Item.of("phoenix_fission:empty_reactor_component"), Item.of("gtceu:graphite_dust", 9)) + .itemOutputs(Item.of("phoenix_fission:graphite_moderator")) + .duration(10 * GTValues.SECONDS) + .EUt(GTValues.VHA[GTValues.ULV]) + event.recipes.gtceu.canner("phoenix_fission:uncan_graphite_moderator") + .itemOutputs(Item.of("phoenix_fission:empty_reactor_component"), Item.of("gtceu:graphite_dust", 9)) + .itemInputs(Item.of("phoenix_fission:graphite_moderator")) + .duration(5 * GTValues.SECONDS) + .EUt(GTValues.VHA[GTValues.ULV]) + + event.recipes.gtceu.canner("phoenix_fission:beryllium_moderator") + .itemInputs(Item.of("phoenix_fission:empty_reactor_component"), Item.of("gtceu:beryllium_dust", 9)) + .itemOutputs(Item.of("phoenix_fission:beryllium_moderator")) + .duration(10 * GTValues.SECONDS) + .EUt(GTValues.VHA[GTValues.ULV]) + event.recipes.gtceu.canner("phoenix_fission:uncan_beryllium_moderator") + .itemOutputs(Item.of("phoenix_fission:empty_reactor_component"), Item.of("gtceu:beryllium_dust", 9)) + .itemInputs(Item.of("phoenix_fission:beryllium_moderator")) + .duration(5 * GTValues.SECONDS) + .EUt(GTValues.VHA[GTValues.ULV]) + + // Controller + event.recipes.gtceu.shaped("gtceu:fission_reactor", [ + "RIR", + "PCP", + "TIT" + ], { + C: "phoenix_fission:lead_lined_casing", + P: "gtceu:ev_electric_pump", + I: "#gtceu:circuits/iv", + R: "phoenix_fission:control_rod", + T: "gtceu:tungsten_large_fluid_pipe" + }).addMaterialInfo() + + // High Pressure Steam Turbine recipes + // Controller + event.recipes.gtceu.shaped("gtceu:high_pressure_steam_turbine", [ + "IGI", + "GHG", + "TGT" + ], { + H: "gtceu:iv_machine_hull", + G: "gtceu:titanium_gear", + I: "#gtceu:circuits/iv", + T: "gtceu:titanium_large_fluid_pipe" + }).addMaterialInfo() + + // Steam recipe is at -20% efficiency compared to regular Steam Turbines, though the significantly increased scalability can still be worth it + event.recipes.gtceu.hp_steam_turbine("steam") + .inputFluids("#forge:steam 640") + .outputFluids("gtceu:distilled_water 4") + .duration(0.4 * GTValues.SECONDS) + .EUt(-GTValues.V[GTValues.LV]) + + event.recipes.gtceu.hp_steam_turbine("superheated_steam") + .inputFluids("gtceu:superheated_steam 160") + .outputFluids("gtceu:distilled_water 40") + .duration(4 * GTValues.SECONDS) + .EUt(-GTValues.V[GTValues.MV]) + + // Thermoelectric Generator (Heat Exchanger) recipes + // Controller + event.recipes.gtceu.shaped("gtceu:thermoelectric_generator", [ + "PPP", + "BGB", + "CSC" + ], { + B: "systeams:magmatic_boiler", + G: "phoenix_fission:seebeck_module", + C: "#gtceu:circuits/luv", + P: "gtceu:niobium_titanium_normal_fluid_pipe", + S: "gtceu:luv_machine_hull" + }).addMaterialInfo() + + // Seebeck Module + event.recipes.gtceu.assembler("seebeck_module") + .itemInputs( + Item.of("gtceu:uhpic_chip", 2), + Item.of("#forge:plates/bismuth_bronze", 3), + Item.of("#forge:plates/hsla_steel", 6), + Item.of("#forge:dusts/silicon_germanium", 1), + Item.of("gtceu:neptunium_palladium_aluminium_single_cable", 2) + ) + .inputFluids(Fluid.of("gtceu:soldering_alloy", 576)) + .itemOutputs(Item.of("phoenix_fission:seebeck_module", 2)) + .EUt(GTValues.VA[GTValues.HV]) + .duration(15 * GTValues.SECONDS) + .addMaterialInfo(true) + + // Fissile-safe Gearbox + event.recipes.gtceu.shaped(Item.of("phoenix_fission:fissile_safe_gearbox_casing", 2), [ + "PHP", + "GFG", + "PWP" + ], { + F: "#forge:frames/ruridit", + G: "#forge:gears/ruridit", + P: "#forge:plates/ruridit", + H: "#gtceu:tools/crafting_hammers", + W: "#gtceu:tools/crafting_wrenches" + }) + + event.recipes.gtceu.assembler("fissile_safe_gearbox_casing") + .itemInputs( + Item.of("#forge:plates/ruridit", 4), + Item.of("#forge:gears/ruridit", 2), + Item.of("#forge:frames/ruridit", 1) + ) + .itemOutputs(Item.of("phoenix_fission:fissile_safe_gearbox_casing", 2)) + .EUt(GTValues.VH[GTValues.LV]) + .duration(2.5 * GTValues.SECONDS) + .circuit(4) + .addMaterialInfo(true) + + event.recipes.gtceu.thermoelectric_generator("sodium_potassium") + .inputFluids(Fluid.of("gtceu:hot_sodium_potassium", 100)) + .outputFluids(Fluid.of("gtceu:sodium_potassium", 100)) + .duration(1 * GTValues.SECONDS) + .EUt(-GTValues.V[GTValues.IV]) + + event.recipes.gtceu.thermoelectric_generator("lava") + .inputFluids(Fluid.of("minecraft:lava", 2000)) + .duration(1 * GTValues.SECONDS) + .EUt(-GTValues.V[GTValues.HV]) + + // Radiation Shielding + event.recipes.gtceu.shaped("phoenix_fission:light_radiation_shielding", [ + "H", + "F", + "L" + ], { + H: "#gtceu:tools/crafting_hammers", + F: "#forge:plates/ferroboron", + L: "#forge:plates/lead" + }) + event.recipes.gtceu.forming_press("phoenix_fission:light_radiation_shielding") + .itemInputs(Item.of("#forge:plates/ferroboron"), Item.of("#forge:plates/lead")) + .itemOutputs(Item.of("phoenix_fission:light_radiation_shielding")) + .EUt(GTValues.VA[GTValues.LV]) + .duration(1.5 * GTValues.SECONDS) + .addMaterialInfo(true) + + event.recipes.gtceu.shaped("2x phoenix_fission:heavy_radiation_shielding", [ + "UUU", + "SGS", + "PPP" + ], { + U: "#forge:plates/uranium", + S: "phoenix_fission:light_radiation_shielding", + G: "#forge:dusts/graphite", + P: "#forge:plates/polybenzimidazole" + }) + event.recipes.gtceu.assembler("phoenix_fission:light_radiation_shielding") + .itemInputs( + Item.of("#forge:plates/uranium", 3), + Item.of("#forge:plates/polybenzimidazole", 3), + Item.of("phoenix_fission:light_radiation_shielding", 2), + Item.of("#forge:dusts/graphite") + ) + .itemOutputs(Item.of("phoenix_fission:heavy_radiation_shielding", 2)) + .EUt(GTValues.VHA[GTValues.HV]) + .duration(3 * GTValues.SECONDS) + .addMaterialInfo(true) +}) diff --git a/kubejs/server_scripts/nukelists.js b/kubejs/server_scripts/nukelists.js index 318aa4cfd..67c57fe69 100644 --- a/kubejs/server_scripts/nukelists.js +++ b/kubejs/server_scripts/nukelists.js @@ -10,8 +10,6 @@ ServerEvents.tags("item", event => { // Remove tags from items matching the unification patterns. // For definitions, see KubeJS/startup_scripts/unificationPatterns.js event.removeAllTagsFrom(global.unificationPattern) - event.removeAllTagsFrom(global.nuclearcraftFuelPattern) - event.removeAllTagsFrom(global.nuclearcraftIsotopePattern) }) ServerEvents.tags("fluid", event => { event.removeAllTagsFrom(global.fluidNukeList) @@ -20,10 +18,6 @@ ServerEvents.tags("fluid", event => { ServerEvents.recipes(event => { let ignoreTypes = [ - { type: "nuclearcraft:fission_reactor_controller" }, - { type: "nuclearcraft:fission_boiling" }, - { type: "nuclearcraft:isotope_separator" }, - { type: "nuclearcraft:fuel_reprocessor" }, { type: "minecraft:crafting" }, { type: "minecraft:smelting" } ]; @@ -45,6 +39,4 @@ ServerEvents.recipes(event => { // Remove recipes that use items matching the unification patterns. // For definitions, see KubeJS/startup_scripts/unificationPatterns.js event.remove([{ output: global.unificationPattern }, { input: global.unificationPattern }]) - event.remove([{ output: global.nuclearcraftFuelPattern }, { input: global.nuclearcraftFuelPattern }]) - event.remove([{ output: global.nuclearcraftIsotopePattern }, { input: global.nuclearcraftIsotopePattern }]) }) diff --git a/kubejs/server_scripts/processing_lines/smores.js b/kubejs/server_scripts/processing_lines/smores.js index ac2c59f4f..2daee95f8 100644 --- a/kubejs/server_scripts/processing_lines/smores.js +++ b/kubejs/server_scripts/processing_lines/smores.js @@ -4,55 +4,31 @@ ServerEvents.recipes(event => { // Milk Chocolate Making - event.recipes.gtceu.macerator("kubejs:ground_cocoa_nibs") - .itemInputs("nuclearcraft:roasted_cocoa_beans") - .itemOutputs("nuclearcraft:ground_cocoa_nibs") - .EUt(20) - .duration(100) - event.recipes.gtceu.electric_blast_furnace("kubejs:chocolate_liquor") - .itemInputs("nuclearcraft:ground_cocoa_nibs") + .itemInputs("2x minecraft:cocoa_beans") .itemOutputs("gtceu:tiny_carbon_dust") - .outputFluids(Fluid.of("nuclearcraft:chocolate_liquor", 144)) + .outputFluids(Fluid.of("gtceu:chocolate_liquor", 250)) .duration(100) .blastFurnaceTemp(307) .EUt(GTValues.VA[GTValues.MV]) - event.recipes.gtceu.extractor("kubejs:cocoa_butter") - .itemInputs("nuclearcraft:ground_cocoa_nibs") - .itemOutputs("nuclearcraft:cocoa_solids") - .outputFluids(Fluid.of("nuclearcraft:cocoa_butter", 144)) - .EUt(2) - .duration(32) - - event.recipes.gtceu.mixer("kubejs:unsweetened_chocolate") - .inputFluids(Fluid.of("nuclearcraft:chocolate_liquor", 144), Fluid.of("nuclearcraft:cocoa_butter", 144)) - .outputFluids(Fluid.of("nuclearcraft:unsweetened_chocolate", 288)) - .EUt(GTValues.VA[GTValues.LV]) - .duration(100) - event.recipes.gtceu.chemical_reactor("kubejs:milk_pasteurization") .inputFluids(Fluid.of("minecraft:milk", 1000), Fluid.of("gtceu:steam", 500))// TODO Change to forge tags for steam .notConsumable("2x gtceu:stainless_steel_plate") - .outputFluids(Fluid.of("nuclearcraft:pasteurized_milk", 1000)) + .outputFluids(Fluid.of("gtceu:pasteurized_milk", 1000)) .EUt(GTValues.VA[GTValues.HV]) .duration(250) - event.recipes.gtceu.mixer("kubejs:dark_chocolate") - .inputFluids(Fluid.of("nuclearcraft:unsweetened_chocolate", 144), Fluid.of("nuclearcraft:sugar", 72)) - .outputFluids(Fluid.of("nuclearcraft:dark_chocolate", 144)) - .EUt(GTValues.VA[GTValues.LV]) - .duration(100) - event.recipes.gtceu.mixer("kubejs:milk_chocolate") - .inputFluids(Fluid.of("nuclearcraft:dark_chocolate", 144), Fluid.of("nuclearcraft:pasteurized_milk", 250)) - .outputFluids(Fluid.of("nuclearcraft:milk_chocolate", 288)) + .itemInputs("minecraft:sugar") + .inputFluids(Fluid.of("gtceu:chocolate_liquor", 250), Fluid.of("gtceu:pasteurized_milk", 250)) + .outputFluids(Fluid.of("gtceu:milk_chocolate", 288)) .EUt(GTValues.VA[GTValues.LV]) .duration(80) event.recipes.gtceu.fluid_solidifier("kubejs:solidify_chocolate") - .inputFluids(Fluid.of("nuclearcraft:milk_chocolate", 144)) - .itemOutputs("nuclearcraft:milk_chocolate") + .inputFluids(Fluid.of("gtceu:milk_chocolate", 144)) + .itemOutputs("kubejs:milk_chocolate") .notConsumable("gtceu:plate_casting_mold") .duration(100) .EUt(GTValues.VHA[GTValues.LV]) @@ -60,38 +36,24 @@ ServerEvents.recipes(event => { // Graham Cracker event.recipes.gtceu.compressor("kubejs:graham_cracker") .itemInputs("2x gtceu:wheat_dust") - .itemOutputs("nuclearcraft:graham_cracker") + .itemOutputs("kubejs:graham_cracker") .EUt(20) .duration(200) // Marshmallow event.recipes.gtceu.fluid_solidifier("kubejs:solid_marshmallow") - .inputFluids(Fluid.of("nuclearcraft:marshmallow", 144)) - .itemOutputs("nuclearcraft:marshmallow") + .inputFluids(Fluid.of("gtceu:marshmallow", 144)) + .itemOutputs("kubejs:marshmallow") .notConsumable("gtceu:ball_casting_mold") .duration(100) .EUt(GTValues.VHA[GTValues.LV]) event.recipes.gtceu.mixer("kubejs:liquid_marshmallow") - .inputFluids(Fluid.of("nuclearcraft:sugar", 72), Fluid.of("nuclearcraft:hydrated_gelatin", 144)) - .outputFluids(Fluid.of("nuclearcraft:marshmallow", 144)) + .itemInputs("gtceu:gelatin_dust", "minecraft:sugar") + .inputFluids(Fluid.of("minecraft:water", 500)) + .outputFluids(Fluid.of("gtceu:marshmallow", 288)) .EUt(GTValues.VA[GTValues.LV]) - .duration(100) - event.recipes.gtceu.extractor("kubejs:liquid_sugar") - .itemInputs("minecraft:sugar") - .outputFluids(Fluid.of("nuclearcraft:sugar", 144)) - .EUt(GTValues.VHA[GTValues.LV]) - .duration(150) - event.recipes.gtceu.mixer("kubejs:hydrated_gelatin") - .inputFluids(Fluid.of("minecraft:water", 500), Fluid.of("nuclearcraft:gelatin", 144)) - .outputFluids(Fluid.of("nuclearcraft:hydrated_gelatin", 144)) - .EUt(GTValues.VHA[GTValues.LV]) - .duration(45) - event.recipes.gtceu.extractor("kubejs:gelatin") - .itemInputs("gtceu:gelatin_dust") - .outputFluids("nuclearcraft:gelatin 144") - .EUt(GTValues.VA[GTValues.ULV]) - .duration(100) + .duration(300) event.recipes.gtceu.extractor("kubejs:extract_milk") .notConsumable("minecraft:cow_spawn_egg") @@ -100,11 +62,11 @@ ServerEvents.recipes(event => { .duration(1000) // Smores - event.shapeless("kubejs:smore_1", ["2x nuclearcraft:graham_cracker", "nuclearcraft:milk_chocolate", "nuclearcraft:marshmallow"]).id("kubejs:smore_1"); - event.shapeless("kubejs:smore_2", ["2x kubejs:smore_1", "nuclearcraft:milk_chocolate", "nuclearcraft:marshmallow"]).id("kubejs:smore_2"); - event.shapeless("kubejs:smore_4", ["2x kubejs:smore_2", "nuclearcraft:milk_chocolate", "nuclearcraft:marshmallow"]).id("kubejs:smore_4"); - event.shapeless("kubejs:smore_8", ["2x kubejs:smore_4", "nuclearcraft:milk_chocolate", "nuclearcraft:marshmallow"]).id("kubejs:smore_8"); - event.shapeless("kubejs:smore_16", ["2x kubejs:smore_8", "nuclearcraft:milk_chocolate", "nuclearcraft:marshmallow"]).id("kubejs:smore_16"); - event.shapeless("kubejs:smore_32", ["2x kubejs:smore_16", "nuclearcraft:milk_chocolate", "nuclearcraft:marshmallow"]).id("kubejs:smore_32"); - event.shapeless("kubejs:smore_64", ["2x kubejs:smore_32", "nuclearcraft:milk_chocolate", "nuclearcraft:marshmallow"]).id("kubejs:smore_64"); + event.shapeless("kubejs:smore_1", ["2x kubejs:graham_cracker", "kubejs:milk_chocolate", "kubejs:marshmallow"]).id("kubejs:smore_1"); + event.shapeless("kubejs:smore_2", ["2x kubejs:smore_1", "kubejs:milk_chocolate", "kubejs:marshmallow"]).id("kubejs:smore_2"); + event.shapeless("kubejs:smore_4", ["2x kubejs:smore_2", "kubejs:milk_chocolate", "kubejs:marshmallow"]).id("kubejs:smore_4"); + event.shapeless("kubejs:smore_8", ["2x kubejs:smore_4", "kubejs:milk_chocolate", "kubejs:marshmallow"]).id("kubejs:smore_8"); + event.shapeless("kubejs:smore_16", ["2x kubejs:smore_8", "kubejs:milk_chocolate", "kubejs:marshmallow"]).id("kubejs:smore_16"); + event.shapeless("kubejs:smore_32", ["2x kubejs:smore_16", "kubejs:milk_chocolate", "kubejs:marshmallow"]).id("kubejs:smore_32"); + event.shapeless("kubejs:smore_64", ["2x kubejs:smore_32", "kubejs:milk_chocolate", "kubejs:marshmallow"]).id("kubejs:smore_64"); }) diff --git a/kubejs/startup_scripts/deprecations.js b/kubejs/startup_scripts/deprecations.js index e2d6643ca..362db70bc 100644 --- a/kubejs/startup_scripts/deprecations.js +++ b/kubejs/startup_scripts/deprecations.js @@ -127,3 +127,87 @@ deprecated_thermal_wire_materials.forEach(material => { deprecateBlock(`gtceu:${material}_octal_wire`, `4x gtceu:${material}_ingot`) deprecateBlock(`gtceu:${material}_hex_wire`, `8x gtceu:${material}_ingot`) }) + +// Nuclearcraft: Neoteric Reactor parts +deprecateBlock("nuclearcraft:fission_reactor_controller", "gtceu:fission_reactor", "Fission Reactor Controller") +deprecateBlock("nuclearcraft:fission_reactor_casing", "phoenix_fission:lead_lined_casing", "Fission Reactor Casing") +deprecateBlock("nuclearcraft:fission_reactor_glass", "phoenix_fission:lead_lined_glass", "Fission Reactor Glass") +deprecateBlock("nuclearcraft:fission_reactor_port", "phoenix_fission:lead_lined_casing", "Fission Reactor Port") +deprecateBlock("nuclearcraft:empty_heat_sink", "phoenix_fission:empty_reactor_component", "Fission Reactor Empty Heat Sink") +deprecateBlock("nuclearcraft:fission_reactor_solid_fuel_cell", "phoenix_fission:empty_reactor_component", "Fission Reactor Solid Fuel Cell") +const heat_sink_types = [ + "Water", + "Copper", + "Cryotheum", + "Enderium", + "Redstone", + "Liquid_helium", + "Boron", + "Lapis", + "Emerald", + "Quartz", + "Tin", + "Aluminum", + "Magnesium", + "Manganese", + "Glowstone", +] +heat_sink_types.forEach(heat_sink_type => { + deprecateBlock(`nuclearcraft:${heat_sink_type.toLowerCase()}_heat_sink`, "phoenix_fission:empty_reactor_component", `Fission Reactor ${heat_sink_type} Heat Sink`) +}) + +// Nuclearcraft: Neoteric materials +deprecateItem("nuclearcraft:ferroboron_dust", "gtceu:ferroboron_dust", "Ferroboron Dust") +deprecateItem("nuclearcraft:ferroboron_ingot", "gtceu:ferroboron_ingot", "Ferroboron Ingot") +deprecateItem("nuclearcraft:tough_alloy_ingot", "gtceu:tough_alloy_ingot", "Tough Alloy Ingot") + +// Nuclearcraft: Neoteric plates +deprecateItem("nuclearcraft:plate_basic", "phoenix_fission:light_radiation_shielding", "Basic Nuclear Plate") +deprecateItem("nuclearcraft:plate_advanced", "phoenix_fission:light_radiation_shielding", "Advanced Nuclear Plate") +deprecateItem("nuclearcraft:plate_du", "phoenix_fission:heavy_radiation_shielding", "DU Nuclear Plate") +deprecateItem("nuclearcraft:plate_elite", "phoenix_fission:heavy_radiation_shielding", "Elite Nuclear Plate") +deprecateItem("nuclearcraft:light", "phoenix_fission:light_radiation_shielding", "Light Shielding") +deprecateItem("nuclearcraft:medium", "phoenix_fission:light_radiation_shielding", "Medium Shielding") +deprecateItem("nuclearcraft:heavy", "phoenix_fission:heavy_radiation_shielding", "Heavy Shielding") + +// Nuclearcraft: Neoteric Reactor fuels +deprecateItem("nuclearcraft:fuel_thorium_tbu", "phoenix_fission:tbu_fuel", "Fuel Thorium TBU") +deprecateItem("nuclearcraft:fuel_uranium_leu_235", "phoenix_fission:leu_235_fuel", "Fuel Uranium LEU-235") +deprecateItem("nuclearcraft:fuel_uranium_heu_235", "phoenix_fission:heu_235_fuel", "Fuel Uranium HEU-235") +deprecateItem("nuclearcraft:fuel_uranium_leu_233", "phoenix_fission:leu_233_fuel", "Fuel Uranium LEU-233") +deprecateItem("nuclearcraft:fuel_uranium_heu_233", "phoenix_fission:heu_233_fuel", "Fuel Uranium HEU-233") +deprecateItem("nuclearcraft:fuel_plutonium_lep_239", "phoenix_fission:lep_239_fuel", "Fuel Plutonium LEP-239") +deprecateItem("nuclearcraft:fuel_plutonium_hep_239", "phoenix_fission:hep_239_fuel", "Fuel Plutonium HEP-239") +deprecateItem("nuclearcraft:fuel_plutonium_lep_241", "phoenix_fission:lep_241_fuel", "Fuel Plutonium LEP-241") +deprecateItem("nuclearcraft:fuel_plutonium_hep_241", "phoenix_fission:hep_241_fuel", "Fuel Plutonium HEP-241") + +deprecateItem("nuclearcraft:depleted_fuel_thorium_tbu", "phoenix_fission:depleted_tbu_fuel", "Depleted Fuel Thorium TBU") +deprecateItem("nuclearcraft:depleted_fuel_uranium_leu_235", "phoenix_fission:depleted_leu_235_fuel", "Depleted Fuel Uranium LEU-235") +deprecateItem("nuclearcraft:depleted_fuel_uranium_heu_235", "phoenix_fission:depleted_heu_235_fuel", "Depleted Fuel Uranium HEU-235") +deprecateItem("nuclearcraft:depleted_fuel_uranium_leu_233", "phoenix_fission:depleted_leu_233_fuel", "Depleted Fuel Uranium LEU-233") +deprecateItem("nuclearcraft:depleted_fuel_uranium_heu_233", "phoenix_fission:depleted_heu_233_fuel", "Depleted Fuel Uranium HEU-233") +deprecateItem("nuclearcraft:depleted_fuel_plutonium_lep_239", "phoenix_fission:depleted_lep_239_fuel", "Depleted Fuel Plutonium LEP-239") +deprecateItem("nuclearcraft:depleted_fuel_plutonium_hep_239", "phoenix_fission:depleted_hep_239_fuel", "Depleted Fuel Plutonium HEP-239") +deprecateItem("nuclearcraft:depleted_fuel_plutonium_lep_241", "phoenix_fission:depleted_lep_241_fuel", "Depleted Fuel Plutonium LEP-241") +deprecateItem("nuclearcraft:depleted_fuel_plutonium_hep_241", "phoenix_fission:depleted_hep_241_fuel", "Depleted Fuel Plutonium HEP-241") + +// Nuclearcraft: Neoteric isotopes +deprecateItem("nuclearcraft:californium_250", "gtceu:californium_dust", "Californium Mote") +deprecateItem("nuclearcraft:californium_251", "gtceu:californium_dust", "Californium Mote") +deprecateItem("nuclearcraft:californium_252", "gtceu:californium_dust", "Californium Mote") +deprecateItem("nuclearcraft:americium_241", "gtceu:americium_dust", "Americium Mote") +deprecateItem("nuclearcraft:americium_242", "gtceu:americium_dust", "Americium Mote") +deprecateItem("nuclearcraft:americium_243", "gtceu:americium_dust", "Americium Mote") +deprecateItem("nuclearcraft:plutonium_238", "gtceu:plutonium_240_dust", "Plutonium Mote") +deprecateItem("nuclearcraft:plutonium_242", "gtceu:plutonium_241_dust", "Plutonium Mote") +deprecateItem("nuclearcraft:neptunium_236", "gtceu:neptunium_dust", "Neptunium Mote") +deprecateItem("nuclearcraft:neptunium_237", "gtceu:neptunium_dust", "Neptunium Mote") +deprecateItem("nuclearcraft:curium_243", "gtceu:curium_dust", "Curium Mote") +deprecateItem("nuclearcraft:curium_245", "gtceu:curium_dust", "Curium Mote") +deprecateItem("nuclearcraft:uranium_233", "gtceu:uranium_233_dust", "Uranium Mote") +deprecateItem("nuclearcraft:uranium_234", "gtceu:uranium_233_dust", "Uranium Mote") + +// Nuclearcraft Neoteric s'more stuff +deprecateItem("nuclearcraft:graham_cracker", "kubejs:graham_cracker", "Graham Cracker") +deprecateItem("nuclearcraft:milk_chocolate", "kubejs:milk_chocolate", "Milk Chocolate") +deprecateItem("nuclearcraft:marshmallow", "kubejs:marshmallow", "Marshmallow") diff --git a/kubejs/startup_scripts/fission/fission_component_registry.js b/kubejs/startup_scripts/fission/fission_component_registry.js new file mode 100644 index 000000000..88174ad95 --- /dev/null +++ b/kubejs/startup_scripts/fission/fission_component_registry.js @@ -0,0 +1,199 @@ +// priority: 0 +/** + * Registry for Fission Reactor components for use with Phoenix Fission. + * Not implemented on these components: Tier, Neutron bias + */ +StartupEvents.registry("block", event => { + // Fuel Rods. References fission fuels data in fission_fuel_registry.js + fission_fuels.forEach(fuelType => { + let identifier = "" + if(fuelType.enrichment) { + // Low-enriched fuels + identifier = `le${fuelType.category.charAt(0)}_${fuelType.identifier}` + event.create(`phoenix_fission:${identifier}_fuel_rod`, "fission_fuel_rod") + .baseHeatProduction(fuelType.baseHeat) + .durationTicks(fuelType.depletionTime * GTValues.SECONDS) + .amountPerCycle(1) + .fuelKey(`phoenix_fission:${identifier}_fuel`) + .outputKey(`phoenix_fission:depleted_${identifier}_fuel`) + .textureAll("phoenix_fission:block/mechanic/fuel_cell") + + // High-enriched fuels + identifier = `he${fuelType.category.charAt(0)}_${fuelType.identifier}` + event.create(`phoenix_fission:${identifier}_fuel_rod`, "fission_fuel_rod") + .baseHeatProduction(fuelType.baseHeat * 3) + .durationTicks(fuelType.depletionTime * GTValues.SECONDS) + .amountPerCycle(1) + .fuelKey(`phoenix_fission:${identifier}_fuel`) + .outputKey(`phoenix_fission:depleted_${identifier}_fuel`) + .textureAll("phoenix_fission:block/mechanic/fuel_cell") + } else { + identifier = fuelType.identifier; + event.create(`phoenix_fission:${identifier}_fuel_rod`, "fission_fuel_rod") + .baseHeatProduction(fuelType.baseHeat) + .durationTicks(fuelType.depletionTime * GTValues.SECONDS) + .amountPerCycle(1) + .fuelKey(`phoenix_fission:${identifier}_fuel`) + .outputKey(`phoenix_fission:depleted_${identifier}_fuel`) + .textureAll("phoenix_fission:block/mechanic/fuel_cell") + } + }) + + // Passive Heating/Cooling + event.create("phoenix_fission:reactor_heat_vent", "fission_cooler") + .isPassive(true) + .flatCoolingHUt(20.0) + .textureAll("phoenix_fission:block/mechanic/cooler_cell") + + event.create("phoenix_fission:cryotheum_heat_sink", "fission_cooler") + .isPassive(true) + .flatCoolingHUt(50.0) + .textureAll("phoenix_fission:block/mechanic/cooler_cell") + + // I wish negative cooling values would work. + // This could be nice as a way to artificially heat a reactor. + /* + event.create("phoenix_fission:pyrotheum_passive_heater", "fission_cooler") + .isPassive(true) + .flatCoolingHUt(-200.0) + .textureAll("phoenix_fission:block/mechanic/fuel_cell") + */ + + // Active Cooling + event.create("phoenix_fission:water_cooler", "fission_cooler") + .coolerTemperature(300) + .coolantUsagePerTick(1000) + .isPassive(false) + .conductivity(0.01) + .requiredCoolantMaterialId("minecraft:water") + .outputCoolantFluidId("gtceu:steam") + .textureAll("phoenix_fission:block/mechanic/cooler_cell") + + event.create("phoenix_fission:distilled_water_cooler", "fission_cooler") + .coolerTemperature(295) + .coolantUsagePerTick(1000) + .isPassive(false) + .conductivity(0.01) + .requiredCoolantMaterialId("gtceu:distilled_water") + .outputCoolantFluidId("gtceu:superheated_steam") + .textureAll("phoenix_fission:block/mechanic/cooler_cell") + + event.create("phoenix_fission:ice_cooler", "fission_cooler") + .coolerTemperature(273) + .coolantUsagePerTick(250) + .isPassive(false) + .conductivity(0.02) + .requiredCoolantMaterialId("gtceu:ice") + .outputCoolantFluidId("gtceu:distilled_water") + .textureAll("phoenix_fission:block/mechanic/cooler_cell") + + event.create("phoenix_fission:sodium_potassium_cooler", "fission_cooler") + .coolerTemperature(293) + .coolantUsagePerTick(250) + .isPassive(false) + .conductivity(0.04) + .requiredCoolantMaterialId("gtceu:sodium_potassium") + .outputCoolantFluidId("gtceu:hot_sodium_potassium") + .textureAll("phoenix_fission:block/mechanic/cooler_cell") + + event.create("phoenix_fission:liquid_helium_cooler", "fission_cooler") + .coolerTemperature(100) + .coolantUsagePerTick(250) + .isPassive(false) + .conductivity(0.04) + .requiredCoolantMaterialId("gtceu:liquid_helium") + .outputCoolantFluidId("gtceu:helium") + .textureAll("phoenix_fission:block/mechanic/cooler_cell") + + // Moderators + event.create("phoenix_fission:graphite_moderator", "fission_moderator") + .euBoost(15) + .fuelDiscount(5) + .textureAll("phoenix_fission:block/mechanic/moderation_cell") + + event.create("phoenix_fission:beryllium_moderator", "fission_moderator") + .euBoost(10) + .fuelDiscount(10) + .textureAll("phoenix_fission:block/mechanic/moderation_cell") + + // Example components saved for later + /* + event.create("thorium_msr_liner", "msr_core_liner") + .displayName("Thorium Salt MSR Liner") + .tier(3) + .fluidFlowRate(100) + .heatPerMb(25.5) + .inputFluidId("gtceu:thorium") + .outputFluidId("gtceu:depleted_thorium") + .texture("gtceu:block/casings/solid/ev"); + + + event.create("thorium_breeding_blanket", "fission_blanket") + .displayName("Thorium Breeding Blanket") + .tier(2) + .durationTicks(2400) + .amountPerCycle(1) + .inputKey("gtceu:thorium_dust") + .texture("phoenix_fission:block/fission/blanket_base") + .tintColor(0x7DE7FF); + */ + + event.create("phoenix_fission:lead_lined_casing") + .soundType("metal") + .resistance(6).hardness(5) + .noValidSpawns(true) + .tagBlock("mineable/pickaxe") + .tagBlock("forge:mineable/wrench") + .requiresTool(true); + + event.create("phoenix_fission:lead_lined_glass") + .textureAll("phoenix_fission:block/casings/lead_lined/glass") + .soundType("glass") + .renderType("cutout") + .resistance(6).hardness(5) + .noValidSpawns(true) + .tagBlock("mineable/pickaxe") + .tagBlock("forge:mineable/wrench") + .defaultCutout() + .requiresTool(true); + + event.create("phoenix_fission:control_rod_assembly") + .soundType("metal") + .resistance(6).hardness(5) + .renderType("solid") + .notSolid() + .fullBlock(false) + .noValidSpawns(true) + .property(BlockProperties.WATERLOGGED) + .tagBlock("mineable/pickaxe") + .tagBlock("forge:mineable/wrench") + .requiresTool(true) + + event.create("phoenix_fission:seebeck_module") + .soundType("metal") + .resistance(6).hardness(5) + .noValidSpawns(true) + .tagBlock("mineable/pickaxe") + .tagBlock("forge:mineable/wrench") + .requiresTool(true) +}) + +StartupEvents.registry("item", event => { + event.create("phoenix_fission:control_rod") + .maxStackSize(16) +}) + +GTCEuStartupEvents.registry("gtceu:material", event => { + // Hot Coolants + event.create("superheated_steam") + .gas(647) + .color(0xFFFFFF) + .flags(GTMaterialFlags.DISABLE_DECOMPOSITION) + .components(GTMaterials.Hydrogen.multiply(2), GTMaterials.Oxygen.multiply(1)) + + event.create("hot_sodium_potassium") + .liquid(873) + .color(0xc8fcb4) + .flags(GTMaterialFlags.DISABLE_DECOMPOSITION) + .components(GTMaterials.Sodium.multiply(1), GTMaterials.Potassium.multiply(1)) +}) diff --git a/kubejs/startup_scripts/fission/fission_fuel_data.js b/kubejs/startup_scripts/fission/fission_fuel_data.js new file mode 100644 index 000000000..9ff0fd5b2 --- /dev/null +++ b/kubejs/startup_scripts/fission/fission_fuel_data.js @@ -0,0 +1,34 @@ +// priority: 1 +/** + * Data/configuration for fission fuels used in other scripts. + */ +/** + * TODO: Determine how to integrate Americium (and optionally, Cm & Nq+ & Nq*) into fuel selection. + * Neither isotope of Americium worth considering (241 and 243) are fissile. + * They both require multiple neutron captures as fertile fuel, + * which results in a net-negative neutron economy. + * + * Perhaps Americium could act as a more viable 'fertile' fuel for Naquadah isotopes, + * which are presumably highly radioactive? + * Otherwise, they would be interesting to have as breeder blanket targets for Curium. + */ +/** + * Despite the definitions in GTM's GTElements.java: + * 'Thorium' is considered to be Th-232. + * 'Neptunium' is considered to be Np-237. + * 'Americium' is considered to be Am-243. + */ +/** + * Other data is in server_scripts/phoenix_fission.js + * @type {{identifier: string, category: string, baseHeat: number, depletionTime: number, enrichment:Boolean}[]} + */ +const fission_fuels = [ + {identifier: "tbu", category: "thorium", baseHeat: 30, depletionTime: 3000, enrichment: false}, + {identifier: "235", category: "uranium", baseHeat: 50, depletionTime: 2400, enrichment: true}, + {identifier: "233", category: "uranium", baseHeat: 55, depletionTime: 2300, enrichment: true}, + {identifier: "mix_237", category: "neptunium", baseHeat: 40, depletionTime: 2000, enrichment: false}, + {identifier: "mix_239", category: "plutonium", baseHeat: 60, depletionTime: 2000, enrichment: false}, + {identifier: "mix_241", category: "plutonium", baseHeat: 70, depletionTime: 1800, enrichment: false}, + {identifier: "239", category: "plutonium", baseHeat: 80, depletionTime: 1200, enrichment: true}, + {identifier: "241", category: "plutonium", baseHeat: 90, depletionTime: 1000, enrichment: true}, +] diff --git a/kubejs/startup_scripts/fission/fission_fuel_registry.js b/kubejs/startup_scripts/fission/fission_fuel_registry.js new file mode 100644 index 000000000..6909fe22e --- /dev/null +++ b/kubejs/startup_scripts/fission/fission_fuel_registry.js @@ -0,0 +1,58 @@ +// priority: 0 +/** + * Item Registry for fuels. + */ +StartupEvents.registry("item", event => { + fission_fuels.forEach(fuel_type => { + let identifier = ""; + if(fuel_type.enrichment) { + // Low-enriched fuels + identifier = `le${fuel_type.category.charAt(0)}_${fuel_type.identifier}` + event.create(`phoenix_fission:${identifier}_fuel`) + .texture(`phoenix_fission:item/fuel/${fuel_type.category}/${identifier}`) + event.create(`phoenix_fission:depleted_${identifier}_fuel`) + .texture(`phoenix_fission:item/fuel/${fuel_type.category}/depleted/${identifier}`) + + // High-enriched fuels + identifier = `he${fuel_type.category.charAt(0)}_${fuel_type.identifier}` + event.create(`phoenix_fission:${identifier}_fuel`) + .texture(`phoenix_fission:item/fuel/${fuel_type.category}/${identifier}`) + event.create(`phoenix_fission:depleted_${identifier}_fuel`) + .texture(`phoenix_fission:item/fuel/${fuel_type.category}/depleted/${identifier}`) + } else { + identifier = fuel_type.identifier; + event.create(`phoenix_fission:${identifier}_fuel`) + .texture(`phoenix_fission:item/fuel/${fuel_type.category}/${identifier}`) + event.create(`phoenix_fission:depleted_${identifier}_fuel`) + .texture(`phoenix_fission:item/fuel/${fuel_type.category}/depleted/${identifier}`) + } + }) +}) + +GTCEuStartupEvents.registry("gtceu:element", event => { + // Non-GTM isotopes + event.create("uranium_233") + .protons(92) + .neutrons(141) + .symbol("U-233") + .isIsotope(true) + + event.create("plutonium_240") + .protons(94) + .neutrons(146) + .symbol("Pu-240") + .isIsotope(true) +}) + +GTCEuStartupEvents.registry("gtceu:material", event => { + // Non-GTM isotopes + event.create("uranium_233") + .liquid(1405).dust() + .color(0x116311).iconSet(GTMaterialIconSet.RADIOACTIVE) + .element(GTElements.get("uranium_233")) + + event.create("plutonium_240") + .liquid(913).dust() + .color(0x8e1818).iconSet(GTMaterialIconSet.RADIOACTIVE) + .element(GTElements.get("plutonium_240")) +}) diff --git a/kubejs/startup_scripts/fission/fission_materials.js b/kubejs/startup_scripts/fission/fission_materials.js new file mode 100644 index 000000000..064d25103 --- /dev/null +++ b/kubejs/startup_scripts/fission/fission_materials.js @@ -0,0 +1,18 @@ +/** + * Fission Material Registry. + */ + +GTCEuStartupEvents.registry("gtceu:material", event => { + event.create("ferroboron") + .ingot() + .color(0x676767).iconSet("dull") + .flags(GTMaterialFlags.GENERATE_PLATE) + .components(GTMaterials.Steel.multiply(4), GTMaterials.Boron.multiply(1)) + + event.create("tough_alloy") + .ingot() + .color(0x0d1d2d).iconSet("metallic") + .flags(GTMaterialFlags.GENERATE_PLATE, GTMaterialFlags.GENERATE_FRAME) + .components(GTMaterials.Steel.multiply(4), GTMaterials.Boron, GTMaterials.Lithium.multiply(2)) + +}) diff --git a/kubejs/startup_scripts/fission/fission_multiblock_registry.js b/kubejs/startup_scripts/fission/fission_multiblock_registry.js new file mode 100644 index 000000000..d1ed3585b --- /dev/null +++ b/kubejs/startup_scripts/fission/fission_multiblock_registry.js @@ -0,0 +1,161 @@ +/** + * Multiblock Registry. + * This is the place where the shapes for fission-related multiblock machines are defined. + */ + +const DynamicFissionReactorMachine = Java.loadClass("net.phoenix.phoenix_fission.api.machine.multiblock.DynamicFissionReactorMachine") +const HeatExchangerMachine = Java.loadClass("net.phoenix.phoenix_fission.api.machine.multiblock.ThermoelectricGeneratorMachine") +const PhoenixRecipeTypes = Java.loadClass("net.phoenix.phoenix_fission.common.data.PhoenixRecipeTypes") +const RelativeDirection = Java.loadClass("com.gregtechceu.gtceu.api.pattern.util.RelativeDirection") +const PhoenixFissionPredicates = Java.loadClass("net.phoenix.phoenix_fission.api.pattern.PhoenixFissionPredicates") +const PhoenixPartAbility = Java.loadClass("net.phoenix.phoenix_fission.api.machine.PhoenixPartAbility") +const PhoenixFissionBlocks = Java.loadClass("net.phoenix.phoenix_fission.common.data.block.PhoenixFissionBlocks") +const LargeTurbineMachine = Java.loadClass("com.gregtechceu.gtceu.common.machine.multiblock.generator.LargeTurbineMachine") +const TraceabilityPredicate = Java.loadClass("com.gregtechceu.gtceu.api.pattern.TraceabilityPredicate") +const SimplePredicate = Java.loadClass("com.gregtechceu.gtceu.api.pattern.predicates.SimplePredicate") +const IRotorHolderMachine = Java.loadClass("com.gregtechceu.gtceu.api.machine.feature.multiblock.IRotorHolderMachine") +const MetaMachine = Java.loadClass("com.gregtechceu.gtceu.api.machine.MetaMachine") + +GTCEuStartupEvents.registry("gtceu:recipe_type", event => { + + // High Pressure Steam Turbine recipe type + event.create("hp_steam_turbine") + .category("multiblock") + .setEUIO("out") + .setMaxIOSize(0, 0, 1, 1) + .setSlotOverlay(false, false, GuiTextures.CENTRIFUGE_OVERLAY) + .setProgressBar(GuiTextures.PROGRESS_BAR_GAS_COLLECTOR, FillDirection.LEFT_TO_RIGHT) + .setSound(GTSoundEntries.TURBINE) + + // Thermoelectric Generator "Heat Exchanger" recipe type + event.create("thermoelectric_generator") + .category("multiblock") + .setEUIO("out") + .setMaxIOSize(0, 0, 1, 1) + .setSlotOverlay(false, false, GuiTextures.LIGHTNING_OVERLAY_1) + .setProgressBar(GuiTextures.PROGRESS_BAR_GAS_COLLECTOR, FillDirection.LEFT_TO_RIGHT) + .setSound(GTSoundEntries.TURBINE) +}) + +GTCEuStartupEvents.registry("gtceu:machine", event => { + // Fission Reactor + event.create("fission_reactor", "multiblock") + .machine((holder) => new DynamicFissionReactorMachine(holder)) + .rotationState(RotationState.ALL) + .recipeTypes(PhoenixRecipeTypes.PRESSURIZED_FISSION_REACTOR_RECIPES) + .recipeModifiers([(machine, recipe) => DynamicFissionReactorMachine.recipeModifier(machine, recipe), GTRecipeModifiers.ELECTRIC_OVERCLOCK.apply(OverclockingLogic.NON_PERFECT_OVERCLOCK_SUBTICK)]) + .appearanceBlock(() => Block.getBlock("phoenix_fission:lead_lined_casing")) + .pattern(definition => FactoryBlockPattern.start(RelativeDirection.RIGHT, RelativeDirection.BACK, RelativeDirection.UP) + .aisle("#CCC#", "CCCCC", "CCCCC", "CCCCC", "#CCC#") + .aisleRepeatable(1, 4, "CGGGC", "GIIIG", "GIIIG", "GIIIG", "CGGGC") + .aisle("CG@GC", "GIIIG", "GIIIG", "GIIIG", "CGGGC") + .aisle("#CCC#", "CRRRC", "CRRRC", "CRRRC", "#CCC#") + .aisle("#####", "#RRR#", "#RRR#", "#RRR#", "#####") + .where("@", Predicates.controller(Predicates.blocks(definition.get()))) + .where("C", Predicates.blocks("phoenix_fission:lead_lined_casing").setMinGlobalLimited(38) + .or(Predicates.abilities(PartAbility.IMPORT_ITEMS).setPreviewCount(1)) + .or(Predicates.abilities(PartAbility.EXPORT_ITEMS).setPreviewCount(1)) + .or(Predicates.abilities(PartAbility.IMPORT_FLUIDS).setPreviewCount(1)) + .or(Predicates.abilities(PartAbility.EXPORT_FLUIDS).setPreviewCount(1)) + .or(Predicates.abilities(PhoenixPartAbility.FISSION_SCRAM).setMaxGlobalLimited(1).setPreviewCount(0)) + .or(Predicates.abilities(PhoenixPartAbility.FISSION_SENSOR).setMaxGlobalLimited(3).setPreviewCount(0)) + ) + .where("G", Predicates.blocks("phoenix_fission:lead_lined_casing") + .or(Predicates.blocks("phoenix_fission:lead_lined_glass")) + .or(Predicates.abilities(PartAbility.IMPORT_ITEMS)) + .or(Predicates.abilities(PartAbility.EXPORT_ITEMS)) + .or(Predicates.abilities(PartAbility.IMPORT_FLUIDS)) + .or(Predicates.abilities(PartAbility.EXPORT_FLUIDS)) + ) + .where("I", Predicates.blocks(PhoenixFissionBlocks.EMPTY_REACTOR_COMPONENT.get()) + .or(PhoenixFissionPredicates.fissionCoolers()) + .or(PhoenixFissionPredicates.fissionFuelRods()) + .or(PhoenixFissionPredicates.fissionModerators()) + ) + .where("R", Predicates.blocks("phoenix_fission:control_rod_assembly")) + .where("#", Predicates.any()) + .build()) + .workableCasingModel("phoenix_fission:block/casings/lead_lined/casing", + "gtceu:block/multiblock/fission_reactor") + + // Predicate for Large Turbine rotor holder ripped pretty much straight from GTM + let rotorHolderPredicate = new TraceabilityPredicate( + new SimplePredicate((state) => { + let rotorHolderMachine = MetaMachine.getMachine(state.getWorld(), state.getPos()); + return rotorHolderMachine instanceof IRotorHolderMachine && + state.getWorld().getBlockState(state.getPos().relative(rotorHolderMachine.self().getFrontFacing())).isAir() + }, + /** + * This nameless function below has been a nightmare. All it does is retrieve list of rotor holder blocks that can go in the spot for the multi previews, but Rhino/JS didn't want to supply it in the correct type. + * I was forced to create a new predicate from scratch and use the candidates from that instead. It's ugly, but it works! + */ + () => Predicates.ability(PartAbility.ROTOR_HOLDER, GTValues.ALL_TIERS.slice(GTValues.IV)).common[0].candidates.get() + ) + ) + .addTooltips(Component.translatable("gtceu.multiblock.pattern.clear_amount_3")) + .addTooltips(Component.translatable("gtceu.multiblock.pattern.error.limited.1", GTValues.VN[GTValues.IV])) + .setExactLimit(1) + + // High Pressure Steam Turbine + event.create("high_pressure_steam_turbine", "multiblock") + .machine((holder) => new LargeTurbineMachine(holder, GTValues.IV)) + .rotationState(RotationState.ALL) + .recipeTypes("hp_steam_turbine") + .recipeModifiers((machine, recipe) => LargeTurbineMachine.recipeModifier(machine, recipe)) + .appearanceBlock(GTBlocks.CASING_TITANIUM_TURBINE) + .generator(true) + .pattern(definition => FactoryBlockPattern.start(/* RelativeDirection.FRONT, RelativeDirection.UP, RelativeDirection.RIGHT */) + .aisle("CCCFFC", "CHHC#C", "CCCFFC") + .aisle("CHHC#C", "RGGGGE", "CHHC#C") + .aisle("CCCFFC", "C@HC#C", "CCCFFC") + .where("@", Predicates.controller(Predicates.blocks(definition.get()))) + .where("G", Predicates.blocks(GTBlocks.CASING_TITANIUM_GEARBOX.get())) + .where("C", Predicates.blocks(GTBlocks.CASING_TITANIUM_TURBINE.get())) + .where("F", Predicates.frames(GTMaterials.HSSG)) + .where("R", rotorHolderPredicate) + .where("E", Predicates.abilities(PartAbility.OUTPUT_ENERGY).setExactLimit(1)) + .where("H", Predicates.blocks(GTBlocks.CASING_TITANIUM_TURBINE.get()) + .or(Predicates.abilities(PartAbility.MAINTENANCE).setExactLimit(1)) + .or(Predicates.abilities(PartAbility.IMPORT_FLUIDS).setPreviewCount(1)) + .or(Predicates.abilities(PartAbility.EXPORT_FLUIDS).setPreviewCount(1))) + .where("#", Predicates.any()) + .build()) + .tooltips( + Component.translatable("gtceu.universal.tooltip.base_production_eut", GTValues.V[GTValues.IV] * 2), + Component.translatable("gtceu.multiblock.turbine.efficiency_tooltip", GTValues.VNF[GTValues.IV])) + .workableCasingModel("gtceu:block/casings/mechanic/machine_casing_turbine_titanium", + "gtceu:block/multiblock/generator/large_steam_turbine") + + // Heat Exchanger/Thermoelectric Generator + event.create("thermoelectric_generator", "multiblock") + .machine((holder) => new HeatExchangerMachine(holder)) + .rotationState(RotationState.ALL) + .recipeTypes("thermoelectric_generator") + .recipeModifiers((machine, recipe) => HeatExchangerMachine.recipeModifier(machine, recipe)) + .appearanceBlock(() => GTBlocks.CASING_STEEL_PIPE.get()) + .pattern(definition => FactoryBlockPattern.start(RelativeDirection.LEFT, RelativeDirection.UP, RelativeDirection.BACK) + .aisle("FSHSF", "FD@DF", "FSHSF") + .aisle("FSHSF", "ISGSI", "FSHSF") + .aisleRepeatable(1, 10, "FSHSF", "PSGSP", "FSHSF") + .aisle("FSHSF", "ISGSI", "FSHSF") + .aisle("FSHSF", "FDHDF", "FSHSF") + .where("@", Predicates.controller(Predicates.blocks(definition.get()))) + .where("F", Predicates.blocks(GTBlocks.CASING_ALUMINIUM_FROSTPROOF.get())) + .where("H", Predicates.blocks(GTBlocks.CASING_INVAR_HEATPROOF.get())) + .where("S", Predicates.blocks("phoenix_fission:seebeck_module")) + .where("P", Predicates.blocks(GTBlocks.CASING_STEEL_PIPE.get())) + .where("G", Predicates.blocks(PhoenixFissionBlocks.FISSILE_SAFE_GEARBOX_CASING.get())) + .where("I", Predicates.abilities(PartAbility.IMPORT_FLUIDS).setMaxGlobalLimited(2) + .or(Predicates.abilities(PartAbility.EXPORT_FLUIDS).setMaxGlobalLimited(2)) + ) + .where("D", Predicates.abilities(PartAbility.OUTPUT_ENERGY) + .setMinGlobalLimited(1) + .setMaxGlobalLimited(2) + .setPreviewCount(2) + .or(Predicates.blocks("phoenix_fission:seebeck_module")) + ) + .build() + ) + .workableCasingModel("gtceu:block/casings/pipe/machine_casing_pipe_steel", + "gtceu:block/multiblock/fluid_drilling_rig") +}) diff --git a/kubejs/startup_scripts/fission/ncn_replacement_items.js b/kubejs/startup_scripts/fission/ncn_replacement_items.js new file mode 100644 index 000000000..91b6f89a6 --- /dev/null +++ b/kubejs/startup_scripts/fission/ncn_replacement_items.js @@ -0,0 +1,11 @@ +/** + * Replacement Fission-related items for after Nuclearcraft: Neoteric is removed. + */ + +StartupEvents.registry("item", event => { + event.create("phoenix_fission:light_radiation_shielding") + .texture("phoenix_fission:item/light_radiation_shielding") + + event.create("phoenix_fission:heavy_radiation_shielding") + .texture("phoenix_fission:item/heavy_radiation_shielding") +}) diff --git a/kubejs/startup_scripts/gregtech_material_registry/elements_and_material_sets.js b/kubejs/startup_scripts/gregtech_material_registry/elements_and_material_sets.js index 71b4e45c7..096214774 100644 --- a/kubejs/startup_scripts/gregtech_material_registry/elements_and_material_sets.js +++ b/kubejs/startup_scripts/gregtech_material_registry/elements_and_material_sets.js @@ -72,25 +72,6 @@ GTCEuStartupEvents.registry("gtceu:element", event => { .protons(119) .neutrons(229) .symbol("Dl") - - // NCN Isotope Fluids - event.create("uranium_233") - .protons(92) - .neutrons(141) - .symbol("U-233") - .isIsotope(true) - - event.create("plutonium_238") - .protons(94) - .neutrons(144) - .symbol("Pu-238") - .isIsotope(true) - - event.create("plutonium_242") - .protons(94) - .neutrons(148) - .symbol("Pu-242") - .isIsotope(true) }) diff --git a/kubejs/startup_scripts/gregtech_material_registry/material_modifications.js b/kubejs/startup_scripts/gregtech_material_registry/material_modifications.js index 8312efb03..ba818b424 100644 --- a/kubejs/startup_scripts/gregtech_material_registry/material_modifications.js +++ b/kubejs/startup_scripts/gregtech_material_registry/material_modifications.js @@ -70,15 +70,15 @@ GTCEuStartupEvents.registry("gtceu:material", event => { addFluid(GTMaterials.Californium, $FluidStorageKeys.LIQUID, 1173); GTMaterials.Californium.setMaterialARGB(0x7d0222); GTMaterials.Californium.setMaterialSecondaryARGB(0x410022); + GTMaterials.Californium.setProperty(PropertyKey.DUST, new $DustProperty()); addFluid(GTMaterials.Neptunium, $FluidStorageKeys.LIQUID, 913); GTMaterials.Neptunium.setMaterialARGB(0x486d7b); GTMaterials.Neptunium.setMaterialSecondaryARGB(0x003064); - GTMaterials.Neptunium.setProperty($PropertyKey.INGOT, new $IngotProperty()); + GTMaterials.Neptunium.setProperty(PropertyKey.DUST, new $DustProperty()); addFluid(GTMaterials.Curium, $FluidStorageKeys.LIQUID, 1618); GTMaterials.Curium.setMaterialARGB(0x58307f); GTMaterials.Curium.setMaterialSecondaryARGB(0x221255); GTMaterials.Curium.setProperty(PropertyKey.DUST, new $DustProperty()); - GTMaterials.Curium.setProperty($PropertyKey.INGOT, new $IngotProperty()); addFluid(GTMaterials.NetherStar, $FluidStorageKeys.LIQUID, 1337); addFluid(GTMaterials.Actinium, $FluidStorageKeys.LIQUID, 1324); GTMaterials.Americium.setMaterialSecondaryARGB(0x083946); diff --git a/kubejs/startup_scripts/gregtech_material_registry/other_mods.js b/kubejs/startup_scripts/gregtech_material_registry/other_mods.js index 0039f214a..63cc32a8d 100644 --- a/kubejs/startup_scripts/gregtech_material_registry/other_mods.js +++ b/kubejs/startup_scripts/gregtech_material_registry/other_mods.js @@ -216,28 +216,6 @@ GTCEuStartupEvents.registry("gtceu:material", event => { .components("charged_certus_quartz", "redstone", "nether_quartz") }) -// Nuclearcraft: Neoteric - -GTCEuStartupEvents.registry("gtceu:material", event => { - - event.create("uranium_233") - .liquid(1405) - .color(0x116311).secondaryColor(0x33342c).iconSet(GTMaterialIconSet.RADIOACTIVE) - .element(GTElements.get("uranium_233")) - - event.create("plutonium_238") - .liquid(913) - .color(0x8e1818).secondaryColor(0x222730).iconSet(GTMaterialIconSet.RADIOACTIVE) - .element(GTElements.get("plutonium_238")) - - event.create("plutonium_242") - .liquid(913) - .color(0x8e1818).secondaryColor(0x222730).iconSet(GTMaterialIconSet.RADIOACTIVE) - .element(GTElements.get("plutonium_242")) - -}) - - // One-offs/Miscellaneous GTCEuStartupEvents.registry("gtceu:material", event => { diff --git a/kubejs/startup_scripts/nukeLists/fluid.js b/kubejs/startup_scripts/nukeLists/fluid.js index 9d7aee799..3c7d9b4bb 100644 --- a/kubejs/startup_scripts/nukeLists/fluid.js +++ b/kubejs/startup_scripts/nukeLists/fluid.js @@ -50,39 +50,3 @@ global.fluidNukeList = [ "systeams:steamiestest", ] - -StartupEvents.postInit(event => { - /** - * NuclearCraft is most easily dealt with by removing *everything* but a select few fluids - */ - // Get all of the NuclearCraft fluids - let NCFluids = Fluid.getTypes().filter(id => id.includes("nuclearcraft")) - - // NuclearCraft fluids to not nuke - let NCFluidsToKeep = [ - "nuclearcraft:hydrated_gelatin", - "nuclearcraft:gelatin", - "nuclearcraft:sugar", - "nuclearcraft:marshmallow", - "nuclearcraft:cocoa_butter", - "nuclearcraft:pasteurized_milk", - "nuclearcraft:chocolate_liquor", - "nuclearcraft:unsweetened_chocolate", - "nuclearcraft:dark_chocolate", - "nuclearcraft:milk_chocolate", - "nuclearcraft:technical_water", - "nuclearcraft:high_pressure_steam", - ] - - // Add depleted fuels, or else fission reactors won't run - NCFluidsToKeep = NCFluidsToKeep.concat(NCFluids.filter(id => id.includes("depleted_fuel"))) - - // Add flowing fluid variants to the list of fluids to keep - NCFluidsToKeep.forEach(fluid => { NCFluidsToKeep.push(`${fluid}_flowing`) }) - - // Remove used fluids from the full list of NC fluids - let NCFluidsToRemove = NCFluids.filter((el) => !NCFluidsToKeep.includes(el)) - - // Add all the unwanted NuclearCraft fluids to the nukeList - global.fluidNukeList = global.fluidNukeList.concat(NCFluidsToRemove) -}) diff --git a/kubejs/startup_scripts/nukeLists/item.js b/kubejs/startup_scripts/nukeLists/item.js index beef7ebf6..7d3b76213 100644 --- a/kubejs/startup_scripts/nukeLists/item.js +++ b/kubejs/startup_scripts/nukeLists/item.js @@ -220,6 +220,11 @@ global.itemNukeList = [ "packagedexcrafting:ender_crafter", "packagedexcrafting:flux_crafter", + // Phoenix Fission + "phoenix_fission:heat_exchanger", + "phoenix_fission:fissile_heat_safe_casing", + "phoenix_fission:fissile_reaction_safe_casing", + // Project Red "projectred_core:silicon", "projectred_core:sand_coal_comp", @@ -306,190 +311,6 @@ global.itemNukeList = [ "wirelesschargers:basic_wireless_block_charger", "wirelesschargers:advanced_wireless_block_charger", - // NuclearCraft regexes - /^nuclearcraft:turbine[\w_]*/, - /^nuclearcraft:fusion[\w_]*/, - /^nuclearcraft:[\w_]*_cooler$/, - /^nuclearcraft:[\w_]*accelerator[\w_]+$/, - /^nuclearcraft:[\w_]*chamber[\w_]*$/, - /^nuclearcraft:[\w_]*_ore$/, - /^nuclearcraft:\w+_chunk$/, - /^nuclearcraft:source_\w+_\w+$/, - /^nuclearcraft:[\w_]*electromagnet/, - /^nuclearcraft:solar_panel.*/, - /^nuclearcraft:[\w_]+_voltaic_pile$/, - /^nuclearcraft:[\w_]+_container$/, - /^nuclearcraft:[\w_]*_collector$/, - /^nuclearcraft:[\w_]*smore$/, - /^nuclearcraft:[\w_]*_battery$/, - /^nuclearcraft:[\w_]*_barrel$/, - /^nuclearcraft:[\w_]+_bucket$/, - /^nuclearcraft:upgrade_[\w_]+/, - /^nuclearcraft:particle/, - /^nuclearcraft:[\w]+_spallation_waste/, - /^nuclearcraft:msr/, - - // Nuclearcraft - "nuclearcraft:xenorium_298", - "nuclearcraft:silicon_tracker", - "nuclearcraft:em_calorimeter", - "nuclearcraft:hadron_calorimeter", - "nuclearcraft:tungsten_filament", - "nuclearcraft:subatomic_liquifier", - "nuclearcraft:quantite", - "nuclearcraft:portal", - "nuclearcraft:wasteland_earth", - "nuclearcraft:feral_ghoul_spawn_egg", - "nuclearcraft:expl", - "nuclearcraft:motor", - "nuclearcraft:plate_extreme", - "nuclearcraft:actuator", - "nuclearcraft:tough_helmet", - "nuclearcraft:tough_chest", - "nuclearcraft:tough_pants", - "nuclearcraft:tough_boots", - "nuclearcraft:empty_frame", - "nuclearcraft:dps", - "nuclearcraft:rad_x", - "nuclearcraft:servo", - "nuclearcraft:bscco_electromagnet", - "nuclearcraft:bscco_rf_amplifier", - "nuclearcraft:niobium_tin_electromagnet", - "nuclearcraft:niobium_tin_rf_amplifier", - "nuclearcraft:lithium_ion_cell", - "nuclearcraft:empty_frame", - "nuclearcraft:supercooler", - "nuclearcraft:steel_frame", - "nuclearcraft:quantum_flux_regulator", - "nuclearcraft:chamber_port", - "nuclearcraft:fission_reactor_irradiation_chamber", - "nuclearcraft:chamber_terminal", - "nuclearcraft:event_horizon_stabilizer", - "nuclearcraft:quantum_transformer", - "nuclearcraft:black_hole", - "nuclearcraft:neutronium_frame", - "nuclearcraft:photon_concentrator", - "nuclearcraft:redstone_dimmer", - "nuclearcraft:rad_x", - "nuclearcraft:research_paper", - "nuclearcraft:gelatin", - "nuclearcraft:basic_electric_circuit", - "nuclearcraft:sic_fiber", - "nuclearcraft:spaxelhoe_tough", - "nuclearcraft:spaxelhoe_thorium", - "nuclearcraft:multitool", - "nuclearcraft:qnp", - "nuclearcraft:lithium_ion_cell", - "nuclearcraft:dps", - "nuclearcraft:servo", - "nuclearcraft:bioplastic", - "nuclearcraft:empty_sink", - "nuclearcraft:radaway_slow", - "nuclearcraft:salt", - "nuclearcraft:cocoa_butter", - "nuclearcraft:sawdust", - "nuclearcraft:flour", - "nuclearcraft:dominos", - "nuclearcraft:radaway", - "nuclearcraft:coil_bscco", - "nuclearcraft:supercold_ice_block", - "nuclearcraft:silicon_wafer", - "nuclearcraft:basic_processor", - "nuclearcraft:advanced_processor", - "nuclearcraft:elite_processor", - "nuclearcraft:empty_detector", - "nuclearcraft:silicon_boule", - "nuclearcraft:laser_assembly", - "nuclearcraft:scintillator_pwo", - "nuclearcraft:scintillator_plastic", - "nuclearcraft:coil_magnesium_diboride", - "nuclearcraft:wire_gold_tungsten", - "nuclearcraft:silicon_p_doped", - "nuclearcraft:silicon_n_doped", - - // NuclearCraft Heat Sinks - "nuclearcraft:slime_heat_sink", - "nuclearcraft:netherite_heat_sink", - "nuclearcraft:liquid_nitrogen_heat_sink", - "nuclearcraft:end_stone_heat_sink", - "nuclearcraft:cobalt_heat_sink", - "nuclearcraft:fluorite_heat_sink", - "nuclearcraft:lithium_heat_sink", - "nuclearcraft:platinum_heat_sink", - "nuclearcraft:arsenic_heat_sink", - "nuclearcraft:lead_heat_sink", - "nuclearcraft:gold_heat_sink", - "nuclearcraft:silver_heat_sink", - "nuclearcraft:prismarine_heat_sink", - "nuclearcraft:obsidian_heat_sink", - "nuclearcraft:purpur_heat_sink", - "nuclearcraft:nether_brick_heat_sink", - "nuclearcraft:diamond_heat_sink", - "nuclearcraft:iron_heat_sink", - "nuclearcraft:villiaumite_heat_sink", - "nuclearcraft:carobbiite_heat_sink", - - "nuclearcraft:empty_active_heat_sink", - /^nuclearcraft:active_[\w_]+_heat_sink$/, - - "nuclearcraft:graphite_block", - "nuclearcraft:beryllium_block", - - "nuclearcraft:heat_exchanger", - - // Nuclearcraft Machines - "nuclearcraft:rock_crusher", - "nuclearcraft:decay_hastener", - "nuclearcraft:irradiator", - "nuclearcraft:nuclear_furnace", - "nuclearcraft:extractor", - "nuclearcraft:electrolyzer", - "nuclearcraft:pressurizer", - "nuclearcraft:alloy_smelter", - "nuclearcraft:centrifuge", - "nuclearcraft:manufactory", - "nuclearcraft:gas_scrubber", - "nuclearcraft:fluid_enricher", - "nuclearcraft:isotope_separator", - "nuclearcraft:fluid_infuser", - "nuclearcraft:chemical_reactor", - "nuclearcraft:analyzer", - "nuclearcraft:ingot_former", - "nuclearcraft:pump", - "nuclearcraft:fuel_reprocessor", - "nuclearcraft:leacher", - "nuclearcraft:crystallizer", - "nuclearcraft:assembler", - "nuclearcraft:steam_turbine", - "nuclearcraft:melter", - - // Nuclearcraft Isotopes - "nuclearcraft:fuel_mixed_mix_239", - "nuclearcraft:fuel_mixed_mix_241", - "nuclearcraft:lithium_6", - "nuclearcraft:lithium_7", - "nuclearcraft:berkelium_247", - "nuclearcraft:berkelium_248", - "nuclearcraft:boron_10", - "nuclearcraft:boron_11", - "nuclearcraft:thorium_230", - "nuclearcraft:thorium_232", - "nuclearcraft:uranium_235", - "nuclearcraft:uranium_238", - "nuclearcraft:plutonium_239", - "nuclearcraft:plutonium_241", - "nuclearcraft:curium_246", - "nuclearcraft:curium_247", - "nuclearcraft:californium_249", - "nuclearcraft:sodium_22", - "nuclearcraft:copernicium_291", - "nuclearcraft:beryllium_7", - "nuclearcraft:magnesium_26", - "nuclearcraft:calcium_48", - "nuclearcraft:magnesium_24", - "nuclearcraft:iridium_192", - "nuclearcraft:cobalt_60", - // Pipez "pipez:gas_pipe", "pipez:universal_pipe", diff --git a/kubejs/startup_scripts/nukeLists/unificationPatterns.js b/kubejs/startup_scripts/nukeLists/unificationPatterns.js index 8188ed23d..dc1cac7e4 100644 --- a/kubejs/startup_scripts/nukeLists/unificationPatterns.js +++ b/kubejs/startup_scripts/nukeLists/unificationPatterns.js @@ -20,14 +20,6 @@ global.unificationExcludedItems = [ "enderio:infinity_rod", "enderio:experience_rod", "extendedcrafting:luminessence_block", - "nuclearcraft:beryllium_block", - "nuclearcraft:ferroboron_ingot", - "nuclearcraft:ferroboron_dust", - "nuclearcraft:graphite_block", - "nuclearcraft:hard_carbon_ingot", - "nuclearcraft:hard_carbon_dust", - "nuclearcraft:tough_alloy_ingot", - "nuclearcraft:supercold_ice_block", "thermal:apple_block", "thermal:beetroot_block", "thermal:carrot_block", @@ -40,51 +32,6 @@ global.unificationExcludedItems = [ /** * A RegEx pattern that matches with all gears, blocks, ingots, nuggets, and other often-unified items - * from NuclearCraft, Thermal Series, EnderIO, Ad Astra, and ExtendedCrafting. + * from Thermal Series, EnderIO, Ad Astra, and ExtendedCrafting. */ -global.unificationPattern = new RegExp(`^(?!(${global.unificationExcludedItems.join("|")})).*(nuclearcraft|thermal|enderio|ad_astra|extendedcrafting):((powdered_|raw_).*|.*(_block|_plate|_ingot|_nugget|_gear|_dust|_rod|_gem|_ore))`, "i") - - -/** - * All NuclearCraft fuels we don't want to remove - */ -global.nuclearCraftFuelsToKeep = [ - "nuclearcraft:depleted_fuel_americium_hea_242", - "nuclearcraft:depleted_fuel_americium_lea_242", - "nuclearcraft:depleted_fuel_neptunium_hen_236", - "nuclearcraft:depleted_fuel_neptunium_len_236", - "nuclearcraft:depleted_fuel_plutonium_hep_239", - "nuclearcraft:depleted_fuel_plutonium_hep_241", - "nuclearcraft:depleted_fuel_plutonium_lep_239", - "nuclearcraft:depleted_fuel_plutonium_lep_241", - "nuclearcraft:depleted_fuel_thorium_tbu", - "nuclearcraft:depleted_fuel_uranium_heu_233", - "nuclearcraft:depleted_fuel_uranium_heu_235", - "nuclearcraft:depleted_fuel_uranium_leu_233", - "nuclearcraft:depleted_fuel_uranium_leu_235", - "nuclearcraft:fuel_americium_hea_242", - "nuclearcraft:fuel_americium_lea_242", - "nuclearcraft:fuel_neptunium_hen_236", - "nuclearcraft:fuel_neptunium_len_236", - "nuclearcraft:fuel_plutonium_hep_239", - "nuclearcraft:fuel_plutonium_hep_239", - "nuclearcraft:fuel_plutonium_hep_241", - "nuclearcraft:fuel_plutonium_lep_239", - "nuclearcraft:fuel_plutonium_lep_241", - "nuclearcraft:fuel_thorium_tbu", - "nuclearcraft:fuel_uranium_heu_233", - "nuclearcraft:fuel_uranium_heu_235", - "nuclearcraft:fuel_uranium_leu_233", - "nuclearcraft:fuel_uranium_leu_235", -] - -/** - * A RegEx pattern that matches with NuclearCraft fuels and depleted fuels except the ones in the above list. - */ -global.nuclearcraftFuelPattern = new RegExp(`^(?!(?:${global.nuclearCraftFuelsToKeep.join("|")})$).*nuclearcraft:(fuel|depleted_fuel).*`, "i") - - -/** - * A RegEx pattern that matches with all NuclearCraft isotopes. - */ -global.nuclearcraftIsotopePattern = /^nuclearcraft:.*(_ni|_za|_ox)$/ +global.unificationPattern = new RegExp(`^(?!(${global.unificationExcludedItems.join("|")})).*(thermal|enderio|ad_astra|extendedcrafting):((powdered_|raw_).*|.*(_block|_plate|_ingot|_nugget|_gear|_dust|_rod|_gem|_ore))`, "i") diff --git a/kubejs/startup_scripts/registry/block_registry.js b/kubejs/startup_scripts/registry/block_registry.js index d13777277..6be9ce756 100644 --- a/kubejs/startup_scripts/registry/block_registry.js +++ b/kubejs/startup_scripts/registry/block_registry.js @@ -138,7 +138,7 @@ StartupEvents.registry("block", event => { // Machine Casings const casings = [ "dark_soularium", - "dark_steel", + "dark_steel" ] casings.forEach(casing => { diff --git a/kubejs/startup_scripts/registry/smore_registry.js b/kubejs/startup_scripts/registry/smore_registry.js new file mode 100644 index 000000000..aa8488880 --- /dev/null +++ b/kubejs/startup_scripts/registry/smore_registry.js @@ -0,0 +1,30 @@ +/** + * Register items and GregTech: Modern materials for S'mores. + */ + +StartupEvents.registry("item", event => { + event.create("marshmallow") + .texture("kubejs:item/smore/marshmallow") + event.create("milk_chocolate") + .texture("kubejs:item/smore/milk_chocolate") + event.create("graham_cracker") + .texture("kubejs:item/smore/graham_cracker") +}) + +GTCEuStartupEvents.registry("gtceu:material", event => { + event.create("marshmallow") + .liquid(343) + .color(0xEDEDED) + + event.create("pasteurized_milk") + .liquid(345) + .color(0xEEEEEE) + + event.create("chocolate_liquor") + .liquid(322) + .color(0x281a10) + + event.create("milk_chocolate") + .liquid(318) + .color(0x422f21) +}) diff --git a/kubejs/startup_scripts/worldgen/oreVeinsRemoval.js b/kubejs/startup_scripts/worldgen/oreVeinsRemoval.js index 7833b8de9..b3f374948 100644 --- a/kubejs/startup_scripts/worldgen/oreVeinsRemoval.js +++ b/kubejs/startup_scripts/worldgen/oreVeinsRemoval.js @@ -1,21 +1,10 @@ /** - * Remove Ore generation from Nuclearcraft: Neoteric and Ad Astra + * Remove Ore generation from Ad Astra * Ad Astra is weird and generates it on multiple steps, so it requires the additional events * Thanks Ghosti for figuring this one out */ WorldgenEvents.remove(event => { event.removeFeatureById("underground_ores", [ - "nuclearcraft:boron_placed", - "nuclearcraft:cobalt_placed", - "nuclearcraft:lead_placed", - "nuclearcraft:lithium_placed", - "nuclearcraft:magnesium_placed", - "nuclearcraft:platinum_placed", - "nuclearcraft:silver_placed", - "nuclearcraft:thorium_placed", - "nuclearcraft:tin_placed", - "nuclearcraft:uranium_placed", - "nuclearcraft:zinc_placed", "ad_astra:moon_iron_ore", "ad_astra:deepslate_desh_ore", "ad_astra:moon_desh_ore", diff --git a/manifest.json b/manifest.json index e6b05e7ff..3ba7bebab 100644 --- a/manifest.json +++ b/manifest.json @@ -220,11 +220,6 @@ "projectID": 634062, "required": true }, - { - "fileID": 7136984, - "projectID": 840010, - "required": true - }, { "fileID": 7329736, "projectID": 308380, @@ -1139,6 +1134,11 @@ "fileID": 5945575, "projectID": 998364, "required": true + }, + { + "fileID": 8741784, + "projectID": 1443603, + "required": true } ] }