diff --git a/bzgas2/changelog.txt b/bzgas2/changelog.txt index b303e3c..42c0650 100644 --- a/bzgas2/changelog.txt +++ b/bzgas2/changelog.txt @@ -1,9 +1,4 @@ --------------------------------------------------------------------------------------------------- -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/compatibility/electronic-circuit.lua b/bzgas2/compatibility/electronic-circuit.lua index e1f9aef..65995f0 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() and not mods["aai-industry"] then +if util.me.handcraft() 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 @@ -27,7 +27,6 @@ if util.me.handcraft() and not mods["aai-industry"] then end local hcec = futil.table.deepcopy(data.raw.recipe["electronic-circuit"]) hcec.name = "electronic-circuit-handcraft-only" - hcec.localised_name = { "item-name.electronic-circuit" } data:extend({hcec}) util.set_icons("electronic-circuit-handcraft-only", { diff --git a/bzgas2/data-final-fixes.lua b/bzgas2/data-final-fixes.lua index e39b171..70ec7e8 100644 --- a/bzgas2/data-final-fixes.lua +++ b/bzgas2/data-final-fixes.lua @@ -2,23 +2,19 @@ require("stacking") require("modules") require("compatibility/ir2") -local util = require("data-util"); +local util = require("__bzgas2__/data-util") -- core mining balancing 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 -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 @@ -34,31 +30,22 @@ 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) + -- New for 2.0 (Evilpla) + util.remove_prerequisite("automation", "automation-science-pack") + util.set_tech_trigger("automation", { type = "mine-entity", entity = "coal" }) + util.set_tech_trigger("gas-extraction", { type = "craft-item", item = "copper-plate" }) + util.set_tech_trigger("basic-chemistry", { type = "mine-entity", entity = "gas" }) + util.set_tech_trigger("bakelite", { type = "craft-fluid", fluid = "formaldehyde" }) + util.set_tech_trigger("electronics", { type = "craft-item", item = "bakelite" }) 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") + -- TODO: cleanup + -- util.add_unlock_force("electronics", "electronic-circuit") + -- util.add_effect("electronics", { type = "unlock-recipe", recipe = "inserter" }) + -- util.set_enabled("electronic-circuit", false) + -- util.set_enabled("inserter", false) + -- 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/data-util.lua b/bzgas2/data-util.lua index ff75c36..5dbd855 100644 --- a/bzgas2/data-util.lua +++ b/bzgas2/data-util.lua @@ -1267,4 +1267,13 @@ function util.set_vtk_dcm_ingredients() end end +-- Set technology trigger +function util.set_tech_trigger(technology_name, trigger) + local technology = data.raw.technology[technology_name] + if technology then + technology.unit = nil + technology.research_trigger = trigger + end +end + return util diff --git a/bzgas2/data.lua b/bzgas2/data.lua index 26625fe..6c2e79d 100644 --- a/bzgas2/data.lua +++ b/bzgas2/data.lua @@ -1,7 +1,7 @@ require("prototypes/gas") require("prototypes/gas-extractor") -require("prototypes/phenol") require("prototypes/formaldehyde") +require("prototypes/phenol") require("prototypes/bakelite") require("prototypes/basic-chemical-plant") require("prototypes/k2-recipe") diff --git a/bzgas2/info.json b/bzgas2/info.json index bdcec07..ebae08f 100644 --- a/bzgas2/info.json +++ b/bzgas2/info.json @@ -1,6 +1,6 @@ { "name": "bzgas2", - "version": "2.0.3", + "version": "2.0.2", "factorio_version": "2.0", "title": "Natural Gas", "description": "Adds a natural gas resource, along with early game plastic.", diff --git a/bzgas2/matter.lua b/bzgas2/matter.lua index acf60cf..2b5e943 100644 --- a/bzgas2/matter.lua +++ b/bzgas2/matter.lua @@ -17,9 +17,10 @@ data:extend( { icon = "__bzgas2__/graphics/icons/gas.png", icon_size = 128, - scale = 1.4, + scale = 0.7, } }, + effects ={}, prerequisites = {"kr-matter-processing"}, unit = { @@ -40,8 +41,8 @@ local gas_ore_matter = material = { type = "fluid", name = "gas", amount = 100 }, matter_count = 5, energy_required = 1, - need_stabilizer = false, - unlocked_by_technology = "gas-matter-processing" + needs_stabilizer = false, + unlocked_by = "gas-matter-processing" } matter.make_recipes(gas_ore_matter) end diff --git a/bzgas2/prototypes/bakelite.lua b/bzgas2/prototypes/bakelite.lua index e4815d1..1b15bd2 100644 --- a/bzgas2/prototypes/bakelite.lua +++ b/bzgas2/prototypes/bakelite.lua @@ -1,14 +1,5 @@ local util = require("data-util"); -local prereq = {"basic-chemistry"} -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({ { type = "item", @@ -24,6 +15,7 @@ data:extend({ name = "bakelite", category = "chemistry", main_product = "bakelite", + allow_productivity = true, enabled = false, ingredients = { {type = "item", name = util.me.use_phenol() and "phenol" or "coal", amount = 1}, @@ -39,7 +31,7 @@ data:extend({ name = "bakelite", icon = "__bzgas2__/graphics/technology/bakelite.png", icon_size = 256, - prerequisites = prereq, + prerequisites = {"basic-chemistry"}, effects = { {type = "unlock-recipe", recipe = "bakelite"}, }, diff --git a/bzgas2/prototypes/formaldehyde.lua b/bzgas2/prototypes/formaldehyde.lua index 66724e3..3880d8b 100644 --- a/bzgas2/prototypes/formaldehyde.lua +++ b/bzgas2/prototypes/formaldehyde.lua @@ -1,4 +1,4 @@ -local util = require("data-util"); +local util = require("data-util") -- data:extend({ -- { @@ -7,15 +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", name = "formaldehyde", + subgroup = "fluid", default_temperature = 25, heat_capacity = "0.1kJ", fuel_value = "0.5kJ", @@ -45,7 +41,7 @@ data:extend({ name = "basic-chemistry", icon = "__bzgas2__/graphics/technology/formaldehyde.png", icon_size = 256, - prerequisites = prereq, + prerequisites = {"gas-extraction"}, effects = { {type = "unlock-recipe", recipe = "basic-chemical-plant"}, {type = "unlock-recipe", recipe = "formaldehyde"}, diff --git a/bzgas2/prototypes/gas-extractor.lua b/bzgas2/prototypes/gas-extractor.lua index e7f3508..d749ae7 100644 --- a/bzgas2/prototypes/gas-extractor.lua +++ b/bzgas2/prototypes/gas-extractor.lua @@ -1,4 +1,4 @@ -local util = require("data-util"); +local util = require("data-util") local futil = require("util") local ge_ingredients = { @@ -13,10 +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", "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"} + ge_prereq = {"sand-processing"} end drilling_rig_circuit_connector_definitions = circuit_connector_definitions.create_vector @@ -46,7 +43,7 @@ data:extend({ type = "recipe", name = "gas-extractor", results = {{ type = "item", name = "gas-extractor", amount = 1}}, - enabled = false, -- TODO change + enabled = false, ingredients = ge_ingredients, }, { @@ -87,11 +84,12 @@ data:extend({ }, output_fluid_box = { - volume = 1000, + volume = 100, pipe_covers = pipecoverspictures(), pipe_connections = { { + flow_direction = "output", direction = defines.direction.north, positions = { {0, -1}, {1, 0}, {0, 1}, {-1, 0} } } diff --git a/bzgas2/prototypes/gas.lua b/bzgas2/prototypes/gas.lua index 3a9325c..c394409 100644 --- a/bzgas2/prototypes/gas.lua +++ b/bzgas2/prototypes/gas.lua @@ -1,6 +1,6 @@ -local resource_autoplace = require('resource-autoplace'); +local resource_autoplace = require('resource-autoplace') -local util = require("data-util"); +local util = require("data-util") local futil = require("util") data.raw.planet.nauvis.map_gen_settings.autoplace_controls["gas"] = {} @@ -104,6 +104,7 @@ data:extend({ { type = "fluid", name = "gas", + subgroup = "fluid", default_temperature = 25, heat_capacity = "0.1kJ", fuel_value = "1000kJ", diff --git a/bzgas2/prototypes/phenol.lua b/bzgas2/prototypes/phenol.lua index 538bada..ad83ed6 100644 --- a/bzgas2/prototypes/phenol.lua +++ b/bzgas2/prototypes/phenol.lua @@ -1,4 +1,4 @@ -local util = require("data-util"); +local util = require("data-util") if util.me.use_phenol() then @@ -66,13 +66,8 @@ if data.raw.item[mods["Krastorio2"] and "kr-coke" or "coke"] then } }) end - if mods.Krastorio2 then - util.add_effect("steel-processing", {type="unlock-recipe", recipe="phenol"}) - elseif data.raw.item["foundry"] then - util.add_effect("foundry", {type="unlock-recipe", recipe="phenol"}) - else - util.add_effect("basic-chemistry", {type="unlock-recipe", recipe="phenol"}) - end + + util.add_effect("basic-chemistry", {type="unlock-recipe", recipe="phenol"}) if mods.Krastorio2 then light_oil_icon = { icon = "__Krastorio2Assets__/icons/fluids/light-oil.png", icon_size = 64, icon_mipmaps = 4, scale=0.25, shift={-8,-8}}