Add Basic construction robots
| 
						 | 
					@ -6,7 +6,7 @@ Dive into the world of Lignumis, a moon of Nauvis offering only the most basic t
 | 
				
			||||||
 - Move wood and lumber to its own fuel category
 | 
					 - Move wood and lumber to its own fuel category
 | 
				
			||||||
 - Make seeds burnable again
 | 
					 - Make seeds burnable again
 | 
				
			||||||
 - Make rocket silo work (incl. transition to Nauvis)
 | 
					 - Make rocket silo work (incl. transition to Nauvis)
 | 
				
			||||||
 - Add ammo turret
 | 
					 - ~~Add ammo turret~~
 | 
				
			||||||
 - Add recipe for moist stromatolite remnants for regular furnace
 | 
					 - Add recipe for moist stromatolite remnants for regular furnace
 | 
				
			||||||
 - ~~Make enemies work~~
 | 
					 - ~~Make enemies work~~
 | 
				
			||||||
 - Make mod "Wooden logistics" optional
 | 
					 - Make mod "Wooden logistics" optional
 | 
				
			||||||
| 
						 | 
					@ -50,4 +50,8 @@ planetfall (https://mods.factorio.com/mod/ThemTharHills)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
CG-Matt (https://mods.factorio.com/mod/simple-wood-liquefaction)
 | 
					CG-Matt (https://mods.factorio.com/mod/simple-wood-liquefaction)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 - Wood liquefaction
 | 
					 - Wood liquefaction
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					daydev (https://mods.factorio.com/mod/EquipmentPlusPortableEngine)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 - Portable engine
 | 
				
			||||||
| 
						 | 
					@ -1,4 +1,9 @@
 | 
				
			||||||
---------------------------------------------------------------------------------------------------
 | 
					---------------------------------------------------------------------------------------------------
 | 
				
			||||||
 | 
					Version: 0.0.3
 | 
				
			||||||
 | 
					Date: 03.01.2025
 | 
				
			||||||
 | 
					  Changes:
 | 
				
			||||||
 | 
					    - Add Basic construction robots
 | 
				
			||||||
 | 
					---------------------------------------------------------------------------------------------------
 | 
				
			||||||
Version: 0.0.2
 | 
					Version: 0.0.2
 | 
				
			||||||
Date: 02.01.2025
 | 
					Date: 02.01.2025
 | 
				
			||||||
  Changes:
 | 
					  Changes:
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
		 After Width: | Height: | Size: 41 KiB  | 
| 
		 After Width: | Height: | Size: 197 KiB  | 
| 
		 After Width: | Height: | Size: 233 KiB  | 
| 
		 After Width: | Height: | Size: 41 KiB  | 
| 
		 After Width: | Height: | Size: 197 KiB  | 
| 
		 After Width: | Height: | Size: 234 KiB  | 
| 
		 After Width: | Height: | Size: 30 KiB  | 
| 
		 After Width: | Height: | Size: 30 KiB  | 
| 
		 After Width: | Height: | Size: 24 KiB  | 
| 
		 After Width: | Height: | Size: 24 KiB  | 
							
								
								
									
										
											BIN
										
									
								
								lignumis/graphics/icons/basic-construction-robot-copper.png
									
										
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 13 KiB  | 
							
								
								
									
										
											BIN
										
									
								
								lignumis/graphics/icons/basic-construction-robot-gold.png
									
										
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 13 KiB  | 
| 
		 After Width: | Height: | Size: 15 KiB  | 
| 
		 After Width: | Height: | Size: 15 KiB  | 
| 
		 After Width: | Height: | Size: 9.2 KiB  | 
| 
		 After Width: | Height: | Size: 9.2 KiB  | 
| 
		 After Width: | Height: | Size: 119 KiB  | 
| 
		 After Width: | Height: | Size: 119 KiB  | 
| 
						 | 
					@ -26,6 +26,14 @@ desiccation-furnace=Desiccation furnace
 | 
				
			||||||
steam-assembling-machine=Steam assembling machine
 | 
					steam-assembling-machine=Steam assembling machine
 | 
				
			||||||
provisional-rocket-silo=Provisional rocket silo
 | 
					provisional-rocket-silo=Provisional rocket silo
 | 
				
			||||||
basic-gun-turret=Basic gun turret
 | 
					basic-gun-turret=Basic gun turret
 | 
				
			||||||
 | 
					basic-construction-robot-gold=Basic construction robot (gold)
 | 
				
			||||||
 | 
					basic-construction-robot-copper=Basic construction robot (copper)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[equipment-name]
 | 
				
			||||||
 | 
					basic-portable-generator-equipment-gold=Basic portable generator equipment (gold)
 | 
				
			||||||
 | 
					basic-portable-generator-equipment-copper=Basic portable generator equipment (copper)
 | 
				
			||||||
 | 
					basic-personal-roboport-equipment-gold=Basic personal roboport equipment (gold)
 | 
				
			||||||
 | 
					basic-personal-roboport-equipment-copper=Basic personal roboport equipment (copper)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
[item-name]
 | 
					[item-name]
 | 
				
			||||||
wooden-gear-wheel=Wooden gear wheel
 | 
					wooden-gear-wheel=Wooden gear wheel
 | 
				
			||||||
| 
						 | 
					@ -64,6 +72,8 @@ steam-science-pack=Steam science pack
 | 
				
			||||||
wood-liquefaction=Wood liquefaction
 | 
					wood-liquefaction=Wood liquefaction
 | 
				
			||||||
provisional-rocketry=Provisional rocketry
 | 
					provisional-rocketry=Provisional rocketry
 | 
				
			||||||
basic-gun-turret=Basic gun turret
 | 
					basic-gun-turret=Basic gun turret
 | 
				
			||||||
 | 
					basic-construction-robotics-gold=Basic construction robotics (gold)
 | 
				
			||||||
 | 
					basic-construction-robotics-copper=Basic construction robotics (copper)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
[tile-name]
 | 
					[tile-name]
 | 
				
			||||||
wood-floor=Wood floor
 | 
					wood-floor=Wood floor
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										280
									
								
								lignumis/prototypes/content/basic-construction-robots.lua
									
										
									
									
									
										Normal file
									
								
							
							
						
						| 
						 | 
					@ -0,0 +1,280 @@
 | 
				
			||||||
 | 
					local item_sounds = require("__base__.prototypes.item_sounds")
 | 
				
			||||||
 | 
					local item_tints = require("__base__.prototypes.item-tints")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					local function robot(color)
 | 
				
			||||||
 | 
					    local result = util.copy(data.raw["construction-robot"]["construction-robot"])
 | 
				
			||||||
 | 
					    result.name = "basic-construction-robot-" .. color
 | 
				
			||||||
 | 
					    result.icon = "__lignumis__/graphics/icons/basic-construction-robot-" .. color .. ".png"
 | 
				
			||||||
 | 
					    result.minable.result = "basic-construction-robot-" .. color
 | 
				
			||||||
 | 
					    result.max_health = 50
 | 
				
			||||||
 | 
					    result.speed = 0.04
 | 
				
			||||||
 | 
					    result.max_energy = "2MJ"
 | 
				
			||||||
 | 
					    result.idle.filename = "__lignumis__/graphics/entity/basic-construction-robot/basic-construction-robot-" ..
 | 
				
			||||||
 | 
					        color .. ".png"
 | 
				
			||||||
 | 
					    result.in_motion.filename = "__lignumis__/graphics/entity/basic-construction-robot/basic-construction-robot-" ..
 | 
				
			||||||
 | 
					        color .. ".png"
 | 
				
			||||||
 | 
					    result.working.filename =
 | 
				
			||||||
 | 
					        "__lignumis__/graphics/entity/basic-construction-robot/basic-construction-robot-" .. color .. "-working.png"
 | 
				
			||||||
 | 
					    return result
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					local function robot_item(color, order)
 | 
				
			||||||
 | 
					    return {
 | 
				
			||||||
 | 
					        type = "item",
 | 
				
			||||||
 | 
					        name = "basic-construction-robot-" .. color,
 | 
				
			||||||
 | 
					        icon = "__lignumis__/graphics/icons/basic-construction-robot-" .. color .. ".png",
 | 
				
			||||||
 | 
					        subgroup = "logistic-network",
 | 
				
			||||||
 | 
					        order = "a[robot]-b" .. order .. "[basic-construction-robot-" .. color .. "]",
 | 
				
			||||||
 | 
					        inventory_move_sound = item_sounds.robotic_inventory_move,
 | 
				
			||||||
 | 
					        pick_sound = item_sounds.robotic_inventory_pickup,
 | 
				
			||||||
 | 
					        drop_sound = item_sounds.robotic_inventory_move,
 | 
				
			||||||
 | 
					        place_result = "basic-construction-robot-" .. color,
 | 
				
			||||||
 | 
					        stack_size = 50,
 | 
				
			||||||
 | 
					        random_tint_color = item_tints.iron_rust
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					local function robot_recipe(color, ingredients)
 | 
				
			||||||
 | 
					    return {
 | 
				
			||||||
 | 
					        type = "recipe",
 | 
				
			||||||
 | 
					        name = "basic-construction-robot-" .. color,
 | 
				
			||||||
 | 
					        enabled = false,
 | 
				
			||||||
 | 
					        energy_required = 10,
 | 
				
			||||||
 | 
					        ingredients = ingredients,
 | 
				
			||||||
 | 
					        results = { { type = "item", name = "basic-construction-robot-" .. color, amount = 1 } }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					local function generator(color)
 | 
				
			||||||
 | 
					    return {
 | 
				
			||||||
 | 
					        type = "generator-equipment",
 | 
				
			||||||
 | 
					        name = "basic-portable-generator-equipment-" .. color,
 | 
				
			||||||
 | 
					        sprite = {
 | 
				
			||||||
 | 
					            filename = "__lignumis__/graphics/equipment/basic-portable-generator-equipment-" ..
 | 
				
			||||||
 | 
					                color .. ".png",
 | 
				
			||||||
 | 
					            width = 128,
 | 
				
			||||||
 | 
					            height = 128,
 | 
				
			||||||
 | 
					            priority = "medium",
 | 
				
			||||||
 | 
					            scale = 0.5
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        shape = {
 | 
				
			||||||
 | 
					            width = 2,
 | 
				
			||||||
 | 
					            height = 2,
 | 
				
			||||||
 | 
					            type = "full"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        burner = {
 | 
				
			||||||
 | 
					            type = "burner",
 | 
				
			||||||
 | 
					            fuel_categories = { "chemical" },
 | 
				
			||||||
 | 
					            emissions_per_minute = { noise = 1, pollution = 1 },
 | 
				
			||||||
 | 
					            fuel_inventory_size = 2,
 | 
				
			||||||
 | 
					            smoke = {
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                    name = "smoke",
 | 
				
			||||||
 | 
					                    deviation = { 0.1, 0.1 },
 | 
				
			||||||
 | 
					                    frequency = 5,
 | 
				
			||||||
 | 
					                    position = { 0, 0 },
 | 
				
			||||||
 | 
					                    starting_vertical_speed = 0.08,
 | 
				
			||||||
 | 
					                    starting_frame_deviation = 60
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        energy_source = {
 | 
				
			||||||
 | 
					            type = "electric",
 | 
				
			||||||
 | 
					            usage_priority = "secondary-output",
 | 
				
			||||||
 | 
					            output_flow_limit = "200kW"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        power = "200kW",
 | 
				
			||||||
 | 
					        categories = { "armor" }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					local function generator_item(color, order)
 | 
				
			||||||
 | 
					    return {
 | 
				
			||||||
 | 
					        type = "item",
 | 
				
			||||||
 | 
					        name = "basic-portable-generator-equipment-" .. color,
 | 
				
			||||||
 | 
					        icon = "__lignumis__/graphics/icons/basic-portable-generator-equipment-" .. color .. ".png",
 | 
				
			||||||
 | 
					        subgroup = "equipment",
 | 
				
			||||||
 | 
					        order = "a[energy-source]-a" .. order .. "[basic-portable-generator-equipment-" .. color .. "]",
 | 
				
			||||||
 | 
					        inventory_move_sound = item_sounds.robotic_inventory_move,
 | 
				
			||||||
 | 
					        pick_sound = item_sounds.robotic_inventory_pickup,
 | 
				
			||||||
 | 
					        drop_sound = item_sounds.robotic_inventory_move,
 | 
				
			||||||
 | 
					        place_as_equipment_result = "basic-portable-generator-equipment-" .. color,
 | 
				
			||||||
 | 
					        stack_size = 10
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					local function generator_recipe(color, ingredients)
 | 
				
			||||||
 | 
					    return {
 | 
				
			||||||
 | 
					        type = "recipe",
 | 
				
			||||||
 | 
					        name = "basic-portable-generator-equipment-" .. color,
 | 
				
			||||||
 | 
					        enabled = false,
 | 
				
			||||||
 | 
					        energy_required = 10,
 | 
				
			||||||
 | 
					        ingredients = ingredients,
 | 
				
			||||||
 | 
					        results = { { type = "item", name = "basic-portable-generator-equipment-" .. color, amount = 1 } }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					local function roboport(color)
 | 
				
			||||||
 | 
					    local result = util.copy(data.raw["roboport-equipment"]["personal-roboport-equipment"])
 | 
				
			||||||
 | 
					    result.name = "basic-personal-roboport-equipment-" .. color
 | 
				
			||||||
 | 
					    result.take_result = "basic-personal-roboport-equipment-" .. color
 | 
				
			||||||
 | 
					    result.sprite.filename = "__lignumis__/graphics/equipment/basic-personal-roboport-equipment-" .. color .. ".png"
 | 
				
			||||||
 | 
					    result.energy_source.input_flow_limit = "400kW"
 | 
				
			||||||
 | 
					    result.energy_source.buffer_capacity = "10MJ"
 | 
				
			||||||
 | 
					    result.charging_energy = "500kW"
 | 
				
			||||||
 | 
					    return result
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					local function roboport_item(color, order)
 | 
				
			||||||
 | 
					    return {
 | 
				
			||||||
 | 
					        type = "item",
 | 
				
			||||||
 | 
					        name = "basic-personal-roboport-equipment-" .. color,
 | 
				
			||||||
 | 
					        icon = "__lignumis__/graphics/icons/basic-personal-roboport-equipment-" .. color .. ".png",
 | 
				
			||||||
 | 
					        place_as_equipment_result = "basic-personal-roboport-equipment-" .. color,
 | 
				
			||||||
 | 
					        subgroup = "utility-equipment",
 | 
				
			||||||
 | 
					        order = "e[robotics]-a" .. order .. "[basic-personal-roboport-equipment-" .. color .. "]",
 | 
				
			||||||
 | 
					        inventory_move_sound = item_sounds.roboport_inventory_move,
 | 
				
			||||||
 | 
					        pick_sound = item_sounds.roboport_inventory_pickup,
 | 
				
			||||||
 | 
					        drop_sound = item_sounds.roboport_inventory_move,
 | 
				
			||||||
 | 
					        stack_size = 10
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					local function roboport_recipe(color, ingredients)
 | 
				
			||||||
 | 
					    return {
 | 
				
			||||||
 | 
					        type = "recipe",
 | 
				
			||||||
 | 
					        name = "basic-personal-roboport-equipment-" .. color,
 | 
				
			||||||
 | 
					        enabled = false,
 | 
				
			||||||
 | 
					        energy_required = 10,
 | 
				
			||||||
 | 
					        ingredients = ingredients,
 | 
				
			||||||
 | 
					        results = { { type = "item", name = "basic-personal-roboport-equipment-" .. color, amount = 1 } }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					local gold_robot_technology = {
 | 
				
			||||||
 | 
					    type = "technology",
 | 
				
			||||||
 | 
					    name = "basic-construction-robotics-gold",
 | 
				
			||||||
 | 
					    icon = "__lignumis__/graphics/technology/basic-construction-robotics-gold.png",
 | 
				
			||||||
 | 
					    icon_size = 256,
 | 
				
			||||||
 | 
					    effects = {
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            type = "unlock-recipe",
 | 
				
			||||||
 | 
					            recipe = "basic-construction-robot-gold"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            type = "unlock-recipe",
 | 
				
			||||||
 | 
					            recipe = "basic-portable-generator-equipment-gold"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            type = "unlock-recipe",
 | 
				
			||||||
 | 
					            recipe = "basic-personal-roboport-equipment-gold"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            type = "create-ghost-on-entity-death",
 | 
				
			||||||
 | 
					            modifier = true
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    prerequisites = { "steam-science-pack" },
 | 
				
			||||||
 | 
					    unit = {
 | 
				
			||||||
 | 
					        count = 200,
 | 
				
			||||||
 | 
					        ingredients = {
 | 
				
			||||||
 | 
					            { "wood-science-pack",  1 },
 | 
				
			||||||
 | 
					            { "steam-science-pack", 1 }
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        time = 15
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					local copper_robot_technology = {
 | 
				
			||||||
 | 
					    type = "technology",
 | 
				
			||||||
 | 
					    name = "basic-construction-robotics-copper",
 | 
				
			||||||
 | 
					    icon = "__lignumis__/graphics/technology/basic-construction-robotics-copper.png",
 | 
				
			||||||
 | 
					    icon_size = 256,
 | 
				
			||||||
 | 
					    effects = {
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            type = "unlock-recipe",
 | 
				
			||||||
 | 
					            recipe = "basic-construction-robot-copper"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            type = "unlock-recipe",
 | 
				
			||||||
 | 
					            recipe = "basic-portable-generator-equipment-copper"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            type = "unlock-recipe",
 | 
				
			||||||
 | 
					            recipe = "basic-personal-roboport-equipment-copper"
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    prerequisites = { "basic-construction-robotics-gold", "automation-science-pack" },
 | 
				
			||||||
 | 
					    unit = {
 | 
				
			||||||
 | 
					        count = 200,
 | 
				
			||||||
 | 
					        ingredients = {
 | 
				
			||||||
 | 
					            { "automation-science-pack", 1 }
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        time = 15
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					data:extend({
 | 
				
			||||||
 | 
					    -- Gold
 | 
				
			||||||
 | 
					    robot("gold"),
 | 
				
			||||||
 | 
					    robot_item("gold", 0),
 | 
				
			||||||
 | 
					    robot_recipe("gold", {
 | 
				
			||||||
 | 
					        { type = "item", name = "gold-plate",        amount = 2 },
 | 
				
			||||||
 | 
					        { type = "item", name = "wooden-gear-wheel", amount = 5 },
 | 
				
			||||||
 | 
					        { type = "item", name = "gold-cable",        amount = 10 }
 | 
				
			||||||
 | 
					    }),
 | 
				
			||||||
 | 
					    generator("gold"),
 | 
				
			||||||
 | 
					    generator_item("gold", 0),
 | 
				
			||||||
 | 
					    generator_recipe("gold", {
 | 
				
			||||||
 | 
					        { type = "item", name = "gold-plate",        amount = 10 },
 | 
				
			||||||
 | 
					        { type = "item", name = "wooden-gear-wheel", amount = 10 }
 | 
				
			||||||
 | 
					    }),
 | 
				
			||||||
 | 
					    roboport("gold"),
 | 
				
			||||||
 | 
					    roboport_item("gold", 0),
 | 
				
			||||||
 | 
					    roboport_recipe("gold", {
 | 
				
			||||||
 | 
					        { type = "item", name = "gold-plate",        amount = 10 },
 | 
				
			||||||
 | 
					        { type = "item", name = "wooden-gear-wheel", amount = 10 }
 | 
				
			||||||
 | 
					    }),
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    -- Copper
 | 
				
			||||||
 | 
					    robot("copper"),
 | 
				
			||||||
 | 
					    robot_item("copper", 1),
 | 
				
			||||||
 | 
					    robot_recipe("copper", {
 | 
				
			||||||
 | 
					        { type = "item", name = "iron-plate",         amount = 2 },
 | 
				
			||||||
 | 
					        { type = "item", name = "iron-gear-wheel",    amount = 5 },
 | 
				
			||||||
 | 
					        { type = "item", name = "electronic-circuit", amount = 10 }
 | 
				
			||||||
 | 
					    }),
 | 
				
			||||||
 | 
					    generator("copper"),
 | 
				
			||||||
 | 
					    generator_item("copper", 1),
 | 
				
			||||||
 | 
					    generator_recipe("copper", {
 | 
				
			||||||
 | 
					        { type = "item", name = "copper-plate",    amount = 10 },
 | 
				
			||||||
 | 
					        { type = "item", name = "iron-gear-wheel", amount = 10 }
 | 
				
			||||||
 | 
					    }),
 | 
				
			||||||
 | 
					    roboport("copper"),
 | 
				
			||||||
 | 
					    roboport_item("copper", 1),
 | 
				
			||||||
 | 
					    roboport_recipe("copper", {
 | 
				
			||||||
 | 
					        { type = "item", name = "copper-plate",       amount = 10 },
 | 
				
			||||||
 | 
					        { type = "item", name = "iron-gear-wheel",    amount = 10 },
 | 
				
			||||||
 | 
					        { type = "item", name = "electronic-circuit", amount = 20 }
 | 
				
			||||||
 | 
					    }),
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    -- Technology
 | 
				
			||||||
 | 
					    gold_robot_technology,
 | 
				
			||||||
 | 
					    copper_robot_technology,
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    -- Equipment grids
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        type = "equipment-grid",
 | 
				
			||||||
 | 
					        name = "very-small-equipment-grid",
 | 
				
			||||||
 | 
					        width = 4,
 | 
				
			||||||
 | 
					        height = 4,
 | 
				
			||||||
 | 
					        equipment_categories = { "armor" }
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        type = "equipment-grid",
 | 
				
			||||||
 | 
					        name = "tiny-equipment-grid",
 | 
				
			||||||
 | 
					        width = 4,
 | 
				
			||||||
 | 
					        height = 2,
 | 
				
			||||||
 | 
					        equipment_categories = { "armor" }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					})
 | 
				
			||||||
| 
						 | 
					@ -16,5 +16,6 @@ require("steam-science")
 | 
				
			||||||
require("wood-liquefaction")
 | 
					require("wood-liquefaction")
 | 
				
			||||||
require("wooden-rocket-silo")
 | 
					require("wooden-rocket-silo")
 | 
				
			||||||
require("basic-gun-turret")
 | 
					require("basic-gun-turret")
 | 
				
			||||||
 | 
					require("basic-construction-robots")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
require("noise")
 | 
					require("noise")
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -5,7 +5,7 @@ data:extend({
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
        type = "tool",
 | 
					        type = "tool",
 | 
				
			||||||
        name = "steam-science-pack",
 | 
					        name = "steam-science-pack",
 | 
				
			||||||
        localised_description = {"item-description.science-pack"},
 | 
					        localised_description = { "item-description.science-pack" },
 | 
				
			||||||
        icon = "__lignumis__/graphics/icons/steam-science-pack.png",
 | 
					        icon = "__lignumis__/graphics/icons/steam-science-pack.png",
 | 
				
			||||||
        subgroup = "science-pack",
 | 
					        subgroup = "science-pack",
 | 
				
			||||||
        color_hint = { text = "A" },
 | 
					        color_hint = { text = "A" },
 | 
				
			||||||
| 
						 | 
					@ -28,8 +28,8 @@ data:extend({
 | 
				
			||||||
        enabled = false,
 | 
					        enabled = false,
 | 
				
			||||||
        energy_required = 20,
 | 
					        energy_required = 20,
 | 
				
			||||||
        ingredients = {
 | 
					        ingredients = {
 | 
				
			||||||
            { type = "item", name = "gold-plate", amount = 2 },
 | 
					            { type = "item",  name = "gold-plate", amount = 2 },
 | 
				
			||||||
            { type = "fluid", name = "steam", amount = 10 }
 | 
					            { type = "fluid", name = "steam",      amount = 10 }
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        results = { { type = "item", name = "steam-science-pack", amount = 2 } },
 | 
					        results = { { type = "item", name = "steam-science-pack", amount = 2 } },
 | 
				
			||||||
        crafting_machine_tint = {
 | 
					        crafting_machine_tint = {
 | 
				
			||||||
| 
						 | 
					@ -37,5 +37,24 @@ data:extend({
 | 
				
			||||||
            secondary = { r = 0.65, g = 0.27, b = 0.18, a = 1.000 },
 | 
					            secondary = { r = 0.65, g = 0.27, b = 0.18, a = 1.000 },
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        allow_productivity = true
 | 
					        allow_productivity = true
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        type = "technology",
 | 
				
			||||||
 | 
					        name = "steam-science-pack",
 | 
				
			||||||
 | 
					        icon = "__lignumis__/graphics/technology/steam-science-pack.png",
 | 
				
			||||||
 | 
					        icon_size = 256,
 | 
				
			||||||
 | 
					        essential = true,
 | 
				
			||||||
 | 
					        effects = {
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					                type = "unlock-recipe",
 | 
				
			||||||
 | 
					                recipe = "steam-science-pack"
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        prerequisites = { "steam-automation" },
 | 
				
			||||||
 | 
					        unit = {
 | 
				
			||||||
 | 
					            count = 20,
 | 
				
			||||||
 | 
					            ingredients = { { "wood-science-pack", 1 } },
 | 
				
			||||||
 | 
					            time = 15
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
})
 | 
					})
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -5,7 +5,7 @@ data:extend({
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
        type = "tool",
 | 
					        type = "tool",
 | 
				
			||||||
        name = "wood-science-pack",
 | 
					        name = "wood-science-pack",
 | 
				
			||||||
        localised_description = {"item-description.science-pack"},
 | 
					        localised_description = { "item-description.science-pack" },
 | 
				
			||||||
        icon = "__lignumis__/graphics/icons/wood-science-pack.png",
 | 
					        icon = "__lignumis__/graphics/icons/wood-science-pack.png",
 | 
				
			||||||
        subgroup = "science-pack",
 | 
					        subgroup = "science-pack",
 | 
				
			||||||
        color_hint = { text = "A" },
 | 
					        color_hint = { text = "A" },
 | 
				
			||||||
| 
						 | 
					@ -28,7 +28,7 @@ data:extend({
 | 
				
			||||||
        energy_required = 5,
 | 
					        energy_required = 5,
 | 
				
			||||||
        ingredients = {
 | 
					        ingredients = {
 | 
				
			||||||
            { type = "item", name = "wooden-gear-wheel", amount = 1 },
 | 
					            { type = "item", name = "wooden-gear-wheel", amount = 1 },
 | 
				
			||||||
            { type = "item", name = "stone-brick", amount = 1 }
 | 
					            { type = "item", name = "stone-brick",       amount = 1 }
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        results = { { type = "item", name = "wood-science-pack", amount = 1 } },
 | 
					        results = { { type = "item", name = "wood-science-pack", amount = 1 } },
 | 
				
			||||||
        crafting_machine_tint = {
 | 
					        crafting_machine_tint = {
 | 
				
			||||||
| 
						 | 
					@ -36,5 +36,29 @@ data:extend({
 | 
				
			||||||
            secondary = { r = 0.65, g = 0.27, b = 0.18, a = 1.000 },
 | 
					            secondary = { r = 0.65, g = 0.27, b = 0.18, a = 1.000 },
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        allow_productivity = true
 | 
					        allow_productivity = true
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					        type = "technology",
 | 
				
			||||||
 | 
					        name = "wood-science-pack",
 | 
				
			||||||
 | 
					        icon = "__lignumis__/graphics/technology/wood-science-pack.png",
 | 
				
			||||||
 | 
					        icon_size = 256,
 | 
				
			||||||
 | 
					        essential = true,
 | 
				
			||||||
 | 
					        effects =
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					                type = "unlock-recipe",
 | 
				
			||||||
 | 
					                recipe = "wood-lab"
 | 
				
			||||||
 | 
					            },
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					                type = "unlock-recipe",
 | 
				
			||||||
 | 
					                recipe = "wood-science-pack"
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        research_trigger =
 | 
				
			||||||
 | 
					        {
 | 
				
			||||||
 | 
					            type = "craft-item",
 | 
				
			||||||
 | 
					            item = "lumber",
 | 
				
			||||||
 | 
					            count = 10
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
})
 | 
					})
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,3 +1,4 @@
 | 
				
			||||||
require("vanilla")
 | 
					require("vanilla")
 | 
				
			||||||
require("Wood-Walls")
 | 
					require("Wood-Walls")
 | 
				
			||||||
require("wood-logistics")
 | 
					require("wood-logistics")
 | 
				
			||||||
 | 
					require("wood-military")
 | 
				
			||||||
| 
						 | 
					@ -16,8 +16,8 @@ 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.ingredients = {
 | 
					drill_recipe.ingredients = {
 | 
				
			||||||
    { type = "item", name = "wooden-gear-wheel", amount = 3 },
 | 
					    { type = "item", name = "wooden-gear-wheel", amount = 3 },
 | 
				
			||||||
    { type = "item", name = "stone-furnace", amount = 1 },
 | 
					    { type = "item", name = "stone-furnace",     amount = 1 },
 | 
				
			||||||
    { type = "item", name = "lumber", amount = 3 }
 | 
					    { type = "item", name = "lumber",            amount = 3 }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -34,7 +34,7 @@ data.raw.item["burner-inserter"].icon = "__lignumis__/graphics/icons/burner-inse
 | 
				
			||||||
 | 
					
 | 
				
			||||||
data.raw.recipe["burner-inserter"].ingredients = {
 | 
					data.raw.recipe["burner-inserter"].ingredients = {
 | 
				
			||||||
    { type = "item", name = "wooden-gear-wheel", amount = 1 },
 | 
					    { type = "item", name = "wooden-gear-wheel", amount = 1 },
 | 
				
			||||||
    { type = "item", name = "lumber", amount = 1 }
 | 
					    { type = "item", name = "lumber",            amount = 1 }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -117,4 +117,50 @@ landfill_technology.unit = {
 | 
				
			||||||
    count = 50,
 | 
					    count = 50,
 | 
				
			||||||
    ingredients = { { "wood-science-pack", 1 } },
 | 
					    ingredients = { { "wood-science-pack", 1 } },
 | 
				
			||||||
    time = 15
 | 
					    time = 15
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					local robots_speed_technology_1 = data.raw.technology["worker-robots-speed-1"]
 | 
				
			||||||
 | 
					robots_speed_technology_1.prerequisites = { "provisional-rocketry", "basic-construction-robotics-gold" }
 | 
				
			||||||
 | 
					robots_speed_technology_1.unit = {
 | 
				
			||||||
 | 
					    count = 100,
 | 
				
			||||||
 | 
					    ingredients = { { "wood-science-pack", 1 }, { "steam-science-pack", 1 } },
 | 
				
			||||||
 | 
					    time = 15
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					local robots_speed_technology_2 = data.raw.technology["worker-robots-speed-2"]
 | 
				
			||||||
 | 
					robots_speed_technology_2.prerequisites = {
 | 
				
			||||||
 | 
					    "worker-robots-speed-1",
 | 
				
			||||||
 | 
					    "logistic-science-pack"
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					robots_speed_technology_2.unit = {
 | 
				
			||||||
 | 
					    count = 100,
 | 
				
			||||||
 | 
					    ingredients = { { "automation-science-pack", 1 }, { "logistic-science-pack", 1 } },
 | 
				
			||||||
 | 
					    time = 30
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					local robots_speed_technology_3 = data.raw.technology["worker-robots-speed-3"]
 | 
				
			||||||
 | 
					robots_speed_technology_3.prerequisites = { "worker-robots-speed-2", "chemical-science-pack" }
 | 
				
			||||||
 | 
					robots_speed_technology_3.unit = {
 | 
				
			||||||
 | 
					    count = 150,
 | 
				
			||||||
 | 
					    ingredients = { { "automation-science-pack", 1 }, { "logistic-science-pack", 1 }, { "chemical-science-pack", 1 } },
 | 
				
			||||||
 | 
					    time = 30
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					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.unit.ingredients = {
 | 
				
			||||||
 | 
					    { "automation-science-pack", 1 },
 | 
				
			||||||
 | 
					    { "logistic-science-pack",   1 },
 | 
				
			||||||
 | 
					    { "chemical-science-pack",   1 },
 | 
				
			||||||
 | 
					    { "utility-science-pack",    1 }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					-- Equipment
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					data.raw.armor["light-armor"].equipment_grid = "tiny-equipment-grid"
 | 
				
			||||||
 | 
					data.raw.armor["heavy-armor"].equipment_grid = "very-small-equipment-grid"
 | 
				
			||||||
 | 
					data.raw["equipment-grid"]["small-equipment-grid"].width = 6
 | 
				
			||||||
 | 
					data.raw["equipment-grid"]["small-equipment-grid"].height = 6
 | 
				
			||||||
 | 
					data.raw["equipment-grid"]["medium-equipment-grid"].width = 8
 | 
				
			||||||
 | 
					data.raw["equipment-grid"]["medium-equipment-grid"].height = 8
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										1
									
								
								lignumis/prototypes/integrations/wood-military.lua
									
										
									
									
									
										Normal file
									
								
							
							
						
						| 
						 | 
					@ -0,0 +1 @@
 | 
				
			||||||
 | 
					data.raw.armor["wood-armor"].equipment_grid = "tiny-equipment-grid"
 | 
				
			||||||
| 
						 | 
					@ -1,28 +1,4 @@
 | 
				
			||||||
data:extend({
 | 
					data:extend({
 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
        type = "technology",
 | 
					 | 
				
			||||||
        name = "wood-science-pack",
 | 
					 | 
				
			||||||
        icon = "__lignumis__/graphics/technology/wood-science-pack.png",
 | 
					 | 
				
			||||||
        icon_size = 256,
 | 
					 | 
				
			||||||
        essential = true,
 | 
					 | 
				
			||||||
        effects =
 | 
					 | 
				
			||||||
        {
 | 
					 | 
				
			||||||
            {
 | 
					 | 
				
			||||||
                type = "unlock-recipe",
 | 
					 | 
				
			||||||
                recipe = "wood-lab"
 | 
					 | 
				
			||||||
            },
 | 
					 | 
				
			||||||
            {
 | 
					 | 
				
			||||||
                type = "unlock-recipe",
 | 
					 | 
				
			||||||
                recipe = "wood-science-pack"
 | 
					 | 
				
			||||||
            }
 | 
					 | 
				
			||||||
        },
 | 
					 | 
				
			||||||
        research_trigger =
 | 
					 | 
				
			||||||
        {
 | 
					 | 
				
			||||||
            type = "craft-item",
 | 
					 | 
				
			||||||
            item = "lumber",
 | 
					 | 
				
			||||||
            count = 10
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
        type = "technology",
 | 
					        type = "technology",
 | 
				
			||||||
        name = "planet-discovery-nauvis",
 | 
					        name = "planet-discovery-nauvis",
 | 
				
			||||||
| 
						 | 
					@ -73,11 +49,6 @@ data:extend({
 | 
				
			||||||
            },
 | 
					            },
 | 
				
			||||||
            time = 15
 | 
					            time = 15
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        --research_trigger = {
 | 
					 | 
				
			||||||
        --    type = "craft-item",
 | 
					 | 
				
			||||||
        --    item = "iron-ore",
 | 
					 | 
				
			||||||
        --    count = 10
 | 
					 | 
				
			||||||
        --}
 | 
					 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
        type = "technology",
 | 
					        type = "technology",
 | 
				
			||||||
| 
						 | 
					@ -104,11 +75,6 @@ data:extend({
 | 
				
			||||||
            },
 | 
					            },
 | 
				
			||||||
            time = 15
 | 
					            time = 15
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        --research_trigger = {
 | 
					 | 
				
			||||||
        --    type = "craft-item",
 | 
					 | 
				
			||||||
        --    item = "copper-ore",
 | 
					 | 
				
			||||||
        --    count = 10
 | 
					 | 
				
			||||||
        --}
 | 
					 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
        type = "technology",
 | 
					        type = "technology",
 | 
				
			||||||
| 
						 | 
					@ -144,25 +110,6 @@ data:extend({
 | 
				
			||||||
            time = 15
 | 
					            time = 15
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
        type = "technology",
 | 
					 | 
				
			||||||
        name = "steam-science-pack",
 | 
					 | 
				
			||||||
        icon = "__lignumis__/graphics/technology/steam-science-pack.png",
 | 
					 | 
				
			||||||
        icon_size = 256,
 | 
					 | 
				
			||||||
        essential = true,
 | 
					 | 
				
			||||||
        effects = {
 | 
					 | 
				
			||||||
            {
 | 
					 | 
				
			||||||
                type = "unlock-recipe",
 | 
					 | 
				
			||||||
                recipe = "steam-science-pack"
 | 
					 | 
				
			||||||
            }
 | 
					 | 
				
			||||||
        },
 | 
					 | 
				
			||||||
        prerequisites = { "steam-automation" },
 | 
					 | 
				
			||||||
        unit = {
 | 
					 | 
				
			||||||
            count = 20,
 | 
					 | 
				
			||||||
            ingredients = { { "wood-science-pack", 1 } },
 | 
					 | 
				
			||||||
            time = 15
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
        type = "technology",
 | 
					        type = "technology",
 | 
				
			||||||
        name = "provisional-rocketry",
 | 
					        name = "provisional-rocketry",
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||