From e7c319c835a673f69a3191b676846756475faa13 Mon Sep 17 00:00:00 2001 From: Brevven Date: Wed, 28 Sep 2022 20:02:52 -0700 Subject: [PATCH] minor tweaks, advanced belts --- aluminum-recipe-updates.lua | 4 ++++ aluminum-recipe.lua | 7 ++++++- changelog.txt | 7 +++++++ data-final-fixes.lua | 6 ++++++ data-util.lua | 33 +++++++++++++++++++++++++++++++++ info.json | 2 +- 6 files changed, 57 insertions(+), 2 deletions(-) diff --git a/aluminum-recipe-updates.lua b/aluminum-recipe-updates.lua index 001b019..22ac84f 100644 --- a/aluminum-recipe-updates.lua +++ b/aluminum-recipe-updates.lua @@ -224,6 +224,10 @@ util.replace_ingredient("extreme-fast-belt", "express-transport-belt", "aluminum util.replace_ingredient("extreme-fast-underground-belt", "express-underground-belt", "aluminum-2219", 100) util.replace_ingredient("extreme-fast-belt-loader", "express-transport-belt-loader", "aluminum-2219", 50) +-- Advanced belts +util.add_ingredient("ultimate-belt", "aluminum-2219", 10) +util.add_ingredient("ultimate-underground", "aluminum-2219", 40) + -- Bob's assembling machines if mods.bobassembly then util.replace_ingredient("burner-assembling-machine", "iron-plate", "aluminum-plate") diff --git a/aluminum-recipe.lua b/aluminum-recipe.lua index e37a7ba..75fb04b 100644 --- a/aluminum-recipe.lua +++ b/aluminum-recipe.lua @@ -151,10 +151,15 @@ data:extend({ ingredients = mods.Krastorio2 and {{"basic-tech-card", 1}} or {{"automation-science-pack", 1}}, }, - prerequisites = {"automation"}, + prerequisites = {}, order = "b-b", }, }) +if mods["aai-industry"] then + util.add_prerequisite("copper-processing", "electricity") +else + util.add_prerequisite("copper-processing", "automation") +end data:extend({ { diff --git a/changelog.txt b/changelog.txt index 70a3c3d..e20c814 100644 --- a/changelog.txt +++ b/changelog.txt @@ -1,4 +1,11 @@ --------------------------------------------------------------------------------------------------- +Version: 0.4.13 +Date: 2022-08-23 + Changes: + - Minor tech tree tweaks for some mod loadouts. + - deep core mining focused recipe balance tweak + - Recipe compatibility with new Advanced Belts mod +--------------------------------------------------------------------------------------------------- Version: 0.4.12 Date: 2022-08-22 Fixes: diff --git a/data-final-fixes.lua b/data-final-fixes.lua index 33e9cb8..1a2627c 100644 --- a/data-final-fixes.lua +++ b/data-final-fixes.lua @@ -16,6 +16,12 @@ if mods["space-exploration"] then util.add_to_product("se-core-fragment-omni", "aluminum-ore", -2) end +-- vtk deep core mining balance +util.add_to_product("vtk-deepcore-mining-ore-chunk-refining-aluminum-ore-focus", "vtk-deepcore-mining-aluminum-ore-chunk", 20) +util.add_to_product("vtk-deepcore-mining-ore-chunk-refining", "vtk-deepcore-mining-aluminum-ore-chunk", 10) +util.add_to_product("vtk-deepcore-mining-ore-chunk-refining-no-uranium", "vtk-deepcore-mining-aluminum-ore-chunk", 10) +util.set_vtk_dcm_ingredients() + if mods.bzsilicon then for i, entity in pairs(data.raw.furnace) do if entity.result_inventory_size ~= nil and entity.result_inventory_size < 2 and util.contains(entity.crafting_categories, "smelting") then diff --git a/data-util.lua b/data-util.lua index b0fb612..cd2148a 100644 --- a/data-util.lua +++ b/data-util.lua @@ -1,6 +1,7 @@ -- WARNING WARNING WARNING -- This file will be overwritten in mod zipfiles, edit bzlib/data-util.lua -- WARNING WARNING WARNING +-- local me = require("me") local util = {} @@ -1149,4 +1150,36 @@ function util.add_unlock_force(technology_name, recipe) util.add_unlock(technology_name, recipe) end +-- sum the products of a recipe +function util.sum_products(recipe_name) + -- this is going to end up approximate in some cases, integer division is probs fine + if data.raw.recipe[recipe_name] then + local recipe = data.raw.recipe[recipe_name] + if not recipe.results then return recipe.result_count end + local sum = 0 + for i, result in pairs(recipe.results) do + local amt = 0 + if result[2] then amt = result[2] + elseif result.amount then amt = result.amount + elseif result.amount_min then amt = (result.amount_min + result.amount_max)/2 + end + if result.probability then amt = amt * result.probability end + sum = sum + amt + end + return sum + end + return 0 +end + +function util.set_vtk_dcm_ingredients() + if mods["vtk-deep-core-mining"] then + local sum = util.sum_products("vtk-deepcore-mining-ore-chunk-refining") + log("setting vtk deepcore based on " .. serpent.dump(sum) .. " to " ..serpent.dump(sum*0.8)) + util.set_ingredient("vtk-deepcore-mining-ore-chunk-refining", "vtk-deepcore-mining-ore-chunk", sum * 0.8) + local sum = 1+util.sum_products("vtk-deepcore-mining-ore-chunk-refining-no-uranium") + log("setting vtk deepcore no uranium to " .. serpent.dump(sum)) + util.set_ingredient("vtk-deepcore-mining-ore-chunk-refining-no-uranium", "vtk-deepcore-mining-ore-chunk", sum) + end +end + return util diff --git a/info.json b/info.json index 7b42936..814e5dc 100644 --- a/info.json +++ b/info.json @@ -1,6 +1,6 @@ { "name": "bzaluminum", - "version": "0.4.12", + "version": "0.4.13", "factorio_version": "1.1", "title": "Aluminum", "author": "Brevven",