From 3ba05c70c2a094e0a929dd59e5251e96c349a21f Mon Sep 17 00:00:00 2001 From: Simon Brodtmann Date: Tue, 4 Nov 2025 23:15:56 +0100 Subject: [PATCH 1/6] Fix early game technologies with only bzgas --- bzgas2/data-final-fixes.lua | 22 ++++++++++++++++++++-- bzgas2/prototypes/gas-extractor.lua | 2 +- 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/bzgas2/data-final-fixes.lua b/bzgas2/data-final-fixes.lua index ad08a6f..b23574f 100644 --- a/bzgas2/data-final-fixes.lua +++ b/bzgas2/data-final-fixes.lua @@ -30,13 +30,31 @@ if not mods.Krastorio2 and not mods["aai-industry"] and not mods.bzaluminum2 and util.add_ingredient("repair-pack", "copper-cable", 6) util.set_ingredient("repair-pack", "iron-gear-wheel", 3) - util.add_unlock_force("electronics", "electronic-circuit") - util.add_effect("electronics", { type = "unlock-recipe", recipe = "inserter" }) util.add_effect("electronics", { type = "unlock-recipe", recipe = "long-handed-inserter" }) + util.remove_recipe_effect("electronics", "copper-cable") + util.remove_recipe_effect("electronics", "lab") + util.remove_recipe_effect("electronics", "small-electric-pole") util.remove_recipe_effect("automation", "long-handed-inserter") util.set_enabled("electronic-circuit", false) util.set_enabled("inserter", false) + util.set_enabled("copper-cable", true) + util.set_enabled("lab", true) + util.set_enabled("small-electric-pole", true) + util.remove_prerequisite("automation-science-pack", "electronics") + local electronics = data.raw.technology["electronics"] + electronics.research_trigger = nil + electronics.unit = { + count = 10, + time = 10, + ingredients = {{ "automation-science-pack", 1 }} + } + util.remove_prerequisite("fast-inserter", "automation-science-pack") + util.remove_prerequisite("lamp", "automation-science-pack") + util.remove_prerequisite("logistic-science-pack", "automation-science-pack") + util.add_prerequisite("fast-inserter", "electronics") + util.add_prerequisite("lamp", "electronics") util.add_prerequisite("logistic-science-pack", "electronics") + end if not mods.bzaluminum2 and not mods["bzcarbon2"] then util.replace_ingredients_prior_to("electronics", "electronic-circuit", "copper-cable", 2) diff --git a/bzgas2/prototypes/gas-extractor.lua b/bzgas2/prototypes/gas-extractor.lua index 156b547..cd9c3ae 100644 --- a/bzgas2/prototypes/gas-extractor.lua +++ b/bzgas2/prototypes/gas-extractor.lua @@ -54,7 +54,7 @@ data:extend({ name = "gas-extraction", icon = "__bzgas2__/graphics/technology/gas-processing.png", icon_size = 256, - --prerequisites = ge_prereq, + prerequisites = ge_prereq, effects = { {type = "unlock-recipe", recipe = "gas-extractor"}, }, From c3c414f36a77ab480fb0a5647702f33716bdf654 Mon Sep 17 00:00:00 2001 From: Simon Brodtmann Date: Tue, 4 Nov 2025 23:34:11 +0100 Subject: [PATCH 2/6] Fix early game technologies with bzfoundry --- bzgas2/prototypes/bakelite.lua | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/bzgas2/prototypes/bakelite.lua b/bzgas2/prototypes/bakelite.lua index 83a7a9d..7b7ceed 100644 --- a/bzgas2/prototypes/bakelite.lua +++ b/bzgas2/prototypes/bakelite.lua @@ -1,5 +1,10 @@ local util = require("data-util"); +local prereq = {"basic-chemistry"} +if mods["bzfoundry2"] then + table.insert(prereq, "foundry") +end + data:extend({ { type = "item", @@ -30,7 +35,7 @@ data:extend({ name = "bakelite", icon = "__bzgas2__/graphics/technology/bakelite.png", icon_size = 256, - prerequisites = {"basic-chemistry"}, + prerequisites = prereq, effects = { {type = "unlock-recipe", recipe = "bakelite"}, }, From 1b5895b421d84ab90f717fd9236665ac225e94c4 Mon Sep 17 00:00:00 2001 From: Simon Brodtmann Date: Tue, 4 Nov 2025 23:55:58 +0100 Subject: [PATCH 3/6] Fix hand craft only recipe name --- bzgas2/compatibility/electronic-circuit.lua | 1 + 1 file changed, 1 insertion(+) diff --git a/bzgas2/compatibility/electronic-circuit.lua b/bzgas2/compatibility/electronic-circuit.lua index 65995f0..1dc0e02 100644 --- a/bzgas2/compatibility/electronic-circuit.lua +++ b/bzgas2/compatibility/electronic-circuit.lua @@ -27,6 +27,7 @@ if util.me.handcraft() then end local hcec = futil.table.deepcopy(data.raw.recipe["electronic-circuit"]) hcec.name = "electronic-circuit-handcraft-only" + hcec.localized_name = { "item-name.electronic-circuit" } data:extend({hcec}) util.set_icons("electronic-circuit-handcraft-only", { From 6c0876d0c8f5b3b50d5efd1d5ba91310242434a9 Mon Sep 17 00:00:00 2001 From: Simon Brodtmann Date: Wed, 5 Nov 2025 00:22:10 +0100 Subject: [PATCH 4/6] Fix early game technologies with Krastorio --- bzgas2/data-final-fixes.lua | 6 +++--- bzgas2/prototypes/bakelite.lua | 4 +++- bzgas2/prototypes/formaldehyde.lua | 7 ++++++- 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/bzgas2/data-final-fixes.lua b/bzgas2/data-final-fixes.lua index b23574f..dfa6292 100644 --- a/bzgas2/data-final-fixes.lua +++ b/bzgas2/data-final-fixes.lua @@ -9,9 +9,9 @@ util.set_product_amount("se-core-fragment-omni", "gas", 24) -- Fix basic chemical plant fuels for K2 if mods.Krastorio2 and -data.raw["assembling-machine"]["basic-chemical-plant"] and -data.raw["assembling-machine"]["basic-chemical-plant"].energy_source and -data.raw["assembling-machine"]["basic-chemical-plant"].energy_source.fuel_categories then + data.raw["assembling-machine"]["basic-chemical-plant"] and + data.raw["assembling-machine"]["basic-chemical-plant"].energy_source and + data.raw["assembling-machine"]["basic-chemical-plant"].energy_source.fuel_categories then table.insert(data.raw["assembling-machine"]["basic-chemical-plant"].energy_source.fuel_categories , "kr-vehicle-fuel") end diff --git a/bzgas2/prototypes/bakelite.lua b/bzgas2/prototypes/bakelite.lua index 7b7ceed..4597f08 100644 --- a/bzgas2/prototypes/bakelite.lua +++ b/bzgas2/prototypes/bakelite.lua @@ -1,7 +1,9 @@ local util = require("data-util"); local prereq = {"basic-chemistry"} -if mods["bzfoundry2"] then +if mods["Krastorio2"] then + table.insert(prereq, "steel-processing") +elseif mods["bzfoundry2"] then table.insert(prereq, "foundry") end diff --git a/bzgas2/prototypes/formaldehyde.lua b/bzgas2/prototypes/formaldehyde.lua index 36b0be4..66724e3 100644 --- a/bzgas2/prototypes/formaldehyde.lua +++ b/bzgas2/prototypes/formaldehyde.lua @@ -7,6 +7,11 @@ local util = require("data-util"); -- } -- }) +local prereq = {"gas-extraction"} +if mods["Krastorio2"] then + table.insert(prereq, "automation-science-pack") +end + data:extend({ { type = "fluid", @@ -40,7 +45,7 @@ data:extend({ name = "basic-chemistry", icon = "__bzgas2__/graphics/technology/formaldehyde.png", icon_size = 256, - prerequisites = {"gas-extraction"}, + prerequisites = prereq, effects = { {type = "unlock-recipe", recipe = "basic-chemical-plant"}, {type = "unlock-recipe", recipe = "formaldehyde"}, From 46e9a0ce4edaac57d73dedcf9eef77d7f2a31dc9 Mon Sep 17 00:00:00 2001 From: Simon Brodtmann Date: Wed, 5 Nov 2025 09:44:29 +0100 Subject: [PATCH 5/6] Fix early game technologies with AAI Industry --- bzgas2/compatibility/electronic-circuit.lua | 2 +- bzgas2/data-final-fixes.lua | 4 ++++ bzgas2/prototypes/bakelite.lua | 2 ++ bzgas2/prototypes/gas-extractor.lua | 2 +- 4 files changed, 8 insertions(+), 2 deletions(-) diff --git a/bzgas2/compatibility/electronic-circuit.lua b/bzgas2/compatibility/electronic-circuit.lua index 1dc0e02..74a3440 100644 --- a/bzgas2/compatibility/electronic-circuit.lua +++ b/bzgas2/compatibility/electronic-circuit.lua @@ -18,7 +18,7 @@ util.add_ingredient("electronic-circuit", "bakelite", amt) util.set_icons("electronic-circuit", nil) -if util.me.handcraft() then +if util.me.handcraft() and not mods["aai-industry"] then data:extend({{ type = "recipe-category", name = "handcraft-only" }}) for i, character in pairs(data.raw.character) do if character and character.crafting_categories then diff --git a/bzgas2/data-final-fixes.lua b/bzgas2/data-final-fixes.lua index dfa6292..e39b171 100644 --- a/bzgas2/data-final-fixes.lua +++ b/bzgas2/data-final-fixes.lua @@ -15,6 +15,10 @@ if mods.Krastorio2 and table.insert(data.raw["assembling-machine"]["basic-chemical-plant"].energy_source.fuel_categories , "kr-vehicle-fuel") end +if mods["aai-industry"] and not mods["Krastorio2"] then + util.remove_prerequisite("basic-chemistry", "basic-fluid-handling") +end + -- Vanilla burner phase tweaks -- green circuits after electronics -- Electronic circuit recipe set below in compatibility script if not mods.Krastorio2 and not mods["aai-industry"] and not mods.bzaluminum2 and not mods["bzcarbon2"] then diff --git a/bzgas2/prototypes/bakelite.lua b/bzgas2/prototypes/bakelite.lua index 4597f08..e4815d1 100644 --- a/bzgas2/prototypes/bakelite.lua +++ b/bzgas2/prototypes/bakelite.lua @@ -5,6 +5,8 @@ if mods["Krastorio2"] then table.insert(prereq, "steel-processing") elseif mods["bzfoundry2"] then table.insert(prereq, "foundry") +elseif mods["aai-industry"] then + table.insert(prereq, "automation") end data:extend({ diff --git a/bzgas2/prototypes/gas-extractor.lua b/bzgas2/prototypes/gas-extractor.lua index cd9c3ae..e7f3508 100644 --- a/bzgas2/prototypes/gas-extractor.lua +++ b/bzgas2/prototypes/gas-extractor.lua @@ -13,7 +13,7 @@ if mods.Krastorio2 then ge_prereq = {"kr-stone-processing"} elseif mods["aai-industry"] then table.insert(ge_ingredients, {type="item", name="sand", amount=10}) - ge_prereq = {"sand-processing"} + ge_prereq = {"sand-processing", "basic-fluid-handling"} elseif data.raw.item["silica"] and data.raw.technology["silica-processing"] then table.insert(ge_ingredients, {type="item", name="silica", amount=20}) ge_prereq = {"silica-processing"} From 8044c9d846003a8e4be142465135509fa33ab543 Mon Sep 17 00:00:00 2001 From: Simon Brodtmann Date: Wed, 5 Nov 2025 10:12:25 +0100 Subject: [PATCH 6/6] 2.0.3 --- bzgas2/changelog.txt | 5 +++++ bzgas2/info.json | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/bzgas2/changelog.txt b/bzgas2/changelog.txt index 42c0650..b303e3c 100644 --- a/bzgas2/changelog.txt +++ b/bzgas2/changelog.txt @@ -1,4 +1,9 @@ --------------------------------------------------------------------------------------------------- +Version: 2.0.3 +Date: 05.11.2025 + Bug Fixes: + - Fix early game progression +--------------------------------------------------------------------------------------------------- Version: 2.0.2 Date: 22.10.2025 Bug Fixes: diff --git a/bzgas2/info.json b/bzgas2/info.json index ebae08f..bdcec07 100644 --- a/bzgas2/info.json +++ b/bzgas2/info.json @@ -1,6 +1,6 @@ { "name": "bzgas2", - "version": "2.0.2", + "version": "2.0.3", "factorio_version": "2.0", "title": "Natural Gas", "description": "Adds a natural gas resource, along with early game plastic.",