diff --git a/changelog.txt b/changelog.txt index 83ac69c..0ad8e85 100644 --- a/changelog.txt +++ b/changelog.txt @@ -1,4 +1,11 @@ --------------------------------------------------------------------------------------------------- +Version: 1.0.0 +Date: 22.3.2022 + Features: + - added vanila overhaul mode: integrate 248k items, buildings and techs into progression + change vanila items + buildings accordingly + - added krastorio 2 overhaul mode. + - use mod settings to choose standalone mode or overhaul mode +--------------------------------------------------------------------------------------------------- Version: 0.9.5 Date: 19.1.2022 Features: diff --git a/control.lua b/control.lua index b7346eb..9254d2f 100644 --- a/control.lua +++ b/control.lua @@ -7,6 +7,22 @@ local gr_gui = require('scripts/gravitation/gui') --informatron require('scripts/informatron/inf_main') +--=================================================================================================================== +-- other functions +--=================================================================================================================== + +function print_start_message() + if settings.startup['overhaul_mode'].value == false then + game.print("You are currently playing 248k on standalone Mode.", {r=0.5, g=0, b=0.5}) + game.print("If you wish to play 248k as an overhaul mod with tech and item integration, especially in Krastorio2 turn on the mod setting", {r=0.5, g=0, b=0.5}) + elseif settings.startup['overhaul_mode'].value == true then + game.print("You are currently playing 248k on overhaul Mode.", {r=0.5, g=0, b=0.5}) + game.print("If you wish to play 248k as an overhaul mod without tech and item integration turn off the mod setting", {r=0.5, g=0, b=0.5}) + end +end + +--=================================================================================================================== +-- Event handlers --=================================================================================================================== --init @@ -23,6 +39,8 @@ script.on_init( for i,v in pairs(game.players) do gui.add_top_gui(game.players[i]) end + + print_start_message() end ) @@ -35,6 +53,12 @@ script.on_event({ }, function(e) gui.add_top_gui(game.get_player(e["player_index"])) + + if not global.message_printed then + print_start_message() + global.message_printed = true + end + end ) @@ -163,4 +187,3 @@ script.on_configuration_changed( end end ) - diff --git a/info.json b/info.json index bde5baa..bc4e778 100644 --- a/info.json +++ b/info.json @@ -4,7 +4,7 @@ "title": "248k Mod", "author": "PreLeyZero", "factorio_version": "1.1", - "description": "Advance through 4 stages of tech. Start with simple machines and work your way through nuclear fission and fusion up to black and white holes, in order to tame the 248k Element. This mod is designed to be playable in already existing worlds since it changes nothing on world generation or vanilla itself. Does include a booktorio/Informatron ingame wiki!", + "description": "Advance through 4 stages of tech. Start with simple machines and work your way through nuclear fission and fusion up to black and white holes. Can be added to already existing saves! See mod portal for more info.", "dependencies": [ "base >= 1.0.0", "Squeak Through", diff --git a/migrations/248k-1.0.0.lua b/migrations/248k-1.0.0.lua new file mode 100644 index 0000000..c873901 --- /dev/null +++ b/migrations/248k-1.0.0.lua @@ -0,0 +1,7 @@ +if settings.startup['overhaul_mode'].value == false then + game.print("You are currently playing 248k on standalone Mode.", {r=0.5, g=0, b=0.5}) + game.print("If you wish to play 248k as an overhaul mod with tech and item integration, especially in Krastorio2 turn on the mod setting", {r=0.5, g=0, b=0.5}) +elseif settings.startup['overhaul_mode'].value == true then + game.print("You are currently playing 248k on overhaul Mode.", {r=0.5, g=0, b=0.5}) + game.print("If you wish to play 248k as an overhaul mod without tech and item integration turn off the mod setting", {r=0.5, g=0, b=0.5}) +end \ No newline at end of file diff --git a/scripts/krastorio2/data-final-fixes.lua b/scripts/krastorio2/data-final-fixes.lua index 4cd76e4..2be7624 100644 --- a/scripts/krastorio2/data-final-fixes.lua +++ b/scripts/krastorio2/data-final-fixes.lua @@ -221,7 +221,7 @@ data:extend({ --techs table.insert(data.raw.technology["kr-lithium-processing"].effects, {type ="unlock-recipe", recipe ="fi_lithium_to_k2"}) -table.insert(data.raw.technology["kr-matter-processing"].effects, {type ="unlock-recipe", recipe ="fu_star_engine_cooler_7_recipe"}) +--table.insert(data.raw.technology["kr-matter-processing"].effects, {type ="unlock-recipe", recipe ="fu_star_engine_cooler_7_recipe"}) if (not mods["RealisticFusionPower"]) then table.insert(data.raw.technology["kr-fusion-energy"].effects, {type ="unlock-recipe", recipe ="fu_activator_4_recipe"}) table.insert(data.raw.technology["kr-fusion-energy"].effects, {type ="unlock-recipe", recipe ="fu_activator_3_recipe"}) @@ -253,10 +253,10 @@ table.insert(data.raw.technology["fu_ki_plus_2_tech"].unit.ingredients, {"fu_ki_ table.insert(data.raw["generator-equipment"]["fi_train_equipment_generator_item"].categories,"vehicle-equipment") if (config("krastorio_endgame")) then - table.insert(data.raw.recipe["kr-intergalactic-transceiver"].ingredients ,{type="item", name="gr_materials_stack_down_item", amount=100}) - table.insert(data.raw.recipe["kr-intergalactic-transceiver"].ingredients ,{type="item", name="gr_materials_stack_up_item", amount=100}) - table.insert(data.raw.recipe["kr-antimatter-reactor"].ingredients ,{type="item", name="gr_materials_stack_down_item", amount=40}) - table.insert(data.raw.recipe["kr-antimatter-reactor"].ingredients ,{type="item", name="gr_materials_stack_up_item", amount=40}) + table.insert(data.raw.recipe["kr-intergalactic-transceiver"].ingredients ,{type="item", name="gr_materials_stack_down_item", amount=40}) + table.insert(data.raw.recipe["kr-intergalactic-transceiver"].ingredients ,{type="item", name="gr_materials_stack_up_item", amount=40}) + table.insert(data.raw.recipe["kr-antimatter-reactor"].ingredients ,{type="item", name="gr_materials_stack_down_item", amount=5}) + table.insert(data.raw.recipe["kr-antimatter-reactor"].ingredients ,{type="item", name="gr_materials_stack_up_item", amount=5}) end table.insert(data.raw.lab['kr-singularity-lab'].inputs, 'fu_space_probe_science_item') table.insert(data.raw.lab['kr-singularity-lab'].inputs, 'fi_ki_science') diff --git a/scripts/krastorio2/overhaul.lua b/scripts/krastorio2/overhaul.lua index 0aa263f..e89dc53 100644 --- a/scripts/krastorio2/overhaul.lua +++ b/scripts/krastorio2/overhaul.lua @@ -268,7 +268,14 @@ building_table = { {"kr-advanced-assembling-machine", "fu_materials_KFK", 6}, {"kr-advanced-furnace", "fu_materials_KFK", 6}, {"kr-advanced-chemical-plant", "fu_materials_KFK", 6}, + {"kr-matter-plant", "fu_materials_KFK", 12}, + {"kr-matter-assembler", "fu_materials_KFK", 8}, + {"kr-stabilizer-charging-station", "fu_materials_KFK", 6}, {"kr-large-roboport", "fi_robo_port_item", 1}, + {"kr-antimatter-reactor", "fu_tokamak_reactor_item", 1}, + {"kr-intergalactic-transceiver", "fu_tokamak_reactor_item", 1}, + {"kr-intergalactic-transceiver", "gr_materials_magnet", 100}, + {"kr-intergalactic-transceiver", "gr_materials_fusion_cell_item", 10}, } @@ -289,6 +296,7 @@ item_table = { {"empty-dt-fuel", "fu_materials_KFK", 2}, {"fu_empty_container_recipe","empty-dt-fuel", 1}, {"energy-control-unit", "fu_materials_energy_crystal", 1}, + {"matter-stabilizer", "fu_materials_empty_container", 1}, --science {"chemical-science-pack", "el_energy_crystal_item",3}, @@ -314,7 +322,7 @@ tech_table = { {"logistics-2", "el_materials_ALK"}, {"fi_robo_tech", "construction-robotics"}, {"fi_robo_tech", "logistic-robotics"}, - {"fu_tokamak_tech", "kr-fusion-energy"}, + {"fu_energy_tech", "kr-fusion-energy"}, {"kr-fusion-energy", "fu_KFK_tech"}, {"kr-ai-core", "fu_crystal_tech"}, {"fusion-reactor-equipment", "fu_crystal_tech"}, @@ -327,10 +335,21 @@ tech_table = { {"kr-advanced-furnace", "fu_KFK_tech"}, {"kr-advanced-chemical-plant", "fu_KFK_tech"}, {"kr-advanced-roboports", "fi_robo_tech"}, - {"gr_stage_tech", "kr-matter-tech-card"}, + {"kr-matter-processing", "fu_KFK_tech"}, + {"fu_star_engine_tech", "kr-matter-coal-processing"}, + {"fu_star_engine_tech", "kr-matter-copper-processing"}, + {"fu_star_engine_tech", "kr-matter-iron-processing"}, + {"fu_star_engine_tech", "kr-matter-minerals-processing"}, + {"fu_star_engine_tech", "kr-matter-oil-processing"}, + {"fu_star_engine_tech", "kr-matter-rare-materials-processing"}, + {"fu_star_engine_tech", "kr-matter-stone-processing"}, + {"fu_star_engine_tech", "kr-matter-uranium-processing"}, + {"fu_star_engine_tech", "kr-matter-water-processing"}, {"gr_stage_tech", "kr-advanced-tech-card"}, {"gr_charger_tech", "kr-singularity-tech-card"}, {"gr_compact_fusion_tech", "kr-singularity-tech-card"}, + {"kr-intergalactic-transceiver","gr_magnet_tech"}, + {"kr-intergalactic-transceiver","gr_compact_fusion_tech"}, --energy tech {"kr-fuel", "el_energy_tech"}, @@ -377,6 +396,14 @@ data.raw.recipe["dt-fuel"].ingredients = { {type="fluid", name="fu_tritium", amount=6} } +data.raw["assembling-machine"]["fu_star_engine_core_entity"].energy_usage = "2GW" +data.raw["assembling-machine"]["fu_star_engine_cooler_up_entity"].energy_usage = "1GW" +data.raw["assembling-machine"]["fu_star_engine_cooler_entity"].energy_usage = "1GW" +data.raw["assembling-machine"]["fu_star_engine_heater_left_entity"].energy_usage = "1GW" +data.raw["assembling-machine"]["fu_star_engine_heater_entity"].energy_usage = "1GW" + +table.insert(data.raw.technology["fu_star_engine_iron_tech"].effects, {type ="unlock-recipe", recipe ="fu_star_engine_cooler_7_recipe"}) + data:extend({ { name = 'fi_arc_glass_recipe', @@ -428,6 +455,21 @@ data:extend({ energy_required = 10, always_show_made_in = true, }, + { + name = 'fu_star_engine_cooler_7_recipe', + type = 'recipe', + category = 'fu_star_engine_cooler_crafting_category', + enabled = 'false', + subgroup = 'fu_star_engine_subgroup_c', + ingredients = { + {type="fluid", name="fu_iron_heated", amount=500}, + }, + results = { + {type="fluid", name="matter", amount=100}, + }, + result_count = 1, + energy_required = 1, + }, }) --=================================================================================================================== @@ -446,7 +488,7 @@ add_tech_cards(change_table_index(add_card_table, tech_structure)) remove_pre_techs(change_table_index(pre_tech_table, tech_structure)) remove_tech_cards(change_table_index(remove_card_table, card_structure)) -add_cards_to_tree(del_doubles(walk_techs("gr_stage_tech", break_con)), "matter-tech-card") +add_cards_to_tree(del_doubles(walk_techs("fu_star_engine_tech", break_con)), "matter-tech-card") add_cards_to_tree(del_doubles(walk_techs("gr_stage_tech", break_con)), "advanced-tech-card") add_cards_to_tree(del_doubles(walk_techs("gr_charger_tech", break_con)), "singularity-tech-card") add_cards_to_tree(del_doubles(walk_techs("gr_compact_fusion_tech", break_con)), "singularity-tech-card") diff --git a/scripts/overhaul.lua b/scripts/overhaul.lua index 99ae702..defb68a 100644 --- a/scripts/overhaul.lua +++ b/scripts/overhaul.lua @@ -148,6 +148,7 @@ tech_table = { {"fi_refining_tech", "uranium-processing"}, {"fi_crafter_tech", "fi_refining_tech"}, {"el_solar_tech", "concrete"}, + {"fusion-reactor-equipment","fu_energy_tech"}, --add science packs {"fi_stage_tech", "chemical-science-pack"},