From b746a7c88ce11ad57b0810c20da0d9a3e6585cf7 Mon Sep 17 00:00:00 2001 From: chromebomb Date: Mon, 1 Sep 2025 12:35:06 +0200 Subject: [PATCH 01/16] fix: add final fixes for Lignumis and Alien Biomes compatibility (#7) refer to: https://discord.com/channels/1327043776715292773/1327045033077248021/1400725705867919371 Added a compatibility fix for alien biomes and lignumis. Changes: - added back the vanilla fertile tiles tha Alien Biomes remove to the tile restrictions of trees for manual and world gen spawning and planting of trees. - retains Lignumis' aesthetics of using the vanilla tiles and Nauvis' Alien Biomes - able to plant and spawn trees in Lignumis now when Alien Biomes is also enabled ps. this is the first time I contributed/made a mod for factorio, if there is anything to be improved on the syntaxes and anything do let me know. Co-authored-by: chromebomb Reviewed-on: https://git.cacklingfiend.info/cacklingfiend/lignumis/pulls/7 Co-authored-by: chromebomb Co-committed-by: chromebomb --- .../compatibility/alien-biomes-final.lua | 67 +++++++++++++++++++ .../prototypes/compatibility/alien-biomes.lua | 1 + lignumis/prototypes/compatibility/final.lua | 1 + 3 files changed, 69 insertions(+) create mode 100644 lignumis/prototypes/compatibility/alien-biomes-final.lua diff --git a/lignumis/prototypes/compatibility/alien-biomes-final.lua b/lignumis/prototypes/compatibility/alien-biomes-final.lua new file mode 100644 index 0000000..d90c64b --- /dev/null +++ b/lignumis/prototypes/compatibility/alien-biomes-final.lua @@ -0,0 +1,67 @@ +-- Lignumis + Alien Biomes Compatibility - Final Fixes +-- +-- This runs AFTER alien-biomes data-updates.lua to ensure our fixes aren't overridden +-- Load order: data.lua -> data-updates.lua -> data-final-fixes.lua (THIS FILE) + +if not mods["alien-biomes"] then + return +end + +-- Define Lignumis grass tiles (from mapgen.lua) +local lignumis_grass_tiles = { + "grass-1", + "grass-2", + "grass-3", + "grass-4", + "natural-gold-soil" +} + +-- Fix tree plant for manual planting on Lignumis grass tiles +local tree_plant = data.raw.plant["tree-plant"] +if mods["Diversitree"] then + tree_plant = data.raw.plant["s6xdvt-fake-tree"] +end + +if tree_plant then + for _, tile in pairs(lignumis_grass_tiles) do + local already_present = false + for _, existing_tile in pairs(tree_plant.autoplace.tile_restriction) do + if existing_tile == tile then + already_present = true + break + end + end + if not already_present then + table.insert(tree_plant.autoplace.tile_restriction, tile) + end + end +end + +-- Fix tree autoplace restrictions for natural tree spawning +for _, tree in pairs(data.raw.tree) do + if tree.autoplace and tree.autoplace.tile_restriction then + -- Skip gold stromatolites - they should remain exclusive to natural-gold-soil + local is_gold_stromatolite = tree.name and (tree.name:find("stromatolite") or tree.name:find("gold")) + + if not is_gold_stromatolite then + -- Check if Lignumis grass tiles are missing + local has_lignumis_tiles = false + for _, existing_tile in pairs(tree.autoplace.tile_restriction) do + for _, lignumis_tile in pairs(lignumis_grass_tiles) do + if existing_tile == lignumis_tile then + has_lignumis_tiles = true + break + end + end + if has_lignumis_tiles then break end + end + + -- Add Lignumis grass tiles if missing + if not has_lignumis_tiles then + for _, tile_name in pairs(lignumis_grass_tiles) do + table.insert(tree.autoplace.tile_restriction, tile_name) + end + end + end + end +end diff --git a/lignumis/prototypes/compatibility/alien-biomes.lua b/lignumis/prototypes/compatibility/alien-biomes.lua index cd6813c..87581ee 100644 --- a/lignumis/prototypes/compatibility/alien-biomes.lua +++ b/lignumis/prototypes/compatibility/alien-biomes.lua @@ -6,6 +6,7 @@ settings["small-rock"] = nil settings["tiny-rock"] = nil -- Fix trees not being plantable on Alien Biomes tiles +-- Note: Additional tree fixes for Lignumis grass tiles are handled in alien-biomes-final.lua local tile_restriction = data.raw["plant"]["tree-plant"].autoplace.tile_restriction for _, tile in pairs(alien_biomes.all_tiles()) do if tile.tags and (table.contains(tile.tags, "dirt") or table.contains(tile.tags, "grass")) then diff --git a/lignumis/prototypes/compatibility/final.lua b/lignumis/prototypes/compatibility/final.lua index db0c1dd..dfaf912 100644 --- a/lignumis/prototypes/compatibility/final.lua +++ b/lignumis/prototypes/compatibility/final.lua @@ -1,5 +1,6 @@ require("aai-loaders-final") require("any-planet-start-final") +require("alien-biomes-final") if not data.raw.technology["legendary-quality"] then table.removeValue(data.raw.technology["quality-assembler"].prerequisites, "legendary-quality") From 3fb93faea514d3e9ae841fc35ca141955a5c3793 Mon Sep 17 00:00:00 2001 From: Simon Brodtmann Date: Tue, 2 Sep 2025 10:34:22 +0200 Subject: [PATCH 02/16] Lumber mill can be built on Vulcanus --- lignumis/prototypes/content/lumber-mill.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lignumis/prototypes/content/lumber-mill.lua b/lignumis/prototypes/content/lumber-mill.lua index 3ac959d..0bb904c 100644 --- a/lignumis/prototypes/content/lumber-mill.lua +++ b/lignumis/prototypes/content/lumber-mill.lua @@ -25,7 +25,7 @@ LumberMill.EntityBuilder:new() surface_conditions = { { property = has_oxygen and "oxygen" or "pressure", - min = 10 + min = 3 }, { property = "gravity", From e14789ee81a03b181ba26cf21b68b8da6605b9fd Mon Sep 17 00:00:00 2001 From: Simon Brodtmann Date: Tue, 2 Sep 2025 10:40:55 +0200 Subject: [PATCH 03/16] 1.0.62 --- lignumis/changelog.txt | 7 +++++++ lignumis/info.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/lignumis/changelog.txt b/lignumis/changelog.txt index 697635c..7083de4 100644 --- a/lignumis/changelog.txt +++ b/lignumis/changelog.txt @@ -1,4 +1,11 @@ --------------------------------------------------------------------------------------------------- +Version: 1.0.62 +Date: 02.09.2025 + Changes: + - Add spanish locales (thanks DFOXpro) + - Add compatibility for Alien Biomes (thanks Chromebomb) + - The lumber mill can be built on Vulcanus again +--------------------------------------------------------------------------------------------------- Version: 1.0.61 Date: 29.08.2025 Changes: diff --git a/lignumis/info.json b/lignumis/info.json index dcb6c17..14beab0 100644 --- a/lignumis/info.json +++ b/lignumis/info.json @@ -1,6 +1,6 @@ { "name": "lignumis", - "version": "1.0.61", + "version": "1.0.62", "title": "Lignumis", "description": "Dive into the world of Lignumis, a moon of Nauvis offering only the most basic technologies.", "author": "cackling fiend", From 014eed03aa9a9c5300c105e74eea093d9982294f Mon Sep 17 00:00:00 2001 From: Simon Brodtmann Date: Tue, 9 Sep 2025 19:09:32 +0200 Subject: [PATCH 04/16] Fix vanilla more item weights --- lignumis/prototypes/integrations/vanilla.lua | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/lignumis/prototypes/integrations/vanilla.lua b/lignumis/prototypes/integrations/vanilla.lua index 16b0477..ac6dd49 100644 --- a/lignumis/prototypes/integrations/vanilla.lua +++ b/lignumis/prototypes/integrations/vanilla.lua @@ -339,11 +339,24 @@ end -- Fix item weights -local function set_default_weight(item, items_per_rocket) - data.raw.item[item].weight = data.raw.item[item].weight or 1000 * kg / items_per_rocket +local function set_default_weight(item, items_per_rocket, type) + data.raw[type or "item"][item].weight = data.raw[type or "item"][item].weight or 1000 * kg / items_per_rocket end set_default_weight("electronic-circuit", 2000) set_default_weight("advanced-circuit", 1000) set_default_weight("processing-unit", 300) set_default_weight("low-density-structure", 200) -set_default_weight("rocket-fuel", 100) \ No newline at end of file +set_default_weight("rocket-fuel", 100) +set_default_weight("inserter", 50) +set_default_weight("fast-inserter", 50) +set_default_weight("electric-mining-drill", 50) +set_default_weight("pumpjack", 20) +set_default_weight("repair-pack", 100, "repair-tool") +set_default_weight("big-electric-pole", 50) +set_default_weight("assembling-machine-1", 50) +set_default_weight("assembling-machine-2", 50) +set_default_weight("oil-refinery", 10) +set_default_weight("accumulator", 50) +set_default_weight("steam-engine", 10) +set_default_weight("substation", 50) +set_default_weight("radar", 50) \ No newline at end of file From 2d327c805dca93c75ce8dd757825ad645456078e Mon Sep 17 00:00:00 2001 From: Simon Brodtmann Date: Tue, 9 Sep 2025 19:09:44 +0200 Subject: [PATCH 05/16] Wooden belts have half the weight --- lignumis/prototypes/content/wood-logistics.lua | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lignumis/prototypes/content/wood-logistics.lua b/lignumis/prototypes/content/wood-logistics.lua index a575ba8..78cb353 100644 --- a/lignumis/prototypes/content/wood-logistics.lua +++ b/lignumis/prototypes/content/wood-logistics.lua @@ -33,9 +33,9 @@ Belt.EntityBuilder:new() }) local splitter_item = Belt.ItemBuilder:new() - :itemsPerRocket("transportBelt", 100) - :itemsPerRocket("undergroundBelt", 50) - :itemsPerRocket("splitter", 50) + :itemsPerRocket("transportBelt", 200) + :itemsPerRocket("undergroundBelt", 100) + :itemsPerRocket("splitter", 100) :order("0") :apply() .splitter From 7385751f2da492d8d5fb984778e57b5f4e401343 Mon Sep 17 00:00:00 2001 From: Simon Brodtmann Date: Tue, 9 Sep 2025 19:11:11 +0200 Subject: [PATCH 06/16] 1.0.63 --- lignumis/changelog.txt | 7 +++++++ lignumis/info.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/lignumis/changelog.txt b/lignumis/changelog.txt index 7083de4..5bf266a 100644 --- a/lignumis/changelog.txt +++ b/lignumis/changelog.txt @@ -1,4 +1,11 @@ --------------------------------------------------------------------------------------------------- +Version: 1.0.63 +Date: 09.09.2025 + Changes: + - Wooden belts have half the weight + Bug Fixes: + - Fix vanilla more item weights +--------------------------------------------------------------------------------------------------- Version: 1.0.62 Date: 02.09.2025 Changes: diff --git a/lignumis/info.json b/lignumis/info.json index 14beab0..d2bee4d 100644 --- a/lignumis/info.json +++ b/lignumis/info.json @@ -1,6 +1,6 @@ { "name": "lignumis", - "version": "1.0.62", + "version": "1.0.63", "title": "Lignumis", "description": "Dive into the world of Lignumis, a moon of Nauvis offering only the most basic technologies.", "author": "cackling fiend", From 25b396affcbed7ceec38668b7aa81ab014cef6fc Mon Sep 17 00:00:00 2001 From: Simon Brodtmann Date: Wed, 10 Sep 2025 23:12:06 +0200 Subject: [PATCH 07/16] Fix more item weights --- lignumis/prototypes/content/gold/pipes.lua | 7 ++++++- lignumis/prototypes/integrations/vanilla.lua | 6 +++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/lignumis/prototypes/content/gold/pipes.lua b/lignumis/prototypes/content/gold/pipes.lua index 4e555a4..766a788 100644 --- a/lignumis/prototypes/content/gold/pipes.lua +++ b/lignumis/prototypes/content/gold/pipes.lua @@ -84,6 +84,7 @@ local pipe_item = { place_result = "gold-pipe", stack_size = 100, weight = 5 * kg, + default_import_location = "lignumis", random_tint_color = item_tints.iron_rust } @@ -159,6 +160,8 @@ local pipe_to_ground_item = { drop_sound = item_sounds.metal_small_inventory_move, place_result = "gold-pipe-to-ground", stack_size = 50, + weight = 5 * kg, + default_import_location = "lignumis", random_tint_color = item_tints.iron_rust } @@ -347,7 +350,9 @@ local tank_item = { pick_sound = item_sounds.metal_large_inventory_pickup, drop_sound = item_sounds.metal_large_inventory_move, place_result = "gold-storage-tank", - stack_size = 10 + stack_size = 10, + weight = 50 * kg, + default_import_location = "lignumis" } local tank_recipe = { diff --git a/lignumis/prototypes/integrations/vanilla.lua b/lignumis/prototypes/integrations/vanilla.lua index ac6dd49..1e27aaa 100644 --- a/lignumis/prototypes/integrations/vanilla.lua +++ b/lignumis/prototypes/integrations/vanilla.lua @@ -359,4 +359,8 @@ set_default_weight("oil-refinery", 10) set_default_weight("accumulator", 50) set_default_weight("steam-engine", 10) set_default_weight("substation", 50) -set_default_weight("radar", 50) \ No newline at end of file +set_default_weight("radar", 50) +set_default_weight("storage-tank", 50) +set_default_weight("fast-transport-belt", 100) +set_default_weight("fast-underground-belt", 50) +set_default_weight("fast-splitter", 50) \ No newline at end of file From 9cff8c44011cb81f28952cf0b1bac36a2b3e9ec7 Mon Sep 17 00:00:00 2001 From: Simon Brodtmann Date: Wed, 10 Sep 2025 23:18:41 +0200 Subject: [PATCH 08/16] Fix steam assembler scaling with increased energy usage from modules --- lignumis/prototypes/content/steam-assembling-machine.lua | 1 + 1 file changed, 1 insertion(+) diff --git a/lignumis/prototypes/content/steam-assembling-machine.lua b/lignumis/prototypes/content/steam-assembling-machine.lua index ed85a59..da5ef2d 100644 --- a/lignumis/prototypes/content/steam-assembling-machine.lua +++ b/lignumis/prototypes/content/steam-assembling-machine.lua @@ -31,6 +31,7 @@ assembling_machine.energy_usage = "25kW" assembling_machine.energy_source = { type = "fluid", maximum_temperature = 165, + scale_fluid_usage = true, effectivity = 1, emissions_per_minute = { noise = 50 }, fluid_box = { From 8fb0fac8008ee2ae0a69b521739042f5403808f7 Mon Sep 17 00:00:00 2001 From: Simon Brodtmann Date: Wed, 10 Sep 2025 23:19:31 +0200 Subject: [PATCH 09/16] 1.0.64 --- lignumis/changelog.txt | 6 ++++++ lignumis/info.json | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/lignumis/changelog.txt b/lignumis/changelog.txt index 5bf266a..3772a2a 100644 --- a/lignumis/changelog.txt +++ b/lignumis/changelog.txt @@ -1,4 +1,10 @@ --------------------------------------------------------------------------------------------------- +Version: 1.0.64 +Date: 10.09.2025 + Bug Fixes: + - Fix more item weights + - Fix steam assembler scaling with increased energy usage from modules +--------------------------------------------------------------------------------------------------- Version: 1.0.63 Date: 09.09.2025 Changes: diff --git a/lignumis/info.json b/lignumis/info.json index d2bee4d..c62aa08 100644 --- a/lignumis/info.json +++ b/lignumis/info.json @@ -1,6 +1,6 @@ { "name": "lignumis", - "version": "1.0.63", + "version": "1.0.64", "title": "Lignumis", "description": "Dive into the world of Lignumis, a moon of Nauvis offering only the most basic technologies.", "author": "cackling fiend", From c1797dfcfef903c31f80ac9823e333016491d019 Mon Sep 17 00:00:00 2001 From: Simon Brodtmann Date: Thu, 11 Sep 2025 18:55:08 +0200 Subject: [PATCH 10/16] Remove warning for Alien Biomes --- README.md | 4 ++-- lignumis/scripts/init.lua | 4 ---- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index fd55804..c5a282a 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,5 @@ [![Discord](https://img.shields.io/badge/Discord-%235865F2.svg?style=for-the-badge&logo=discord&logoColor=white)](https://discord.gg/ufvFUJtVwk)[![Forgejo](https://img.shields.io/badge/source%20code-%23f4f4f5?style=for-the-badge&logo=forgejo&logoColor=%23c2410c)](https://git.cacklingfiend.info/cacklingfiend/lignumis)[![Downloads](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fmods.factorio.com%2Fapi%2Fmods%2Flignumis&query=%24.downloads_count&suffix=%20Downloads&style=for-the-badge&logo=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI%2FPgo8IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDIwMDEwOTA0Ly9FTiIKICJodHRwOi8vd3d3LnczLm9yZy9UUi8yMDAxL1JFQy1TVkctMjAwMTA5MDQvRFREL3N2ZzEwLmR0ZCI%2BCjxzdmcgdmVyc2lvbj0iMS4wIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiB3aWR0aD0iMTIxNnB0IiBoZWlnaHQ9IjEyODBwdCIgdmlld0JveD0iMCAwIDEyMTYgMTI4MCIKIHByZXNlcnZlQXNwZWN0UmF0aW89InhNaWRZTWlkIG1lZXQiPgo8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLDEyODApIHNjYWxlKDAuMSwtMC4xKSIKZmlsbD0iI2ZmZmZmZiIgc3Ryb2tlPSJub25lIj4KPHBhdGggZD0iTTM0NzAgOTYwMCBsMCAtMzIwMCAtMTczMSAwIGMtOTUyIDAgLTE3MjkgLTQgLTE3MjcgLTggNCAtMTIgNjA2MgotNjM5MCA2MDY4IC02MzkwIDYgMCA2MDY0IDYzNzggNjA2OCA2MzkwIDIgNCAtNzc1IDggLTE3MjcgOCBsLTE3MzEgMCAwIDMyMDAKMCAzMjAwIC0yNjEwIDAgLTI2MTAgMCAwIC0zMjAweiIvPgo8L2c%2BCjwvc3ZnPgo%3D&label=&labelColor=%23e39827&color=%23e39827)](https://mods.factorio.com/mod/lignumis/metrics?range=last_two_months&type=mod_downloads) + _________________ ![Lignumis poster](https://git.cacklingfiend.info/cacklingfiend/lignumis-assets/raw/branch/main/sources/readme/poster.jpg) @@ -117,7 +118,6 @@ _________________ ## Problematic / incompatible mods * The combination of AAI Industry and Any planet start is currently not supported. -* Alien Biomes: Lignumis won't have any trees. It's playable, but not as intended. * The rest of the Wooden Universe: I marked the ones incompatible that don't make sense to combine or that wouldn't add more that is not already included. _________________ @@ -178,7 +178,7 @@ _________________ - Fix pipe graphics on desiccation furnace and quality assembler - Trees must not die when absorbing noise - - https://lua-api.factorio.com/latest/types/TreeVariation.html + - https://lua-api.factorio.com/latest/types/TreeVariation.html - Add information in Factoriopedia - Compatibility with [On Wayward Seas](https://mods.factorio.com/mod/wayward-seas) - Compatibility with [Exotic Space Industries](https://mods.factorio.com/mod/exotic-space-industries) diff --git a/lignumis/scripts/init.lua b/lignumis/scripts/init.lua index ad58805..75773e3 100644 --- a/lignumis/scripts/init.lua +++ b/lignumis/scripts/init.lua @@ -67,10 +67,6 @@ Init.events[defines.events.on_player_created] = function(event) storage.init[event.player_index] = true - if script.active_mods["alien-biomes"] then - game.print("While Alien Biomes is playable with Lignumis, it is not recommended as it prevents trees from being generated on Lignumis.") - end - if not script.active_mods["Burner-Leech-Fork"] and not script.active_mods["Burner-Leech"] and not script.active_mods["InserterFuelLeech"] then game.print("Lignumis: You are starting a new game without a burner leech mod. The intended experience is to use one of the available options. You can disable such a mod after the burner phase of the game. See the mod page for more details.") end From ee9eb8faf144ee928bb26686490d3ac644beff7d Mon Sep 17 00:00:00 2001 From: Simon Brodtmann Date: Sat, 13 Sep 2025 21:38:39 +0200 Subject: [PATCH 11/16] More item weights --- lignumis/prototypes/content/burner-agricultural-tower.lua | 3 ++- lignumis/prototypes/content/burner-lamp.lua | 3 ++- lignumis/prototypes/integrations/vanilla.lua | 3 ++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/lignumis/prototypes/content/burner-agricultural-tower.lua b/lignumis/prototypes/content/burner-agricultural-tower.lua index 32a2234..e76a2da 100644 --- a/lignumis/prototypes/content/burner-agricultural-tower.lua +++ b/lignumis/prototypes/content/burner-agricultural-tower.lua @@ -78,7 +78,8 @@ data:extend({ drop_sound = item_sounds.mechanical_large_inventory_move, place_result = "burner-agricultural-tower", stack_size = 20, - default_import_location = "lignumis" + default_import_location = "lignumis", + weight = 100 * kg }, { type = "recipe", diff --git a/lignumis/prototypes/content/burner-lamp.lua b/lignumis/prototypes/content/burner-lamp.lua index 57add6e..4b52e0a 100644 --- a/lignumis/prototypes/content/burner-lamp.lua +++ b/lignumis/prototypes/content/burner-lamp.lua @@ -146,7 +146,8 @@ data:extend({ subgroup = "circuit-network", -- Copper lamp under circuit-network order = "a[lamp]-b[copper-lamp]", -- Copper lamp after large lamp place_result = "burner-lamp", - stack_size = 50 + stack_size = 50, + weight = 20 * kg }, { name = "burner-lamp", diff --git a/lignumis/prototypes/integrations/vanilla.lua b/lignumis/prototypes/integrations/vanilla.lua index 1e27aaa..c5097b8 100644 --- a/lignumis/prototypes/integrations/vanilla.lua +++ b/lignumis/prototypes/integrations/vanilla.lua @@ -363,4 +363,5 @@ set_default_weight("radar", 50) set_default_weight("storage-tank", 50) set_default_weight("fast-transport-belt", 100) set_default_weight("fast-underground-belt", 50) -set_default_weight("fast-splitter", 50) \ No newline at end of file +set_default_weight("fast-splitter", 50) +set_default_weight("steel-plate", 400) \ No newline at end of file From 9bf4a5d6ff42ec0d03b12efbdaa481db624910bd Mon Sep 17 00:00:00 2001 From: Simon Brodtmann Date: Sun, 14 Sep 2025 13:47:12 +0200 Subject: [PATCH 12/16] Add setting for infinite astroponics productivity research --- lignumis/locale/en/strings.cfg | 2 + .../prototypes/integrations/astroponics.lua | 83 +++++++++++-------- lignumis/settings.lua | 7 ++ 3 files changed, 56 insertions(+), 36 deletions(-) diff --git a/lignumis/locale/en/strings.cfg b/lignumis/locale/en/strings.cfg index 09877f7..a9481d3 100644 --- a/lignumis/locale/en/strings.cfg +++ b/lignumis/locale/en/strings.cfg @@ -190,6 +190,7 @@ lignumis-early-robots=Even earlier personal robots lignumis-vanilla-lab=Keep vanilla lab recipe lignumis-double-rocket=Double provisional rocket cargo capacity lignumis-sciences-spoil=Lignumis science packs spoil +lignumis-infinite-astroponics-productivity-research=Infinite productivity research for Astroponics [mod-setting-description] lignumis-belt-progression=Yellow belts will require wood belts to craft. @@ -205,6 +206,7 @@ lignumis-early-robots=Personal robots are moved from steam to wood science and a lignumis-vanilla-lab=Moves the transport belt recipe to Iron processing so the lab can be crafted with the original recipe without requiring to research logistics. lignumis-double-rocket=The provisional rocket can carry 80 instead of 40 slots. lignumis-sciences-spoil=Both wood science packs and steam science packs spoil for additional difficulty. +lignumis-infinite-astroponics-productivity-research=Productivity research for Astroponics is infinite instead of being capped to level 5 (which results in 50% productivity). [autoplace-control-names] lignumis_enemy_base=Lignumis enemy bases diff --git a/lignumis/prototypes/integrations/astroponics.lua b/lignumis/prototypes/integrations/astroponics.lua index b531625..491069f 100644 --- a/lignumis/prototypes/integrations/astroponics.lua +++ b/lignumis/prototypes/integrations/astroponics.lua @@ -1,38 +1,49 @@ -data:extend({ - { - type = "technology", - name = "astroponics-productivity", - icons = { - { icon = "__base__/graphics/icons/wood.png", icon_size = 64 }, - { icon = "__astroponics__/graphics/icons/fluid/liquid-fertilizer.png", shift = { -32, -32 }, scale = 1.2 }, - { - icon = "__core__/graphics/icons/technology/constants/constant-recipe-productivity.png", - icon_size = 128, - scale = 0.5, - shift = { 50, 50 }, - floating = true - } - }, - essential = false, - level = 1, - max_level = 5, - show_levels_info = true, - effects = { - { - type = "change-recipe-productivity", - recipe = "tree-astroponics", - change = 0.1 - } - }, - prerequisites = { "astroponics", "production-science-pack" }, - unit = { - count_formula = "L*250", - ingredients = { - { "wood-science-pack", 1 }, - { "production-science-pack", 1 }, - { "space-science-pack", 1 }, - }, - time = 60 +local infinite = settings.startup["lignumis-infinite-astroponics-productivity-research"].value + +local base_levels = { + type = "technology", + name = "astroponics-productivity", + icons = { + { icon = "__base__/graphics/icons/wood.png", icon_size = 64 }, + { icon = "__astroponics__/graphics/icons/fluid/liquid-fertilizer.png", shift = { -32, -32 }, scale = 1.2 }, + { + icon = "__core__/graphics/icons/technology/constants/constant-recipe-productivity.png", + icon_size = 128, + scale = 0.5, + shift = { 50, 50 }, + floating = true } + }, + essential = false, + level = 1, + max_level = 5, + show_levels_info = true, + effects = { + { + type = "change-recipe-productivity", + recipe = "tree-astroponics", + change = 0.1 + } + }, + prerequisites = { "astroponics", "production-science-pack" }, + unit = { + count_formula = "L*250", + ingredients = { + { "wood-science-pack", 1 }, + { "production-science-pack", 1 }, + { "space-science-pack", 1 }, + }, + time = 60 } -}) +} +data:extend({ base_levels }) + +if infinite then + local infinite_levels = table.deepcopy(base_levels) + infinite_levels.name = "astroponics-productivity-6" + infinite_levels.max_level = "infinite" + infinite_levels.unit.count_formula = "2^(L-6)*1500" + table.insert(infinite_levels.unit.ingredients, { "agricultural-science-pack", 1 }) + infinite_levels.prerequisites = { "astroponics-productivity", "agricultural-science-pack" } + data:extend({ infinite_levels }) +end diff --git a/lignumis/settings.lua b/lignumis/settings.lua index 2a8c02b..ddde9f0 100644 --- a/lignumis/settings.lua +++ b/lignumis/settings.lua @@ -90,6 +90,13 @@ data:extend({ default_value = false, order = "m" }, + { + type = "bool-setting", + name = "lignumis-infinite-astroponics-productivity-research", + setting_type = "startup", + default_value = false, + order = "n" + }, { type = "string-setting", name = "lignumis-second-planet", From 607ce9feb8dc75b8fcf47baff0d9ddea9d12b7d4 Mon Sep 17 00:00:00 2001 From: Simon Brodtmann Date: Sun, 14 Sep 2025 13:48:30 +0200 Subject: [PATCH 13/16] 1.0.65 --- lignumis/changelog.txt | 8 ++++++++ lignumis/info.json | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/lignumis/changelog.txt b/lignumis/changelog.txt index 3772a2a..bdcde83 100644 --- a/lignumis/changelog.txt +++ b/lignumis/changelog.txt @@ -1,4 +1,12 @@ --------------------------------------------------------------------------------------------------- +Version: 1.0.65 +Date: 14.09.2025 + Changes: + - Remove warning for Alien Biomes + - Add setting for infinite Astroponics productivity research + Bug Fixes: + - Fix more item weights +--------------------------------------------------------------------------------------------------- Version: 1.0.64 Date: 10.09.2025 Bug Fixes: diff --git a/lignumis/info.json b/lignumis/info.json index c62aa08..c18fe2b 100644 --- a/lignumis/info.json +++ b/lignumis/info.json @@ -1,6 +1,6 @@ { "name": "lignumis", - "version": "1.0.64", + "version": "1.0.65", "title": "Lignumis", "description": "Dive into the world of Lignumis, a moon of Nauvis offering only the most basic technologies.", "author": "cackling fiend", From 5c556646d9912445ff8a594c93c3d6b9c61c88d9 Mon Sep 17 00:00:00 2001 From: Simon Brodtmann Date: Mon, 15 Sep 2025 18:13:53 +0200 Subject: [PATCH 14/16] Update Discord link --- lignumis/info.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lignumis/info.json b/lignumis/info.json index c18fe2b..95b1cea 100644 --- a/lignumis/info.json +++ b/lignumis/info.json @@ -4,7 +4,7 @@ "title": "Lignumis", "description": "Dive into the world of Lignumis, a moon of Nauvis offering only the most basic technologies.", "author": "cackling fiend", - "homepage": "https://discord.gg/5bevXf5W", + "homepage": "https://discord.gg/ufvFUJtVwk", "factorio_version": "2.0", "space_travel_required": true, "dependencies": [ From 2336ad4d44ff42bf3d479cc886dc1147668a67bc Mon Sep 17 00:00:00 2001 From: Simon Brodtmann Date: Wed, 17 Sep 2025 23:21:16 +0200 Subject: [PATCH 15/16] Buff Lignumis enemies --- lignumis/prototypes/content/enemies.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lignumis/prototypes/content/enemies.lua b/lignumis/prototypes/content/enemies.lua index 76d76d8..eebe2f5 100644 --- a/lignumis/prototypes/content/enemies.lua +++ b/lignumis/prototypes/content/enemies.lua @@ -435,7 +435,7 @@ make_wriggler("lignumis-small-", 0.2, 10, 0.1, space_age_sounds.wriggler_pentapod.small ) -make_wriggler("lignumis-medium-", 0.4, 20, 0.2, +make_wriggler("lignumis-medium-", 0.5, 50, 1, { mask = fade(lerp_color(gleba_small_mask_tint, { 255, 200, 0, 255 }, 0.4), 0.2), body = grey_overlay(lerp_color(gleba_small_body_tint, { 255, 0, 0, 255 }, 0.4), 0.2) From aaea504cef0507ce9be5d2c89b3800ae7ff5a8f7 Mon Sep 17 00:00:00 2001 From: Simon Brodtmann Date: Wed, 17 Sep 2025 23:21:28 +0200 Subject: [PATCH 16/16] More item weights --- lignumis/prototypes/content/wood-military.lua | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lignumis/prototypes/content/wood-military.lua b/lignumis/prototypes/content/wood-military.lua index 775245b..1dd775f 100644 --- a/lignumis/prototypes/content/wood-military.lua +++ b/lignumis/prototypes/content/wood-military.lua @@ -76,7 +76,8 @@ data:extend({ pick_sound = item_sounds.wood_inventory_pickup, drop_sound = item_sounds.wood_inventory_move, stack_size = 100, - weight = 10 * kg + weight = 5 * kg, + default_import_location = "lignumis" }, { type = "recipe",