commit 9be3a47d98ab234a153568bd2442255be09ca6dd Author: caes Date: Thu May 21 07:36:04 2020 -0400 init diff --git a/changelog.txt b/changelog.txt new file mode 100644 index 0000000..21a2e96 --- /dev/null +++ b/changelog.txt @@ -0,0 +1,120 @@ +--------------------------------------------------------------------------------------------------- +Version: 0.1.3 +Date: 2020-02-04 + + Fixes: + - Hopefully fixed a locale bug with the thermal fuel + category + - Fixed thermal nuclear rocket icon to account for new + mipmaps in version 18. + +--------------------------------------------------------------------------------------------------- +Version: 0.1.2 +Date: 2020-02-03 + + Changes: + - Incremented to version 18. + +--------------------------------------------------------------------------------------------------- +Version: 0.1.1 +Date: 2019-11-03 + + Technologies: + - Moved atomic-bomb to nuclear power tech. + - Rebranded atomic-bomb tech to "Weapons-grade plutonium". + + Fixes: + - Fixed Uranium Belts reference in info.json. + +--------------------------------------------------------------------------------------------------- +Version: 0.1.0 +Date: 2019-09-30 + + Fixes: + - Fixed changelog. + - Removed mipmap setting from yellowcake item. + + Graphics: + - Updated chemistry recipe tints for new + chemical plant graphic. + +--------------------------------------------------------------------------------------------------- +Version: 0.0.10 +Date: 2019-09-26 + + Fixes: + - Added support for uranium text plates. + +--------------------------------------------------------------------------------------------------- +Version: 0.0.9 +Date: 2019-09-15 + + Fixes: + - Added exception centrifuge and production reactor in + assembler pipe passthrough mod. + +--------------------------------------------------------------------------------------------------- +Version: 0.0.8 +Date: 2019-09-13 + + Graphics: + - Updated reactor icon to reflect new + colors. + +--------------------------------------------------------------------------------------------------- +Version: 0.0.7 +Date: 2019-09-13 + + Recipes: + - Changed fluid input orders on some hex and enrichment + recipes for better alignment with centrifuge outputs. + See new picture on the mod portal. + +--------------------------------------------------------------------------------------------------- +Version: 0.0.6 +Date: 2019-09-13 + + Graphics: + - Fixed recipe tints on reprocessing recipes. + +--------------------------------------------------------------------------------------------------- +Version: 0.0.5 +Date: 2019-09-13 + + Graphics: + - Fixed reactor fuel glow colors to match the new glow. + - Sped up production reactor animation. + - Improved the window glow graphics. + +--------------------------------------------------------------------------------------------------- +Version: 0.0.4 +Date: 2019-09-13 + + Graphics: + - Added temperature-dependent glow to reactor windows. + +--------------------------------------------------------------------------------------------------- +Version: 0.0.3 +Date: 2019-09-05 + + Graphics: + - Updated centrifuge fluid_boxes to look better under new + secondary_draw_order mapping in 0.17.68. + - Updated chemistry recipe tints to match new chemical + plant graphics. + +--------------------------------------------------------------------------------------------------- +Version: 0.0.2 +Date: 2019-09-03 + + Graphics: + - Updated all chemistry recipes with crafting machine tints. + +--------------------------------------------------------------------------------------------------- +Version: 0.0.1 +Date: 2019-09-01 + + Graphics: + - Slowed production reactor animation to a proper crawl. + - Updated hydrofluoric acid fluid colors. + - Improved lighting on reactor entities. \ No newline at end of file diff --git a/data-updates.lua b/data-updates.lua new file mode 100644 index 0000000..8dc9917 --- /dev/null +++ b/data-updates.lua @@ -0,0 +1,340 @@ +require("factsheet") + +replace_recipe_io( + data.raw.recipe["textplate-small-uranium"], + "uranium-238", + "adamo-nuclear-DU-oxide" +) + +replace_recipe_io( + data.raw.recipe["textplate-large-uranium"], + "uranium-238", + "adamo-nuclear-DU-oxide" +) + +if appmod and type(appmod) == "table" then + appmod + .blacklist["centrifuge"] = true +end + +if appmod and type(appmod) == "table" then + appmod + .blacklist["adamo-nuclear-production-reactor"] = true +end + +data.raw.item["centrifuge"].subgroup = "adamo-nuclear-production-machine" +data.raw.item["centrifuge"].order = "n[centrifuge]" +data.raw["assembling-machine"] +.centrifuge.fluid_boxes = centrifuge_fluid_boxes() + +local reactor_coolant_color = {r = 1,g = 0.9,b = 0.8,a = 1} + +-- Hide vanilla items. +data.raw.item["uranium-235"].hidden = true +data.raw.item["uranium-238"].hidden = true +if not data.raw.item["uranium-235"].flags then + data.raw.item["uranium-235"].flags = {} +end +if not data.raw.item["uranium-238"].flags then + data.raw.item["uranium-238"].flags = {} +end +table.insert(data.raw.item["uranium-235"].flags,"hidden") +table.insert(data.raw.item["uranium-238"].flags,"hidden") +data.raw.recipe["kovarex-enrichment-process"].hidden = true +data.raw.recipe["nuclear-fuel-reprocessing"].hidden = true +data.raw.recipe["uranium-processing"].hidden = true + +-- Hide some mod recipes +if data.raw.recipe["MOX-fuel"] then + data.raw.recipe["MOX-fuel"].hidden = true +end +if data.raw.recipe["MOX-fuel-reprocessing"] then + data.raw.recipe["MOX-fuel-reprocessing"].hidden = true +end +if data.raw.recipe["advanced-nuclear-fuel-reprocessing"] then + data.raw.recipe["advanced-nuclear-fuel-reprocessing"].hidden = true +end +if data.raw.recipe["plutonium-238-nuclesynthesis"] then + data.raw.recipe["plutonium-238-nuclesynthesis"].hidden = true +end +if data.raw.recipe["uranium-238-excess-neutron-capture"] then + data.raw.recipe["uranium-238-excess-neutron-capture"].hidden = true +end +if data.raw.recipe["plutonium-239-alpha-decay"] then + data.raw.recipe["plutonium-239-alpha-decay"].hidden = true +end + +local ore = data.raw.item["uranium-ore"] +local heu_fuel_recipe = data.raw.recipe["uranium-fuel-cell"] +local heu_fuel_item = data.raw.item["uranium-fuel-cell"] +local heu_used_fuel_item = data.raw.item["used-up-uranium-fuel-cell"] +local nuclear_fuel_recipe = data.raw.recipe["nuclear-fuel"] +local nuclear_fuel_item = data.raw.item["nuclear-fuel"] +local ammo = data.raw.recipe["uranium-rounds-magazine"] +local shell = data.raw.recipe["uranium-cannon-shell"] +local explosive_shell = data.raw.recipe["explosive-uranium-cannon-shell"] +local atomic_bomb = data.raw.recipe["atomic-bomb"] +local reactor_item = data.raw.item["nuclear-reactor"] +local reactor = data.raw.reactor["nuclear-reactor"] + +ore.icon = "__adamo-nuclear__/graphics/icons/yellowcake.png" +ore.icon_size = 32 +ore.icon_mipmaps = nil +ore.pictures = nil +ore.group = "adamo-nuclear-group" +ore.subgroup = "adamo-nuclear-processing-group" +ore.order = "m" + + +heu_fuel_recipe.ingredients = { + {"adamo-nuclear-HEU-oxide",1}, + {"iron-plate",1} +} +heu_fuel_recipe.category = "advanced-crafting" +heu_fuel_recipe.result = "uranium-fuel-cell" +heu_fuel_recipe.result_count = nil +heu_fuel_recipe.results = nil +heu_fuel_recipe.group = nil +heu_fuel_recipe.subgroup = nil +heu_fuel_recipe.order = nil + +table.insert( + data.raw.technology["nuclear-power"].effects, + { + type = "unlock-recipe", + recipe = "uranium-fuel-cell" + } +) + +for _,effect in pairs( + data.raw.technology["uranium-processing"].effects +) do + if effect.recipe:match "uranium-fuel-cell" then + data.raw.technology["uranium-processing"].effects[_] = nil + end +end + +heu_fuel_item.fuel_value = "164GJ" +heu_fuel_item.icon_size = 32 +heu_fuel_item.icon = + "__adamo-nuclear__/graphics/icons/HEU-fuel-cell.png" +heu_fuel_item.group = "nuclear-group" +heu_fuel_item.subgroup = "adamo-nuclear-products-group" +heu_fuel_item.order = "n" +heu_fuel_item.fuel_glow_color = reactor_coolant_color + +heu_used_fuel_item.icon_size = 32 +heu_used_fuel_item.icon = + "__adamo-nuclear__/graphics/icons/used-up-HEU-fuel-cell.png" +heu_used_fuel_item.group = "nuclear-group" +heu_used_fuel_item.subgroup = + "adamo-nuclear-spent-fuel-group" +heu_used_fuel_item.order = "m2" + +nuclear_fuel_recipe.ingredients = { + {type = "item",name = "adamo-nuclear-HEU-oxide",amount = 1}, + {type = "item",name = "rocket-fuel",amount = 1} +} +nuclear_fuel_recipe.category = "advanced-crafting" +nuclear_fuel_recipe.subgroup = "adamo-nuclear-products-group" +nuclear_fuel_recipe.order = "q" +--nuclear_fuel_item.subgroup = "adamo-nuclear-products-group" +--nuclear_fuel_item.order = "q" + +ammo.ingredients = { + {"piercing-rounds-magazine", 1}, + {"adamo-nuclear-DU-oxide",1} +} +ammo.result_count = 1 + +shell.ingredients = { + {"cannon-shell", 1}, + {"adamo-nuclear-DU-oxide",1} +} +shell.result_count = 1 + +explosive_shell.ingredients = { + {"explosive-cannon-shell", 1}, + {"adamo-nuclear-DU-oxide",1} +} +explosive_shell.result_count = 1 + +atomic_bomb.ingredients = { + {"rocket",1}, + {"explosives",1}, + {"rocket-control-unit",1}, + {"adamo-nuclear-DU-oxide",1}, + {"adamo-nuclear-WGU-oxide",1} +} +atomic_bomb.icon = + "__adamo-nuclear__/graphics/icons/fission-rocket.png" +atomic_bomb.icon_size = 32 + +if data.raw.recipe["uranium-transport-belt"] then + data.raw.recipe["uranium-transport-belt"].normal.energy_required = 50 + data.raw.recipe["uranium-transport-belt"].normal.ingredients = + { + {"iron-gear-wheel", 500}, + {"express-transport-belt", 100}, + {"adamo-nuclear-Pu238-oxide",1}, + {type="fluid", name="lubricant", amount=1000}, + {type="item", name="electric-engine-unit", amount=100} + } + data.raw.recipe["uranium-transport-belt"].expensive.energy_required = 50 + data.raw.recipe["uranium-transport-belt"].expensive.ingredients = + { + {"iron-gear-wheel", 1000}, + {"express-transport-belt", 100}, + {"adamo-nuclear-Pu238-oxide",1}, + {type="fluid", name="lubricant", amount=2000}, + {type="item", name="electric-engine-unit", amount=100} + } + data.raw.recipe["uranium-transport-belt"].normal.result_count = 100 + data.raw.recipe["uranium-transport-belt"].expensive.result_count = 100 +end +if data.raw.recipe["uranium-underground-belt"] then + data.raw.recipe["uranium-underground-belt"].energy_required = 100 + data.raw.recipe["uranium-underground-belt"].ingredients = + { + {"iron-gear-wheel", 2000}, + {"express-underground-belt",100}, + {"adamo-nuclear-Pu238-oxide",1}, + {type="fluid", name="lubricant", amount=1000}, + {type="item", name="electric-engine-unit", amount=100} + } + data.raw.recipe["uranium-underground-belt"].result_count = 100 +end +if data.raw.recipe["uranium-splitter"] then + data.raw.recipe["uranium-splitter"].energy_required = 200 + data.raw.recipe["uranium-splitter"].ingredients = + { + {"express-splitter", 100}, + {"iron-gear-wheel", 1000}, + {"processing-unit", 100}, + {"adamo-nuclear-Pu238-oxide",1}, + {type="fluid", name="lubricant", amount=1000}, + {type="item", name="electric-engine-unit", amount=100} + } + data.raw.recipe["uranium-splitter"].result_count = 100 +end + +reactor_item.icon = + "__adamo-nuclear__/graphics/icons/nuclear-reactor.png" +reactor_item.icon_size = 32 + +table.insert(data.raw.recipe["nuclear-reactor"].ingredients, + {type = "item",name="adamo-nuclear-DU-oxide",amount=150}) + + + + +reactor.default_fuel_glow_color = reactor_coolant_color +reactor.use_fuel_glow_color = true +reactor.light.intensity = 0 +reactor.energy_source.light_flicker = {} +reactor.energy_source.light_flicker.minimum_intensity = 0.5 +reactor.energy_source.light_flicker.maximum_intensity = 0.5 +reactor.energy_source.light_flicker.minimum_light_size = 0 +reactor.energy_source.light_flicker.light_intensity_to_size_coefficient = 0 +reactor.working_light_picture = emptysprite() +local heat_picture_layer = reactor.heat_buffer.heat_picture +reactor.heat_buffer.heat_picture = { + layers = { + heat_picture_layer, + { + filename = + "__adamo-nuclear__/graphics/entity/" + .."reactor-lights-color.png", + width = 160, + height = 160, + shift = { -0.03125, -0.1875 }, + blend_mode = "additive", + hr_version = + { + filename = + "__adamo-nuclear__/graphics/entity/" + .."hr-reactor-lights-color.png", + width = 320, + height = 320, + scale = 0.5, + shift = { -0.03125, -0.1875 }, + blend_mode = "additive" + } + } + } +} +local heat_glow_layer = reactor.heat_buffer.heat_glow +reactor.heat_buffer.heat_glow = { + layers = { + heat_glow_layer, + { + filename = + "__adamo-nuclear__/graphics/entity/" + .."reactor-lights-glow.png", + flags = {"light"}, + width = 160, + height = 160, + blend_mode = "additive", + tint = heat_glow_tint, + shift = { -0.03125, -0.1875 } + } + } +} +if not data.raw.fluid["adamo-chemical-hydrofluoric-acid"] then + local hydrofluoric_acid_fluid = { + type = "fluid", + name = "adamo-chemical-hydrofluoric-acid", + order = "a[fluid]-g[adamo-chemical-hydrofluoric-acid]", + icon = "__adamo-nuclear__/graphics/icons/hydrofluoride.png", + icon_size = 32, + base_color = colors.hf_base, + flow_color = colors.hf_flow, + default_temperature = 25, + max_temperature = 100, + heat_capacity = "0.1KJ", + } + local hydrofluoric_acid_recipe = { + type = "recipe", + name = "adamo-chemical-hydrofluoric-acid", + category = "chemistry", + subgroup = "fluid-recipes", + enabled = false, + energy_required = 1, -- same as sulfuric-acid + ingredients = {{ + type = "item", + name = "stone", + amount = 50 + },{ + type = "fluid", + name = "sulfuric-acid", + amount = 50 + },{ + type = "fluid", + name = "water", + amount = 50 + }}, + results = {{ + type='fluid', + name = "adamo-chemical-hydrofluoric-acid", + amount = 50 + }}, + main_product = "adamo-chemical-hydrofluoric-acid", + requester_paste_multiplier = 4, + crafting_machine_tint = { + primary = data.raw.fluid["sulfuric-acid"].flow_color, + secondary = colors.hf_base, + tertiary = data.raw.fluid["sulfuric-acid"].base_color, + }, + } + data:extend({ + hydrofluoric_acid_fluid, + hydrofluoric_acid_recipe + }) + table.insert( + data.raw.technology["uranium-processing"].effects, + { + type = "unlock-recipe", + recipe = "adamo-chemical-hydrofluoric-acid" + } + ) +end diff --git a/data.lua b/data.lua new file mode 100644 index 0000000..17a90a8 --- /dev/null +++ b/data.lua @@ -0,0 +1,1914 @@ +require("factsheet") + +local MOX_glow_color = {r = 1,g = 1,b = 1,a = 1} +local pg_base_color = data.raw.fluid["petroleum-gas"].base_color +local sulfuric_base_color = data.raw.fluid["sulfuric-acid"].base_color +local sulfuric_flow_color = data.raw.fluid["sulfuric-acid"].flow_color +local uranium_hex_base_color = {r = 0.5,g = 0.5,b = 0.5,a = 0.5} +local uranium_hex_flow_color = {r = 0.5,g = 0.5,b = 0.5,a = 0.1} +local plutonium_hex_base_color = {r= 100,g = 10,b = 10,a = 150} +local plutonium_hex_flow_color = {r= 100,g = 10,b = 10,a = 25} +local aqueous_raffinate_base_color = colors.midbrown +local aqueous_raffinate_flow_color = colors.highbrown +local raffinate_base_color = colors.darkbrown +local raffinate_flow_color = colors.midbrown +local oxide_color_table = { + NU = {r=139,g=69,b=19}, + DU = {r = 32, g = 32, b = 32}, + LEU = {r = 96, g = 96, b = 96}, + HEU = {r = 160, g = 160, b = 160}, + WGU = {r = 224, g = 224, b = 224}, + RGPu = {r = 0, g = 153, b = 0}, + WGPu = {r = 0, g = 255, b = 0}, +} + + +-- Code uses "nuclear" as fast-reaction fuel category. +local bombardment_category = { + type = "recipe-category", + name = "neutron-bombardment" +} +local thermal_fuel_category = { + type = "fuel-category", + name = "adamo-nuclear-thermal-reaction" +} +data:extend({ + bombardment_category, + thermal_fuel_category +}) + +local nuclear_group = { + type = "item-group", + name = "adamo-nuclear-group", + order = "n", + icon = "__adamo-nuclear__/graphics/icons/nuclear_group.png", + icon_size = 64 +} +local prod_mach_group = { + type = "item-subgroup", + group = "adamo-nuclear-group", + name = "adamo-nuclear-production-machine", + order = "a" +} +local processing_subgroup = { + type = "item-subgroup", + group = "adamo-nuclear-group", + name = "adamo-nuclear-processing-group", + order = "c" +} +local enrichment_group = { + type = "item-subgroup", + group = "adamo-nuclear-group", + name = "adamo-nuclear-enrichment-group", + order = "h" +} +local oxide_subgroup = { + type = "item-subgroup", + group = "adamo-nuclear-group", + name = "adamo-nuclear-oxide-group", + order = "j" +} +local products_subgroup = { + type = "item-subgroup", + group = "adamo-nuclear-group", + name = "adamo-nuclear-products-group", + order = "l" +} +local spent_fuel_group = { + type = "item-subgroup", + group = "adamo-nuclear-group", + name = "adamo-nuclear-spent-fuel-group", + order = "n" +} +local hex_subgroup = { + type = "item-subgroup", + group = "fluids", + name = "adamo-nuclear-hex-group", + order = "n" +} +local raffinate_subgroup = { + type = "item-subgroup", + group = "fluids", + name = "adamo-nuclear-raffinate-group", + order = "o" +} + +data:extend({ + nuclear_group, + prod_mach_group, + products_subgroup, + oxide_subgroup, + enrichment_group, + processing_subgroup, + spent_fuel_group, + hex_subgroup, + raffinate_subgroup +}) + +local natural_hex_fluid = { + type = "fluid", + name = "adamo-nuclear-natural-uranium-hex", + subgroup = "adamo-nuclear-hex-group", + order = "n0", + icon = "__adamo-nuclear__/graphics/icons/hex.png", + icon_size = 32, + base_color = uranium_hex_base_color, + flow_color = uranium_hex_flow_color, + default_temperature = 25, + max_temperature = 100, + heat_capacity = "0.1KJ", +} +local Pu_hex_fluid = { + type = "fluid", + name = "adamo-nuclear-Pu-hex", + subgroup = "adamo-nuclear-hex-group", + order = "n1", + icon = "__adamo-nuclear__/graphics/icons/Pu-hex.png", + icon_size = 32, + base_color = plutonium_hex_base_color, + flow_color = plutonium_hex_flow_color, + default_temperature = 25, + max_temperature = 100, + heat_capacity = "0.1KJ", +} +local LEU_PUREX_hex_fluid = { + type = "fluid", + name = "adamo-nuclear-LEU-PUREX-hex", + subgroup = "adamo-nuclear-hex-group", + order = "n2", + icon = "__adamo-nuclear__/graphics/icons/LEU-PUREX-hex.png", + icon_size = 32, + base_color = uranium_hex_base_color, + flow_color = uranium_hex_flow_color, + default_temperature = 25, + max_temperature = 100, + heat_capacity = "0.1KJ", +} +local HEU_PUREX_hex_fluid = { + type = "fluid", + name = "adamo-nuclear-HEU-PUREX-hex", + subgroup = "adamo-nuclear-hex-group", + order = "n3", + icon = "__adamo-nuclear__/graphics/icons/HEU-PUREX-hex.png", + icon_size = 32, + base_color = uranium_hex_base_color, + flow_color = uranium_hex_flow_color, + default_temperature = 25, + max_temperature = 100, + heat_capacity = "0.1KJ", +} +local aqueous_raffinate_fluid = { + type = "fluid", + name = "adamo-nuclear-aqueous-raffinate", + subgroup = "adamo-nuclear-raffinate-group", + order = "o1", + icon = "__adamo-nuclear__/graphics/icons/aqueous-raffinate.png", + icon_size = 32, + base_color = aqueous_raffinate_base_color, + flow_color = aqueous_raffinate_flow_color, + default_temperature = 25, + max_temperature = 100, + heat_capacity = "0.01KJ", + +} +local raffinate_fluid = { + type = "fluid", + name = "adamo-nuclear-raffinate", + subgroup = "adamo-nuclear-raffinate-group", + order = "o2", + icon = "__adamo-nuclear__/graphics/icons/raffinate.png", + icon_size = 32, + base_color = raffinate_base_color, + flow_color = raffinate_flow_color, + default_temperature = 25, + max_temperature = 100, + heat_capacity = "0.1KJ", +} +data:extend({ + natural_hex_fluid, + Pu_hex_fluid, + LEU_PUREX_hex_fluid, + HEU_PUREX_hex_fluid, + aqueous_raffinate_fluid, + raffinate_fluid +}) + +local urania_item = { + type = "item", + name = "adamo-nuclear-urania", + subgroup = "adamo-nuclear-processing-group", + order = "n", + stack_size = 50, + icon = "__adamo-nuclear__/graphics/icons/urania.png", + icon_size = 32, +} +local LEU_fuel_item = { + type = "item", + name = "adamo-nuclear-LEU-fuel-cell", + subgroup = "adamo-nuclear-products-group", + order = "m", + stack_size = 50, + icon = "__adamo-nuclear__/graphics/icons/LEU-fuel-cell.png", + icon_size = 32, + fuel_category = "adamo-nuclear-thermal-reaction", + fuel_value = "82GJ", + burnt_result = "adamo-nuclear-used-up-LEU-fuel-cell", +} +local MOX_fuel_item = { + type = "item", + name = "adamo-nuclear-MOX-fuel-cell", + subgroup = "adamo-nuclear-products-group", + order = "o", + stack_size = 50, + icon = "__adamo-nuclear__/graphics/icons/MOX-fuel-cell.png", + icon_size = 32, + fuel_category = "nuclear", + fuel_value = "162GJ", + burnt_result = "adamo-nuclear-used-up-MOX-fuel-cell", + fuel_glow_color = MOX_glow_color +} +local used_LEU_item = { + type = "item", + name = "adamo-nuclear-used-up-LEU-fuel-cell", + subgroup = "adamo-nuclear-spent-fuel-group", + order = "m1", + stack_size = 50, + icon = "__adamo-nuclear__/graphics/icons/used-up-LEU-fuel-cell.png", + icon_size = 32, +} +local used_MOX_item = { + type = "item", + name = "adamo-nuclear-used-up-MOX-fuel-cell", + subgroup = "adamo-nuclear-spent-fuel-group", + order = "m3", + stack_size = 50, + icon = "__adamo-nuclear__/graphics/icons/used-up-MOX-fuel-cell.png", + icon_size = 32, +} +local actinides_item = { + type = "item", + name = "adamo-nuclear-actinides", + subgroup = "adamo-nuclear-products-group", + order = "p1", + stack_size = 50, + icon = "__adamo-nuclear__/graphics/icons/actinides.png", + icon_size = 32, +} +local waste_item = { + type = "item", + name = "adamo-nuclear-ceramic-waste", + subgroup = "adamo-nuclear-products-group", + order = "p2", + stack_size = 50, + icon = "__adamo-nuclear__/graphics/icons/ceramic-waste.png", + icon_size = 64, +} +local thermal_reactor_item = { + type = "item", + name = "adamo-nuclear-thermal-reactor", + icon = "__adamo-nuclear__/graphics/icons/thermal-reactor.png", + icon_size = 32, + subgroup = "energy", + order = "b[steam-power]-b[adamo-nuclear-thermal-reactor]", + place_result = "adamo-nuclear-thermal-reactor", + stack_size = 25 +} +local prod_reactor_item = { + type = "item", + name = "adamo-nuclear-production-reactor", + icon = "__adamo-nuclear__/graphics/icons/production-reactor.png", + icon_size = 32, + subgroup = "adamo-nuclear-production-machine", + order = "n[production-reactor]", + place_result = "adamo-nuclear-production-reactor", + stack_size = 10 +} +data:extend({ + urania_item, + LEU_fuel_item, + MOX_fuel_item, + used_LEU_item, + used_MOX_item, + actinides_item, + waste_item, + thermal_reactor_item, + prod_reactor_item, +}) + +local urania_recipe_sulfuric = { + type = "recipe", + name = "adamo-nuclear-urania-by-H2SO4", + category = "chemistry", + enabled = false, + energy_required = 10, -- same as explosives + main_product = "adamo-nuclear-urania", + ingredients = {{ + type = "item", + name = "uranium-ore", + amount = 50 + },{ + type = "fluid", + name = "sulfuric-acid", + amount = 160 + },{ + type = "fluid", + name = "water", + amount = 40 + }}, + results = {{ + type = "item", + name = "adamo-nuclear-urania", + amount = 1 + }}, + show_amount_in_title = false, + always_show_products = false, + always_show_made_in = true, + crafting_machine_tint = { + primary = oxide_color_table.NU, + secondary = sulfuric_base_color, + tertiary = sulfuric_flow_color, + quaternary = data.raw.fluid.water.flow_color + }, +} +local urania_recipe_hydrofluoric = { + type = "recipe", + name = "adamo-nuclear-urania-by-HF", + category = "chemistry", + enabled = false, + energy_required = 10, + ingredients = {{ + type = "item", + name = "uranium-ore", + amount = 50 + },{ + type = "fluid", + name = "adamo-chemical-hydrofluoric-acid", + amount = 80 + },{ + type = "fluid", + name = "water", + amount = 120 + }}, + results = {{ + type = "item", + name = "adamo-nuclear-urania", + amount = 1 + }}, + show_amount_in_title = false, + always_show_products = false, + always_show_made_in = true, + crafting_machine_tint = { + primary = oxide_color_table.NU, + secondary = colors.hf_base, + tertiary = colors.hf_flow, + quaternary = data.raw.fluid.water.flow_color + }, +} +local urania_hex_recipe = { + type = "recipe", + name = "adamo-nuclear-natural-uranium-hex", + category = "chemistry", + enabled = false, + subgroup = "adamo-nuclear-processing-group", + main_product = "adamo-nuclear-natural-uranium-hex", + energy_required = 30, + ingredients = {{ + type = "item", + name = "adamo-nuclear-urania", + amount = 1 + },{ + type = "fluid", + name = "adamo-chemical-hydrofluoric-acid", + amount = 60 + },{ + type = "fluid", + name = "water", + amount = 30 + }}, + results = {{ + type = "fluid", + name = "adamo-nuclear-natural-uranium-hex", + amount = 10, + fluidbox_index = 1, + }}, + always_show_made_in = true, + crafting_machine_tint = { + primary = uranium_hex_base_color, + secondary = colors.hf_base, + tertiary = colors.hf_flow, + quaternary = oxide_color_table.NU + }, +} +local LEU_enrichment_recipe = { + type = "recipe", + category = "centrifuging", + name = "adamo-nuclear-LEU-enrichment", + energy_required = 7.75, + subgroup = "adamo-nuclear-enrichment-group", + order = "m1", + enabled = false, + ingredients = {{ + type = "fluid", + name = "adamo-nuclear-natural-uranium-hex", + amount = 7.75 + }}, + results = {{ + type = "fluid", + name = "adamo-nuclear-DU-hex", + amount = 6.75 + },{ + type = "fluid", + name = "adamo-nuclear-LEU-hex", + amount = 1 + }}, + icon_size = 64, + icon = "__adamo-nuclear__/graphics/icons/LEU-enrichment.png", +} +local HEU_enrichment_recipe = { + type = "recipe", + category = "centrifuging", + name = "adamo-nuclear-HEU-enrichment", + energy_required = 37.5, + subgroup = "adamo-nuclear-enrichment-group", + order = "m2", + enabled = false, + ingredients = {{ + type = "fluid", + name = "adamo-nuclear-natural-uranium-hex", + amount = 37.5 + }}, + results = {{ + type = "fluid", + name = "adamo-nuclear-DU-hex", + amount = 36.5 + },{ + type = "fluid", + name = "adamo-nuclear-HEU-hex", + amount = 1 + }}, + icon_size = 64, + icon = "__adamo-nuclear__/graphics/icons/HEU-enrichment.png", +} +local WGU_enrichment_recipe = { + type = "recipe", + category = "centrifuging", + name = "adamo-nuclear-WGU-enrichment", + energy_required = 150, + subgroup = "adamo-nuclear-enrichment-group", + order = "m3", + enabled = false, + ingredients = {{ + type = "fluid", + name = "adamo-nuclear-natural-uranium-hex", + amount = 150 + }}, + results = {{ + type = "fluid", + name = "adamo-nuclear-DU-hex", + amount = 149 + },{ + type = "fluid", + name = "adamo-nuclear-WGU-hex", + amount = 1 + }}, + icon_size = 64, + icon = "__adamo-nuclear__/graphics/icons/WGU-enrichment.png", +} +local Pu_enrichment_recipe = { + type = "recipe", + category = "centrifuging", + name = "adamo-nuclear-WGPu-enrichment", + energy_required = 2, + subgroup = "adamo-nuclear-enrichment-group", + order = "n1", + enabled = false, + ingredients = {{ + type = "fluid", + name = "adamo-nuclear-Pu-hex", + amount = 2 + }}, + results = {{ + type = "fluid", + name = "adamo-nuclear-RGPu-hex", + amount = 1 + },{ + type = "fluid", + name = "adamo-nuclear-WGPu-hex", + amount = 1 + }}, + icon_size = 64, + icon = "__adamo-nuclear__/graphics/icons/WGPu-enrichment.png", +} +local LEU_PUREX_enrichment_recipe = { + type = "recipe", + category = "centrifuging", + name = "adamo-nuclear-LEU-PUREX-enrichment", + energy_required = 150, + subgroup = "adamo-nuclear-enrichment-group", + order = "o1", + enabled = false, + ingredients = {{ + type = "fluid", + name = "adamo-nuclear-LEU-PUREX-hex", + amount = 150 + }}, + results = {{ + type = "fluid", + name = "adamo-nuclear-LEU-hex", + amount = 135 + },{ + type = "fluid", + name = "adamo-nuclear-Pu-hex", + amount = 1 + },{ + type = "fluid", + name = "adamo-nuclear-DU-hex", + amount = 14 + }}, + icon_size = 64, + icon = "__adamo-nuclear__/graphics/icons/LEU-PUREX-enrichment.png", +} +local HEU_PUREX_enrichment_recipe = { + type = "recipe", + category = "centrifuging", + name = "adamo-nuclear-HEU-PUREX-enrichment", + energy_required = 70, + subgroup = "adamo-nuclear-enrichment-group", + order = "o2", + enabled = false, + ingredients = {{ + type = "fluid", + name = "adamo-nuclear-HEU-PUREX-hex", + amount = 70 + }}, + results = {{ + type = "fluid", + name = "adamo-nuclear-HEU-hex", + amount = 67 + },{ + type = "fluid", + name = "adamo-nuclear-Pu-hex", + amount = 1 + },{ + type = "fluid", + name = "adamo-nuclear-DU-hex", + amount = 2 + }}, + icon_size = 64, + icon = "__adamo-nuclear__/graphics/icons/HEU-PUREX-enrichment.png", +} +local RGPu_recipe = { + type = "recipe", + category = "chemistry", + name = "adamo-nuclear-highgrade-RGPu-oxide", + main_product = "adamo-nuclear-RGPu-oxide", + enabled = false, + energy_required = 10, + always_show_made_in = true, + subgroup = "adamo-nuclear-processing-group", + order = "o1", + ingredients = {{ + type = "fluid", + name = "adamo-nuclear-Pu-hex", + amount = 10 + },{ + type = "fluid", + name = "water", + amount = 30 + }}, + results = {{ + type = "fluid", + name = "adamo-chemical-hydrofluoric-acid", + amount = 60, + },{ + type = "item", + name = "adamo-nuclear-RGPu-oxide", + amount = 1 + }}, + crafting_machine_tint = { + primary = oxide_color_table.RGPu, + secondary = colors.hf_base, + tertiary = plutonium_hex_flow_color, + quaternary = data.raw.fluid.water.flow_color + }, +} +local plutonia_238_recipe = { + type = "recipe", + category = "neutron-bombardment", + name = "adamo-nuclear-transmute-Pu238-oxide", + energy_required = 600, + enabled = false, + subgroup = "adamo-nuclear-products-group", + order = "p", + ingredients = {{ + amount = 1, + name = "adamo-nuclear-actinides", + type = "item", + },{ + amount = 1, + name = "adamo-nuclear-DU-oxide", + type = "item", + },{ + amount = 600, + name = "water", + type = "fluid", + }}, + result = "adamo-nuclear-Pu238-oxide", +} +local LEU_PUREX_recipe_sulfuric = { + type = "recipe", + category = "chemistry", + name = "adamo-nuclear-LEU-PUREX-by-H2SO4", + subgroup = "adamo-nuclear-spent-fuel-group", + order = "m1", + energy_required = 150, + emissions_multiplier = 3, + enabled = false, + ingredients = {{ + type = "fluid", + name = "sulfuric-acid", + amount = 150 + },{ + type = "fluid", + name = "petroleum-gas", + amount = 150 + },{ + type = "fluid", + name = "adamo-chemical-hydrofluoric-acid", + amount = 900 + },{ + type = "item", + name = "adamo-nuclear-used-up-LEU-fuel-cell", + amount = 15 + }}, + results = {{ + type = "fluid", + name = "adamo-nuclear-LEU-PUREX-hex", + amount = 150 + },{ + type = "fluid", + name = "adamo-nuclear-aqueous-raffinate", + amount = 209 + }}, + icon_size = 64, + icon = "__adamo-nuclear__/graphics/icons/LEU-PUREX.png", + crafting_machine_tint = { + primary = uranium_hex_base_color, + secondary = aqueous_raffinate_base_color, + tertiary = sulfuric_flow_color, + quaternary = oxide_color_table.LEU + }, +} +local LEU_PUREX_recipe_hydrofluoric = { + type = "recipe", + category = "chemistry", + name = "adamo-nuclear-LEU-PUREX-by-HF", + subgroup = "adamo-nuclear-spent-fuel-group", + order = "m2", + energy_required = 150, + emissions_multiplier = 3, + enabled = false, + ingredients = {{ + type = "fluid", + name = "petroleum-gas", + amount = 150 + },{ + type = "fluid", + name = "adamo-chemical-hydrofluoric-acid", + amount = 1050 + },{ + type = "item", + name = "adamo-nuclear-used-up-LEU-fuel-cell", + amount = 15 + }}, + results = {{ + type = "fluid", + name = "adamo-nuclear-aqueous-raffinate", + amount = 209 + },{ + type = "fluid", + name = "adamo-nuclear-LEU-PUREX-hex", + amount = 150 + }}, + icon_size = 64, + icon = "__adamo-nuclear__/graphics/icons/LEU-PUREX.png", + crafting_machine_tint = { + primary = uranium_hex_base_color, + secondary = aqueous_raffinate_base_color, + tertiary = colors.hf_flow, + quaternary = oxide_color_table.LEU + }, +} +local HEU_PUREX_recipe_sulfuric = { + type = "recipe", + category = "chemistry", + name = "adamo-nuclear-HEU-PUREX-by-H2SO4", + subgroup = "adamo-nuclear-spent-fuel-group", + order = "m3", + energy_required = 70, + emissions_multiplier = 3, + enabled = false, + ingredients = {{ + type = "fluid", + name = "sulfuric-acid", + amount = 70 + },{ + type = "fluid", + name = "petroleum-gas", + amount = 70 + },{ + type = "fluid", + name = "adamo-chemical-hydrofluoric-acid", + amount = 420 + },{ + type = "item", + name = "used-up-uranium-fuel-cell", + amount = 7 + }}, + results = {{ + type = "fluid", + name = "adamo-nuclear-aqueous-raffinate", + amount = 231 + },{ + type = "fluid", + name = "adamo-nuclear-HEU-PUREX-hex", + amount = 70 + }}, + icon_size = 64, + icon = "__adamo-nuclear__/graphics/icons/HEU-PUREX.png", + crafting_machine_tint = { + primary = uranium_hex_base_color, + secondary = aqueous_raffinate_base_color, + tertiary = sulfuric_flow_color, + quaternary = oxide_color_table.HEU + }, +} +local HEU_PUREX_recipe_hydrofluoric = { + type = "recipe", + category = "chemistry", + name = "adamo-nuclear-HEU-PUREX-by-HF", + subgroup = "adamo-nuclear-spent-fuel-group", + order = "m4", + energy_required = 70, + emissions_multiplier = 3, + enabled = false, + ingredients = {{ + type = "fluid", + name = "petroleum-gas", + amount = 70 + },{ + type = "fluid", + name = "adamo-chemical-hydrofluoric-acid", + amount = 490 + },{ + type = "item", + name = "used-up-uranium-fuel-cell", + amount = 7 + }}, + results = {{ + type = "fluid", + name = "adamo-nuclear-aqueous-raffinate", + amount = 231 + },{ + type = "fluid", + name = "adamo-nuclear-HEU-PUREX-hex", + amount = 70 + }}, + icon_size = 64, + icon = "__adamo-nuclear__/graphics/icons/HEU-PUREX.png", + crafting_machine_tint = { + primary = uranium_hex_base_color, + secondary = aqueous_raffinate_base_color, + tertiary = colors.hf_flow, + quaternary = oxide_color_table.HEU + }, +} +local LEU_REMIX_recipe = { + type = "recipe", + category = "crafting-with-fluid", + name = "adamo-nuclear-LEU-REMIX", + subgroup = "adamo-nuclear-spent-fuel-group", + order = "n1", + energy_required = 270, + emissions_multiplier = 5, + enabled = false, + ingredients = {{ + type = "item", + name = "adamo-nuclear-HEU-oxide", + amount = 1 + },{ + type = "item", + name = "adamo-nuclear-used-up-LEU-fuel-cell", + amount = 27 + },{ + type = "fluid", + name = "petroleum-gas", + amount = 270 + },{ + type = "item", + name = "iron-plate", + amount = 27 + }}, + results = {{ + type = "fluid", + name = "adamo-nuclear-raffinate", + amount = 10 + },{ + type = "item", + name = "adamo-nuclear-LEU-fuel-cell", + amount = 27 + }}, + icon_size = 64, + icon = "__adamo-nuclear__/graphics/icons/LEU-REMIX.png", + crafting_machine_tint = { + primary = raffinate_base_color, + secondary = colors.highgrey, + tertiary = pg_flow_color, + quaternary = oxide_color_table.LEU + }, +} +local MOX_REMIX_recipe = { + type = "recipe", + category = "crafting-with-fluid", + name = "adamo-nuclear-MOX-REMIX", + subgroup = "adamo-nuclear-spent-fuel-group", + order = "n2", + energy_required = 340, + emissions_multiplier = 5, + enabled = false, + ingredients = {{ + type = "item", + name = "adamo-nuclear-RGPu-oxide", + amount = 1 + },{ + type = "item", + name = "adamo-nuclear-used-up-MOX-fuel-cell", + amount = 34 + },{ + type = "fluid", + name = "petroleum-gas", + amount = 340 + },{ + type = "item", + name = "iron-plate", + amount = 33 + }}, + results = {{ + type = "item", + name = "adamo-nuclear-MOX-fuel-cell", + amount = 33 + },{ + type = "fluid", + name = "adamo-nuclear-raffinate", + amount = 20 + }}, + icon_size = 64, + icon = "__adamo-nuclear__/graphics/icons/MOX-REMIX.png", + crafting_machine_tint = { + primary = raffinate_base_color, + secondary = colors.highgrey, + tertiary = pg_flow_color, + quaternary = oxide_color_table.RGPu + }, +} +local LEU_fuel_recipe = { + type = "recipe", + name = "adamo-nuclear-LEU-fuel-cell", + energy_required = 10, + category = "advanced-crafting", + enabled = false, + ingredients = {{ + "adamo-nuclear-LEU-oxide",1 + },{ + "iron-plate",1 + }}, + result = "adamo-nuclear-LEU-fuel-cell" +} +local MOX_fuel_recipe = { + type = "recipe", + name = "adamo-nuclear-MOX-fuel-cell", + subgroup = "adamo-nuclear-products-group", + order = "p", + energy_required = 100, + category = "advanced-crafting", + enabled = false, + ingredients = { + {type = "item", name = "adamo-nuclear-DU-oxide", amount = 93}, + {type = "item", name = "adamo-nuclear-RGPu-oxide", amount = 7}, + {type = "item", name = "iron-plate", amount = 100}, + }, + results = {{"adamo-nuclear-MOX-fuel-cell",100}}, +} +local aqueous_raffinate_processing_recipe = { + type = "recipe", + category = "chemistry", + name = "adamo-nuclear-aqueous-raffinate-processing", + subgroup = "adamo-nuclear-processing-group", + order = "p1", + energy_required = 30, + category = "chemistry", + enabled = false, + ingredients = {{ + type = "fluid", + name = "adamo-nuclear-aqueous-raffinate", + amount = 300 + }}, + results = {{ + type = "fluid", + name = "adamo-nuclear-raffinate", + amount = 1, + }}, + crafting_machine_tint = { + primary = raffinate_base_color, + secondary = aqueous_raffinate_base_color, + tertiary = aqueous_raffinate_flow_color, + quaternary = raffinate_flow_color + }, +} +local raffinate_processing_recipe = { + type = "recipe", + name = "adamo-nuclear-raffinate-processing", + subgroup = "adamo-nuclear-processing-group", + order = "p2", + energy_required = 10, + category = "chemistry", + enabled = false, + icon_size = 64, + icon = "__adamo-nuclear__/graphics/icons/raffinate-processing.png", + ingredients = {{ + type = "fluid", + name = "adamo-nuclear-raffinate", + amount = 30, + },{ + type = "fluid", + name = "water", + amount = 30, + },{ + type = "item", + name = "stone", + amount = 30, + }}, + results = {{ + type = "item", + name = "adamo-nuclear-actinides", + amount = 1 + },{ + type = "item", + name = "adamo-nuclear-ceramic-waste", + amount = 2 + }}, + crafting_machine_tint = { + primary = raffinate_base_color, + secondary = {r = 227, g = 124, b = 14}, + tertiary = raffinate_flow_color, + quaternary = colors.highbrown + }, +} +local plutonium_rocket_recipe = { + type = "recipe", + name = "adamo-nuclear-thermonuclear-rocket", + energy_required = 50, + order = "d[rocket-launcher]-n[adamo-nuclear-thermonuclear-rocket]", + enabled = false, + main_product = "adamo-nuclear-thermonuclear-rocket", + category = "crafting-with-fluid", + ingredients = {{ + type = "item", + name = "rocket", + amount = 1 + },{ + type = "item", + name = "explosives", + amount = 1 + },{ + type = "item", + name = "rocket-control-unit", + amount = 1 + },{ + type = "item", + name = "adamo-nuclear-WGPu-oxide", + amount = 1 + },{ + type = "item", + name = "adamo-nuclear-DU-oxide", + amount = 1 + },{ + type = "fluid", + name = "water", + amount = 100 + }}, + result = "adamo-nuclear-thermonuclear-rocket", +} +local thermal_reactor_recipe = { + type = "recipe", + name = "adamo-nuclear-thermal-reactor", + energy_required = 2, + enabled = false, + ingredients = { + {"concrete", 40}, + {"steel-plate", 20}, + {"adamo-nuclear-DU-oxide",20}, + {"advanced-circuit", 50}, + {"pipe", 10} + }, + result = "adamo-nuclear-thermal-reactor", +} +local prod_reactor_recipe = { + type = "recipe", + name = "adamo-nuclear-production-reactor", + energy_required = 4, + enabled = false, + ingredients = { + {"concrete", 150}, + {"steel-plate", 75}, + {"advanced-circuit", 120}, + {"iron-gear-wheel", 120} + }, + result = "adamo-nuclear-production-reactor", +} +data:extend({ + urania_recipe_sulfuric, + urania_recipe_hydrofluoric, + urania_hex_recipe, + LEU_enrichment_recipe, + HEU_enrichment_recipe, + WGU_enrichment_recipe, + Pu_enrichment_recipe, + LEU_PUREX_enrichment_recipe, + HEU_PUREX_enrichment_recipe, + plutonia_238_recipe, + RGPu_recipe, + LEU_PUREX_recipe_sulfuric, + LEU_PUREX_recipe_hydrofluoric, + HEU_PUREX_recipe_sulfuric, + HEU_PUREX_recipe_hydrofluoric, + LEU_REMIX_recipe, + MOX_REMIX_recipe, + LEU_fuel_recipe, + MOX_fuel_recipe, + aqueous_raffinate_processing_recipe, + raffinate_processing_recipe, + plutonium_rocket_recipe, + thermal_reactor_recipe, + prod_reactor_recipe, +}) +add_recipe_to_tech("uranium-processing", + "adamo-nuclear-urania-by-H2SO4" +) +add_recipe_to_tech("uranium-processing", + "adamo-nuclear-urania-by-HF" +) +add_recipe_to_tech("uranium-processing", + "adamo-nuclear-natural-uranium-hex" +) +add_recipe_to_tech("uranium-processing", + "adamo-nuclear-LEU-enrichment" +) +add_recipe_to_tech("uranium-processing", + "adamo-nuclear-LEU-fuel-cell" +) +add_recipe_to_tech("uranium-processing", + "adamo-nuclear-thermal-reactor" +) +add_recipe_to_tech("nuclear-power", + "adamo-nuclear-HEU-enrichment" +) +add_recipe_to_tech("nuclear-power", + "adamo-nuclear-WGU-enrichment" +) +move_recipe_to_tech("nuclear-power", + "atomic-bomb" +) +add_recipe_to_tech("nuclear-fuel-reprocessing", + "adamo-nuclear-LEU-PUREX-by-HF" +) +add_recipe_to_tech("nuclear-fuel-reprocessing", + "adamo-nuclear-LEU-PUREX-by-H2SO4" +) +add_recipe_to_tech("nuclear-fuel-reprocessing", + "adamo-nuclear-LEU-REMIX" +) +add_recipe_to_tech("nuclear-fuel-reprocessing", + "adamo-nuclear-HEU-PUREX-by-HF" +) +add_recipe_to_tech("nuclear-fuel-reprocessing", + "adamo-nuclear-HEU-PUREX-by-H2SO4" +) +add_recipe_to_tech("nuclear-fuel-reprocessing", + "adamo-nuclear-LEU-PUREX-enrichment" +) +add_recipe_to_tech("nuclear-fuel-reprocessing", + "adamo-nuclear-HEU-PUREX-enrichment" +) +add_recipe_to_tech("nuclear-fuel-reprocessing", + "adamo-nuclear-transmute-Pu238-oxide" +) +add_recipe_to_tech("nuclear-fuel-reprocessing", + "adamo-nuclear-highgrade-RGPu-oxide" +) +add_recipe_to_tech("nuclear-fuel-reprocessing", + "adamo-nuclear-raffinate-processing" +) +add_recipe_to_tech("kovarex-enrichment-process", + "adamo-nuclear-aqueous-raffinate-processing" +) +add_recipe_to_tech("kovarex-enrichment-process", + "adamo-nuclear-production-reactor" +) +add_recipe_to_tech("kovarex-enrichment-process", + "adamo-nuclear-MOX-fuel-cell" +) +add_recipe_to_tech("kovarex-enrichment-process", + "adamo-nuclear-MOX-REMIX" +) +add_recipe_to_tech("atomic-bomb", + "adamo-nuclear-WGPu-enrichment" +) +add_recipe_to_tech("atomic-bomb", + "adamo-nuclear-thermonuclear-rocket" +) +for _,table_name in pairs({ + "productivity-module", + "productivity-module-2", + "productivity-module-3" +}) do + table.insert(data.raw.module[table_name].limitation, + "adamo-nuclear-urania-by-H2SO4" + ) + table.insert(data.raw.module[table_name].limitation, + "adamo-nuclear-urania-by-HF" + ) + table.insert(data.raw.module[table_name].limitation, + "adamo-nuclear-raffinate-processing" + ) + table.insert(data.raw.module[table_name].limitation, + "adamo-nuclear-transmute-Pu238-oxide" + ) + table.insert(data.raw.module[table_name].limitation, + "adamo-nuclear-natural-uranium-hex" + ) + table.insert(data.raw.module[table_name].limitation, + "adamo-nuclear-highgrade-RGPu-oxide" + ) +end +-- Oxides and hexes. +local order_number = 1 +data:extend({{ + type = "item", + name = "adamo-nuclear-Pu238-oxide", + subgroup = "adamo-nuclear-products-group", + order = "p", + stack_size = 50, + icon = "__adamo-nuclear__/graphics/icons/Pu238.png", + icon_size = 32, +}}) +for _,grade in pairs({ + "DU","LEU","HEU","WGU","RGPu","WGPu" +}) do + local oxide_color = oxide_color_table[grade] + local hex_color = uranium_hex_base_color + local hex_flow_color = uranium_hex_flow_color + if grade:match "Pu" then + hex_color = plutonium_hex_base_color + hex_flow_color = plutonium_hex_flow_color + end + local hex_recipe = { + type = "recipe", + name = "adamo-nuclear-"..grade.."-hex", + category = "chemistry", + enabled = false, + energy_required = 30, + always_show_made_in = true, + main_product = "adamo-nuclear-"..grade.."-hex", + ingredients = {{ + type = "item", + name = "adamo-nuclear-"..grade.."-oxide", + amount = 1 + },{ + type = "fluid", + name = "adamo-chemical-hydrofluoric-acid", + amount = 60 + },{ + type = "fluid", + name = "water", + amount = 30 + }}, + results = {{ + type = "fluid", + name = "adamo-nuclear-"..grade.."-hex", + amount = 10 + }}, + hide_from_player_crafting = true, + crafting_machine_tint = { + primary = hex_color, + secondary = colors.hf_base, + tertiary = colors.hf_flow, + quaternary = oxide_color + }, + } + local oxide_recipe = { + type = "recipe", + category = "chemistry", + name = "adamo-nuclear-"..grade.."-oxide", + main_product = "adamo-nuclear-"..grade.."-oxide", + enabled = false, + energy_required = 10, + always_show_made_in = true, + ingredients = {{ + type = "fluid", + name = "adamo-nuclear-"..grade.."-hex", + amount = 10 + },{ + type = "fluid", + name = "water", + amount = 30 + }}, + results = {{ + type = "fluid", + name = "adamo-chemical-hydrofluoric-acid", + amount = 60, + },{ + type = "item", + name = "adamo-nuclear-"..grade.."-oxide", + amount = 1 + }}, + crafting_machine_tint = { + primary = colors.hf_base, + secondary = oxide_color, + tertiary = hex_flow_color, + quaternary = data.raw.fluid.water.flow_color + }, + } + local item = { + type = "item", + name = "adamo-nuclear-"..grade.."-oxide", + subgroup = "adamo-nuclear-oxide-group", + order = "nz"..order_number, + stack_size = 50, + icon = "__adamo-nuclear__/graphics/icons/"..grade..".png", + icon_size = 32, + } + local fluid = { + type = "fluid", + name = "adamo-nuclear-"..grade.."-hex", + group = "fluid", + subgroup = "adamo-nuclear-hex-group", + order = "nz"..order_number, + icon = "__adamo-nuclear__/graphics/icons/"..grade.."-hex.png", + icon_size = 32, + base_color = hex_color, + flow_color = hex_flow_color, + default_temperature = 25, + max_temperature = 100, + heat_capacity = "0.1KJ", + + } + data:extend({hex_recipe,oxide_recipe,item,fluid}) + if grade:match "Pu" then + add_recipe_to_tech("kovarex-enrichment-process", + "adamo-nuclear-"..grade.."-oxide" + ) + add_recipe_to_tech("kovarex-enrichment-process", + "adamo-nuclear-"..grade.."-hex" + ) + elseif grade:match "LEU" or grade:match "DU" then + add_recipe_to_tech("uranium-processing", + "adamo-nuclear-"..grade.."-oxide" + ) + add_recipe_to_tech("uranium-processing", + "adamo-nuclear-"..grade.."-hex" + ) + else + add_recipe_to_tech("nuclear-power", + "adamo-nuclear-"..grade.."-oxide" + ) + add_recipe_to_tech("nuclear-power", + "adamo-nuclear-"..grade.."-hex" + ) + end + order_number = order_number + 1 +end + +local grade = "DU" +data.raw.recipe["adamo-nuclear-"..grade.."-oxide"].ingredients = {{ + type = "fluid", + name = "water", + amount = 30 + },{ + type = "fluid", + name = "adamo-nuclear-"..grade.."-hex", + amount = 10 +}} + +local grade = "RGPu" +data.raw.recipe["adamo-nuclear-"..grade.."-oxide"].ingredients = {{ + type = "fluid", + name = "water", + amount = 30 + },{ + type = "fluid", + name = "adamo-nuclear-"..grade.."-hex", + amount = 10 +}} + +local thermal_reactor_entity = { + type = "boiler", + name = "adamo-nuclear-thermal-reactor", + icon = "__adamo-nuclear__/graphics/icons/thermal-reactor.png", + icon_size = 32, + flags = {"placeable-neutral", "player-creation"}, + minable = { + mining_time = 0.2, + result = "adamo-nuclear-thermal-reactor" + }, + fast_replaceable_group = "boiler", + max_health = 200, + corpse = "boiler-remnants", + vehicle_impact_sound = { + filename = "__base__/sound/car-metal-impact.ogg", + volume = 0.65 + }, + mode = "output-to-separate-pipe", + resistances = {{ + type = "fire", + percent = 90 + },{ + type = "explosion", + percent = 30 + },{ + type = "impact", + percent = 30 + }}, + collision_box = {{-1.29, -0.79}, {1.29, 0.79}}, + selection_box = {{-1.5, -1}, {1.5, 1}}, + target_temperature = 165, + fluid_box = { + base_area = 2, + height = 2, + base_level = -1, + pipe_covers = pipecoverspictures(), + pipe_connections = {{ + type = "input-output", + position = {-2, 0.5} + },{ + type = "input-output", + position = {2, 0.5}} + }, + production_type = "input-output", + filter = "water" + }, + output_fluid_box = { + base_area = 2, + height = 2, + base_level = 1, + pipe_covers = pipecoverspictures(), + pipe_connections = {{ + type = "output", + position = {0, -1.5} + }}, + production_type = "output", + filter = "steam" + }, + energy_consumption = "3600kW", + energy_source = { + type = "burner", + fuel_category = "adamo-nuclear-thermal-reaction", + effectivity = 1, + fuel_inventory_size = 1, + burnt_inventory_size =1, + emissions_per_minute = 0, + smoke = nil, + light_flicker = { + color = {r = 0,g = 0,b = 1,a = 0.3}, + minimum_intensity = 0.3, + maximum_intensity = 0.3, + minimum_light_size = 0.1, + light_intensity_to_size_coefficient = 1 + } + }, + working_sound = data.raw.boiler["boiler"].working_sound, + structure = data.raw.boiler["boiler"].structure, + patch = data.raw.boiler["boiler"].patch, + fire_flicker_enabled = false, + fire_glow_flicker_enabled = false, + fire = { + north = { + filename = "__adamo-nuclear__/graphics/entity/" + .."thermal-reactor-N-fire.png", + priority = "extra-high", + frame_count = 1, + width = 12, + height = 13, + shift = util.by_pixel(0, -8.5), + hr_version = { + filename = "__adamo-nuclear__/graphics/entity/" + .."hr-thermal-reactor-N-fire.png", + priority = "extra-high", + frame_count = 1, + width = 26, + height = 26, + shift = util.by_pixel(0, -8.5), + scale = 0.5 + } + }, + east = { + filename = "__adamo-nuclear__/graphics/entity/" + .."thermal-reactor-E-fire.png", + priority = "extra-high", + frame_count = 1, + width = 14, + height = 14, + shift = util.by_pixel(-10, -22), + hr_version = { + filename = "__adamo-nuclear__/graphics/entity/" + .."hr-thermal-reactor-E-fire.png", + priority = "extra-high", + frame_count = 1, + width = 28, + height = 28, + shift = util.by_pixel(-9.5, -22), + scale = 0.5 + } + }, + south = { + filename = "__adamo-nuclear__/graphics/entity/" + .."thermal-reactor-S-fire.png", + priority = "extra-high", + frame_count = 1, + width = 12, + height = 9, + shift = util.by_pixel(-1, -26.5), + hr_version = { + filename = "__adamo-nuclear__/graphics/entity/" + .."hr-thermal-reactor-S-fire.png", + priority = "extra-high", + frame_count = 1, + width = 26, + height = 16, + shift = util.by_pixel(-1, -26.5), + scale = 0.5 + } + }, + west = { + filename = "__adamo-nuclear__/graphics/entity/" + .."thermal-reactor-W-fire.png", + priority = "extra-high", + frame_count = 1, + width = 14, + height = 14, + shift = util.by_pixel(13, -23), + hr_version = { + filename = "__adamo-nuclear__/graphics/entity/" + .."hr-thermal-reactor-W-fire.png", + priority = "extra-high", + frame_count = 1, + width = 30, + height = 29, + shift = util.by_pixel(13, -23.25), + scale = 0.5 + } + } + }, + fire_glow = { + north = { + filename = "__adamo-nuclear__/graphics/entity/" + .."thermal-reactor-N-light.png", + priority = "extra-high", + frame_count = 1, + width = 100, + height = 87, + shift = util.by_pixel(-1, -6.5), + blend_mode = "additive-soft", + hr_version = { + filename = "__adamo-nuclear__/graphics/entity/" + .."hr-thermal-reactor-N-light.png", + priority = "extra-high", + frame_count = 1, + width = 200, + height = 173, + shift = util.by_pixel(-1, -6.75), + blend_mode = "additive-soft", + scale = 0.5 + } + }, + east = { + filename = "__adamo-nuclear__/graphics/entity/" + .."thermal-reactor-E-light.png", + priority = "extra-high", + frame_count = 1, + width = 70, + height = 122, + shift = util.by_pixel(0, -13), + blend_mode = "additive-soft", + hr_version = { + filename = "__adamo-nuclear__/graphics/entity/" + .."hr-thermal-reactor-E-light.png", + priority = "extra-high", + frame_count = 1, + width = 139, + height = 244, + shift = util.by_pixel(0.25, -13), + blend_mode = "additive-soft", + scale = 0.5 + } + }, + south = { + filename = "__adamo-nuclear__/graphics/entity/" + .."thermal-reactor-S-light.png", + priority = "extra-high", + frame_count = 1, + width = 100, + height = 81, + shift = util.by_pixel(1, 5.5), + blend_mode = "additive-soft", + hr_version = { + filename = "__adamo-nuclear__/graphics/entity/" + .."hr-thermal-reactor-S-light.png", + priority = "extra-high", + frame_count = 1, + width = 200, + height = 162, + shift = util.by_pixel(1, 5.5), + blend_mode = "additive-soft", + scale = 0.5 + } + }, + west = { + filename = "__adamo-nuclear__/graphics/entity/" + .."thermal-reactor-W-light.png", + priority = "extra-high", + frame_count = 1, + width = 68, + height = 109, + shift = util.by_pixel(2, -6.5), + blend_mode = "additive-soft", + hr_version = { + filename = "__adamo-nuclear__/graphics/entity/" + .."hr-thermal-reactor-W-light.png", + priority = "extra-high", + frame_count = 1, + width = 136, + height = 217, + shift = util.by_pixel(2, -6.25), + blend_mode = "additive-soft", + scale = 0.5 + } + } + }, + burning_cooldown = 20 +} +local prod_anim_speed = 0.5 +local prod_reactor_entity = { + type = "assembling-machine", + name = "adamo-nuclear-production-reactor", + icon = + "__adamo-nuclear__/graphics/icons/" + .."production-reactor.png", + icon_size = 32, + flags = { + "placeable-neutral", + "placeable-player", + "player-creation" + }, + minable = { + mining_time = 1, + result = "adamo-nuclear-production-reactor" + }, + max_health = 350, + crafting_speed = 1, + crafting_categories = {"neutron-bombardment"}, + energy_source = { + type = "electric", + usage_priority = "secondary-input" + }, + energy_usage = "750kW", + module_specification = { + module_slots = 3 + }, + allowed_effects = { + "consumption", + "speed", + "productivity", + "pollution" + }, + corpse = "big-remnants", + dying_explosion = "medium-explosion", + resistances = {{ + type = "fire", + percent = 70 + }}, + collision_box = {{-1.2, -1.2}, {1.2, 1.2}}, + selection_box = {{-1.5, -1.5}, {1.5, 1.5}}, + drawing_box = {{-1.5, -2.2}, {1.5, 1.5}}, + always_draw_idle_animation = true, + idle_animation = {layers = centrifuge_idle_layers(1,prod_anim_speed)}, + animation = { + layers = {{ + filename = + "__adamo-nuclear__/graphics/entity/" + .."production-reactor-C-light.png", + priority = "high", + blend_mode = "additive", -- centrifuge + line_length = 8, + width = 96, + height = 104, + frame_count = 64, + animation_speed = prod_anim_speed, + shift = util.by_pixel(0, -27), + hr_version = { + filename = + "__adamo-nuclear__/graphics/entity/" + .."hr-production-reactor-C-light.png", + priority = "high", + scale = 0.5, + blend_mode = "additive", -- centrifuge + line_length = 8, + width = 190, + height = 207, + frame_count = 64, + animation_speed = prod_anim_speed, + shift = util.by_pixel(0, -27.25) + } + },{ + filename = + "__adamo-nuclear__/graphics/entity/" + .."production-reactor-B-light.png", + priority = "high", + blend_mode = "additive", -- centrifuge + line_length = 8, + width = 65, + height = 103, + frame_count = 64, + animation_speed = prod_anim_speed, + shift = util.by_pixel(16.5, 0.5), + hr_version = { + filename = + "__adamo-nuclear__/graphics/entity/" + .."hr-production-reactor-B-light.png", + priority = "high", + scale = 0.5, + blend_mode = "additive", -- centrifuge + line_length = 8, + width = 131, + height = 206, + frame_count = 64, + animation_speed = prod_anim_speed, + shift = util.by_pixel(16.75, 0.5) + } + },{ + filename = + "__adamo-nuclear__/graphics/entity/" + .."production-reactor-A-light.png", + priority = "high", + blend_mode = "additive", -- centrifuge + line_length = 8, + width = 55, + height = 98, + frame_count = 64, + animation_speed = prod_anim_speed, + shift = util.by_pixel(-23.5, -2), + hr_version = { + filename = + "__adamo-nuclear__/graphics/entity/" + .."hr-production-reactor-A-light.png", + priority = "high", + scale = 0.5, + blend_mode = "additive", -- centrifuge + line_length = 8, + width = 108, + height = 197, + frame_count = 64, + animation_speed = prod_anim_speed, + shift = util.by_pixel(-23.5, -1.75) + } + }} + }, + working_visualisations = {{ + effect = "uranium-glow", + light = { + intensity = 0.35, + size = 7, + shift = {0.0, 0.0}, + color = { + r = 0.0, + g = 0.15, + b = 1.0 + } + } + }}, + open_sound = { + filename = "__base__/sound/machine-open.ogg", + volume = 0.85 + }, + close_sound = { + filename = "__base__/sound/machine-close.ogg", + volume = 0.75 + }, + vehicle_impact_sound = { + filename = "__base__/sound/car-metal-impact.ogg", + volume = 0.65 + }, + working_sound = { + sound = {{ + filename = "__base__/sound/assembling-machine-t2-1.ogg", + volume = 0.8 + },{ + filename = "__base__/sound/assembling-machine-t2-2.ogg", + volume = 0.8 + }}, + idle_sound = { filename = "__base__/sound/idle1.ogg", volume = 0.6 }, + apparent_volume = 1.5 + }, + fluid_boxes = centrifuge_fluid_boxes() +} + +data:extend({ + thermal_reactor_entity, + prod_reactor_entity, +}) + +local plutonium_explosion_wave = { + type = "projectile", + name = "adamo-nuclear-atomic-explosion-wave", + flags = {"not-on-map"}, + acceleration = 0, + action = + { + { + type = "direct", + action_delivery = + { + type = "instant", + target_effects = + { + { + type = "create-entity", + entity_name = "explosion" + } + } + } + }, + { + type = "area", + radius = 3, + action_delivery = + { + type = "instant", + target_effects = + { + type = "damage", + damage = {amount = 1000, type = "explosion"} + } + } + } + }, + animation = + { + filename = "__core__/graphics/empty.png", + frame_count = 1, + width = 1, + height = 1, + priority = "high" + }, + shadow = + { + filename = "__core__/graphics/empty.png", + frame_count = 1, + width = 1, + height = 1, + priority = "high" + } +} +local plutonium_rocket_projectile = { + type = "projectile", + name = "adamo-nuclear-thermonuclear-rocket-projectile", + flags = {"not-on-map"}, + acceleration = 0.005, + action = + { + type = "direct", + action_delivery = + { + type = "instant", + target_effects = + { + { + repeat_count = 150, + type = "create-trivial-smoke", + smoke_name = "nuclear-smoke", + offset_deviation = {{-1, -1}, {1, 1}}, + starting_frame = 3, + starting_frame_deviation = 5, + starting_frame_speed = 0, + starting_frame_speed_deviation = 5, + speed_from_center = 0.5 + }, + { + type = "create-entity", + entity_name = "explosion" + }, + { + type = "damage", + damage = {amount = 1000, type = "explosion"} + }, + { + type = "create-entity", + entity_name = "small-scorchmark", + check_buildability = true + }, + { + type = "nested-result", + action = + { + type = "area", + target_entities = false, + trigger_from_target = true, + repeat_count = 2000, + radius = 35, + action_delivery = + { + type = "projectile", + projectile = "adamo-nuclear-atomic-explosion-wave", + starting_speed = 0.5 + } + } + } + } + } + }, + light = {intensity = 0.8, size = 15}, + animation = + { + filename = + "__base__/graphics/entity/" + .."rocket/rocket.png", + frame_count = 8, + line_length = 8, + width = 9, + height = 35, + shift = {0, 0}, + priority = "high" + }, + shadow = + { + filename = + "__base__/graphics/entity/" + .."rocket/rocket-shadow.png", + frame_count = 1, + width = 7, + height = 24, + priority = "high", + shift = {0, 0} + }, + smoke = + { + { + name = "smoke-fast", + deviation = {0.15, 0.15}, + frequency = 1, + position = {0, 1}, + slow_down_factor = 1, + starting_frame = 3, + starting_frame_deviation = 5, + starting_frame_speed = 0, + starting_frame_speed_deviation = 5 + } + } +} +local plutonium_rocket_ammo = { + type = "ammo", + name = "adamo-nuclear-thermonuclear-rocket", + subgroup = "ammo", + order = "d[rocket-launcher]-r[adamo-nuclear-thermonuclear-rocket]", + stack_size = 10, + icon = "__base__/graphics/icons/atomic-bomb.png", + icon_size = 64, + icon_mipmaps = 4, + ammo_type = + { + range_modifier = 3, + cooldown_modifier = 3, + target_type = "position", + category = "rocket", + action = + { + type = "direct", + action_delivery = + { + type = "projectile", + projectile = "adamo-nuclear-thermonuclear-rocket-projectile", + starting_speed = 0.05, + source_effects = + { + type = "create-entity", + entity_name = "explosion-hit" + } + } + } + } +} +data:extend({ + plutonium_explosion_wave, + plutonium_rocket_projectile, + plutonium_rocket_ammo +}) \ No newline at end of file diff --git a/factsheet.lua b/factsheet.lua new file mode 120000 index 0000000..1d66bcc --- /dev/null +++ b/factsheet.lua @@ -0,0 +1 @@ +../factsheet.lua \ No newline at end of file diff --git a/graphics/blank.png b/graphics/blank.png new file mode 100644 index 0000000..634e7c7 Binary files /dev/null and b/graphics/blank.png differ diff --git a/graphics/entity/hr-production-reactor-A-light.png b/graphics/entity/hr-production-reactor-A-light.png new file mode 100644 index 0000000..d8fdc7a Binary files /dev/null and b/graphics/entity/hr-production-reactor-A-light.png differ diff --git a/graphics/entity/hr-production-reactor-B-light.png b/graphics/entity/hr-production-reactor-B-light.png new file mode 100644 index 0000000..4e3c336 Binary files /dev/null and b/graphics/entity/hr-production-reactor-B-light.png differ diff --git a/graphics/entity/hr-production-reactor-C-light.png b/graphics/entity/hr-production-reactor-C-light.png new file mode 100644 index 0000000..4786906 Binary files /dev/null and b/graphics/entity/hr-production-reactor-C-light.png differ diff --git a/graphics/entity/hr-reactor-lights-color.png b/graphics/entity/hr-reactor-lights-color.png new file mode 100644 index 0000000..706c9bf Binary files /dev/null and b/graphics/entity/hr-reactor-lights-color.png differ diff --git a/graphics/entity/hr-thermal-reactor-E-fire.png b/graphics/entity/hr-thermal-reactor-E-fire.png new file mode 100644 index 0000000..27fa80c Binary files /dev/null and b/graphics/entity/hr-thermal-reactor-E-fire.png differ diff --git a/graphics/entity/hr-thermal-reactor-E-light.png b/graphics/entity/hr-thermal-reactor-E-light.png new file mode 100644 index 0000000..8731517 Binary files /dev/null and b/graphics/entity/hr-thermal-reactor-E-light.png differ diff --git a/graphics/entity/hr-thermal-reactor-N-fire.png b/graphics/entity/hr-thermal-reactor-N-fire.png new file mode 100644 index 0000000..a4e8de8 Binary files /dev/null and b/graphics/entity/hr-thermal-reactor-N-fire.png differ diff --git a/graphics/entity/hr-thermal-reactor-N-light.png b/graphics/entity/hr-thermal-reactor-N-light.png new file mode 100644 index 0000000..f91bf81 Binary files /dev/null and b/graphics/entity/hr-thermal-reactor-N-light.png differ diff --git a/graphics/entity/hr-thermal-reactor-S-fire.png b/graphics/entity/hr-thermal-reactor-S-fire.png new file mode 100644 index 0000000..2570977 Binary files /dev/null and b/graphics/entity/hr-thermal-reactor-S-fire.png differ diff --git a/graphics/entity/hr-thermal-reactor-S-light.png b/graphics/entity/hr-thermal-reactor-S-light.png new file mode 100644 index 0000000..8bce666 Binary files /dev/null and b/graphics/entity/hr-thermal-reactor-S-light.png differ diff --git a/graphics/entity/hr-thermal-reactor-W-fire.png b/graphics/entity/hr-thermal-reactor-W-fire.png new file mode 100644 index 0000000..8bce235 Binary files /dev/null and b/graphics/entity/hr-thermal-reactor-W-fire.png differ diff --git a/graphics/entity/hr-thermal-reactor-W-light.png b/graphics/entity/hr-thermal-reactor-W-light.png new file mode 100644 index 0000000..1afe5fc Binary files /dev/null and b/graphics/entity/hr-thermal-reactor-W-light.png differ diff --git a/graphics/entity/production-reactor-A-light.png b/graphics/entity/production-reactor-A-light.png new file mode 100644 index 0000000..2fc0818 Binary files /dev/null and b/graphics/entity/production-reactor-A-light.png differ diff --git a/graphics/entity/production-reactor-B-light.png b/graphics/entity/production-reactor-B-light.png new file mode 100644 index 0000000..bb24890 Binary files /dev/null and b/graphics/entity/production-reactor-B-light.png differ diff --git a/graphics/entity/production-reactor-C-light.png b/graphics/entity/production-reactor-C-light.png new file mode 100644 index 0000000..c5ad333 Binary files /dev/null and b/graphics/entity/production-reactor-C-light.png differ diff --git a/graphics/entity/reactor-lights-color.png b/graphics/entity/reactor-lights-color.png new file mode 100644 index 0000000..5601a77 Binary files /dev/null and b/graphics/entity/reactor-lights-color.png differ diff --git a/graphics/entity/reactor-lights-glow.png b/graphics/entity/reactor-lights-glow.png new file mode 100644 index 0000000..fdc9fd6 Binary files /dev/null and b/graphics/entity/reactor-lights-glow.png differ diff --git a/graphics/entity/thermal-reactor-E-fire.png b/graphics/entity/thermal-reactor-E-fire.png new file mode 100644 index 0000000..f1d626a Binary files /dev/null and b/graphics/entity/thermal-reactor-E-fire.png differ diff --git a/graphics/entity/thermal-reactor-E-light.png b/graphics/entity/thermal-reactor-E-light.png new file mode 100644 index 0000000..8c38a21 Binary files /dev/null and b/graphics/entity/thermal-reactor-E-light.png differ diff --git a/graphics/entity/thermal-reactor-N-fire.png b/graphics/entity/thermal-reactor-N-fire.png new file mode 100644 index 0000000..3e80882 Binary files /dev/null and b/graphics/entity/thermal-reactor-N-fire.png differ diff --git a/graphics/entity/thermal-reactor-N-light.png b/graphics/entity/thermal-reactor-N-light.png new file mode 100644 index 0000000..a66ba58 Binary files /dev/null and b/graphics/entity/thermal-reactor-N-light.png differ diff --git a/graphics/entity/thermal-reactor-S-fire.png b/graphics/entity/thermal-reactor-S-fire.png new file mode 100644 index 0000000..83db3dd Binary files /dev/null and b/graphics/entity/thermal-reactor-S-fire.png differ diff --git a/graphics/entity/thermal-reactor-S-light.png b/graphics/entity/thermal-reactor-S-light.png new file mode 100644 index 0000000..17fb105 Binary files /dev/null and b/graphics/entity/thermal-reactor-S-light.png differ diff --git a/graphics/entity/thermal-reactor-W-fire.png b/graphics/entity/thermal-reactor-W-fire.png new file mode 100644 index 0000000..09ceed2 Binary files /dev/null and b/graphics/entity/thermal-reactor-W-fire.png differ diff --git a/graphics/entity/thermal-reactor-W-light.png b/graphics/entity/thermal-reactor-W-light.png new file mode 100644 index 0000000..208d875 Binary files /dev/null and b/graphics/entity/thermal-reactor-W-light.png differ diff --git a/graphics/icons/DU-hex.png b/graphics/icons/DU-hex.png new file mode 100644 index 0000000..bd6d726 Binary files /dev/null and b/graphics/icons/DU-hex.png differ diff --git a/graphics/icons/DU.png b/graphics/icons/DU.png new file mode 100644 index 0000000..753fcc4 Binary files /dev/null and b/graphics/icons/DU.png differ diff --git a/graphics/icons/HEU-PUREX-enrichment.png b/graphics/icons/HEU-PUREX-enrichment.png new file mode 100644 index 0000000..06c45d4 Binary files /dev/null and b/graphics/icons/HEU-PUREX-enrichment.png differ diff --git a/graphics/icons/HEU-PUREX-hex.png b/graphics/icons/HEU-PUREX-hex.png new file mode 100644 index 0000000..af4b84d Binary files /dev/null and b/graphics/icons/HEU-PUREX-hex.png differ diff --git a/graphics/icons/HEU-PUREX.png b/graphics/icons/HEU-PUREX.png new file mode 100644 index 0000000..afe9f1c Binary files /dev/null and b/graphics/icons/HEU-PUREX.png differ diff --git a/graphics/icons/HEU-enrichment.png b/graphics/icons/HEU-enrichment.png new file mode 100644 index 0000000..8ff78bc Binary files /dev/null and b/graphics/icons/HEU-enrichment.png differ diff --git a/graphics/icons/HEU-fuel-cell.png b/graphics/icons/HEU-fuel-cell.png new file mode 100644 index 0000000..729cd85 Binary files /dev/null and b/graphics/icons/HEU-fuel-cell.png differ diff --git a/graphics/icons/HEU-hex.png b/graphics/icons/HEU-hex.png new file mode 100644 index 0000000..66b8d19 Binary files /dev/null and b/graphics/icons/HEU-hex.png differ diff --git a/graphics/icons/HEU.png b/graphics/icons/HEU.png new file mode 100644 index 0000000..d12513b Binary files /dev/null and b/graphics/icons/HEU.png differ diff --git a/graphics/icons/LEU-PUREX-enrichment.png b/graphics/icons/LEU-PUREX-enrichment.png new file mode 100644 index 0000000..7fc31f1 Binary files /dev/null and b/graphics/icons/LEU-PUREX-enrichment.png differ diff --git a/graphics/icons/LEU-PUREX-hex.png b/graphics/icons/LEU-PUREX-hex.png new file mode 100644 index 0000000..53bd650 Binary files /dev/null and b/graphics/icons/LEU-PUREX-hex.png differ diff --git a/graphics/icons/LEU-PUREX.png b/graphics/icons/LEU-PUREX.png new file mode 100644 index 0000000..7b02c59 Binary files /dev/null and b/graphics/icons/LEU-PUREX.png differ diff --git a/graphics/icons/LEU-REMIX.png b/graphics/icons/LEU-REMIX.png new file mode 100644 index 0000000..bbbbae6 Binary files /dev/null and b/graphics/icons/LEU-REMIX.png differ diff --git a/graphics/icons/LEU-enrichment.png b/graphics/icons/LEU-enrichment.png new file mode 100644 index 0000000..f3116b8 Binary files /dev/null and b/graphics/icons/LEU-enrichment.png differ diff --git a/graphics/icons/LEU-fuel-cell.png b/graphics/icons/LEU-fuel-cell.png new file mode 100644 index 0000000..fd213a9 Binary files /dev/null and b/graphics/icons/LEU-fuel-cell.png differ diff --git a/graphics/icons/LEU-hex.png b/graphics/icons/LEU-hex.png new file mode 100644 index 0000000..c37af58 Binary files /dev/null and b/graphics/icons/LEU-hex.png differ diff --git a/graphics/icons/LEU.png b/graphics/icons/LEU.png new file mode 100644 index 0000000..762284f Binary files /dev/null and b/graphics/icons/LEU.png differ diff --git a/graphics/icons/MOX-REMIX.png b/graphics/icons/MOX-REMIX.png new file mode 100644 index 0000000..30d5100 Binary files /dev/null and b/graphics/icons/MOX-REMIX.png differ diff --git a/graphics/icons/MOX-fuel-cell.png b/graphics/icons/MOX-fuel-cell.png new file mode 100644 index 0000000..6c987b0 Binary files /dev/null and b/graphics/icons/MOX-fuel-cell.png differ diff --git a/graphics/icons/MOX-fuel-reprocessing.png b/graphics/icons/MOX-fuel-reprocessing.png new file mode 100644 index 0000000..3bc6c22 Binary files /dev/null and b/graphics/icons/MOX-fuel-reprocessing.png differ diff --git a/graphics/icons/Pu-hex.png b/graphics/icons/Pu-hex.png new file mode 100644 index 0000000..528bbd9 Binary files /dev/null and b/graphics/icons/Pu-hex.png differ diff --git a/graphics/icons/Pu238-hex.png b/graphics/icons/Pu238-hex.png new file mode 100644 index 0000000..13c2390 Binary files /dev/null and b/graphics/icons/Pu238-hex.png differ diff --git a/graphics/icons/Pu238.png b/graphics/icons/Pu238.png new file mode 100644 index 0000000..58c6171 Binary files /dev/null and b/graphics/icons/Pu238.png differ diff --git a/graphics/icons/RGPu-hex.png b/graphics/icons/RGPu-hex.png new file mode 100644 index 0000000..1761f27 Binary files /dev/null and b/graphics/icons/RGPu-hex.png differ diff --git a/graphics/icons/RGPu.png b/graphics/icons/RGPu.png new file mode 100644 index 0000000..29fb349 Binary files /dev/null and b/graphics/icons/RGPu.png differ diff --git a/graphics/icons/WGPu-enrichment.png b/graphics/icons/WGPu-enrichment.png new file mode 100644 index 0000000..b8b69c7 Binary files /dev/null and b/graphics/icons/WGPu-enrichment.png differ diff --git a/graphics/icons/WGPu-hex.png b/graphics/icons/WGPu-hex.png new file mode 100644 index 0000000..ee7edcd Binary files /dev/null and b/graphics/icons/WGPu-hex.png differ diff --git a/graphics/icons/WGPu.png b/graphics/icons/WGPu.png new file mode 100644 index 0000000..1ba674c Binary files /dev/null and b/graphics/icons/WGPu.png differ diff --git a/graphics/icons/WGU-enrichment.png b/graphics/icons/WGU-enrichment.png new file mode 100644 index 0000000..054348e Binary files /dev/null and b/graphics/icons/WGU-enrichment.png differ diff --git a/graphics/icons/WGU-hex.png b/graphics/icons/WGU-hex.png new file mode 100644 index 0000000..36c885b Binary files /dev/null and b/graphics/icons/WGU-hex.png differ diff --git a/graphics/icons/WGU.png b/graphics/icons/WGU.png new file mode 100644 index 0000000..e81b38b Binary files /dev/null and b/graphics/icons/WGU.png differ diff --git a/graphics/icons/actinides.png b/graphics/icons/actinides.png new file mode 100644 index 0000000..7212a21 Binary files /dev/null and b/graphics/icons/actinides.png differ diff --git a/graphics/icons/aqueous-raffinate.png b/graphics/icons/aqueous-raffinate.png new file mode 100644 index 0000000..9ec92e9 Binary files /dev/null and b/graphics/icons/aqueous-raffinate.png differ diff --git a/graphics/icons/ceramic-waste.png b/graphics/icons/ceramic-waste.png new file mode 100644 index 0000000..c3dabd0 Binary files /dev/null and b/graphics/icons/ceramic-waste.png differ diff --git a/graphics/icons/fission-rocket.png b/graphics/icons/fission-rocket.png new file mode 100644 index 0000000..b945fbd Binary files /dev/null and b/graphics/icons/fission-rocket.png differ diff --git a/graphics/icons/hex.png b/graphics/icons/hex.png new file mode 100644 index 0000000..a3da5c9 Binary files /dev/null and b/graphics/icons/hex.png differ diff --git a/graphics/icons/hydrofluoride.png b/graphics/icons/hydrofluoride.png new file mode 100644 index 0000000..f3dd432 Binary files /dev/null and b/graphics/icons/hydrofluoride.png differ diff --git a/graphics/icons/nuclear-reactor.png b/graphics/icons/nuclear-reactor.png new file mode 100644 index 0000000..e155bb8 Binary files /dev/null and b/graphics/icons/nuclear-reactor.png differ diff --git a/graphics/icons/nuclear_group.png b/graphics/icons/nuclear_group.png new file mode 100644 index 0000000..5bab4bb Binary files /dev/null and b/graphics/icons/nuclear_group.png differ diff --git a/graphics/icons/production-reactor.png b/graphics/icons/production-reactor.png new file mode 100644 index 0000000..3591baa Binary files /dev/null and b/graphics/icons/production-reactor.png differ diff --git a/graphics/icons/raffinate-processing.png b/graphics/icons/raffinate-processing.png new file mode 100644 index 0000000..610685d Binary files /dev/null and b/graphics/icons/raffinate-processing.png differ diff --git a/graphics/icons/raffinate.png b/graphics/icons/raffinate.png new file mode 100644 index 0000000..ccc80d8 Binary files /dev/null and b/graphics/icons/raffinate.png differ diff --git a/graphics/icons/thermal-reactor.png b/graphics/icons/thermal-reactor.png new file mode 100644 index 0000000..cc458ce Binary files /dev/null and b/graphics/icons/thermal-reactor.png differ diff --git a/graphics/icons/urania-fuel-reprocessing.png b/graphics/icons/urania-fuel-reprocessing.png new file mode 100644 index 0000000..9fb51c9 Binary files /dev/null and b/graphics/icons/urania-fuel-reprocessing.png differ diff --git a/graphics/icons/urania.png b/graphics/icons/urania.png new file mode 100644 index 0000000..8e98f26 Binary files /dev/null and b/graphics/icons/urania.png differ diff --git a/graphics/icons/used-up-HEU-fuel-cell.png b/graphics/icons/used-up-HEU-fuel-cell.png new file mode 100644 index 0000000..b2e0ab3 Binary files /dev/null and b/graphics/icons/used-up-HEU-fuel-cell.png differ diff --git a/graphics/icons/used-up-LEU-fuel-cell.png b/graphics/icons/used-up-LEU-fuel-cell.png new file mode 100644 index 0000000..29ffb8d Binary files /dev/null and b/graphics/icons/used-up-LEU-fuel-cell.png differ diff --git a/graphics/icons/used-up-MOX-fuel-cell.png b/graphics/icons/used-up-MOX-fuel-cell.png new file mode 100644 index 0000000..8b6666b Binary files /dev/null and b/graphics/icons/used-up-MOX-fuel-cell.png differ diff --git a/graphics/icons/yellowcake.png b/graphics/icons/yellowcake.png new file mode 100644 index 0000000..c6495e4 Binary files /dev/null and b/graphics/icons/yellowcake.png differ diff --git a/info.json b/info.json new file mode 100644 index 0000000..12e1813 --- /dev/null +++ b/info.json @@ -0,0 +1,14 @@ +{ + "name": "adamo-nuclear", + "version": "1.0.0", + "title": "Adamo Nuclear", + "author": "adamo", + "dependencies": [ + "base", + "? adamo-physics", + "? adamo-chemical", + "? uranium-belts" + ], + "description": "Always number one. Always Nuka Cola!", + "factorio_version": "0.18" +} \ No newline at end of file diff --git a/license b/license new file mode 100644 index 0000000..f7727f2 --- /dev/null +++ b/license @@ -0,0 +1,7 @@ +Copyright 2019 MadClown01 for icons + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. \ No newline at end of file diff --git a/locale/en/base.cfg b/locale/en/base.cfg new file mode 100644 index 0000000..b1eef22 --- /dev/null +++ b/locale/en/base.cfg @@ -0,0 +1,99 @@ +[item-group-name] +adamo-nuclear-group=Nuclear engineering + +[technology-name] +atomic-bomb=Weapons-grade plutonium +adamo-nuclear-fast-reactor=Fast Nuclear Reactor +kovarex-enrichment-process=Advanced Nuclear Fuel Reprocessing + +[fuel-category-name] +adamo-nuclear-thermal-reaction=Thermal nuclear fuel + +[fluid-name] +adamo-nuclear-natural-uranium-hex=Natural uranium hex +adamo-nuclear-raffinate=Nuclear raffinate +adamo-nuclear-aqueous-raffinate=Aqueous nuclear raffinate +adamo-nuclear-HEU-hex=High-enriched uranium hex +adamo-nuclear-LEU-hex=Low-enriched uranium hex +adamo-nuclear-DU-hex=Depleted uranium hex +adamo-nuclear-WGU-hex=Weapons-grade uranium hex +adamo-nuclear-Pu-hex=Mixed-grade plutonium hex +adamo-nuclear-RGPu-hex=Reactor-grade plutonium hex +adamo-nuclear-WGPu-hex=Weapons-grade plutonium hex +adamo-nuclear-Pu238-hex=Plutonium-238 hex +adamo-nuclear-LEU-PUREX-hex=Reprocessed LEU hex +adamo-nuclear-HEU-PUREX-hex=Reprocessed HEU hex +adamo-chemical-hydrofluoric-acid=Hydrofluoric acid + +[item-name] +uranium-ore=Yellowcake +adamo-nuclear-yellowcake=Yellowcake +adamo-nuclear-urania=Natural urania +adamo-nuclear-DU-oxide=Depleted urania +adamo-nuclear-LEU-oxide=Low-enriched urania +adamo-nuclear-HEU-oxide=High-enriched urania +adamo-nuclear-WGU-oxide=Weapons-grade urania +adamo-nuclear-RGPu-oxide=Reactor-grade plutonia +adamo-nuclear-WGPu-oxide=Weapons-grade plutonia +adamo-nuclear-Pu238-oxide=Plutonia-238 +adamo-nuclear-actinides=Minor actinides +adamo-nuclear-ceramic-waste=Radioactive glass +uranium-fuel-cell=HEU fuel cell +adamo-nuclear-LEU-fuel-cell=LEU fuel cell +adamo-nuclear-MOX-fuel-cell=MOX fuel cell +used-up-uranium-fuel-cell=Spent HEU fuel cell +adamo-nuclear-used-up-LEU-fuel-cell=Spent LEU fuel cell +adamo-nuclear-used-up-MOX-fuel-cell=Spent MOX fuel cell +atomic-bomb=Nuclear Rocket +adamo-nuclear-thermonuclear-rocket=Thermonuclear Rocket + +[recipe-name] +adamo-nuclear-LEU-enrichment=Low uranium enrichment +adamo-nuclear-HEU-enrichment=High uranium enrichment +adamo-nuclear-WGU-enrichment=Weapons-grade uranium enrichment +adamo-nuclear-WGPu-enrichment=Weapons-grade plutonium enrichment +adamo-nuclear-LEU-PUREX-enrichment=Reprocessed low uranium enrichment +adamo-nuclear-HEU-PUREX-enrichment=Reprocessed high uranium enrichment +adamo-nuclear-LEU-PUREX-by-HF=LEU PUREX +adamo-nuclear-LEU-PUREX-by-H2SO4=LEU PUREX +adamo-nuclear-HEU-PUREX-by-HF=HEU PUREX +adamo-nuclear-HEU-PUREX-by-H2SO4=HEU PUREX +adamo-nuclear-LEU-REMIX=LEU REMIX +adamo-nuclear-MOX-REMIX=MOX REMIX +adamo-nuclear-raffinate-processing=Raffinate processing +adamo-nuclear-aqueous-raffinate-processing=Aqueous raffinate processing + +[entity-name] +adamo-nuclear-production-reactor=Production reactor +nuclear-reactor=Liquid-metal-cooled nuclear reactor +adamo-nuclear-thermal-reactor=Thermal nuclear boiler + +[technology-description] +uranium-processing=Process uranium ore to fissile fuel. +uranium-ammo=Ammunition made with depleted urania. +nuclear-fuel-reprocessing=Process spent urania fuel by separating fissile products. +kovarex-enrichment-process=Process plutonium and MOX fuels. + +[fluid-description] +adamo-nuclear-natural-uranium-hex=Uranium hexafluoride. + +[item-description] +adamo-nuclear-urania=Natural uranium dioxide is the base of the nuclear production chain. +adamo-nuclear-Pu238-oxide=Warm to the touch. +adamo-nuclear-ceramic-waste=These have no use other than to give to tsen. Ask him about pretty radioactive windows. + +[recipe-description] +adamo-nuclear-LEU-PUREX-by-HF=Chemical reprocessing of spent low-enriched urania fuel. +adamo-nuclear-LEU-PUREX-by-H2SO4=Chemical reprocessing of spent low-enriched urania fuel. +adamo-nuclear-HEU-PUREX-by-HF=Chemical reprocessing of spent high-enriched urania fuel. +adamo-nuclear-HEU-PUREX-by-H2SO4=Chemical reprocessing of spent high-enriched urania fuel. +adamo-nuclear-LEU-REMIX=Chemical regeneration of spent LEU fuel. +adamo-nuclear-MOX-REMIX=Chemical regeneration of spent MOX fuel. +adamo-nuclear-Pu238-oxide=Neutron irradiation of actinides by spallation to generate plutonia-238. +adamo-nuclear-thermonuclear-rocket=Thermonuclear Rocket with depleted uranium reflection. + +[entity-description] +centrifuge=Sorts isotopes by mass. +nuclear-reactor=Reacts by a fast neutron spectrum. +adamo-nuclear-thermal-reactor=Reacts by a moderated neutron spectrum. +adamo-nuclear-production-reactor=Sorts and irradiates material using a pool reactor. Has a water-based particle accelerator. diff --git a/migrations/absorb.json b/migrations/absorb.json new file mode 100644 index 0000000..235f75c --- /dev/null +++ b/migrations/absorb.json @@ -0,0 +1,15 @@ +{ + "entity": + [ + ["industrial-reactor","adamo-nuclear-production-reactor"] + ], + "item": + [ + ["plutonium-238","adamo-nuclear-plutonia-238"], + ["pu-238", "adamo-nuclear-plutonia-238"], + ["plutonium-239","adamo-nuclear-plutonia-rg"], + ["MOX-fuel","adamo-nuclear-MOX-fuel-cell"], + ["used-up-MOX-fuel","adamo-nuclear-used-up-MOX-fuel-cell"] + ] +} + diff --git a/migrations/better.json b/migrations/better.json new file mode 100644 index 0000000..023a8b8 --- /dev/null +++ b/migrations/better.json @@ -0,0 +1,25 @@ +{ + "item": + [ + ["adamo-nuclear-plutonia-rg","adamo-nuclear-RGPu-oxide"], + ["adamo-nuclear-plutonia-wg","adamo-nuclear-WGPu-oxide"], + ["adamo-nuclear-urania-le","adamo-nuclear-HEU-oxide"], + ["adamo-nuclear-actinides-waste","adamo-nuclear-ceramic-waste"], + ["adamo-nuclear-urania-depleted","adamo-nuclear-DU-oxide"], + ["adamo-nuclear-plutonia-238","adamo-nuclear-Pu238-oxide"] + ], + "fluid": + [ + ["adamo-nuclear-uranium-hex","adamo-nuclear-natural-uranium-hex"] + ], + "recipe": + [ + ["adamo-nuclear-natural-uranium-hex-enrichment","adamo-nuclear-HEU-enrichment"], + ["adamo-nuclear-uranium-hex","adamo-nuclear-natural-uranium-hex"], + ["adamo-nuclear-PUREX-by-HF","adamo-nuclear-HEU-PUREX-by-HF"], + ["adamo-nuclear-PUREX-by-H2SO4","adamo-nuclear-HEU-PUREX-by-H2SO4"], + ["adamo-nuclear-REMIX","adamo-nuclear-MOX-REMIX"], + ["adamo-nuclear-plutonia-238-by-H2SO4","adamo-nuclear-Pu238-oxide"], + ["adamo-nuclear-plutonia-wg","adamo-nuclear-WGPu-enrichment"] + ] +} diff --git a/migrations/missile_change.json b/migrations/missile_change.json new file mode 100644 index 0000000..05f08b2 --- /dev/null +++ b/migrations/missile_change.json @@ -0,0 +1,19 @@ +{ + "ammo": + [ + ["adamo-nuclear-plutonium-rocket", "adamo-nuclear-thermonuclear-rocket"] + ], + "recipe": + [ + ["adamo-nuclear-plutonium-rocket", "adamo-nuclear-thermonuclear-rocket"] + ], + "entity": + [ + ["adamo-nuclear-plutonium-rocket", "adamo-nuclear-thermonuclear-rocket"] + ], + "item": + [ + ["adamo-nuclear-plutonium-rocket", "adamo-nuclear-thermonuclear-rocket"] + ] +} + diff --git a/thumbnail.png b/thumbnail.png new file mode 100644 index 0000000..5bab4bb Binary files /dev/null and b/thumbnail.png differ