From 813ee5ee3bb70f6c8fe30948d60b08594838e4bf Mon Sep 17 00:00:00 2001 From: CaitSith2 Date: Sat, 24 Sep 2022 02:43:00 -0700 Subject: [PATCH] Factorio: Add explicit support for factory-levels mod. (#1050) * Factorio: Add explicit support for factory-levels mod. * Fix inconsistent space/tabs --- worlds/factorio/Mod.py | 3 ++- worlds/factorio/data/mod/info.json | 7 ++++--- .../factorio/data/mod_template/data-final-fixes.lua | 12 ++++++++++++ 3 files changed, 18 insertions(+), 4 deletions(-) diff --git a/worlds/factorio/Mod.py b/worlds/factorio/Mod.py index 9889e58b..89666ffb 100644 --- a/worlds/factorio/Mod.py +++ b/worlds/factorio/Mod.py @@ -34,7 +34,8 @@ base_info = { "factorio_version": "1.1", "dependencies": [ "base >= 1.1.0", - "? science-not-invited" + "? science-not-invited", + "? factory-levels" ] } diff --git a/worlds/factorio/data/mod/info.json b/worlds/factorio/data/mod/info.json index b93686d0..70a95183 100644 --- a/worlds/factorio/data/mod/info.json +++ b/worlds/factorio/data/mod/info.json @@ -7,7 +7,8 @@ "description": "Integration client for the Archipelago Randomizer", "factorio_version": "1.1", "dependencies": [ - "base >= 1.1.0", - "? science-not-invited" - ] + "base >= 1.1.0", + "? science-not-invited", + "? factory-levels" + ] } diff --git a/worlds/factorio/data/mod_template/data-final-fixes.lua b/worlds/factorio/data/mod_template/data-final-fixes.lua index cc813b2f..70bc1eac 100644 --- a/worlds/factorio/data/mod_template/data-final-fixes.lua +++ b/worlds/factorio/data/mod_template/data-final-fixes.lua @@ -183,6 +183,18 @@ end data.raw["assembling-machine"]["assembling-machine-1"].crafting_categories = table.deepcopy(data.raw["assembling-machine"]["assembling-machine-3"].crafting_categories) data.raw["assembling-machine"]["assembling-machine-2"].crafting_categories = table.deepcopy(data.raw["assembling-machine"]["assembling-machine-3"].crafting_categories) data.raw["assembling-machine"]["assembling-machine-1"].fluid_boxes = table.deepcopy(data.raw["assembling-machine"]["assembling-machine-2"].fluid_boxes) +if mods["factory-levels"] then + -- Factory-Levels allows the assembling machines to get faster (and depending on settings), more productive at crafting products, the more the + -- assembling machine crafts the product. If the machine crafts enough, it may auto-upgrade to the next tier. + for i = 1, 25, 1 do + data.raw["assembling-machine"]["assembling-machine-1-level-" .. i].crafting_categories = table.deepcopy(data.raw["assembling-machine"]["assembling-machine-3"].crafting_categories) + data.raw["assembling-machine"]["assembling-machine-1-level-" .. i].fluid_boxes = table.deepcopy(data.raw["assembling-machine"]["assembling-machine-2"].fluid_boxes) + end + for i = 1, 50, 1 do + data.raw["assembling-machine"]["assembling-machine-2-level-" .. i].crafting_categories = table.deepcopy(data.raw["assembling-machine"]["assembling-machine-3"].crafting_categories) + end +end + data.raw["ammo"]["artillery-shell"].stack_size = 10 {# each randomized tech gets set to be invisible, with new nodes added that trigger those #}