Compare commits

...

2 commits

Author SHA1 Message Date
pla
3a045a5cba
Fix K2 matter recipe generation and tech icon 2025-10-28 10:04:49 +01:00
pla
3d15a431f2
Fix early tech tree without K2 2025-10-28 09:16:11 +01:00
7 changed files with 38 additions and 25 deletions

View file

@ -2,7 +2,7 @@ require("stacking")
require("modules") require("modules")
require("compatibility/ir2") require("compatibility/ir2")
local util = require("data-util"); local util = require("__bzgas2__/data-util")
-- core mining balancing -- core mining balancing
util.set_product_amount("se-core-fragment-omni", "gas", 24) util.set_product_amount("se-core-fragment-omni", "gas", 24)
@ -30,13 +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.add_ingredient("repair-pack", "copper-cable", 6)
util.set_ingredient("repair-pack", "iron-gear-wheel", 3) util.set_ingredient("repair-pack", "iron-gear-wheel", 3)
util.add_unlock_force("electronics", "electronic-circuit") -- New for 2.0 (Evilpla)
util.add_effect("electronics", { type = "unlock-recipe", recipe = "inserter" }) 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.add_effect("electronics", { type = "unlock-recipe", recipe = "long-handed-inserter" })
util.remove_recipe_effect("automation", "long-handed-inserter") util.remove_recipe_effect("automation", "long-handed-inserter")
util.set_enabled("electronic-circuit", false)
util.set_enabled("inserter", false) -- TODO: cleanup
util.add_prerequisite("logistic-science-pack", "electronics") -- 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 end
if not mods.bzaluminum2 and not mods["bzcarbon2"] then if not mods.bzaluminum2 and not mods["bzcarbon2"] then
util.replace_ingredients_prior_to("electronics", "electronic-circuit", "copper-cable", 2) util.replace_ingredients_prior_to("electronics", "electronic-circuit", "copper-cable", 2)

View file

@ -1267,4 +1267,13 @@ function util.set_vtk_dcm_ingredients()
end end
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 return util

View file

@ -1,7 +1,7 @@
require("prototypes/gas") require("prototypes/gas")
require("prototypes/gas-extractor") require("prototypes/gas-extractor")
require("prototypes/phenol")
require("prototypes/formaldehyde") require("prototypes/formaldehyde")
require("prototypes/phenol")
require("prototypes/bakelite") require("prototypes/bakelite")
require("prototypes/basic-chemical-plant") require("prototypes/basic-chemical-plant")
require("prototypes/k2-recipe") require("prototypes/k2-recipe")

View file

@ -17,9 +17,10 @@ data:extend(
{ {
icon = "__bzgas2__/graphics/icons/gas.png", icon = "__bzgas2__/graphics/icons/gas.png",
icon_size = 128, icon_size = 128,
scale = 1.4, scale = 0.7,
} }
}, },
effects ={},
prerequisites = {"kr-matter-processing"}, prerequisites = {"kr-matter-processing"},
unit = unit =
{ {
@ -40,8 +41,8 @@ local gas_ore_matter =
material = { type = "fluid", name = "gas", amount = 100 }, material = { type = "fluid", name = "gas", amount = 100 },
matter_count = 5, matter_count = 5,
energy_required = 1, energy_required = 1,
need_stabilizer = false, needs_stabilizer = false,
unlocked_by_technology = "gas-matter-processing" unlocked_by = "gas-matter-processing"
} }
matter.make_recipes(gas_ore_matter) matter.make_recipes(gas_ore_matter)
end end

View file

@ -15,6 +15,7 @@ data:extend({
name = "bakelite", name = "bakelite",
category = "chemistry", category = "chemistry",
main_product = "bakelite", main_product = "bakelite",
allow_productivity = true,
enabled = false, enabled = false,
ingredients = { ingredients = {
{type = "item", name = util.me.use_phenol() and "phenol" or "coal", amount = 1}, {type = "item", name = util.me.use_phenol() and "phenol" or "coal", amount = 1},

View file

@ -1,4 +1,4 @@
local util = require("data-util"); local util = require("data-util")
local futil = require("util") local futil = require("util")
local ge_ingredients = { local ge_ingredients = {
@ -14,9 +14,6 @@ if mods.Krastorio2 then
elseif mods["aai-industry"] then elseif mods["aai-industry"] then
table.insert(ge_ingredients, {type="item", name="sand", amount=10}) table.insert(ge_ingredients, {type="item", name="sand", amount=10})
ge_prereq = {"sand-processing"} ge_prereq = {"sand-processing"}
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"}
end end
drilling_rig_circuit_connector_definitions = circuit_connector_definitions.create_vector drilling_rig_circuit_connector_definitions = circuit_connector_definitions.create_vector
@ -46,7 +43,7 @@ data:extend({
type = "recipe", type = "recipe",
name = "gas-extractor", name = "gas-extractor",
results = {{ type = "item", name = "gas-extractor", amount = 1}}, results = {{ type = "item", name = "gas-extractor", amount = 1}},
enabled = false, -- TODO change enabled = false,
ingredients = ge_ingredients, ingredients = ge_ingredients,
}, },
{ {
@ -54,7 +51,7 @@ data:extend({
name = "gas-extraction", name = "gas-extraction",
icon = "__bzgas2__/graphics/technology/gas-processing.png", icon = "__bzgas2__/graphics/technology/gas-processing.png",
icon_size = 256, icon_size = 256,
--prerequisites = ge_prereq, prerequisites = ge_prereq,
effects = { effects = {
{type = "unlock-recipe", recipe = "gas-extractor"}, {type = "unlock-recipe", recipe = "gas-extractor"},
}, },
@ -87,11 +84,12 @@ data:extend({
}, },
output_fluid_box = output_fluid_box =
{ {
volume = 1000, volume = 100,
pipe_covers = pipecoverspictures(), pipe_covers = pipecoverspictures(),
pipe_connections = pipe_connections =
{ {
{ {
flow_direction = "output",
direction = defines.direction.north, direction = defines.direction.north,
positions = { {0, -1}, {1, 0}, {0, 1}, {-1, 0} } positions = { {0, -1}, {1, 0}, {0, 1}, {-1, 0} }
} }

View file

@ -1,4 +1,4 @@
local util = require("data-util"); local util = require("data-util")
if util.me.use_phenol() then if util.me.use_phenol() then
@ -66,13 +66,8 @@ if data.raw.item[mods["Krastorio2"] and "kr-coke" or "coke"] then
} }
}) })
end end
if mods.Krastorio2 then
util.add_effect("steel-processing", {type="unlock-recipe", recipe="phenol"}) util.add_effect("basic-chemistry", {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
if mods.Krastorio2 then 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}} light_oil_icon = { icon = "__Krastorio2Assets__/icons/fluids/light-oil.png", icon_size = 64, icon_mipmaps = 4, scale=0.25, shift={-8,-8}}