From 3013cec07a14ded1c079784a12f46290815f2b66 Mon Sep 17 00:00:00 2001 From: pla Date: Sat, 1 Nov 2025 12:59:59 +0100 Subject: [PATCH 1/7] Fix K2 matter recipe generation and tech icon (#1) ![image](/attachments/45b4db1c-2ae8-41a7-b672-75a7ddcd279f) Co-authored-by: pla Reviewed-on: https://git.cacklingfiend.info/cacklingfiend/bzaluminum2/pulls/1 Co-authored-by: pla Co-committed-by: pla --- bzaluminum2/aluminum-matter.lua | 100 +++++++++++++++----------------- bzaluminum2/data-util.lua | 13 +++-- 2 files changed, 56 insertions(+), 57 deletions(-) diff --git a/bzaluminum2/aluminum-matter.lua b/bzaluminum2/aluminum-matter.lua index 92caa5c..bacd77f 100644 --- a/bzaluminum2/aluminum-matter.lua +++ b/bzaluminum2/aluminum-matter.lua @@ -1,68 +1,62 @@ -- Matter recipes for Krastorio2 if mods["Krastorio2"] then -local util = require("data-util"); -local matter = require("__Krastorio2__/prototypes/libraries/matter") + local util = require("data-util") + local matter = require("__Krastorio2__/prototypes/libraries/matter") -data:extend( -{ - { - type = "technology", - name = "aluminum-matter-processing", - icons = + data:extend({ { - { - icon = util.k2assets().."/technologies/matter-coal.png", - icon_size = 256, + type = "technology", + name = "aluminum-matter-processing", + icons = { + { + icon = util.k2assets() .. "/technologies/backgrounds/matter.png", + icon_size = 256, + }, + { + icon = "__bzaluminum2__/graphics/icons/aluminum-ore.png", + icon_size = 64, + scale = 1, + }, + }, + effects = {}, + prerequisites = { "kr-matter-processing" }, + unit = { + count = 350, + ingredients = { + { "production-science-pack", 1 }, + { "utility-science-pack", 1 }, + { "kr-matter-tech-card", 1 }, + }, + time = 45, }, - { - icon = "__bzaluminum2__/graphics/icons/aluminum-ore.png", - icon_size = 64, - scale = 1.4, - } }, - prerequisites = {"kr-matter-processing"}, - unit = - { - count = 350, - ingredients = - { - {"production-science-pack", 1}, - {"utility-science-pack", 1}, - {"kr-matter-tech-card", 1} - }, - time = 45 - } - }, -}) + }) -local aluminum_ore_matter = - { - material = { type = "item", name = "aluminum-ore", amount = 10 }, + local aluminum_ore_matter = { + material = { type = "item", name = "aluminum-ore", amount = 10 }, matter_count = 5, energy_required = 1, - need_stabilizer = false, - unlocked_by_technology = "aluminum-matter-processing" - } -matter.make_recipes(aluminum_ore_matter) + needs_stabilizer = false, + unlocked_by = "aluminum-matter-processing", + } + matter.make_recipes(aluminum_ore_matter) -local alumina_matter = - { - material = { type = "item", name = "alumina", amount = 10 }, + local alumina_matter = { + material = { type = "item", name = "alumina", amount = 10 }, matter_count = 7.5, energy_required = 2, - only_deconversion = true, - need_stabilizer = true, - unlocked_by_technology = "aluminum-matter-processing" - } -matter.make_recipes(alumina_matter) -local aluminum_plate_matter = - { - material = { type = "item", name = "aluminum-plate", amount = 10 }, + -- only_deconversion = true, + needs_stabilizer = true, + unlocked_by = "aluminum-matter-processing", + } + matter.make_deconversion_recipe(alumina_matter) + local aluminum_plate_matter = { + material = { type = "item", name = "aluminum-plate", amount = 10 }, matter_count = 10, energy_required = 3, - only_deconversion = true, - need_stabilizer = true, - unlocked_by_technology = "aluminum-matter-processing" - } -matter.make_recipes(aluminum_plate_matter) + -- only_deconversion = true, + needs_stabilizer = true, + unlocked_by = "aluminum-matter-processing", + } + matter.make_deconversion_recipe(aluminum_plate_matter) end diff --git a/bzaluminum2/data-util.lua b/bzaluminum2/data-util.lua index e69f0d5..fe2226b 100644 --- a/bzaluminum2/data-util.lua +++ b/bzaluminum2/data-util.lua @@ -115,12 +115,12 @@ end function util.k2matter(params) local matter = require("__Krastorio2__/prototypes/libraries/matter") if mods["space-exploration"] then - params.k2matter.need_stabilizer = true + params.k2matter.needs_stabilizer = true end if not params.k2matter.minimum_conversion_quantity then params.k2matter.minimum_conversion_quantity = 10 end - if not data.raw.technology[params.k2matter.unlocked_by_technology] then + if not data.raw.technology[params.k2matter.unlocked_by] then local icon = "" if params.k2baseicon then icon = util.k2assets().."/technologies/matter-"..params.k2baseicon..".png" @@ -132,7 +132,7 @@ function util.k2matter(params) { { type = "technology", - name = params.k2matter.unlocked_by_technology, + name = params.k2matter.unlocked_by, icons = { { @@ -163,11 +163,16 @@ function util.k2matter(params) }, time = 45, }, + effects = {}, localised_name = {"technology-name.k2-conversion", {"item-name."..params.k2matter.item_name}}, }, }) end - matter.make_recipes(params.k2matter) + if params.k2matter.only_deconversion then + matter.make_deconversion_recipe(params.k2matter) + else + matter.make_recipes(params.k2matter) + end end From da3610004611e572ccaeece18c5b74d9b0334e77 Mon Sep 17 00:00:00 2001 From: Simon Brodtmann Date: Sat, 1 Nov 2025 22:56:44 +0100 Subject: [PATCH 2/7] 2.0.3 --- bzaluminum2/changelog.txt | 5 +++++ bzaluminum2/info.json | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/bzaluminum2/changelog.txt b/bzaluminum2/changelog.txt index f243d81..36af3b0 100644 --- a/bzaluminum2/changelog.txt +++ b/bzaluminum2/changelog.txt @@ -1,4 +1,9 @@ --------------------------------------------------------------------------------------------------- +Version: 2.0.3 +Date: 01.11.2025 + Bug Fixes: + - Fix K2 matter integration (thanks pla) +--------------------------------------------------------------------------------------------------- Version: 2.0.2 Date: 22.10.2025 Bug Fixes: diff --git a/bzaluminum2/info.json b/bzaluminum2/info.json index 79b1b04..8df25de 100644 --- a/bzaluminum2/info.json +++ b/bzaluminum2/info.json @@ -1,6 +1,6 @@ { "name": "bzaluminum2", - "version": "2.0.2", + "version": "2.0.3", "factorio_version": "2.0", "title": "Aluminum", "description": "Adds aluminum, alumina, cables, alloys and more to the game.", From 05e340a170587ed1bf878f0c0f8064ffbccf3fc4 Mon Sep 17 00:00:00 2001 From: Simon Brodtmann Date: Tue, 4 Nov 2025 20:48:58 +0100 Subject: [PATCH 3/7] Fix early game technologies with only bzaluminum --- bzaluminum2/aluminum-burner-phase.lua | 14 ++++---------- bzaluminum2/aluminum-recipe.lua | 4 +--- 2 files changed, 5 insertions(+), 13 deletions(-) diff --git a/bzaluminum2/aluminum-burner-phase.lua b/bzaluminum2/aluminum-burner-phase.lua index 28fb76d..02b109b 100644 --- a/bzaluminum2/aluminum-burner-phase.lua +++ b/bzaluminum2/aluminum-burner-phase.lua @@ -14,8 +14,7 @@ if not mods.Krastorio2 and not mods["aai-industry"] then util.add_ingredient("repair-pack", "aluminum-cable", 3) util.set_ingredient("repair-pack", "iron-gear-wheel", 3) - util.add_effect("electronics", { type = "unlock-recipe", recipe = "electronic-circuit" }) - util.add_effect("electronics", { type = "unlock-recipe", recipe = "inserter" }) + util.remove_recipe_effect("electronics", "copper-cable") util.add_effect("electronics", { type = "unlock-recipe", recipe = "long-handed-inserter" }) util.remove_recipe_effect("electronics", "lab") util.remove_recipe_effect("automation", "long-handed-inserter") @@ -23,7 +22,6 @@ if not mods.Krastorio2 and not mods["aai-industry"] then util.set_enabled("inserter", false) util.add_prerequisite("logistic-science-pack", "electronics") util.remove_prerequisite("automation-science-pack", "electronics") - util.add_prerequisite("copper-processing", "automation-science-pack") util.remove_prerequisite("automation-science-pack", "electronics") util.add_effect("steam-power", { type = "unlock-recipe", recipe = "lab" }) util.remove_prerequisite("fast-inserter", "automation-science-pack") @@ -131,13 +129,9 @@ require("compatibility/textplates") -- All customizations or custom unlocks prior to this block util.add_unlock_force("electronics", "electronic-circuit") --- Disabled for now because replace_ingredients_prior_to has an infinite recursion ---util.replace_ingredients_prior_to("electronics", "electronic-circuit", "aluminum-cable") ---util.replace_ingredients_prior_to("copper-processing", "copper-cable", "aluminum-cable") ---util.replace_ingredients_prior_to("copper-processing", "copper-plate", "aluminum-plate") +util.replace_ingredients_prior_to("electronics", "electronic-circuit", "aluminum-cable") +util.replace_ingredients_prior_to("copper-processing", "copper-cable", "aluminum-cable") +util.replace_ingredients_prior_to("copper-processing", "copper-plate", "aluminum-plate") -- Any post-fixes (eg aluminum back to copper) after this block -util.remove_prerequisite("copper-processing", "automation") - - -- End of file diff --git a/bzaluminum2/aluminum-recipe.lua b/bzaluminum2/aluminum-recipe.lua index 0bb653d..301da7e 100644 --- a/bzaluminum2/aluminum-recipe.lua +++ b/bzaluminum2/aluminum-recipe.lua @@ -137,9 +137,7 @@ data:extend({ order = "b-b", }, }) -if mods["aai-industry"] then - util.add_prerequisite("copper-processing", "electricity") -else +if not mods["aai-industry"] then util.add_prerequisite("copper-processing", "automation") end From 81374bf265ae582f17ca689ad79349d4e065d0e2 Mon Sep 17 00:00:00 2001 From: Simon Brodtmann Date: Tue, 4 Nov 2025 20:58:14 +0100 Subject: [PATCH 4/7] Fix early game technologies with Krastorio --- bzaluminum2/aluminum-burner-phase.lua | 3 +++ 1 file changed, 3 insertions(+) diff --git a/bzaluminum2/aluminum-burner-phase.lua b/bzaluminum2/aluminum-burner-phase.lua index 02b109b..c3663fa 100644 --- a/bzaluminum2/aluminum-burner-phase.lua +++ b/bzaluminum2/aluminum-burner-phase.lua @@ -51,6 +51,9 @@ if mods.Krastorio2 then end util.remove_prerequisite("automation", "smelting") -- Bitumen mod + util.remove_prerequisite("logistic-science-pack", "automation-science-pack") + util.add_prerequisite("logistic-science-pack", "electronics") + -- For warptorio2 expansion with K2 util.remove_prerequisite("laboratory", "automation-science-pack") util.set_tech_recipe("laboratory", {{"kr-basic-tech-card", 1}}) From b982103c6bc9b86d6b108653bf46428ef5a5cab3 Mon Sep 17 00:00:00 2001 From: Simon Brodtmann Date: Tue, 4 Nov 2025 21:12:20 +0100 Subject: [PATCH 5/7] Fix early game technologies with AAI Industry --- bzaluminum2/aluminum-burner-phase.lua | 3 +++ 1 file changed, 3 insertions(+) diff --git a/bzaluminum2/aluminum-burner-phase.lua b/bzaluminum2/aluminum-burner-phase.lua index c3663fa..dc3250c 100644 --- a/bzaluminum2/aluminum-burner-phase.lua +++ b/bzaluminum2/aluminum-burner-phase.lua @@ -74,6 +74,9 @@ if mods["aai-industry"] then util.replace_ingredient("motor", "iron-plate", "aluminum-plate") util.replace_ingredient("repair-pack", "copper-plate", "aluminum-plate") util.replace_ingredient("burner-lab", "copper-plate", "aluminum-plate") + util.add_prerequisite("copper-processing", "automation-science-pack") + util.remove_recipe_effect("electricity", "copper-cable") + util.add_effect("copper-processing", { type = "unlock-recipe", recipe = "copper-cable" }) end if mods["aai-industry"] and mods.Krastorio2 then From b6a39a3b0b033a00476ac14418b19bc552f6345b Mon Sep 17 00:00:00 2001 From: Simon Brodtmann Date: Tue, 4 Nov 2025 21:27:35 +0100 Subject: [PATCH 6/7] Fix early game technologies with Krastorio and AAI Industry --- bzaluminum2/aluminum-burner-phase.lua | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/bzaluminum2/aluminum-burner-phase.lua b/bzaluminum2/aluminum-burner-phase.lua index dc3250c..4984502 100644 --- a/bzaluminum2/aluminum-burner-phase.lua +++ b/bzaluminum2/aluminum-burner-phase.lua @@ -20,9 +20,9 @@ if not mods.Krastorio2 and not mods["aai-industry"] then util.remove_recipe_effect("automation", "long-handed-inserter") util.set_enabled("electronic-circuit", false) util.set_enabled("inserter", false) + util.add_prerequisite("automation-science-pack", "copper-processing") + util.remove_prerequisite("automation-science-pack", "electronics") util.add_prerequisite("logistic-science-pack", "electronics") - util.remove_prerequisite("automation-science-pack", "electronics") - util.remove_prerequisite("automation-science-pack", "electronics") util.add_effect("steam-power", { type = "unlock-recipe", recipe = "lab" }) util.remove_prerequisite("fast-inserter", "automation-science-pack") util.add_prerequisite("fast-inserter", "electronics") @@ -44,7 +44,6 @@ if mods.Krastorio2 then util.remove_ingredient("kr-basic-tech-card", "copper-cable") util.add_ingredient("kr-basic-tech-card", "aluminum-cable", 1) - util.add_prerequisite("automation-science-pack", "copper-processing") if mods.bobassembly then util.set_prerequisite("basic-automation", {"kr-automation-core"}) util.set_tech_recipe("basic-automation", {{"kr-basic-tech-card", 1}}) From 3d759145b000b780c95755dba3b22f008a8da55a Mon Sep 17 00:00:00 2001 From: Simon Brodtmann Date: Wed, 5 Nov 2025 10:13:56 +0100 Subject: [PATCH 7/7] 2.0.4 --- bzaluminum2/changelog.txt | 5 +++++ bzaluminum2/info.json | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/bzaluminum2/changelog.txt b/bzaluminum2/changelog.txt index 36af3b0..285b245 100644 --- a/bzaluminum2/changelog.txt +++ b/bzaluminum2/changelog.txt @@ -1,4 +1,9 @@ --------------------------------------------------------------------------------------------------- +Version: 2.0.4 +Date: 05.11.2025 + Bug Fixes: + - Fix early game progression +--------------------------------------------------------------------------------------------------- Version: 2.0.3 Date: 01.11.2025 Bug Fixes: diff --git a/bzaluminum2/info.json b/bzaluminum2/info.json index 8df25de..b5a5435 100644 --- a/bzaluminum2/info.json +++ b/bzaluminum2/info.json @@ -1,6 +1,6 @@ { "name": "bzaluminum2", - "version": "2.0.3", + "version": "2.0.4", "factorio_version": "2.0", "title": "Aluminum", "description": "Adds aluminum, alumina, cables, alloys and more to the game.",