From 8db4982e5b9a5d945851ce8768cc2c1a1f523c3c Mon Sep 17 00:00:00 2001 From: pla Date: Sat, 1 Nov 2025 13:01:21 +0100 Subject: [PATCH 1/4] Fixing K2 matter stuff (#1) Fixed K2 matter generation Fixed Matter tech icon size Sadly the matter conversion recipe icons are not fixed, because the K2 routine doesn't like the 128px icons Check if Matter recipes already exist, error with Them Thar Hills ![image](/attachments/f1ccec6e-768a-425e-b0dc-1691b8d78037) Co-authored-by: pla Reviewed-on: https://git.cacklingfiend.info/cacklingfiend/bzgold2/pulls/1 Co-authored-by: pla Co-committed-by: pla --- bzgold2/data-util.lua | 15 +++++--- bzgold2/matter.lua | 53 +++++++++++++------------- bzgold2/prototypes/enriched-gold.lua | 4 +- bzgold2/prototypes/enriched-silver.lua | 4 +- 4 files changed, 41 insertions(+), 35 deletions(-) diff --git a/bzgold2/data-util.lua b/bzgold2/data-util.lua index 3825ac6..8c0697f 100644 --- a/bzgold2/data-util.lua +++ b/bzgold2/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, }, - localised_name = {"technology-name.k2-conversion", {"item-name."..params.k2matter.item_name}}, + 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 diff --git a/bzgold2/matter.lua b/bzgold2/matter.lua index 10ea30c..728e9da 100644 --- a/bzgold2/matter.lua +++ b/bzgold2/matter.lua @@ -1,30 +1,31 @@ -- Matter recipes for Krastorio2 if mods["Krastorio2"] then - local util = require("data-util"); + local util = require("data-util") - util.k2matter({ - k2matter = { - material = { type = "item", name = "gold-ore", amount = 30 }, - item_name = "gold-ore", - matter_count = 30, - energy_required = 10, - need_stabilizer = false, - unlocked_by_technology = "gold-matter-processing", - }, - k2baseicon = "stone", - icon = {icon = "__bzgold2__/graphics/icons/gold-ore.png", icon_size = 128, scale = 1} - }) - - util.k2matter({ - k2matter = { - material = { type = "item", name = "silver-ore", amount = 8 }, - item_name = "silver-ore", - matter_count = 8, - energy_required = 5, - need_stabilizer = false, - unlocked_by_technology = "silver-matter-processing", - }, - k2baseicon = "stone", - icon = {icon = "__bzgold2__/graphics/icons/silver-ore.png", icon_size = 128, scale = 1} - }) + if not data.raw.recipe["kr-gold-ore-to-matter"] then + util.k2matter({ + k2matter = { + material = { type = "item", name = "gold-ore", amount = 30 }, + item_name = "gold-ore", + matter_count = 30, + energy_required = 10, + needs_stabilizer = false, + unlocked_by = "gold-matter-processing", + }, + icon = { icon = "__bzgold2__/graphics/icons/gold-ore.png", icon_size = 128, scale = 0.5 }, + }) + end + if settings.startup["bzgold-silver"].value then + util.k2matter({ + k2matter = { + material = { type = "item", name = "silver-ore", amount = 8 }, + item_name = "silver-ore", + matter_count = 8, + energy_required = 5, + needs_stabilizer = false, + unlocked_by = "silver-matter-processing", + }, + icon = { icon = "__bzgold2__/graphics/icons/silver-ore.png", icon_size = 128, scale = 0.5 }, + }) + end end diff --git a/bzgold2/prototypes/enriched-gold.lua b/bzgold2/prototypes/enriched-gold.lua index 6190f58..a8d9734 100644 --- a/bzgold2/prototypes/enriched-gold.lua +++ b/bzgold2/prototypes/enriched-gold.lua @@ -1,4 +1,4 @@ -local util = require("data-util"); +local util = require("data-util") if mods.Krastorio2 then @@ -92,7 +92,7 @@ data:extend({ { icon = data.raw.item["gold-ore"].icon, icon_size = data.raw.item["gold-ore"].icon_size, - scale = 0.2, + scale = 0.2 * 64 / (data.raw.item["gold-ore"].icon_size or 64), shift = {0, 4} } }, diff --git a/bzgold2/prototypes/enriched-silver.lua b/bzgold2/prototypes/enriched-silver.lua index c5a8495..0914e19 100644 --- a/bzgold2/prototypes/enriched-silver.lua +++ b/bzgold2/prototypes/enriched-silver.lua @@ -1,4 +1,4 @@ -local util = require("data-util"); +local util = require("data-util") if mods.Krastorio2 and util.me.silver() then data:extend({ @@ -111,7 +111,7 @@ data:extend({ { icon = data.raw.item["silver-ore"].icon, icon_size = data.raw.item["silver-ore"].icon_size, - scale = 0.2, + scale = 0.2 * 64 / (data.raw.item["silver-ore"].icon_size or 64), shift = {0, 4} } }, From 04a1e986ddb5e68f4b0f0c0b6d508de3a7e0fde6 Mon Sep 17 00:00:00 2001 From: Simon Brodtmann Date: Sat, 1 Nov 2025 13:01:42 +0100 Subject: [PATCH 2/4] Fix booleans being strings --- bzgold2/data-util.lua | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bzgold2/data-util.lua b/bzgold2/data-util.lua index 8c0697f..a6fc6c0 100644 --- a/bzgold2/data-util.lua +++ b/bzgold2/data-util.lua @@ -1193,8 +1193,8 @@ function util.replace_ingredients_prior_to(tech, old, new, multiplier) end util.remove_prior_unlocks(tech, old) for i, recipe in pairs(data.raw.recipe) do - if (recipe.enabled and recipe.enabled ~= 'false') - and (not recipe.hidden or recipe.hidden == 'true') -- probably don't want to change hidden recipes + if (recipe.enabled and recipe.enabled ~= false) + and (not recipe.hidden or recipe.hidden == true) -- probably don't want to change hidden recipes and string.sub(recipe.name, 1, 3) ~= 'se-' -- have to exlude SE in general :( then -- log("BZZZ due to 'enabled' replacing " .. old .. " with " .. new .." in " .. recipe.name) -- Handy Debug :| From db3137985e8f60c9b94be8e428040fc3543ca7a7 Mon Sep 17 00:00:00 2001 From: Simon Brodtmann Date: Sat, 1 Nov 2025 22:53:22 +0100 Subject: [PATCH 3/4] 2.0.2 --- bzgold2/changelog.txt | 5 +++++ bzgold2/info.json | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/bzgold2/changelog.txt b/bzgold2/changelog.txt index 4d308d3..28f528b 100644 --- a/bzgold2/changelog.txt +++ b/bzgold2/changelog.txt @@ -1,4 +1,9 @@ --------------------------------------------------------------------------------------------------- +Version: 2.0.2 +Date: 01.11.2025 + Bug Fixes: + - Fix K2 matter integration +--------------------------------------------------------------------------------------------------- Version: 2.0.1 Date: 21.10.2025 Changes: diff --git a/bzgold2/info.json b/bzgold2/info.json index 9cbe7ad..a4698fd 100644 --- a/bzgold2/info.json +++ b/bzgold2/info.json @@ -1,6 +1,6 @@ { "name": "bzgold2", - "version": "2.0.1", + "version": "2.0.2", "factorio_version": "2.0", "title": "Noble Metals", "description": "Adds silver, gold, platinum, palladium and more to the base game. Reworks processing units.", From 99cab50b68e9b7a810ec069eaee219d6d139c6a8 Mon Sep 17 00:00:00 2001 From: Simon Brodtmann Date: Sat, 1 Nov 2025 23:00:22 +0100 Subject: [PATCH 4/4] Forgot thanks --- bzgold2/changelog.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bzgold2/changelog.txt b/bzgold2/changelog.txt index 28f528b..fcc1dd7 100644 --- a/bzgold2/changelog.txt +++ b/bzgold2/changelog.txt @@ -2,7 +2,7 @@ Version: 2.0.2 Date: 01.11.2025 Bug Fixes: - - Fix K2 matter integration + - Fix K2 matter integration (thanks pla) --------------------------------------------------------------------------------------------------- Version: 2.0.1 Date: 21.10.2025