Compare commits

...
Sign in to create a new pull request.

23 commits
sae ... master

Author SHA1 Message Date
Simon Brodtmann
11d5f65680 Integrate lumber mill code into this mod 2025-12-16 00:03:33 +01:00
Simon Brodtmann
bb624c1159 Add setting to make the lumber mill electric 2025-12-15 23:25:31 +01:00
Simon Brodtmann
3115b51e4e Wooden logistics: Change compatibility to stick closer to how wooden logistics does things (breaking change) 2025-12-15 22:26:42 +01:00
Simon Brodtmann
52725edc46 1.0.77 2025-12-14 18:24:09 +01:00
Simon Brodtmann
31be99bdec Wood logistics: Correct lumber mill technology 2025-12-14 18:18:29 +01:00
Simon Brodtmann
377a703ed8 Integrate deep miner code into this mod 2025-12-14 11:48:09 +01:00
Simon Brodtmann
141aa9a124 Add Ko-fi to readme 2025-12-14 10:51:41 +01:00
Simon Brodtmann
15a857e689 Correct description of quality assembler 2025-12-12 23:33:14 +01:00
Simon Brodtmann
aca569cc58 1.0.76 2025-12-12 23:25:55 +01:00
Simon Brodtmann
61c2d30dd7 Diversitree: Improve compatibility 2025-12-12 22:14:31 +01:00
Simon Brodtmann
996fd2f7c4 Add support for wood logistics 2025-12-12 19:32:33 +01:00
Simon Brodtmann
663779901d Use additional_categories for wood processing 2025-12-12 19:30:12 +01:00
Simon Brodtmann
c6432920cf Use cf-lib Settings 2025-12-10 22:06:22 +01:00
Jurgen
14badb6b6f Canal excavator compatibility 2025-12-09 00:26:59 +01:00
Simon Brodtmann
df7c8bac98 1.0.75 2025-12-09 00:22:55 +01:00
Simon Brodtmann
bb52fad493 Remove default item weights as the code has been moved to PlanetsLib 2025-12-09 00:13:47 +01:00
Simon Brodtmann
3c222237ce Use additional_categories for quality assembling 2025-12-09 00:09:36 +01:00
e03f854222 Added order to subgroup
Fixes an issue with Recycling in Factoriopedia that expects all subgroups to have an order.
https://mods.factorio.com/mod/recycling-factoriopedia
2025-11-24 18:26:49 +01:00
Simon Brodtmann
b50a36d114 Add is_satellite to PlanetsLib:extend 2025-11-20 14:22:26 +01:00
Simon Brodtmann
02cf0273d7 1.0.74 2025-11-18 10:21:29 +01:00
Simon Brodtmann
d8c3b5b565 Don't hide worker robot speed 3 before before level 2 is researched 2025-11-18 10:04:41 +01:00
Simon Brodtmann
fc51b26a28 Set default weight for battery 2025-11-18 09:38:14 +01:00
Simon Brodtmann
21e30d2ef7 1.0.73 2025-11-16 18:47:37 +01:00
38 changed files with 810 additions and 273 deletions

View file

@ -1,4 +1,4 @@
[![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) [![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)[![Ko-fi](https://img.shields.io/badge/Ko--fi-F16061?style=for-the-badge&logo=ko-fi&logoColor=white)](https://ko-fi.com/cacklingfiend)
_________________ _________________
![Lignumis poster](https://git.cacklingfiend.info/cacklingfiend/lignumis-assets/raw/branch/main/sources/readme/poster.jpg) ![Lignumis poster](https://git.cacklingfiend.info/cacklingfiend/lignumis-assets/raw/branch/main/sources/readme/poster.jpg)

View file

@ -1,4 +1,43 @@
--------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------
Version: 1.0.77
Date: 14.12.2025
Changes:
- Integrate deep miner code into this mod
Bug Fixes:
- Correct description of quality assembler
- Wood logistics: Correct lumber mill technology
---------------------------------------------------------------------------------------------------
Version: 1.0.76
Date: 12.12.2025
Changes:
- Add compatibility for "Canal Excavator" (thanks jurgy)
- Add compatibility for "Wood Logistics"
- Diversitree: Improve compatibility
- Use additional_categories for wood processing
---------------------------------------------------------------------------------------------------
Version: 1.0.75
Date: 09.12.2025
Changes:
- Add is_satellite to PlanetsLib:extend
- Remove default item weights as the code has been moved to PlanetsLib
Bug Fixes:
- Recycling in Factoriopedia: Add order to bioprocessing subgroup for compatibility (thanks jvella94)
- Crushing Industry: Use additional_categories for quality assembling so the rocket silo recipe will use concrete mix again
---------------------------------------------------------------------------------------------------
Version: 1.0.74
Date: 18.11.2025
Bug Fixes:
- Set default weight for battery
- Don't hide worker robot speed 3 before before level 2 is researched
---------------------------------------------------------------------------------------------------
Version: 1.0.73
Date: 16.11.2025
Bug Fixes:
- Add provisional-rocket-part to provisional-rocketry effects (thanks Noreja)
Changes:
- Add setting to restrict sciences to Lignumis
- Update descriptions and improve settings labels
---------------------------------------------------------------------------------------------------
Version: 1.0.72 Version: 1.0.72
Date: 01.11.2025 Date: 01.11.2025
Bug Fixes: Bug Fixes:
@ -69,7 +108,7 @@ Version: 1.0.62
Date: 02.09.2025 Date: 02.09.2025
Changes: Changes:
- Add spanish locales (thanks DFOXpro) - Add spanish locales (thanks DFOXpro)
- Add compatibility for Alien Biomes (thanks Chromebomb) - Add compatibility for "Alien Biomes" (thanks Chromebomb)
- The lumber mill can be built on Vulcanus again - The lumber mill can be built on Vulcanus again
--------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------
Version: 1.0.61 Version: 1.0.61

View file

@ -1,6 +1,6 @@
{ {
"name": "lignumis", "name": "lignumis",
"version": "1.0.72", "version": "1.0.77",
"title": "Lignumis", "title": "Lignumis",
"description": "Dive into the world of Lignumis, a moon of Nauvis offering only the most basic technologies.\n\nThis planet mod effects other planets and space ships. Make sure to read the description on the mod portal and check the mod settings.", "description": "Dive into the world of Lignumis, a moon of Nauvis offering only the most basic technologies.\n\nThis planet mod effects other planets and space ships. Make sure to read the description on the mod portal and check the mod settings.",
"author": "cackling fiend", "author": "cackling fiend",
@ -12,39 +12,40 @@
"space-age >= 2.0.53", "space-age >= 2.0.53",
"astroponics >= 1.2.0", "astroponics >= 1.2.0",
"bioprocessing-tab", "bioprocessing-tab",
"cf-lib >= 0.0.13", "cf-lib >= 1.1.0",
"flib", "flib",
"gleba-water-cane", "gleba-water-cane",
"lignumis-assets >= 1.0.3", "lignumis-assets >= 1.0.3",
"mf-buildings >= 1.0.7", "mf-buildings >= 1.0.7",
"mf-core >= 1.0.3", "mf-core >= 1.0.3",
"mf-logistics >= 1.0.1", "mf-logistics >= 1.0.1",
"PlanetsLib >= 1.1.26", "PlanetsLib >= 1.14.7",
"pollution-as-surface-property", "pollution-as-surface-property",
"Wood-Walls >= 1.2.0", "Wood-Walls >= 1.2.0",
"vulcanus-sulfuric-bacteria", "vulcanus-sulfuric-bacteria",
"?aai-industry", "? aai-industry",
"?aai-loaders", "? aai-loaders",
"?aai-loaders-sane", "? aai-loaders-sane",
"?any-planet-start", "? any-planet-start",
"?atan-nuclear-science", "? crushing-industry",
"?crushing-industry", "? fulgora-coralmium-agriculture",
"?Diversitree", "? hot-metals >= 1.1.0",
"?fulgora-coralmium-agriculture", "? lane-splitters",
"?gleba-reborn", "? wood-industry",
"?hot-metals >= 1.1.0", "? wood-military >= 2.3.3",
"?Krastorio2-spaced-out", "? canal-excavator >= 1.9.0",
"?lane-splitters", "? wood-logistics",
"?metal-and-stars", "(?) atan-nuclear-science",
"(?)secretas", "(?) Diversitree",
"(?)Wood_Gasification_updated", "(?) gleba-reborn",
"?wood-industry", "(?) Krastorio2-spaced-out",
"?wood-military >= 2.3.3", "(?) metal-and-stars",
"!apm_power_ldinc", "(?) secretas",
"!early-agriculture", "(?) Wood_Gasification_updated",
"!planet-picker", "! apm_power_ldinc",
"!wood-logistics", "! early-agriculture",
"!wood-universe-modpack", "! planet-picker",
"!rso-mod" "! wood-universe-modpack",
"! rso-mod"
] ]
} }

View file

@ -52,7 +52,7 @@ lignumis-medium-wriggler-pentapod=Mittelgroßer Lignumis Fünfbein-Zapler
[entity-description] [entity-description]
lumber-mill=Fortschrittliche Maschine zur Holzbearbeitung. lumber-mill=Fortschrittliche Maschine zur Holzbearbeitung.
quality-assembler=High-End-Montagemaschine, die nur die besten Maschinen herstellt. Verleiht 25% zusätzliche Qualität durch den Verbrauch von [item=gold-quality-catalyst]. Die Oberflächenbedingungen und Zutaten bleiben ansonsten unverändert. quality-assembler=High-End-Montagemaschine, die nur die besten Maschinen herstellt. Verleiht 35% zusätzliche Qualität durch den Verbrauch von [item=gold-quality-catalyst]. Die Oberflächenbedingungen und Zutaten bleiben ansonsten unverändert.
gold-stromatolite-plant=Sammle Gold-Stromatolithen für Bakterien, die Gold aus dem Boden anreichern.\n__REMARK_COLOR_BEGIN__Erwarteter Ertrag:__REMARK_COLOR_END__ 1.5 [item=gold-ore]/m gold-stromatolite-plant=Sammle Gold-Stromatolithen für Bakterien, die Gold aus dem Boden anreichern.\n__REMARK_COLOR_BEGIN__Erwarteter Ertrag:__REMARK_COLOR_END__ 1.5 [item=gold-ore]/m
[equipment-name] [equipment-name]

View file

@ -53,7 +53,7 @@ burner-lamp=Burner lamp
[entity-description] [entity-description]
lumber-mill=Advanced machine to process wood. lumber-mill=Advanced machine to process wood.
quality-assembler=High-end assembler to craft only the finest quality machines. It gives 25% additional quality by consuming [item=gold-quality-catalyst]. Surface conditions and ingredients are otherwise unchanged. quality-assembler=High-end assembler to craft only the finest quality machines. It gives 35% additional quality by consuming [item=gold-quality-catalyst]. Surface conditions and ingredients are otherwise unchanged.
gold-stromatolite-plant=Harvest gold stromatolites for bacteria that enrich gold from the ground.\n__REMARK_COLOR_BEGIN__Expected yield:__REMARK_COLOR_END__ 1.5 [item=gold-ore]/m gold-stromatolite-plant=Harvest gold stromatolites for bacteria that enrich gold from the ground.\n__REMARK_COLOR_BEGIN__Expected yield:__REMARK_COLOR_END__ 1.5 [item=gold-ore]/m
[equipment-name] [equipment-name]
@ -126,6 +126,7 @@ planet-discovery-lignumis=Moon discovery Lignumis
iron-processing=Iron processing iron-processing=Iron processing
copper-processing=Copper processing copper-processing=Copper processing
lumber-mill=Lumber mill lumber-mill=Lumber mill
advanced-carpentry=Lumber mill
deep-miner=Deep miner deep-miner=Deep miner
gold-fluid-handling=Gold fluid handling gold-fluid-handling=Gold fluid handling
steam-automation=Steam automation steam-automation=Steam automation
@ -153,6 +154,7 @@ burner-automation=Technology for basic automation using burner machines.
planet-discovery-nauvis=A temperate planet offering all the common resources. planet-discovery-nauvis=A temperate planet offering all the common resources.
planet-discovery-lignumis=A moon orbiting Nauvis that has not much to offer besides some vegetation and a metal that might be useful. planet-discovery-lignumis=A moon orbiting Nauvis that has not much to offer besides some vegetation and a metal that might be useful.
lumber-mill=Advanced machine to process wood. lumber-mill=Advanced machine to process wood.
advanced-carpentry=Advanced machine to process wood.
deep-miner=Gives access to huge gold deposits that were previously unreachable. deep-miner=Gives access to huge gold deposits that were previously unreachable.
steam-automation=Allows research of more sophisticated technologies based on wood products and gold. steam-automation=Allows research of more sophisticated technologies based on wood products and gold.
wood-liquefaction=Converting wood into a liquid offers new possibilities. wood-liquefaction=Converting wood into a liquid offers new possibilities.
@ -193,6 +195,7 @@ lignumis-vanilla-lab=[color=orange][font=heading-2]Overhaul[/font][/color] Keep
lignumis-double-rocket=[color=green][font=heading-2]Easy[/font][/color] Double provisional rocket cargo capacity lignumis-double-rocket=[color=green][font=heading-2]Easy[/font][/color] Double provisional rocket cargo capacity
lignumis-sciences-spoil=[color=red][font=heading-2]Hard[/font][/color] Lignumis science packs spoil lignumis-sciences-spoil=[color=red][font=heading-2]Hard[/font][/color] Lignumis science packs spoil
lignumis-infinite-astroponics-productivity-research=[color=green][font=heading-2]Easy[/font][/color] Infinite productivity research for Astroponics lignumis-infinite-astroponics-productivity-research=[color=green][font=heading-2]Easy[/font][/color] Infinite productivity research for Astroponics
lignumis-electric-lumber-mill=[color=green][font=heading-2]Easy[/font][/color] Electric lumber mill
[mod-setting-description] [mod-setting-description]
lignumis-belt-progression=Yellow belts will require wood belts to craft. lignumis-belt-progression=Yellow belts will require wood belts to craft.
@ -209,6 +212,7 @@ lignumis-vanilla-lab=Moves the transport belt recipe to Iron processing so the l
lignumis-double-rocket=The provisional rocket can carry 80 instead of 40 slots. 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-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). lignumis-infinite-astroponics-productivity-research=Productivity research for Astroponics is infinite instead of being capped to level 5 (which results in 50% productivity).
lignumis-electric-lumber-mill=The lumber mill will consume electricity instead of burner fuel and will be unlocked after researching electricity.
[autoplace-control-names] [autoplace-control-names]
lignumis_enemy_base=Lignumis enemy bases lignumis_enemy_base=Lignumis enemy bases

View file

@ -52,7 +52,7 @@ lignumis-medium-wriggler-pentapod=Pentápodo reptante mediano de Lignumis
[entity-description] [entity-description]
lumber-mill=Máquina avanzada para procesar madera. lumber-mill=Máquina avanzada para procesar madera.
quality-assembler=Ensamblador de alta gama para fabricar solo máquinas de la mejor calidad. Da un 25% de calidad adicional al consumir [item=gold-quality-catalyst]. Por lo demás, las condiciones de la superficie y los ingredientes no cambian. quality-assembler=Ensamblador de alta gama para fabricar solo máquinas de la mejor calidad. Da un 35% de calidad adicional al consumir [item=gold-quality-catalyst]. Por lo demás, las condiciones de la superficie y los ingredientes no cambian.
gold-stromatolite-plant=Recolecte estromatolitos de oro en busca de bacterias que enriquezcan el oro del suelo.\n__REMARK_COLOR_BEGIN__Rendimiento esperado:__REMARK_COLOR_END__ 1.5 [item=gold-ore]/m gold-stromatolite-plant=Recolecte estromatolitos de oro en busca de bacterias que enriquezcan el oro del suelo.\n__REMARK_COLOR_BEGIN__Rendimiento esperado:__REMARK_COLOR_END__ 1.5 [item=gold-ore]/m
[equipment-name] [equipment-name]

View file

@ -52,7 +52,7 @@ lignumis-medium-wriggler-pentapod=Средний пятиног-ползун Л
[entity-description] [entity-description]
lumber-mill=Продвинутая машина для обработки древесины. lumber-mill=Продвинутая машина для обработки древесины.
quality-assembler=Высококачественный сборочный автомат, создающий только лучшие механизмы. Добавляет 25% дополнительного качества предмету, потребляя [item=gold-quality-catalyst]. Условия поверхности и ингредиенты остаются неизменными. quality-assembler=Высококачественный сборочный автомат, создающий только лучшие механизмы. Добавляет 35% дополнительного качества предмету, потребляя [item=gold-quality-catalyst]. Условия поверхности и ингредиенты остаются неизменными.
gold-stromatolite-plant=Собирайте золотой строматолит для получения бактерий, обогащающих золото из почвы.\n__REMARK_COLOR_BEGIN__Ожидаемая добыча:__REMARK_COLOR_END__ 1.5 [item=gold-ore]/m gold-stromatolite-plant=Собирайте золотой строматолит для получения бактерий, обогащающих золото из почвы.\n__REMARK_COLOR_BEGIN__Ожидаемая добыча:__REMARK_COLOR_END__ 1.5 [item=gold-ore]/m
[equipment-name] [equipment-name]

View file

@ -46,7 +46,7 @@ AAILoaders.make_tier({
order = "d[loader]-a00[aai-wood-loader]" order = "d[loader]-a00[aai-wood-loader]"
}) })
data.raw.recipe["aai-wood-loader"].category = "wood-processing-or-assembling" data.raw.recipe["aai-wood-loader"].additional_categories = { "wood-processing" }
if not basic_circuit_board then if not basic_circuit_board then
local nauvis_recipe = Recipe:new("aai-wood-loader"):clone("wood-loader-electronic-circuit") local nauvis_recipe = Recipe:new("aai-wood-loader"):clone("wood-loader-electronic-circuit")

View file

@ -0,0 +1,14 @@
if not mods["canal-excavator"] then return end
data:extend({{
type = "mod-data",
name = "canex-lignumis-config",
data_type = "canex-surface-config",
data = {
surfaceName = "lignumis",
localisation = {"space-location-name.lignumis"},
mineResult = "stone",
oreStartingAmount = 10,
tint = {r = 102, g = 78, b = 6}
},
}})

View file

@ -90,10 +90,9 @@ end
local gold_recipe = Recipe:new("burner-crusher") local gold_recipe = Recipe:new("burner-crusher")
:replaceIngredient("iron-gear-wheel", "wooden-gear-wheel") :replaceIngredient("iron-gear-wheel", "wooden-gear-wheel")
:replaceIngredient("iron-plate", "gold-plate") :replaceIngredient("iron-plate", "gold-plate")
:assign({ if settings.startup["lignumis-lumber-mill-more-recipes"].value then
category = settings.startup["lignumis-lumber-mill-more-recipes"].value and "wood-processing-or-assembling" or gold_recipe.prototype.additional_categories = { "wood-processing" }
"crafting" end
})
gold_recipe:clone("burner-crusher-copper") gold_recipe:clone("burner-crusher-copper")
:replaceIngredient("gold-plate", "copper-plate") :replaceIngredient("gold-plate", "copper-plate")

View file

@ -6,4 +6,6 @@ require("aai-loaders")
require("nuclear-science") require("nuclear-science")
require("lane-splitters") require("lane-splitters")
require("wood-industry") require("wood-industry")
require("crushing-industry") require("crushing-industry")
require("canal-excavator")
require("diversitree")

View file

@ -0,0 +1,12 @@
if not mods["Diversitree"] then
return
end
data.raw.plant["s6xdvt-fake-tree"].surface_conditions[1].min = 900
local tree_plant = data.raw.plant["s6xdvt-fake-tree"]
tree_plant.growth_ticks = 5 * minute
tree_plant.minable.results = { { type = "item", name = "wood", amount = 5 } }
tree_plant.minable.count = nil
tree_plant.surface_conditions[1].min = 900
table.insert(tree_plant.autoplace.tile_restriction, "natural-gold-soil")

View file

@ -23,7 +23,7 @@ lane_splitter.prototype.structure_patch.west.filename = data.raw.splitter["wood-
lane_splitter.prototype.structure_patch.north.filename = data.raw.splitter["wood-splitter"].structure_patch.north.filename lane_splitter.prototype.structure_patch.north.filename = data.raw.splitter["wood-splitter"].structure_patch.north.filename
lane_splitter.item.icon = Lignumis.graphics .. "icons/wood-lane-splitter.png" lane_splitter.item.icon = Lignumis.graphics .. "icons/wood-lane-splitter.png"
lane_splitter.item.order = "d[lane-splitter]-0[wood-lane-splitter]" lane_splitter.item.order = "d[lane-splitter]-0[wood-lane-splitter]"
lane_splitter.recipe.category = "wood-processing-or-assembling" lane_splitter.recipe.additional_categories = { "wood-processing" }
data:extend({ data:extend({
lane_splitter.prototype, lane_splitter.prototype,

View file

@ -1,4 +1,5 @@
require("aai-industry") require("aai-industry")
require("gleba-reborn") require("gleba-reborn")
require("crushing-industry-updates") require("crushing-industry-updates")
require("k2so") require("k2so")
require("wood-logistics")

View file

@ -0,0 +1,157 @@
local Item = require("__cf-lib__/data/Item")
local Recipe = require("__cf-lib__/data/Recipe")
local Technology = require("__cf-lib__/data/Technology")
if not mods["wood-logistics"] then
return
end
local basic_circuit_board = settings.startup["lignumis-basic-circuit-board"].value
local electric_lumber_mill = settings.startup["lignumis-electric-lumber-mill"].value
-- Lumber
if settings.startup["wood-logistics-lumber"].value then
Recipe:new("lumber"):addCategory("wood-processing")
end
-- Lumber mill
if settings.startup["wood-logistics-lumber-mill"].value then
local lumberMill = data.raw["assembling-machine"]["lumber-mill"]
lumberMill.surface_conditions = {
{
property = has_oxygen and "oxygen" or "pressure",
min = 3
},
{
property = "gravity",
min = 1
}
}
table.insert(lumberMill.crafting_categories, "wood-processing")
if electric_lumber_mill then
lumberMill.energy_source.emissions_per_minute.noise = 100
else
lumberMill.energy_source = {
type = "burner",
fuel_categories = { "chemical" },
effectivity = 1,
fuel_inventory_size = 3,
emissions_per_minute = { pollution = 10, noise = 100 },
}
end
data.raw.item["lumber-mill"].default_import_location = "lignumis"
table.assign(data.raw.recipe["lumber-mill"], {
additional_categories = { "wood-processing" },
ingredients = table.trim({
{ type = "item", name = "stone-brick", amount = 40 },
{ type = "item", name = "lumber", amount = 50 },
{ type = "item", name = "wooden-gear-wheel", amount = 50 },
{ type = "item", name = "gold-plate", amount = basic_circuit_board and 20 or 40 },
basic_circuit_board and { type = "item", name = "basic-circuit-board", amount = 20 } or nil,
{ type = "item", name = "burner-assembling-machine", amount = 2 }
})
})
Recipe:new("lumber-mill")
:clone("lumber-mill-copper")
:assign({
localised_name = { "entity-name.lumber-mill" },
icons = {
{ icon = data.raw.item["lumber-mill"].icon },
{ icon = basic_circuit_board and "__base__/graphics/icons/copper-plate.png" or "__base__/graphics/icons/electronic-circuit.png", scale = 0.25, shift = { 8, 8 } }
}
})
:replaceIngredient("gold-plate", "copper-plate")
:unlockedByTechnology(
electric_lumber_mill and "advanced-carpentry"
or basic_circuit_board and "copper-processing"
or "electronics"
)
:apply()
if electric_lumber_mill then
table.assign(data.raw.technology["advanced-carpentry"], {
prerequisites = { "automation-science-pack" },
unit = {
count = 250,
time = 15,
ingredients = {
{ "automation-science-pack", 1 }
}
}
})
else
table.assign(data.raw.technology["advanced-carpentry"], {
prerequisites = { "steam-science-pack" },
unit = {
count = 250,
time = 15,
ingredients = {
{ "wood-science-pack", 1 },
{ "steam-science-pack", 1 }
}
}
})
end
end
-- Wooden belts
if settings.startup["wood-logistics-belts"].value then
Recipe:new("wood-transport-belt")
:replaceIngredient("copper-cable", "wooden-gear-wheel", 1)
:assign({
additional_categories = { "wood-processing" }
})
Recipe:new("wood-underground-belt")
:assign({
additional_categories = { "wood-processing" }
})
Recipe:new("wood-splitter")
:replaceIngredient("copper-cable", basic_circuit_board and "basic-circuit-board" or "gold-cable", basic_circuit_board and 5 or nil)
:assign({
additional_categories = { "wood-processing" }
})
if not basic_circuit_board then
Recipe:new("wood-splitter")
:clone("wood-splitter-electronic-circuit")
:replaceIngredient(basic_circuit_board and "gold-cable" or "basic-circuit-board", "electronic-circuit", 2)
:assign({
localised_name = { "entity-name.wood-splitter" },
icons = {
{ icon = data.raw.item["wood-splitter"].icon },
{ icon = "__base__/graphics/icons/electronic-circuit.png", scale = 0.25, shift = { 8, 8 } }
}
})
:unlockedByTechnology("electronics")
:apply()
end
Item:new("wood-transport-belt")
:itemsPerRocket(200)
:defaultImportLocation("lignumis")
Item:new("wood-underground-belt")
:itemsPerRocket(100)
:defaultImportLocation("lignumis")
Item:new("wood-splitter")
:itemsPerRocket(100)
:defaultImportLocation("lignumis")
Technology:new("wood-logistics"):assign({
prerequisites = { "wood-science-pack" },
unit = {
count = 10,
ingredients = { { "wood-science-pack", 1 } },
time = 10
}
})
Technology:new("logistics"):setPrerequisites({ "automation-science-pack" })
end

View file

@ -19,7 +19,8 @@ data:extend({
{ {
type = "recipe", type = "recipe",
name = "basic-circuit-board", name = "basic-circuit-board",
category = "wood-processing-or-assembling", category = "crafting",
additional_categories = { "wood-processing" },
icons = { icons = {
{ icon = Lignumis.graphics .. "icons/basic-circuit-board.png" }, { icon = Lignumis.graphics .. "icons/basic-circuit-board.png" },
{ icon = Lignumis.graphics .. "icons/gold-cable.png", scale = 0.25, shift = { 8, 8 } } { icon = Lignumis.graphics .. "icons/gold-cable.png", scale = 0.25, shift = { 8, 8 } }
@ -36,7 +37,8 @@ data:extend({
type = "recipe", type = "recipe",
name = "basic-circuit-board-copper", name = "basic-circuit-board-copper",
localised_name = { "item-name.basic-circuit-board" }, localised_name = { "item-name.basic-circuit-board" },
category = "wood-processing-or-assembling", category = "crafting",
additional_categories = { "wood-processing" },
icons = { icons = {
{ icon = Lignumis.graphics .. "icons/basic-circuit-board.png" }, { icon = Lignumis.graphics .. "icons/basic-circuit-board.png" },
{ icon = "__base__/graphics/icons/copper-cable.png", scale = 0.25, shift = { 8, 8 } } { icon = "__base__/graphics/icons/copper-cable.png", scale = 0.25, shift = { 8, 8 } }

View file

@ -58,7 +58,7 @@ local turret_recipe = {
results = { { type = "item", name = "basic-gun-turret", amount = 1 } } results = { { type = "item", name = "basic-gun-turret", amount = 1 } }
} }
if settings.startup["lignumis-lumber-mill-more-recipes"].value then if settings.startup["lignumis-lumber-mill-more-recipes"].value then
turret_recipe.category = "wood-processing-or-assembling" turret_recipe.additional_categories = { "wood-processing" }
end end
local turret_technology = { local turret_technology = {

View file

@ -84,7 +84,8 @@ data:extend({
{ {
type = "recipe", type = "recipe",
name = "burner-agricultural-tower", name = "burner-agricultural-tower",
category = "wood-processing-or-assembling", category = "crafting",
additional_categories = { "wood-processing" },
energy_required = 10, energy_required = 10,
ingredients = { ingredients = {
{ type = "item", name = "stone-brick", amount = 5 }, { type = "item", name = "stone-brick", amount = 5 },
@ -116,7 +117,8 @@ data:extend({
{ {
type = "recipe", type = "recipe",
name = "burner-agricultural-tower-copper", name = "burner-agricultural-tower-copper",
category = "wood-processing-or-assembling", category = "crafting",
additional_categories = { "wood-processing" },
localised_name = { "entity-name.burner-agricultural-tower" }, localised_name = { "entity-name.burner-agricultural-tower" },
icons = { icons = {
{ icon = Lignumis.graphics .. "icons/burner-agricultural-tower.png" }, { icon = Lignumis.graphics .. "icons/burner-agricultural-tower.png" },

View file

@ -17,7 +17,6 @@ assembling_machine.crafting_categories = {
"crafting", "crafting",
"electronics", "electronics",
"pressing", "pressing",
"wood-processing-or-assembling",
"organic-or-assembling", "organic-or-assembling",
"electronics-or-assembling", "electronics-or-assembling",
"metallurgy-or-assembling" "metallurgy-or-assembling"
@ -50,8 +49,6 @@ remnants.animation[2].filename = gfx .. "burner-assembling-machine-remnants.png"
remnants.animation[3].filename = gfx .. "burner-assembling-machine-remnants.png" remnants.animation[3].filename = gfx .. "burner-assembling-machine-remnants.png"
remnants.order = "0[burner-assembling-machine]" remnants.order = "0[burner-assembling-machine]"
local crafting_category = settings.startup["lignumis-lumber-mill-more-recipes"].value and "wood-processing-or-assembling" or "crafting"
data:extend({ data:extend({
assembling_machine, assembling_machine,
remnants, remnants,
@ -70,7 +67,8 @@ data:extend({
{ {
type = "recipe", type = "recipe",
name = "burner-assembling-machine", name = "burner-assembling-machine",
category = crafting_category, category = "crafting",
additional_categories = settings.startup["lignumis-lumber-mill-more-recipes"].value and { "wood-processing" } or nil,
enabled = false, enabled = false,
ingredients = { ingredients = {
{ type = "item", name = "wooden-gear-wheel", amount = 5 }, { type = "item", name = "wooden-gear-wheel", amount = 5 },

View file

@ -44,8 +44,6 @@ remnants.animation[3].filename = gfx .. "burner-long-handed-inserter-remnants.pn
remnants.animation[4].filename = gfx .. "burner-long-handed-inserter-remnants.png" remnants.animation[4].filename = gfx .. "burner-long-handed-inserter-remnants.png"
remnants.order = "a-c-0" remnants.order = "a-c-0"
local crafting_category = settings.startup["lignumis-lumber-mill-more-recipes"].value and "wood-processing-or-assembling" or "crafting"
data:extend({ data:extend({
long_handed_inserter, long_handed_inserter,
remnants, remnants,
@ -65,7 +63,8 @@ data:extend({
{ {
type = "recipe", type = "recipe",
name = "burner-long-handed-inserter", name = "burner-long-handed-inserter",
category = crafting_category, category = "crafting",
additional_categories = settings.startup["lignumis-lumber-mill-more-recipes"].value and { "wood-processing" } or nil,
enabled = false, enabled = false,
ingredients = { ingredients = {
{ type = "item", name = "wooden-gear-wheel", amount = 1 }, { type = "item", name = "wooden-gear-wheel", amount = 1 },

View file

@ -1,44 +1,196 @@
local DeepMinerFactory = require(MF.buildings .. "CoreExtractor") local hit_effects = require("__base__.prototypes.entity.hit-effects")
local DeepMiner = DeepMinerFactory("deep-miner") local item_sounds = require("__base__.prototypes.item_sounds")
local sounds = require("__base__.prototypes.entity.sounds")
local Entity = require("__cf-lib__/data/Entity")
local entity = DeepMiner.EntityBuilder:new():build({ local gfx = Lignumis.graphics .. "entity/deep-miner/"
resource_searching_radius = 0.49, local name = "deep-miner"
energy_usage = "25MW",
mining_speed = 7.5, local function animationLayer()
energy_source = { return {
emissions_per_minute = { noise = 2000 } priority = "high",
width = 704,
height = 704,
frame_count = 120,
lines_per_file = 8,
animation_speed = 0.3,
scale = 0.5,
stripes = {
{
filename = gfx .. "deep-miner-animation-1.png",
width_in_frames = 8,
height_in_frames = 8
},
{
filename = gfx .. "deep-miner-animation-2.png",
width_in_frames = 8,
height_in_frames = 7
}
}
}
end
data:extend({
{
type = "mining-drill",
name = name,
icon = Lignumis.graphics .. "icons/deep-miner.png",
flags = { "placeable-neutral", "player-creation" },
minable = { mining_time = 0.2, result = name },
fast_replaceable_group = name,
max_health = 500,
corpse = "big-remnants",
dying_explosion = "medium-explosion",
collision_box = Entity.collisionBox(11, 11),
selection_box = Entity.selectionBox(11, 11),
damaged_trigger_effect = hit_effects.entity(),
drawing_box_vertical_extension = 1.3,
module_slots = 4,
icon_draw_specification = { scale = 2, shift = { 0, -0.3 } },
icons_positioning = {
{ inventory_index = defines.inventory.assembling_machine_modules, shift = { 0, 1.25 } }
},
allowed_effects = { "consumption", "speed", "pollution", "quality", "productivity" },
mining_speed = 7.5,
resource_categories = { "deep-mining" },
drops_full_belt_stacks = true,
resource_searching_radius = 0.49,
vector_to_place_result = { 0, -5.85 },
resource_drain_rate_percent = 75,
energy_source = {
type = "electric",
usage_priority = "secondary-input",
emissions_per_minute = { noise = 2000 }
},
energy_usage = "25MW",
perceived_performance = { minimum = 0.25, performance_to_activity_rate = 0.25, maximum = 2 },
graphics_set = {
animation = {
layers = {
{
filename = gfx .. "deep-miner-shadow.png",
priority = "high",
width = 1400,
height = 1400,
frame_count = 1,
line_length = 1,
repeat_count = 120,
animation_speed = 0.3,
draw_as_shadow = true,
scale = 0.5
},
animationLayer()
}
},
working_visualisations = {
{
fadeout = true,
animation = {
layers = {
animationLayer(),
{
priority = "high",
draw_as_glow = true,
blend_mode = "additive",
width = 704,
height = 704,
frame_count = 120,
lines_per_file = 8,
animation_speed = 0.3,
scale = 0.5,
stripes = {
{
filename = gfx .. "deep-miner-emission-1.png",
width_in_frames = 8,
height_in_frames = 8
},
{
filename = gfx .. "deep-miner-emission-2.png",
width_in_frames = 8,
height_in_frames = 7
}
}
}
}
}
}
}
},
open_sound = sounds.drill_open,
close_sound = sounds.drill_close,
working_sound = {
main_sounds = {
{
sound = { filename = "__space-age__/sound/entity/big-mining-drill/big-mining-drill-loop.ogg", volume = 0.4, audible_distance_modifier = 1 },
fade_in_ticks = 4,
fade_out_ticks = 30
},
{
sound = { filename = Lignumis.sound .. "entity/deep-miner/deep-miner-gears.ogg", volume = 0.3, audible_distance_modifier = 0.6 },
fade_in_ticks = 15,
fade_out_ticks = 60
}
},
sound_accents = {
{ sound = {
filename = Lignumis.sound .. "entity/deep-miner/deep-miner-drop.ogg",
volume = 2,
audible_distance_modifier = 10,
advanced_volume_control = {
attenuation = "logarithmic",
fades = { fade_in = { curve_type = "linear", from = { control = 0.25, volume_percentage = 70.0 }, to = { 1, 100.0 } } }
}
}, frame = 16 }
},
max_sounds_per_prototype = 4
}
}, },
resource_drain_rate_percent = 75 {
}) type = "item",
entity.resource_categories = { "deep-mining" } name = name,
data:extend({ entity }) icon = Lignumis.graphics .. "icons/deep-miner.png",
DeepMiner.ItemBuilder:new()
:itemsPerRocket(1)
:apply({
subgroup = "extraction-machine", subgroup = "extraction-machine",
order = "a[items]-d[deep-miner]" order = "a[items]-d[deep-miner]",
}) inventory_move_sound = item_sounds.mechanical_large_inventory_move,
pick_sound = item_sounds.mechanical_large_inventory_pickup,
DeepMiner.RecipeBuilder:new() drop_sound = item_sounds.mechanical_large_inventory_move,
:ingredients({ place_result = name,
{ type = "item", name = "processing-unit", amount = 100 }, stack_size = 20,
{ type = "item", name = "electric-engine-unit", amount = 100 }, default_import_location = "nauvis",
{ type = "item", name = "steel-plate", amount = 200 }, weight = 1000 * kg
{ type = "item", name = "concrete", amount = 50 } },
}) {
:apply({ type = "recipe",
category = "metallurgy-or-assembling" name = name,
}) category = "metallurgy-or-assembling",
enabled = false,
DeepMiner.TechnologyBuilder:new() ingredients = {
:prerequisites({ "space-science-pack" }) { type = "item", name = "processing-unit", amount = 100 },
:count(500) { type = "item", name = "electric-engine-unit", amount = 100 },
:ingredients({ { type = "item", name = "steel-plate", amount = 200 },
{ "automation-science-pack", 1 }, { type = "item", name = "concrete", amount = 50 }
{ "logistic-science-pack", 1 }, },
{ "chemical-science-pack", 1 }, energy_required = 60,
{ "space-science-pack", 1 } results = { { type = "item", name = name, amount = 1 } }
}) },
:time(60) {
:apply() type = "technology",
name = name,
icon = Lignumis.graphics .. "technology/deep-miner.png",
icon_size = 256,
effects = {
{ type = "unlock-recipe", recipe = name }
},
prerequisites = { "space-science-pack" },
unit = {
count = 500,
ingredients = {
{ "automation-science-pack", 1 },
{ "logistic-science-pack", 1 },
{ "chemical-science-pack", 1 },
{ "space-science-pack", 1 }
},
time = 60
}
}
})

View file

@ -2,6 +2,7 @@ data:extend({
{ {
type = "item-subgroup", type = "item-subgroup",
name = "lignumis-bioprocessing", name = "lignumis-bioprocessing",
group = "bioprocessing" group = "bioprocessing",
order = "lignumis-bioprocessing"
} }
}) })

View file

@ -39,6 +39,7 @@ PlanetsLib:extend({
}, },
}, },
magnitude = 0.35, magnitude = 0.35,
is_satellite = true,
subgroup = "satellites", subgroup = "satellites",
icon = Lignumis.graphics .. "icons/lignumis.png", icon = Lignumis.graphics .. "icons/lignumis.png",
starmap_icon = Lignumis.graphics .. "icons/starmap-planet-lignumis.png", starmap_icon = Lignumis.graphics .. "icons/starmap-planet-lignumis.png",

View file

@ -1,82 +1,260 @@
local Technology = require("__cf-lib__/data/Technology") local Recipe = require("__cf-lib__/data/Recipe")
local LumberMillFactory = require(MF.buildings .. "LumberMill") local hit_effects = require("__base__.prototypes.entity.hit-effects")
local LumberMill = LumberMillFactory() local item_sounds = require("__base__.prototypes.item_sounds")
local Entity = require("__cf-lib__/data/Entity")
local basic_circuit_board = settings.startup["lignumis-basic-circuit-board"].value local gfx = Lignumis.graphics .. "entity/lumber-mill/"
local name = "lumber-mill"
data:extend({ data:extend({
{ {
type = "recipe-category", type = "recipe-category",
name = "wood-processing-or-assembling" name = "wood-processing"
} }
}) })
table.insert(data.raw["character"]["character"].crafting_categories, "wood-processing-or-assembling") local basic_circuit_board = settings.startup["lignumis-basic-circuit-board"].value
local has_oxygen = data.raw["surface-property"]["oxygen"] ~= nil local has_oxygen = data.raw["surface-property"]["oxygen"] ~= nil
local electric_lumber_mill = settings.startup["lignumis-electric-lumber-mill"].value
LumberMill.EntityBuilder:new() if mods["wood-logistics"] then
:burnerEnergySource({ emissions_per_minute = { noise = 100 } }) return
:baseProductivity(0.5) end
:apply({
crafting_categories = { "wood-processing-or-assembling" }, local energy_source = electric_lumber_mill and {
type = "electric",
usage_priority = "secondary-input",
emissions_per_minute = { noise = 100 }
} or {
type = "burner",
fuel_categories = { "chemical" },
effectivity = 1,
fuel_inventory_size = 3,
emissions_per_minute = { pollution = 10, noise = 100 }
}
data:extend({
{
type = "assembling-machine",
name = name,
icon = Lignumis.graphics .. "icons/lumber-mill.png",
flags = { "placeable-neutral", "player-creation" },
minable = { mining_time = 0.2, result = name },
fast_replaceable_group = name,
max_health = 500,
corpse = "big-remnants",
dying_explosion = "medium-explosion",
collision_box = Entity.collisionBox(8, 8),
selection_box = Entity.selectionBox(8, 8),
damaged_trigger_effect = hit_effects.entity(),
drawing_box_vertical_extension = 1.3,
module_slots = 4,
icon_draw_specification = { scale = 2, shift = { 0, -0.3 } },
icons_positioning = {
{ inventory_index = defines.inventory.assembling_machine_modules, shift = { 0, 1.25 } }
},
allowed_effects = { "consumption", "speed", "pollution", "quality" },
crafting_categories = { "wood-processing" },
crafting_speed = 2, crafting_speed = 2,
energy_usage = "1000kW", energy_source = energy_source,
energy_usage = "1MW",
effect_receiver = { base_effect = { productivity = 0.5 } },
surface_conditions = { surface_conditions = {
{ {
property = has_oxygen and "oxygen" or "pressure", property = has_oxygen and "oxygen" or "pressure",
min = 3 min = 3
}, },
{ {
property = "gravity", property = "gravity",
min = 1 min = 1
} }
} },
}) perceived_performance = { minimum = 0.25, performance_to_activity_rate = 0.25, maximum = 4 },
graphics_set = {
local lumber_mill_item = LumberMill.ItemBuilder:new() animation = {
:apply({ layers = {
{
filename = gfx .. "lumber-mill-shadow.png",
priority = "high",
width = 800,
height = 700,
frame_count = 1,
line_length = 1,
repeat_count = 80,
animation_speed = 0.32,
shift = util.by_pixel(0, -8),
draw_as_shadow = true,
scale = 0.5
},
{
priority = "high",
width = 525,
height = 557,
frame_count = 80,
lines_per_file = 8,
animation_speed = 0.32,
shift = util.by_pixel(0, -8),
scale = 0.5,
stripes = {
{
filename = gfx .. "lumber-mill-animation-1.png",
width_in_frames = 8,
height_in_frames = 8
},
{
filename = gfx .. "lumber-mill-animation-2.png",
width_in_frames = 8,
height_in_frames = 2
}
}
},
}
},
working_visualisations = {
{
fadeout = true,
animation = {
layers = {
{
priority = "high",
width = 525,
height = 557,
frame_count = 80,
lines_per_file = 8,
animation_speed = 0.32,
shift = util.by_pixel(0, -8),
scale = 0.5,
stripes = {
{
filename = gfx .. "lumber-mill-animation-1.png",
width_in_frames = 8,
height_in_frames = 8
},
{
filename = gfx .. "lumber-mill-animation-2.png",
width_in_frames = 8,
height_in_frames = 2
}
}
},
{
priority = "high",
draw_as_glow = true,
blend_mode = "additive",
width = 525,
height = 557,
frame_count = 80,
lines_per_file = 8,
animation_speed = 0.32,
shift = util.by_pixel(0, -8),
scale = 0.5,
stripes = {
{
filename = gfx .. "lumber-mill-emission-1.png",
width_in_frames = 8,
height_in_frames = 8
},
{
filename = gfx .. "lumber-mill-emission-2.png",
width_in_frames = 8,
height_in_frames = 2
}
}
}
}
}
}
}
},
open_sound = { filename = "__base__/sound/open-close/train-stop-open.ogg", volume = 0.6 },
close_sound = { filename = "__base__/sound/open-close/train-stop-close.ogg", volume = 0.5 },
working_sound = {
fade_in_ticks = 4,
fade_out_ticks = 20,
audible_distance_modifier = 0.6,
max_sounds_per_type = 2,
sound = { filename = "__space-age__/sound/entity/foundry/foundry.ogg", volume = 0.6 },
sound_accents = {
{ sound = { filename = Lignumis.sound .. "entity/lumber-mill/lumber-mill-saw-1.ogg", volume = 0.8 }, frame = 26, audible_distance_modifier = 0.5 },
{ sound = { filename = Lignumis.sound .. "entity/lumber-mill/lumber-mill-fall.ogg", volume = 1.2 }, frame = 42, audible_distance_modifier = 0.5 },
{ sound = { filename = Lignumis.sound .. "entity/lumber-mill/lumber-mill-saw-2.ogg", volume = 0.8 }, frame = 53, audible_distance_modifier = 0.4 },
{ sound = { filename = Lignumis.sound .. "entity/lumber-mill/lumber-mill-split.ogg", volume = 0.4 }, frame = 62, audible_distance_modifier = 0.3 },
{ sound = { variations = sound_variations(Lignumis.sound .. "entity/lumber-mill/lumber-mill-plank", 3, 0.5) }, frame = 14, audible_distance_modifier = 0.3 },
{ sound = { variations = sound_variations(Lignumis.sound .. "entity/lumber-mill/lumber-mill-plank", 3, 0.5) }, frame = 34, audible_distance_modifier = 0.3 },
{ sound = { variations = sound_variations(Lignumis.sound .. "entity/lumber-mill/lumber-mill-plank", 3, 0.5) }, frame = 54, audible_distance_modifier = 0.3 },
{ sound = { variations = sound_variations(Lignumis.sound .. "entity/lumber-mill/lumber-mill-plank", 3, 0.5) }, frame = 74, audible_distance_modifier = 0.3 },
}
}
},
{
type = "item",
name = name,
icon = Lignumis.graphics .. "icons/lumber-mill.png",
subgroup = "production-machine",
order = "eb[lumber-mill]",
inventory_move_sound = item_sounds.mechanical_large_inventory_move,
pick_sound = item_sounds.mechanical_large_inventory_pickup,
drop_sound = item_sounds.mechanical_large_inventory_move,
place_result = name,
stack_size = 20,
default_import_location = "lignumis", default_import_location = "lignumis",
order = "2[lumber-mill]" weight = 200 * kg
}) },
{
type = "recipe",
name = name,
category = "crafting",
additional_categories = { "wood-processing" },
enabled = false,
ingredients = table.trim({
{ type = "item", name = "stone-brick", amount = 40 },
{ type = "item", name = "lumber", amount = 50 },
{ type = "item", name = "wooden-gear-wheel", amount = 50 },
{ type = "item", name = "gold-plate", amount = basic_circuit_board and 20 or 40 },
basic_circuit_board and { type = "item", name = "basic-circuit-board", amount = 20 } or nil,
{ type = "item", name = "burner-assembling-machine", amount = 2 }
}),
energy_required = 60,
results = { { type = "item", name = name, amount = 1 } }
},
{
type = "technology",
name = name,
icon = Lignumis.graphics .. "technology/lumber-mill.png",
icon_size = 256,
prerequisites = electric_lumber_mill and { "automation-science-pack" } or { "steam-science-pack" },
unit = {
count = 250,
ingredients = electric_lumber_mill and {{ "automation-science-pack", 1 }} or {{ "wood-science-pack", 1 }, { "steam-science-pack", 1 }},
time = 15
}
}
})
LumberMill.RecipeBuilder:new() Recipe:new("lumber-mill")
:ingredients(table.trim({ :unlockedByTechnology("lumber-mill")
{ type = "item", name = "stone-brick", amount = 40 }, :clone("lumber-mill-copper")
{ type = "item", name = "lumber", amount = 50 }, :assign({
{ type = "item", name = "wooden-gear-wheel", amount = 50 }, ingredients = {
{ type = "item", name = "gold-plate", amount = basic_circuit_board and 20 or 40 }, { type = "item", name = "stone-brick", amount = 40 },
basic_circuit_board and { type = "item", name = "basic-circuit-board", amount = 20 } or nil, { type = "item", name = "lumber", amount = 50 },
{ type = "item", name = "burner-assembling-machine", amount = 2 } { type = "item", name = "wooden-gear-wheel", amount = 50 },
})) { type = "item", name = "copper-plate", amount = basic_circuit_board and 20 or 40 },
:apply({ { type = "item", name = basic_circuit_board and "basic-circuit-board" or "electronic-circuit", amount = 20 },
category = "wood-processing-or-assembling" { type = "item", name = "assembling-machine-1", amount = 2 }
}) },
LumberMill.TechnologyBuilder:new()
:prerequisites({ "steam-science-pack" })
:count(250)
:time(15)
:ingredients({ { "wood-science-pack", 1 }, { "steam-science-pack", 1 } })
:apply()
LumberMill.RecipeBuilder:new()
:ingredients({
{ type = "item", name = "stone-brick", amount = 40 },
{ type = "item", name = "lumber", amount = 50 },
{ type = "item", name = "wooden-gear-wheel", amount = 50 },
{ type = "item", name = "copper-plate", amount = basic_circuit_board and 20 or 40 },
{ type = "item", name = basic_circuit_board and "basic-circuit-board" or "electronic-circuit", amount = 20 },
{ type = "item", name = "assembling-machine-1", amount = 2 }
})
:apply({
name = "lumber-mill-copper",
localised_name = { "entity-name.lumber-mill" }, localised_name = { "entity-name.lumber-mill" },
category = "wood-processing-or-assembling",
icons = { icons = {
{ icon = lumber_mill_item.icon }, { icon = Lignumis.graphics .. "icons/lumber-mill.png" },
{ icon = basic_circuit_board and "__base__/graphics/icons/copper-plate.png" or "__base__/graphics/icons/electronic-circuit.png", scale = 0.25, shift = { 8, 8 } } { icon = basic_circuit_board and "__base__/graphics/icons/copper-plate.png" or "__base__/graphics/icons/electronic-circuit.png", scale = 0.25, shift = { 8, 8 } }
} }
}) })
:unlockedByTechnology(
electric_lumber_mill and "lumber-mill"
or basic_circuit_board and "copper-processing"
or "electronics"
)
:apply()
Technology:new(basic_circuit_board and "copper-processing" or "electronics"):addRecipe("lumber-mill-copper") Recipe:new("wooden-chest"):addCategory("wood-processing")
Recipe:new("small-electric-pole"):addCategory("wood-processing")

View file

@ -1,12 +1,16 @@
local item_sounds = require("__base__.prototypes.item_sounds") local item_sounds = require("__base__.prototypes.item_sounds")
if mods["wood-logistics"] and settings.startup["wood-logistics-lumber"].value then
return
end
data:extend({ data:extend({
{ {
type = "item", type = "item",
name = "lumber", name = "lumber",
icon = Lignumis.graphics .. "icons/lumber.png", icon = Lignumis.graphics .. "icons/lumber.png",
pictures = { pictures = {
{ filename = Lignumis.graphics .. "icons/lumber.png", size = 64, scale = 0.5 }, { filename = Lignumis.graphics .. "icons/lumber.png", size = 64, scale = 0.5 },
{ filename = Lignumis.graphics .. "icons/lumber-1.png", size = 64, scale = 0.5 }, { filename = Lignumis.graphics .. "icons/lumber-1.png", size = 64, scale = 0.5 },
{ filename = Lignumis.graphics .. "icons/lumber-2.png", size = 64, scale = 0.5 }, { filename = Lignumis.graphics .. "icons/lumber-2.png", size = 64, scale = 0.5 },
}, },
@ -23,11 +27,12 @@ data:extend({
{ {
type = "recipe", type = "recipe",
name = "lumber", name = "lumber",
category = "wood-processing-or-assembling", category = "crafting",
additional_categories = { "wood-processing" },
allow_productivity = true, allow_productivity = true,
allow_as_intermediate = true, allow_as_intermediate = true,
ingredients = { { type = "item", name = "wood", amount = 2 } }, ingredients = { { type = "item", name = "wood", amount = 2 } },
results = { { type = "item", name = "lumber", amount = 1 } }, results = { { type = "item", name = "lumber", amount = 1 } },
energy_required = 1 energy_required = 1
} }
}) })

View file

@ -100,17 +100,17 @@ emit("lab", "biolab", 20)
emit("locomotive", "locomotive", 200) emit("locomotive", "locomotive", 200)
emit_constant("locomotive", "locomotive", 10) emit_constant("locomotive", "locomotive", 10)
--emit_constant("transport-belt", "wood-transport-belt", 2) emit_constant("transport-belt", "wood-transport-belt", 2)
emit_constant("transport-belt", "transport-belt", 3) emit_constant("transport-belt", "transport-belt", 3)
emit_constant("transport-belt", "fast-transport-belt", 4) emit_constant("transport-belt", "fast-transport-belt", 4)
emit_constant("transport-belt", "express-transport-belt", 6) emit_constant("transport-belt", "express-transport-belt", 6)
emit_constant("transport-belt", "turbo-transport-belt", 8) emit_constant("transport-belt", "turbo-transport-belt", 8)
--emit_constant("underground-belt", "wood-underground-belt", 7.5) emit_constant("underground-belt", "wood-underground-belt", 7.5)
emit_constant("underground-belt", "underground-belt", 10) emit_constant("underground-belt", "underground-belt", 10)
emit_constant("underground-belt", "fast-underground-belt", 20) emit_constant("underground-belt", "fast-underground-belt", 20)
emit_constant("underground-belt", "express-underground-belt", 30) emit_constant("underground-belt", "express-underground-belt", 30)
emit_constant("underground-belt", "turbo-underground-belt", 40) emit_constant("underground-belt", "turbo-underground-belt", 40)
--emit_constant("splitter", "wood-splitter", 20) emit_constant("splitter", "wood-splitter", 20)
emit_constant("splitter", "splitter", 30) emit_constant("splitter", "splitter", 30)
emit_constant("splitter", "fast-splitter", 40) emit_constant("splitter", "fast-splitter", 40)
emit_constant("splitter", "express-splitter", 50) emit_constant("splitter", "express-splitter", 50)

View file

@ -77,7 +77,8 @@ QualityAssembler.EntityBuilder:new()
crafting_speed = 4, crafting_speed = 4,
module_slots = 6, module_slots = 6,
allowed_effects = { "consumption", "pollution", "quality" }, allowed_effects = { "consumption", "pollution", "quality" },
effect_receiver = { base_effect = { quality = 3.5 } } effect_receiver = { base_effect = { quality = 3.5 } },
crafting_categories = { "quality-assembling" }
}) })
QualityAssembler.ItemBuilder:new():apply() QualityAssembler.ItemBuilder:new():apply()
@ -91,7 +92,8 @@ QualityAssembler.RecipeBuilder:new()
{ type = "item", name = "quantum-processor", amount = 10 } { type = "item", name = "quantum-processor", amount = 10 }
}) })
:apply({ :apply({
category = "electromagnetics-or-quality-assembling", category = "electromagnetics",
additional_categories = { "quality-assembling" }
}) })
QualityAssembler.TechnologyBuilder:new() QualityAssembler.TechnologyBuilder:new()
@ -147,71 +149,49 @@ data:extend({
}, },
research_trigger = { type = "craft-item", item = "gold-quality-catalyst", count = 10000 }, research_trigger = { type = "craft-item", item = "gold-quality-catalyst", count = 10000 },
prerequisites = { "experienced-quality-assembling-1" } prerequisites = { "experienced-quality-assembling-1" }
},
{
type = "recipe-category",
name = "quality-assembling"
} }
}) })
local function convert_category(name) local function qa(recipeName)
local quality_name = name .. "-or-quality-assembling" local recipe = data.raw.recipe[recipeName]
data:extend({ recipe.additional_categories = recipe.additional_categories or {}
{ table.insert(recipe.additional_categories, "quality-assembling")
type = "recipe-category",
name = quality_name
}
})
for _, assembler in pairs(data.raw["assembling-machine"]) do
if assembler.crafting_categories and table.contains(assembler.crafting_categories, name) then
table.insert(assembler.crafting_categories, quality_name)
end
end
for _, character in pairs(data.raw["character"]) do
if character.crafting_categories and table.contains(character.crafting_categories, name) then
table.insert(character.crafting_categories, quality_name)
end
end
table.insert(data.raw["assembling-machine"]["quality-assembler"].crafting_categories, quality_name)
end end
convert_category("wood-processing-or-assembling")
convert_category("metallurgy-or-assembling")
convert_category("metallurgy")
convert_category("electronics")
convert_category("electronics-or-assembling")
convert_category("electromagnetics")
convert_category("organic-or-assembling")
convert_category("crafting")
convert_category("cryogenics-or-assembling")
-- Lignumis -- Lignumis
data.raw.recipe["lumber-mill"].category = "wood-processing-or-assembling-or-quality-assembling" qa("lumber-mill")
-- Nauvis -- Nauvis
data.raw.recipe["logistic-robot"].category = "crafting-or-quality-assembling" qa("logistic-robot")
data.raw.recipe["construction-robot"].category = "crafting-or-quality-assembling" qa("construction-robot")
data.raw.recipe["roboport"].category = "crafting-or-quality-assembling" qa("roboport")
data.raw.recipe["speed-module-3"].category = "electronics-or-quality-assembling" qa("speed-module-3")
data.raw.recipe["productivity-module-3"].category = "electronics-or-quality-assembling" qa("productivity-module-3")
data.raw.recipe["efficiency-module-3"].category = "electronics-or-quality-assembling" qa("efficiency-module-3")
data.raw.recipe["rocket-silo"].category = "crafting-or-quality-assembling" qa("rocket-silo")
data.raw.recipe["cargo-bay"].category = "crafting-or-quality-assembling" qa("cargo-bay")
data.raw.recipe["asteroid-collector"].category = "crafting-or-quality-assembling" qa("asteroid-collector")
data.raw.recipe["thruster"].category = "crafting-or-quality-assembling" qa("thruster")
-- Vulcanus -- Vulcanus
data.raw.recipe["foundry"].category = "metallurgy-or-assembling-or-quality-assembling" qa("foundry")
data.raw.recipe["big-mining-drill"].category = "metallurgy-or-quality-assembling" qa("big-mining-drill")
-- Fulgora -- Fulgora
data.raw.recipe["electromagnetic-plant"].category = "electronics-or-assembling-or-quality-assembling" qa("electromagnetic-plant")
data.raw.recipe["lightning-collector"].category = "electromagnetics-or-quality-assembling" qa("lightning-collector")
data.raw.recipe["mech-armor"].category = "crafting-or-quality-assembling" qa("mech-armor")
data.raw.recipe["quality-module-3"].category = "electronics-or-quality-assembling" qa("quality-module-3")
data.raw.recipe["recycler"].category = "crafting-or-quality-assembling" qa("recycler")
-- Gleba -- Gleba
data.raw.recipe["biochamber"].category = "organic-or-assembling-or-quality-assembling" qa("biochamber")
data.raw.recipe["stack-inserter"].category = "crafting-or-quality-assembling" qa("stack-inserter")
data.raw.recipe["spidertron"].category = "crafting-or-quality-assembling" qa("spidertron")
-- Aquilo -- Aquilo
data.raw.recipe["cryogenic-plant"].category = "cryogenics-or-assembling-or-quality-assembling" qa("cryogenic-plant")

View file

@ -20,7 +20,6 @@ assembling_machine.crafting_categories = {
"crafting", "crafting",
"electronics", "electronics",
"pressing", "pressing",
"wood-processing-or-assembling",
"organic-or-assembling", "organic-or-assembling",
"electronics-or-assembling", "electronics-or-assembling",
"metallurgy-or-assembling", "metallurgy-or-assembling",

View file

@ -144,7 +144,8 @@ data:extend({
{ {
type = "recipe", type = "recipe",
name = "wood-lab", name = "wood-lab",
category = "wood-processing-or-assembling", category = "crafting",
additional_categories = { "wood-processing" },
energy_required = 2, energy_required = 2,
ingredients = { ingredients = {
{ type = "item", name = "lumber", amount = 6 }, { type = "item", name = "lumber", amount = 6 },

View file

@ -3,6 +3,10 @@ local Belt = BeltFactory("wood", "brown", "slow")
local basic_circuit_board = settings.startup["lignumis-basic-circuit-board"].value local basic_circuit_board = settings.startup["lignumis-basic-circuit-board"].value
if mods["wood-logistics"] and settings.startup["wood-logistics-belts"].value then
return
end
Belt.EntityBuilder:new() Belt.EntityBuilder:new()
:itemsPerSecond(7.5) :itemsPerSecond(7.5)
:nextTier("") :nextTier("")
@ -58,13 +62,13 @@ Belt.RecipeBuilder:new()
}) })
:apply({ :apply({
transportBelt = { transportBelt = {
category = "wood-processing-or-assembling" additional_categories = { "wood-processing" }
}, },
undergroundBelt = { undergroundBelt = {
category = "wood-processing-or-assembling" additional_categories = { "wood-processing" }
}, },
splitter = { splitter = {
category = "wood-processing-or-assembling" additional_categories = { "wood-processing" }
} }
}) })
@ -91,7 +95,7 @@ if not basic_circuit_board then
{ icon = splitter_item.icon }, { icon = splitter_item.icon },
{ icon = "__base__/graphics/icons/electronic-circuit.png", scale = 0.25, shift = { 8, 8 } } { icon = "__base__/graphics/icons/electronic-circuit.png", scale = 0.25, shift = { 8, 8 } }
}, },
category = "wood-processing-or-assembling" additional_categories = { "wood-processing" }
} }
}) })
.splitter .splitter
@ -101,4 +105,4 @@ if not basic_circuit_board then
type = "unlock-recipe", type = "unlock-recipe",
recipe = "wood-splitter-electronic-circuit" recipe = "wood-splitter-electronic-circuit"
}) })
end end

View file

@ -82,7 +82,8 @@ data:extend({
{ {
type = "recipe", type = "recipe",
name = "wood-darts-magazine", name = "wood-darts-magazine",
category = "wood-processing-or-assembling", category = "crafting",
additional_categories = { "wood-processing" },
energy_required = 1, energy_required = 1,
ingredients = { { type = "item", name = "wood", amount = 2 } }, ingredients = { { type = "item", name = "wood", amount = 2 } },
results = { { type = "item", name = "wood-darts-magazine", amount = 1 } } results = { { type = "item", name = "wood-darts-magazine", amount = 1 } }

View file

@ -17,7 +17,8 @@ data:extend({
{ {
type = "recipe", type = "recipe",
name = "wooden-gear-wheel", name = "wooden-gear-wheel",
category = "wood-processing-or-assembling", category = "crafting",
additional_categories = { "wood-processing" },
ingredients = { { type = "item", name = "lumber", amount = 1 } }, ingredients = { { type = "item", name = "lumber", amount = 1 } },
results = { { type = "item", name = "wooden-gear-wheel", amount = 2 } }, results = { { type = "item", name = "wooden-gear-wheel", amount = 2 } },
allow_productivity = true allow_productivity = true

View file

@ -1,4 +1,4 @@
local recipe = data.raw.recipe["wooden-wall"] local recipe = data.raw.recipe["wooden-wall"]
recipe.ingredients = { { type = "item", name = "lumber", amount = 4 } } recipe.ingredients = { { type = "item", name = "lumber", amount = 4 } }
recipe.results = { { type = "item", name = "wooden-wall", amount = 1 } } recipe.results = { { type = "item", name = "wooden-wall", amount = 1 } }
recipe.category = "wood-processing-or-assembling" recipe.additional_categories = { "wood-processing" }

View file

@ -21,7 +21,8 @@ local drill_item = data.raw["item"]["burner-mining-drill"]
drill_item.icon = Lignumis.graphics .. "icons/burner-mining-drill.png" drill_item.icon = Lignumis.graphics .. "icons/burner-mining-drill.png"
local drill_recipe = data.raw["recipe"]["burner-mining-drill"] local drill_recipe = data.raw["recipe"]["burner-mining-drill"]
drill_recipe.category = "wood-processing-or-assembling" drill_recipe.category = "crafting"
drill_recipe.additional_categories = { "wood-processing" }
drill_recipe.ingredients = { drill_recipe.ingredients = {
{ type = "item", name = "stone-furnace", amount = 1 }, { type = "item", name = "stone-furnace", amount = 1 },
{ type = "item", name = "wooden-gear-wheel", amount = basic_circuit_board and 2 or 3 }, { type = "item", name = "wooden-gear-wheel", amount = basic_circuit_board and 2 or 3 },
@ -48,7 +49,7 @@ burner_inserter_recipe.ingredients = {
{ type = "item", name = "lumber", amount = 1 } { type = "item", name = "lumber", amount = 1 }
} }
if settings.startup["lignumis-lumber-mill-more-recipes"].value then if settings.startup["lignumis-lumber-mill-more-recipes"].value then
burner_inserter_recipe.category = "wood-processing-or-assembling" burner_inserter_recipe.additional_categories = { "wood-processing" }
end end
@ -69,7 +70,9 @@ if settings.startup["lignumis-vanilla-lab"].value then
Recipe:new("transport-belt"):unlockedByTechnology("iron-processing") Recipe:new("transport-belt"):unlockedByTechnology("iron-processing")
else else
Recipe:new("lab"):replaceIngredient("transport-belt", "wood-transport-belt") Recipe:new("lab"):replaceIngredient("transport-belt", "wood-transport-belt")
Recipe:new("transport-belt"):unlockedByTechnology("logistics") if not mods["wood-logistics"] or not settings.startup["wood-logistics-belts"].value then
Recipe:new("transport-belt"):unlockedByTechnology("logistics")
end
end end
@ -110,7 +113,7 @@ for _, tree in pairs(data.raw.tree) do
if not isRegularTree then goto continue end if not isRegularTree then goto continue end
tree.minable.result = nil tree.minable.result = nil
tree.minable.count = nil tree.minable.count = nil
local woodResult = { type = "item", name = "wood", amount = nil, amount_min = 2, amount_max = 10 } local woodResult = { type = "item", name = "wood", amount = nil, amount_min = 2, amount_max = 8 }
if minable.results and #woodResults > 0 then if minable.results and #woodResults > 0 then
table.assign(woodResults[1], woodResult) table.assign(woodResults[1], woodResult)
woodResults[1].amount = nil woodResults[1].amount = nil
@ -127,14 +130,7 @@ tree_plant.minable.count = nil
tree_plant.surface_conditions[1].min = 900 tree_plant.surface_conditions[1].min = 900
table.insert(tree_plant.autoplace.tile_restriction, "natural-gold-soil") table.insert(tree_plant.autoplace.tile_restriction, "natural-gold-soil")
if mods["Diversitree"] then
data.raw.plant["s6xdvt-fake-tree"].surface_conditions[1].min = 900
end
table.insert(data.raw["assembling-machine"]["assembling-machine-1"].crafting_categories, "wood-processing-or-assembling")
table.insert(data.raw["assembling-machine"]["assembling-machine-1"].crafting_categories, "organic-or-assembling") table.insert(data.raw["assembling-machine"]["assembling-machine-1"].crafting_categories, "organic-or-assembling")
table.insert(data.raw["assembling-machine"]["assembling-machine-2"].crafting_categories, "wood-processing-or-assembling")
table.insert(data.raw["assembling-machine"]["assembling-machine-3"].crafting_categories, "wood-processing-or-assembling")
-- Disable vanilla early game recipes -- Disable vanilla early game recipes
@ -224,6 +220,7 @@ robots_speed_technology_3.unit = {
ingredients = { { "automation-science-pack", 1 }, { "logistic-science-pack", 1 }, { "chemical-science-pack", 1 } }, ingredients = { { "automation-science-pack", 1 }, { "logistic-science-pack", 1 }, { "chemical-science-pack", 1 } },
time = 30 time = 30
} }
robots_speed_technology_3.upgrade = false
local robots_speed_technology_4 = data.raw.technology["worker-robots-speed-4"] local robots_speed_technology_4 = data.raw.technology["worker-robots-speed-4"]
robots_speed_technology_4.prerequisites = { "worker-robots-speed-3", "utility-science-pack" } robots_speed_technology_4.prerequisites = { "worker-robots-speed-3", "utility-science-pack" }
@ -334,35 +331,4 @@ if settings.startup["lignumis-fulgora-wood"].value then
if recycler.result_inventory_size < recycling_result_count then if recycler.result_inventory_size < recycling_result_count then
recycler.result_inventory_size = recycling_result_count recycler.result_inventory_size = recycling_result_count
end end
end end
-- Fix item weights
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)
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)
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)
set_default_weight("steel-plate", 400)
set_default_weight("steam-turbine", 10)

View file

@ -99,11 +99,18 @@ data:extend({
}, },
{ {
type = "bool-setting", type = "bool-setting",
name = "lignumis-sciences-spoil", name = "lignumis-electric-lumber-mill",
setting_type = "startup", setting_type = "startup",
default_value = false, default_value = false,
order = "o" order = "o"
}, },
{
type = "bool-setting",
name = "lignumis-sciences-spoil",
setting_type = "startup",
default_value = false,
order = "p"
},
{ {
type = "string-setting", type = "string-setting",
name = "lignumis-second-planet", name = "lignumis-second-planet",

View file

@ -1 +1,2 @@
require("wood-logistics")
require("wood-military") require("wood-military")

View file

@ -0,0 +1,8 @@
if not mods["wood-logistics"] then
return
end
local Settings = require("__cf-lib__/settings/Settings")
local force = Settings.force
force("wood-logistics-woodtronics", false)

View file

@ -2,10 +2,12 @@ if not mods["wood-military"] then
return return
end end
data.raw["bool-setting"]["wood-military-rockets"].default_value = false local Settings = require("__cf-lib__/settings/Settings")
data.raw["bool-setting"]["wood-military-artillery"].default_value = false local force = Settings.force
data.raw["bool-setting"]["wood-military-damage-buff"].default_value = false local default = Settings.default
data.raw["bool-setting"]["wood-military-armor"].hidden = true
data.raw["bool-setting"]["wood-military-armor"].forced_value = true default("wood-military-rockets", false)
data.raw["bool-setting"]["wood-military-nerf-start"].hidden = true default("wood-military-artillery", false)
data.raw["bool-setting"]["wood-military-nerf-start"].forced_value = true default("wood-military-damage-buff", false)
force("wood-military-armor", true)
force("wood-military-nerf-start", true)