diff --git a/changelog.txt b/changelog.txt index a60797f..9399a56 100644 --- a/changelog.txt +++ b/changelog.txt @@ -1,4 +1,18 @@ --------------------------------------------------------------------------------------------------- +Version: 1.0.14 +Date: 20.4.2022 + Features: + - added fission stage stone quarry which can mine stone from nothing + + Changes: + - reduced stone usage for rich water production + - buffed fission stage oil processing + - reduced energy crystal usage for blue science + - reduced stone usage for industrial glass + + Bugfixes: + - a +--------------------------------------------------------------------------------------------------- Version: 1.0.13 Date: 15.4.2022 Changes: diff --git a/data.lua b/data.lua index fbae7f5..d315ce8 100644 --- a/data.lua +++ b/data.lua @@ -58,6 +58,7 @@ require('prototypes/fusion/fu_laser') require('prototypes/fusion/fu_plasma') require('prototypes/fusion/fu_materials') require('prototypes/fusion/fu_magnet') +require('prototypes/fusion/fu_miner') require('prototypes/gravitation/gr_crafter') require('prototypes/gravitation/gr_materials') @@ -78,6 +79,8 @@ require('prototypes/fi_recipes') require('prototypes/fu_recipes') require('prototypes/gr_recipes') +require('scripts/clean_up') + --fix early kerosene table.insert(data.raw.technology["advanced-oil-processing"].effects, { type = 'unlock-recipe', diff --git a/locale/en/lang_en.cfg b/locale/en/lang_en.cfg index 7b4f831..369dadb 100644 --- a/locale/en/lang_en.cfg +++ b/locale/en/lang_en.cfg @@ -117,6 +117,8 @@ fu_materials_magnet_card=Magnetising data fu_materials_laser_card=Laser data fu_materials_empty_container=Empty neutron container fu_materials_charged_container=Charged neutron container +fu_materials_stone=Rock fragment +fu_miner_fuel_item=Drill gr_materials_fusion_cell_item=Compact fusion cell @@ -339,6 +341,7 @@ fu_star_engine_heater_left_entity=Star engine - heating unit (left side) fu_laser_entity=Laser facility fu_plasma_entity=Plasma facility fu_magnet_entity=Magnetising facility +fu_miner_entity=Stone quarry gr_crafter_entity=Fusion assembling machine gr_magnet_train_pre_entity=EM suspension train 1 @@ -414,6 +417,7 @@ fu_reactor_tech=Stellarator reactor fu_tokamak_tech=Tokamak reactor fu_robo_tech=Advanced bots fu_activator_tech=Advanced isotopes +fu_miner_tech=Stone mining fu_hydrogen_1_tech=Hydrogen refining 1 fu_hydrogen_2_tech=Hydrogen refining 2 @@ -536,6 +540,7 @@ fi_basic_fuel=Basic nuclear fuel fi_advanced_fuel=Advanced nuclear fuel fi_pure_fuel=High energy nuclear fuel fi_test_fuel=Nuclear reasearch fuel +fu_miner_fuel_category=Miner drills #settings [mod-setting-name] diff --git a/prototypes/248k_subgroups.lua b/prototypes/248k_subgroups.lua index 84a8f33..f0fdcf5 100644 --- a/prototypes/248k_subgroups.lua +++ b/prototypes/248k_subgroups.lua @@ -389,6 +389,15 @@ data:extend({ name = 'fu_star_engine_caster_crafting_category', type = 'recipe-category', }, + --fu miner + { + name = 'fu_miner_category', + type = 'recipe-category', + }, + { + name = 'fu_miner_fuel_category', + type = 'fuel-category', + }, --============================================================================================================================================================ diff --git a/prototypes/248k_techs.lua b/prototypes/248k_techs.lua index 73b7668..c99c763 100644 --- a/prototypes/248k_techs.lua +++ b/prototypes/248k_techs.lua @@ -2744,6 +2744,44 @@ data:extend({ time = 100, }, }, + { + name = 'fu_miner_tech', + type = 'technology', + icon = sprite('fu_miner_tech.png'), + icon_size = 128, + prerequisites = {'fi_materials_tech'}, + effects = { + { + type = 'unlock-recipe', + recipe = 'fu_miner_recipe', + }, + { + type = 'unlock-recipe', + recipe = 'fu_mining_recipe', + }, + { + type = 'unlock-recipe', + recipe = 'fu_crush_stone_recipe', + }, + { + type = 'unlock-recipe', + recipe = 'fu_extract_stone_recipe', + }, + { + type = 'unlock-recipe', + recipe = 'fu_drill_recipe', + }, + }, + unit = { + count = '200', + ingredients = { + {'chemical-science-pack',1}, + {'automation-science-pack',1}, + {'logistic-science-pack',1}, + }, + time = 100, + }, + }, --============================================================================================================================================================ --gravitational { diff --git a/prototypes/fi_recipes.lua b/prototypes/fi_recipes.lua index 35312c0..f2b8d8a 100644 --- a/prototypes/fi_recipes.lua +++ b/prototypes/fi_recipes.lua @@ -762,7 +762,7 @@ data:extend({ enabled = 'false', category = 'el_arc_furnace_category', ingredients = { - {type="item", name="stone", amount=5}, + {type="item", name="stone", amount=3}, }, results = { {type="fluid", name="fi_arc_glass", amount=200}, @@ -844,7 +844,7 @@ data:extend({ {type="fluid", name="fi_strong_acid", amount=100}, {type="fluid", name="water", amount=50}, --{type="fluid", name="steam", amount=240, temperature=165}, - {type="item", name="stone", amount=10} + {type="item", name="stone", amount=8} }, results = { {type="fluid", name="fi_dirty_water", amount=50}, @@ -1175,7 +1175,7 @@ data:extend({ main_product = 'fi_materials_rich_powder', ingredients = { {type="item", name="fi_materials_solution", amount=1}, - {type="item", name="fi_crushed_stone_item", amount=20}, + {type="item", name="fi_crushed_stone_item", amount=16}, {type="item", name="fi_crushed_coal_item", amount=20}, }, results = { @@ -1239,7 +1239,7 @@ data:extend({ {type="fluid", name="el_kerosene", amount=80}, {type="fluid", name="heavy-oil", amount=20}, }, - energy_required = 6, + energy_required = 5, subgroup = 'fi_item_subgroup_f', order = 'a-a', always_show_made_in = true, @@ -1262,7 +1262,7 @@ data:extend({ {type="fluid", name="el_kerosene", amount=65}, {type="fluid", name="heavy-oil", amount=75}, }, - energy_required = 6, + energy_required = 5, subgroup = 'fi_item_subgroup_f', order = 'a-a', always_show_made_in = true, @@ -1285,7 +1285,7 @@ data:extend({ {type="fluid", name="el_kerosene", amount=80}, {type="fluid", name="heavy-oil", amount=20}, }, - energy_required = 6, + energy_required = 5, subgroup = 'fi_item_subgroup_f', order = 'a-a', always_show_made_in = true, @@ -1339,11 +1339,11 @@ data:extend({ {type="fluid", name="el_kerosene", amount=200}, }, results = { - {type="fluid", name="el_acidic_water", amount=80}, - {type="fluid", name="fi_acid_gas", amount=40}, - {type="fluid", name="el_desulfurized_kerosene", amount=80}, + {type="fluid", name="el_acidic_water", amount=100}, + {type="fluid", name="fi_acid_gas", amount=50}, + {type="fluid", name="el_desulfurized_kerosene", amount=90}, }, - energy_required = 6, + energy_required = 5, subgroup = 'fi_item_subgroup_f', order = 'a-a', always_show_made_in = true, @@ -1360,11 +1360,11 @@ data:extend({ {type="item", name="fi_crushed_coal_item", amount=10}, }, results = { - {type="fluid", name="el_acidic_water", amount=90}, - {type="fluid", name="fi_acid_gas", amount=60}, - {type="fluid", name="heavy-oil", amount=80}, + {type="fluid", name="el_acidic_water", amount=110}, + {type="fluid", name="fi_acid_gas", amount=70}, + {type="fluid", name="heavy-oil", amount=90}, }, - energy_required = 6, + energy_required = 5, subgroup = 'fi_item_subgroup_f', order = 'a-a', always_show_made_in = true, diff --git a/prototypes/fu_recipes.lua b/prototypes/fu_recipes.lua index 4449ba6..2f05687 100644 --- a/prototypes/fu_recipes.lua +++ b/prototypes/fu_recipes.lua @@ -1584,6 +1584,93 @@ data:extend({ always_show_made_in = true, subgroup = 'fu_item_subgroup_f', }, + { + name = 'fu_miner_recipe', + type = 'recipe', + category = 'crafting', + enabled = false, + ingredients = { + {type="item", name="electric-mining-drill", amount=1}, + {type="item", name="el_energy_crystal_item", amount=10}, + {type="item", name="fi_materials_GFK", amount=15}, + {type="item", name="concrete", amount=30}, + }, + results = { + {type="item", name="fu_miner_item", amount=1}, + }, + result_count = 20, + energy_required = 10, + always_show_made_in = true, + subgroup = 'fi_item_subgroup_c', + }, + { + name = 'fu_mining_recipe', + type = 'recipe', + category = 'fu_miner_category', + enabled = false, + ingredients = {}, + results = { + {type="item", name="fu_materials_stone", amount=1}, + }, + result_count = 1, + energy_required = 1.5, + always_show_made_in = true, + subgroup = 'fi_item_subgroup_a', + }, + { + name = 'fu_extract_stone_recipe', + type = 'recipe', + category = 'chemistry', + enabled = false, + main_product = 'stone', + ingredients = { + {type="item", name="fu_materials_stone", amount=1}, + {type="fluid", name="water", amount=10}, + {type="fluid", name="fi_strong_acid", amount=5}, + }, + results = { + {type="item", name="stone", amount=5}, + {type="item", name="fi_crushed_stone_item", amount=3, probability=0.5}, + {type="fluid", name="el_dirty_water", amount=10}, + }, + result_count = 1, + energy_required = 0.5, + always_show_made_in = true, + subgroup = 'fi_item_subgroup_a', + }, + { + name = 'fu_crush_stone_recipe', + type = 'recipe', + category = 'fi_crushing', + enabled = false, + ingredients = { + {type="item", name="fu_materials_stone", amount=1}, + }, + results = { + {type="item", name="stone", amount=4}, + }, + result_count = 1, + energy_required = 0.5, + always_show_made_in = true, + subgroup = 'fi_item_subgroup_a', + }, + { + name = 'fu_drill_recipe', + type = 'recipe', + category = 'crafting', + enabled = false, + ingredients = { + {type="item", name="fi_materials_GFK", amount=1}, + {type="item", name="fi_materials_titan", amount=1}, + }, + results = { + {type="item", name="fu_miner_fuel_item", amount=1}, + }, + result_count = 1, + energy_required = 6, + subgroup = 'fi_item_subgroup_b', + }, + }) \ No newline at end of file diff --git a/prototypes/fusion/fu_materials.lua b/prototypes/fusion/fu_materials.lua index 41ef1c0..6e11604 100644 --- a/prototypes/fusion/fu_materials.lua +++ b/prototypes/fusion/fu_materials.lua @@ -126,4 +126,13 @@ data:extend({ subgroup = 'fu_item_subgroup_b', order = 'f-a', }, + { + name = 'fu_materials_stone', + type = 'item', + icon = sprite('stone.png'), + icon_size = 64, + stack_size = 100, + subgroup = 'fi_item_subgroup_a', + order = 'f-a', + }, }) diff --git a/prototypes/fusion/fu_miner.lua b/prototypes/fusion/fu_miner.lua new file mode 100644 index 0000000..3f46e32 --- /dev/null +++ b/prototypes/fusion/fu_miner.lua @@ -0,0 +1,109 @@ +--local functions +local function config(name) + return settings.startup['fu_miner_'..name].value +end + +local function sprite(name) + return '__248k__/ressources/fusion/fu_miner/fu_miner_'..name +end + +--item +data:extend({ + { + name = 'fu_miner_item', + type = 'item', + icon = sprite('icon.png'), + icon_size = 64, + place_result = 'fu_miner_entity', + stack_size = 20, + subgroup = 'fi_item_subgroup_c', + order = 'a-b', + }, + { + name = 'fu_miner_fuel_item', + type = 'item', + icon = sprite('drill.png'), + icon_size = 64, + stack_size = 20, + subgroup = 'fi_item_subgroup_b', + order = 'a-b', + fuel_category = 'fu_miner_fuel_category', + fuel_value = '80MJ', + }, + +}) + +--entity +data:extend({ + --prototype + { + name = 'fu_miner_entity', + type = 'assembling-machine', + icon = sprite('icon.png'), + icon_size = 64, + flags = {"player-creation","placeable-neutral"}, + max_health = 300, + fixed_recipe = '', + corpse = 'big-remnants', + collision_box = {{-5.4,-5.4},{5.4,5.4}}, + selection_box = {{-5.5,-5.5},{5.5,5.5}}, + map_color = {r=0, g=0, b=1, a=1}, + minable = { + mining_time = 1, + result = 'fu_miner_item', + }, + crafting_categories = {'fu_miner_category'}, + crafting_speed = 1, + ingredient_count = 2, + fixed_recipe = 'fu_mining_recipe', + energy_source = { + type = "burner", + fuel_inventory_size = 1, + effectivity = 1, + emissions_per_minute = 20, + fuel_category = "fu_miner_fuel_category", + smoke = { + { + name = "smoke", + tape = "trival-smoke", + frequency = 60, + position = {0,-3}, + --deviation = {x = -2, y = -2}, + duration = 1, + }, + }, + }, + energy_usage = '1MW', + --animation + animation = { + filename = sprite('base.png'), + size = {512*2,512*2}, + scale = 0.4, + line_length = 1, + --lines_per_file = 2, + frame_count = 1, + --animation_speed = 0.2, + shift = {0,-0.9} + }, + working_visualisations = { + { + animation = + { + filename = sprite('animation.png'), + size = {512*2,512*2}, + scale = 0.4, + line_length = 3, + lines_per_file = 3, + frame_count = 9, + animation_speed = 0.2, + shift = {0,-0.9} + } + } + }, + working_sound = + { + sound = {filename = "__base__/sound/burner-mining-drill.ogg" }, + apparent_volume = 0.3, + }, + }, +}) \ No newline at end of file diff --git a/ressources/fusion/fu_materials/fu_materials_stone.png b/ressources/fusion/fu_materials/fu_materials_stone.png new file mode 100644 index 0000000..8234459 Binary files /dev/null and b/ressources/fusion/fu_materials/fu_materials_stone.png differ diff --git a/ressources/fusion/fu_miner/fu_miner_animation.png b/ressources/fusion/fu_miner/fu_miner_animation.png new file mode 100644 index 0000000..37191d5 Binary files /dev/null and b/ressources/fusion/fu_miner/fu_miner_animation.png differ diff --git a/ressources/fusion/fu_miner/fu_miner_base.png b/ressources/fusion/fu_miner/fu_miner_base.png new file mode 100644 index 0000000..48fd13c Binary files /dev/null and b/ressources/fusion/fu_miner/fu_miner_base.png differ diff --git a/ressources/fusion/fu_miner/fu_miner_drill.png b/ressources/fusion/fu_miner/fu_miner_drill.png new file mode 100644 index 0000000..e8665ab Binary files /dev/null and b/ressources/fusion/fu_miner/fu_miner_drill.png differ diff --git a/ressources/fusion/fu_miner/fu_miner_icon.png b/ressources/fusion/fu_miner/fu_miner_icon.png new file mode 100644 index 0000000..518f53e Binary files /dev/null and b/ressources/fusion/fu_miner/fu_miner_icon.png differ diff --git a/ressources/techs/fu_miner_tech.png b/ressources/techs/fu_miner_tech.png new file mode 100644 index 0000000..6109039 Binary files /dev/null and b/ressources/techs/fu_miner_tech.png differ diff --git a/scripts/clean_up.lua b/scripts/clean_up.lua new file mode 100644 index 0000000..f7d5f03 --- /dev/null +++ b/scripts/clean_up.lua @@ -0,0 +1,29 @@ +local clean_up_list = { + "el_aluminum_ore_item", + "el_lithium_ore_item", + "el_ki_linker", + "fi_crushed_iron_item", + "fi_crushed_copper_item", + "fi_crushed_aluminum_item", + "fi_crushed_uranium_item", + "fi_industrial_steel_blend_item", + "fi_industrial_steel_item", + "fi_compound_material_item", + "fi_miner_item", + "fi_base_crystal_item", + "fi_catalyst_crystal_item" +} + +local function clean_up(clean_up_list) + for i,v in ipairs(clean_up_list) do + if data.raw.item[v] then + data.raw.item[v].flags = { "hidden" } + end + + if data.raw["item-with-tags"][v] then + data.raw["item-with-tags"][v].flags = { "hidden" } + end + end +end + +clean_up(clean_up_list) \ No newline at end of file diff --git a/scripts/overhaul.lua b/scripts/overhaul.lua index 44a717c..87ac6ea 100644 --- a/scripts/overhaul.lua +++ b/scripts/overhaul.lua @@ -108,7 +108,7 @@ item_table = { --{"automation-science-pack", "fi_modules_core_item", 3}, --{"logistic-science-pack", "fi_modules_core_item", 3}, - {"chemical-science-pack", "el_energy_crystal_item",3}, + {"chemical-science-pack", "el_energy_crystal_item",2}, {"production-science-pack", "fi_materials_titan", 1}, {"utility-science-pack", "fi_materials_neodym", 1},