Co-authored-by: Simon Brodtmann <github@accounts.brodtmann.info>
Co-authored-by: MAGGen <maggen@noreply.example.org>
Reviewed-on: #1
Co-authored-by: odnols <gusbra21@outlook.com>
Co-committed-by: odnols <gusbra21@outlook.com>
This commit is contained in:
odnols 2025-11-15 20:19:20 +01:00 committed by Slondo
parent 35f9f32e79
commit e535518f76
9 changed files with 218 additions and 159 deletions

3
.editorconfig Normal file
View file

@ -0,0 +1,3 @@
[*]
indent_style = space
indent_size = 2

View file

@ -1,4 +1,25 @@
--------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------
Version: 2.0.30
Date: 05.11.2025
Bug Fixes:
- Fix icon scales
---------------------------------------------------------------------------------------------------
Version: 2.0.29
Date: 02.11.2025
Bug Fixes:
- Remove settings check for wooden rails
---------------------------------------------------------------------------------------------------
Version: 2.0.28
Date: 01.11.2025
Changes:
- Add wooden rails again (thanks MAGGen)
---------------------------------------------------------------------------------------------------
Version: 2.0.27
Date: 21.10.2025
Changes:
- Brazilian translation improvements (thanks Slondo)
- Upscaled graphics of the huge wooden power poles
---------------------------------------------------------------------------------------------------
Version: 2.0.26 Version: 2.0.26
Date: 21.10.2025 Date: 21.10.2025
Changes: Changes:

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 69 KiB

Before After
Before After

View file

@ -1,6 +1,6 @@
{ {
"name": "Bio_Industries_2", "name": "Bio_Industries_2",
"version": "2.0.26", "version": "2.0.30",
"factorio_version": "2.0", "factorio_version": "2.0",
"title": "Bio Industries", "title": "Bio Industries",
"author": "TheSAguy - Had a few Ideas, Pi-C (Programming Genius), Snouz (Graphics Wizard), Cackling Fiend - Conversion to F2.0", "author": "TheSAguy - Had a few Ideas, Pi-C (Programming Genius), Snouz (Graphics Wizard), Cackling Fiend - Conversion to F2.0",

View file

@ -13,10 +13,10 @@ data:extend(
name = "bi-seed", name = "bi-seed",
icons = { {icon = ICONPATH .. "bio_seed.png", icon_size = 64, }}, icons = { {icon = ICONPATH .. "bio_seed.png", icon_size = 64, }},
pictures = { pictures = {
{ size = 64, filename = ICONPATHMIPS.."bio_seed_1.png", scale = 0.25, mipmap_count = 4 }, { size = 64, filename = ICONPATHMIPS.."bio_seed_1.png", scale = 0.48, mipmap_count = 4 },
{ size = 64, filename = ICONPATHMIPS.."bio_seed_2.png", scale = 0.25, mipmap_count = 4 }, { size = 64, filename = ICONPATHMIPS.."bio_seed_2.png", scale = 0.46, mipmap_count = 4 },
{ size = 64, filename = ICONPATHMIPS.."bio_seed_3.png", scale = 0.25, mipmap_count = 4 }, { size = 64, filename = ICONPATHMIPS.."bio_seed_3.png", scale = 0.45, mipmap_count = 4 },
{ size = 64, filename = ICONPATHMIPS.."bio_seed_4.png", scale = 0.25, mipmap_count = 4 } { size = 64, filename = ICONPATHMIPS.."bio_seed_4.png", scale = 0.43, mipmap_count = 4 }
}, },
category = "biofarm-mod-greenhouse", category = "biofarm-mod-greenhouse",
subgroup = "bio-bio-farm", subgroup = "bio-bio-farm",
@ -35,15 +35,15 @@ data:extend(
localised_description = {"entity-description.seedling"}, localised_description = {"entity-description.seedling"},
icons = { {icon = ICONPATH .. "Seedling.png", icon_size = 64, }}, icons = { {icon = ICONPATH .. "Seedling.png", icon_size = 64, }},
pictures = { pictures = {
{ size = 64, filename = ICONPATHMIPS.."seedling_1.png", scale = 0.25, mipmap_count = 9 }, { size = 64, filename = ICONPATHMIPS.."seedling_1.png", scale = 0.57, mipmap_count = 9 },
{ size = 64, filename = ICONPATHMIPS.."seedling_2.png", scale = 0.25, mipmap_count = 9 }, { size = 64, filename = ICONPATHMIPS.."seedling_2.png", scale = 0.52, mipmap_count = 9 },
{ size = 64, filename = ICONPATHMIPS.."seedling_3.png", scale = 0.25, mipmap_count = 9 }, { size = 64, filename = ICONPATHMIPS.."seedling_3.png", scale = 0.47, mipmap_count = 9 },
{ size = 64, filename = ICONPATHMIPS.."seedling_4.png", scale = 0.25, mipmap_count = 9 }, { size = 64, filename = ICONPATHMIPS.."seedling_4.png", scale = 0.52, mipmap_count = 9 },
{ size = 64, filename = ICONPATHMIPS.."seedling_5.png", scale = 0.25, mipmap_count = 9 }, { size = 64, filename = ICONPATHMIPS.."seedling_5.png", scale = 0.62, mipmap_count = 9 },
{ size = 64, filename = ICONPATHMIPS.."seedling_6.png", scale = 0.25, mipmap_count = 9 }, { size = 64, filename = ICONPATHMIPS.."seedling_6.png", scale = 0.52, mipmap_count = 9 },
{ size = 64, filename = ICONPATHMIPS.."seedling_7.png", scale = 0.25, mipmap_count = 9 }, { size = 64, filename = ICONPATHMIPS.."seedling_7.png", scale = 0.72, mipmap_count = 9 },
{ size = 64, filename = ICONPATHMIPS.."seedling_8.png", scale = 0.25, mipmap_count = 9 }, { size = 64, filename = ICONPATHMIPS.."seedling_8.png", scale = 0.52, mipmap_count = 9 },
{ size = 64, filename = ICONPATHMIPS.."seedling_9.png", scale = 0.25, mipmap_count = 9 } { size = 64, filename = ICONPATHMIPS.."seedling_9.png", scale = 0.47, mipmap_count = 9 }
}, },
subgroup = "bio-bio-farm", subgroup = "bio-bio-farm",
order = "x[bi]-b[bi-seedling]", order = "x[bi]-b[bi-seedling]",
@ -114,10 +114,10 @@ data:extend(
name = "bi-woodpulp", name = "bi-woodpulp",
icons = { {icon = ICONPATH .. "woodpulp_64.png", icon_size = 64, }}, icons = { {icon = ICONPATH .. "woodpulp_64.png", icon_size = 64, }},
pictures = { pictures = {
{ size = 64, filename = ICONPATHMIPS.."woodpulp_1.png", scale = 0.2, mipmap_count = 4 }, { size = 64, filename = ICONPATHMIPS.."woodpulp_1.png", scale = 0.55, mipmap_count = 4 },
{ size = 64, filename = ICONPATHMIPS.."woodpulp_2.png", scale = 0.2, mipmap_count = 4 }, { size = 64, filename = ICONPATHMIPS.."woodpulp_2.png", scale = 0.53, mipmap_count = 4 },
{ size = 64, filename = ICONPATHMIPS.."woodpulp_3.png", scale = 0.2, mipmap_count = 4 }, { size = 64, filename = ICONPATHMIPS.."woodpulp_3.png", scale = 0.51, mipmap_count = 4 },
{ size = 64, filename = ICONPATHMIPS.."woodpulp_4.png", scale = 0.2, mipmap_count = 4 } { size = 64, filename = ICONPATHMIPS.."woodpulp_4.png", scale = 0.49, mipmap_count = 4 }
}, },
fuel_value = "1MJ", fuel_value = "1MJ",
fuel_category = "chemical", fuel_category = "chemical",
@ -147,10 +147,10 @@ data:extend(
name = "bi-ash", name = "bi-ash",
icons = { {icon = ICONPATH .. "ash.png", icon_size = 64, }}, icons = { {icon = ICONPATH .. "ash.png", icon_size = 64, }},
pictures = { pictures = {
{ size = 64, filename = ICONPATHMIPS.."ash_1.png", scale = 0.2, mipmap_count = 4 }, { size = 64, filename = ICONPATHMIPS.."ash_1.png", scale = 0.42, mipmap_count = 4 },
{ size = 64, filename = ICONPATHMIPS.."ash_2.png", scale = 0.2, mipmap_count = 4 }, { size = 64, filename = ICONPATHMIPS.."ash_2.png", scale = 0.42, mipmap_count = 4 },
{ size = 64, filename = ICONPATHMIPS.."ash_3.png", scale = 0.2, mipmap_count = 4 }, { size = 64, filename = ICONPATHMIPS.."ash_3.png", scale = 0.42, mipmap_count = 4 },
{ size = 64, filename = ICONPATHMIPS.."ash_4.png", scale = 0.2, mipmap_count = 4 } { size = 64, filename = ICONPATHMIPS.."ash_4.png", scale = 0.42, mipmap_count = 4 }
}, },
subgroup = "raw-material", subgroup = "raw-material",
order = "a[bi]-a-b[bi-ash]", order = "a[bi]-a-b[bi-ash]",
@ -164,10 +164,10 @@ data:extend(
name = "wood-charcoal", name = "wood-charcoal",
icons = { {icon = ICONPATH .. "charcoal.png", icon_size = 64, }}, icons = { {icon = ICONPATH .. "charcoal.png", icon_size = 64, }},
pictures = { pictures = {
{ size = 64, filename = ICONPATHMIPS.."charcoal_1.png", scale = 0.2, mipmap_count = 4 }, { size = 64, filename = ICONPATHMIPS.."charcoal_1.png", scale = 0.49, mipmap_count = 4 },
{ size = 64, filename = ICONPATHMIPS.."charcoal_2.png", scale = 0.2, mipmap_count = 4 }, { size = 64, filename = ICONPATHMIPS.."charcoal_2.png", scale = 0.5, mipmap_count = 4 },
{ size = 64, filename = ICONPATHMIPS.."charcoal_3.png", scale = 0.2, mipmap_count = 4 }, { size = 64, filename = ICONPATHMIPS.."charcoal_3.png", scale = 0.5, mipmap_count = 4 },
{ size = 64, filename = ICONPATHMIPS.."charcoal_4.png", scale = 0.2, mipmap_count = 4 } { size = 64, filename = ICONPATHMIPS.."charcoal_4.png", scale = 0.51, mipmap_count = 4 }
}, },
fuel_value = "6MJ", fuel_value = "6MJ",
fuel_category = "chemical", fuel_category = "chemical",
@ -199,10 +199,10 @@ data:extend(
name = "stone-crushed", name = "stone-crushed",
icons = { {icon = ICONPATH .. "crushed-stone.png", icon_size = 64, }}, icons = { {icon = ICONPATH .. "crushed-stone.png", icon_size = 64, }},
pictures = { pictures = {
{ size = 64, filename = ICONPATHMIPS.."crush_1.png", scale = 0.2, mipmap_count = 4 }, { size = 64, filename = ICONPATHMIPS.."crush_1.png", scale = 0.44, mipmap_count = 4 },
{ size = 64, filename = ICONPATHMIPS.."crush_2.png", scale = 0.2, mipmap_count = 4 }, { size = 64, filename = ICONPATHMIPS.."crush_2.png", scale = 0.45, mipmap_count = 4 },
{ size = 64, filename = ICONPATHMIPS.."crush_3.png", scale = 0.2, mipmap_count = 4 }, { size = 64, filename = ICONPATHMIPS.."crush_3.png", scale = 0.45, mipmap_count = 4 },
{ size = 64, filename = ICONPATHMIPS.."crush_4.png", scale = 0.2, mipmap_count = 4 } { size = 64, filename = ICONPATHMIPS.."crush_4.png", scale = 0.46, mipmap_count = 4 }
}, },
subgroup = "raw-material", subgroup = "raw-material",
order = "a[bi]-a-z[stone-crushed]", order = "a[bi]-a-z[stone-crushed]",

View file

@ -5,7 +5,7 @@ local ICONPATH = BioInd.modRoot .. "/graphics/icons/"
log("BI.Settings.BI_Game_Tweaks_Disassemble: " .. tostring(BI.Settings.BI_Game_Tweaks_Disassemble)) log("BI.Settings.BI_Game_Tweaks_Disassemble: " .. tostring(BI.Settings.BI_Game_Tweaks_Disassemble))
if BI.Settings.BI_Game_Tweaks_Disassemble then if BI.Settings.BI_Game_Tweaks_Disassemble then
log("Enabling disassemble recipes!") log("Enabling disassemble recipes!")
--- Bio Tweaks --- Bio Tweaks
data:extend({ data:extend({
-- Item subgroup -- Item subgroup
@ -20,8 +20,8 @@ log("Enabling disassemble recipes!")
{ {
type = "recipe", type = "recipe",
name = "bi-burner-mining-drill-disassemble", name = "bi-burner-mining-drill-disassemble",
localised_description = {"recipe-description.bi-disassemble-recipes"}, localised_description = { "recipe-description.bi-disassemble-recipes" },
icons = { {icon = ICONPATH .. "burner-mining-drill_disassemble.png", icon_size = 64, } }, icons = { { icon = ICONPATH .. "burner-mining-drill_disassemble.png", icon_size = 64, } },
category = "advanced-crafting", category = "advanced-crafting",
subgroup = "bio-disassemble", subgroup = "bio-disassemble",
order = "a[Disassemble]-a[bi-burner-mining-drill-disassemble]", order = "a[Disassemble]-a[bi-burner-mining-drill-disassemble]",
@ -31,20 +31,19 @@ log("Enabling disassemble recipes!")
allow_decomposition = false, allow_decomposition = false,
energy_required = 2, energy_required = 2,
ingredients = { ingredients = {
{type = "item", name = "burner-mining-drill", amount = 1}, { type = "item", name = "burner-mining-drill", amount = 1 },
}, },
results = { results = {
{type="item", name="stone", amount=4}, { type = "item", name = "stone", amount = 4 },
{type="item", name="iron-plate", amount=4} { type = "item", name = "iron-plate", amount = 4 }
}, },
main_product = "", main_product = "",
}, },
----
{ {
type = "recipe", type = "recipe",
name = "bi-burner-inserter-disassemble", name = "bi-burner-inserter-disassemble",
localised_description = {"recipe-description.bi-disassemble-recipes"}, localised_description = { "recipe-description.bi-disassemble-recipes" },
icons = { {icon = ICONPATH .. "burner_inserter_disassemble.png", icon_size = 64, } }, icons = { { icon = ICONPATH .. "burner_inserter_disassemble.png", icon_size = 64, } },
category = "advanced-crafting", category = "advanced-crafting",
subgroup = "bio-disassemble", subgroup = "bio-disassemble",
order = "a[Disassemble]-b[bi-burner-inserter-disassemble]", order = "a[Disassemble]-b[bi-burner-inserter-disassemble]",
@ -54,19 +53,18 @@ log("Enabling disassemble recipes!")
allow_decomposition = false, allow_decomposition = false,
energy_required = 2, energy_required = 2,
ingredients = { ingredients = {
{type = "item", name = "burner-inserter", amount = 1}, { type = "item", name = "burner-inserter", amount = 1 },
}, },
results = { results = {
{type="item", name="iron-plate", amount=2}, { type = "item", name = "iron-plate", amount = 2 },
}, },
main_product = "", main_product = "",
}, },
----
{ {
type = "recipe", type = "recipe",
name = "bi-long-handed-inserter-disassemble", name = "bi-long-handed-inserter-disassemble",
localised_description = {"recipe-description.bi-disassemble-recipes"}, localised_description = { "recipe-description.bi-disassemble-recipes" },
icons = { {icon = ICONPATH .. "long_handed_inserter_disassemble.png", icon_size = 64, } }, icons = { { icon = ICONPATH .. "long_handed_inserter_disassemble.png", icon_size = 64, } },
category = "advanced-crafting", category = "advanced-crafting",
subgroup = "bio-disassemble", subgroup = "bio-disassemble",
order = "a[Disassemble]-c[bi-long-handed-inserter-disassemble]", order = "a[Disassemble]-c[bi-long-handed-inserter-disassemble]",
@ -76,21 +74,20 @@ log("Enabling disassemble recipes!")
allow_decomposition = false, allow_decomposition = false,
energy_required = 2, energy_required = 2,
ingredients = { ingredients = {
{type = "item", name = "long-handed-inserter", amount = 1}, { type = "item", name = "long-handed-inserter", amount = 1 },
}, },
results = { results = {
{type="item", name="iron-gear-wheel", amount=1}, { type = "item", name = "iron-gear-wheel", amount = 1 },
{type="item", name="iron-plate", amount=1}, { type = "item", name = "iron-plate", amount = 1 },
{type="item", name="electronic-circuit", amount=1}, { type = "item", name = "electronic-circuit", amount = 1 },
}, },
main_product = "", main_product = "",
}, },
---
{ {
type = "recipe", type = "recipe",
name = "bi-stone-furnace-disassemble", name = "bi-stone-furnace-disassemble",
localised_description = {"recipe-description.bi-disassemble-recipes"}, localised_description = { "recipe-description.bi-disassemble-recipes" },
icons = { {icon = ICONPATH .. "stone_furnace_disassemble.png", icon_size = 64, } }, icons = { { icon = ICONPATH .. "stone_furnace_disassemble.png", icon_size = 64, } },
category = "advanced-crafting", category = "advanced-crafting",
subgroup = "bio-disassemble", subgroup = "bio-disassemble",
order = "a[Disassemble]-d[bi-stone-furnace-disassemble]", order = "a[Disassemble]-d[bi-stone-furnace-disassemble]",
@ -100,19 +97,18 @@ log("Enabling disassemble recipes!")
allow_decomposition = false, allow_decomposition = false,
energy_required = 2, energy_required = 2,
ingredients = { ingredients = {
{type = "item", name = "stone-furnace", amount = 1}, { type = "item", name = "stone-furnace", amount = 1 },
}, },
results = { results = {
{type="item", name="stone", amount=3}, { type = "item", name = "stone", amount = 3 },
}, },
main_product = "", main_product = "",
}, },
---
{ {
type = "recipe", type = "recipe",
name = "bi-steel-furnace-disassemble", name = "bi-steel-furnace-disassemble",
localised_description = {"recipe-description.bi-disassemble-recipes"}, localised_description = { "recipe-description.bi-disassemble-recipes" },
icons = { {icon = ICONPATH .. "steel-furnace_disassemble.png", icon_size = 64, } }, icons = { { icon = ICONPATH .. "steel-furnace_disassemble.png", icon_size = 64, } },
category = "advanced-crafting", category = "advanced-crafting",
subgroup = "bio-disassemble", subgroup = "bio-disassemble",
order = "a[Disassemble]-e[bi-steel-furnace-disassemble]", order = "a[Disassemble]-e[bi-steel-furnace-disassemble]",
@ -122,14 +118,38 @@ log("Enabling disassemble recipes!")
allow_decomposition = false, allow_decomposition = false,
energy_required = 2, energy_required = 2,
ingredients = { ingredients = {
{type = "item", name = "steel-furnace", amount = 1}, { type = "item", name = "steel-furnace", amount = 1 },
}, },
results = { results = {
{type="item", name="steel-plate", amount=4}, { type = "item", name = "steel-plate", amount = 4 },
{type="item", name="stone-brick", amount=4} { type = "item", name = "stone-brick", amount = 4 }
}, },
main_product = "", main_product = "",
}, },
}) })
end end
local SET = settings.startup["BI_Game_Tweaks_Production_Science"].value
if SET and not mods["Krastorio2"] then
data:extend({
{
type = "recipe",
name = "bi-production-science-pack",
enabled = false,
energy_required = 21,
ingredients = {
{ type = "item", name = "electric-furnace", amount = 1 },
{ type = "item", name = "productivity-module", amount = 1 },
{ type = "item", name = "bi-rail-wood", amount = 40 }
},
results = { { type = "item", name = "production-science-pack", amount = 3 } },
},
})
--~ BI_Functions.lib.allow_productivity("bi-production-science-pack")
--~ thxbob.lib.tech.add_recipe_unlock("production-science-pack", "bi-production-science-pack")
BioInd.writeDebug("Added alternative recipe for Production science packs.")
else
BioInd.writeDebug("Didn't add alternative recipe for Production science packs! (\"Krastorio\": %s\tSetting: %s",
{ (mods["Krastorio2"] and "active" or "not active"), (SET and "enabled" or "disabled") })
end

View file

@ -372,19 +372,19 @@ data:extend({
percent = 10 percent = 10
} }
}, },
collision_box = {{-0.3, -0.3}, {0.3, 0.3}}, collision_box = {{-0.35, -0.35}, {0.25, 0.25}},
selection_box = {{-0.5, -0.5}, {0.5, 0.5}}, selection_box = {{-0.55, -0.55}, {0.45, 0.45}},
drawing_box = {{-1, -7}, {1, 0.5}}, drawing_box = {{-1, -7}, {1, 0.5}},
maximum_wire_distance = 64, -- Factorio Max maximum_wire_distance = 64, -- Factorio Max
supply_area_distance = 2, -- This is the radius, so the supply area is 4x4. supply_area_distance = 2, -- This is the radius, so the supply area is 4x4.
pictures = { pictures = {
filename = WOODPATH .. "huge-wooden-pole.png", filename = WOODPATH .. "huge-wooden-pole.png",
priority = "high", priority = "high",
width = 182, width = 546,
height = 167, height = 501,
direction_count = 4, direction_count = 4,
shift = {3, -3.45}, shift = {3, -3.45},
scale = 1.5, scale = 0.5,
}, },
connection_points = { connection_points = {
{ {

View file

@ -1,27 +1,18 @@
require ("prototypes.Wood_Products.rail-pictures-wood") require("prototypes.Wood_Products.rail-pictures-wood")
local BioInd = require('common')('Bio_Industries_2') local BioInd = require('common')('Bio_Industries_2')
local ICONPATH = BioInd.modRoot .. "/graphics/icons/"
local ICONPATH_E = BioInd.modRoot .. "/graphics/icons/entity/" local ICONPATH_E = BioInd.modRoot .. "/graphics/icons/entity/"
local item_sounds = require("__base__.prototypes.item_sounds") local item_sounds = require("__base__.prototypes.item_sounds")
local hit_effects = require("__base__.prototypes.entity.hit-effects")
local hit_effects = require ("__base__.prototypes.entity.hit-effects")
local sounds = require("__base__.prototypes.entity.sounds")
local tile_sounds = require("__base__.prototypes.tile.tile-sounds") local tile_sounds = require("__base__.prototypes.tile.tile-sounds")
local simulations = require("__base__.prototypes.factoriopedia-simulations")
data:extend({
if BI.Settings.BI_Game_Tweaks_Recipe then
data:extend({
---- ITEM ---- ITEM
{ {
type = "rail-planner", type = "rail-planner",
name = "bi-rail-wood", name = "bi-rail-wood",
icons = { {icon = ICONPATH_E .. "rail-wood.png", icon_size = 64, } }, icons = { { icon = ICONPATH_E .. "rail-wood.png", icon_size = 64, } },
localised_name = {"item-name.bi-rail-wood"}, localised_name = { "item-name.bi-rail-wood" },
subgroup = "train-transport", subgroup = "train-transport",
order = "a[rail]-0[rail]", order = "a[rail]-0[rail]",
inventory_move_sound = item_sounds.train_inventory_move, inventory_move_sound = item_sounds.train_inventory_move,
@ -29,8 +20,7 @@ local simulations = require("__base__.prototypes.factoriopedia-simulations")
drop_sound = item_sounds.train_inventory_move, drop_sound = item_sounds.train_inventory_move,
place_result = "bi-straight-rail-wood", place_result = "bi-straight-rail-wood",
stack_size = 100, stack_size = 100,
rails = rails = {
{
"bi-straight-rail-wood", "bi-straight-rail-wood",
"bi-curved-rail-a-wood", "bi-curved-rail-a-wood",
"bi-curved-rail-b-wood", "bi-curved-rail-b-wood",
@ -39,19 +29,45 @@ local simulations = require("__base__.prototypes.factoriopedia-simulations")
manual_length_limit = 22.5 -- 2*(Curved-A) + 2*(Curved-B) + their planner penalty + margin manual_length_limit = 22.5 -- 2*(Curved-A) + 2*(Curved-B) + their planner penalty + margin
}, },
---- Recipe ---- Recipe
{
type = "recipe",
name = "bi-rail-wood",
localised_name = { "entity-name.bi-rail-wood" },
localised_description = { "entity-description.bi-rail-wood" },
icons = { { icon = ICONPATH_E .. "rail-wood.png", icon_size = 64, } },
enabled = false,
ingredients = {
{ type = "item", name = "wood", amount = 6 },
{ type = "item", name = "stone", amount = 1 },
{ type = "item", name = "steel-plate", amount = 1 },
{ type = "item", name = "iron-stick", amount = 1 },
},
results = { { type = "item", name = "bi-rail-wood", amount = 2 } },
main_product = "",
requester_paste_multiplier = 4,
--~ always_show_made_in = true,
--~ allow_decomposition = false,
allow_as_intermediate = false, -- Added for 0.18.34/1.1.4
always_show_made_in = false, -- Changed for 0.18.34/1.1.4
allow_decomposition = true, -- Changed for 0.18.34/1.1.4
subgroup = "transport",
order = "a[train-system]-a[rail]",
-- This is a custom property for use by "Krastorio 2" (it will change
-- ingredients/results; used for wood/wood pulp)
mod = "Bio_Industries",
},
{ {
type = "recipe", type = "recipe",
name = "bi-rail-wood-to-concrete", name = "bi-rail-wood-to-concrete",
icons = { {icon = ICONPATH_E .. "rail-wood-to-concrete.png", icon_size = 64, } }, icons = { { icon = ICONPATH_E .. "rail-wood-to-concrete.png", icon_size = 64, } },
enabled = false, enabled = false,
ingredients = ingredients = {
{ { type = "item", name = "bi-rail-wood", amount = 2 },
{type = "item", name = "bi-rail-wood", amount = 2}, { type = "item", name = "stone-brick", amount = 6 },
{type = "item", name = "stone-brick", amount = 6},
}, },
results = {{type="item", name="rail", amount=2}} results = { { type = "item", name = "rail", amount = 2 } }
}, },
@ -62,18 +78,16 @@ local simulations = require("__base__.prototypes.factoriopedia-simulations")
name = "bi-straight-rail-wood", name = "bi-straight-rail-wood",
order = "a[ground-rail]-a[bi-straight-rail-wood]", order = "a[ground-rail]-a[bi-straight-rail-wood]",
icon = ICONPATH_E .. "straight-rail-wood.png", icon = ICONPATH_E .. "straight-rail-wood.png",
localised_name = {"entity-name.bi-straight-rail-wood"}, localised_name = { "entity-name.bi-straight-rail-wood" },
collision_box = {{-1, -1}, {1, 1}}, -- has custommly generated box, but the prototype needs something that is used to generate building smokes collision_box = { { -1, -1 }, { 1, 1 } }, -- has custommly generated box, but the prototype needs something that is used to generate building smokes
flags = {"placeable-neutral", "player-creation", "building-direction-8-way"}, flags = { "placeable-neutral", "player-creation", "building-direction-8-way" },
minable = {mining_time = 0.2, result = "bi-rail-wood", count = 1}, minable = { mining_time = 0.2, result = "bi-rail-wood", count = 1 },
max_health = 200, max_health = 200,
corpse = "straight-rail-remnants", corpse = "straight-rail-remnants",
dying_explosion = dying_explosion = {
{
name = "rail-explosion" name = "rail-explosion"
}, },
resistances = resistances = {
{
{ {
type = "fire", type = "fire",
percent = 100 percent = 100
@ -84,13 +98,16 @@ local simulations = require("__base__.prototypes.factoriopedia-simulations")
} }
}, },
-- collision box is hardcoded for rails as to avoid unexpected changes in the way rail blocks are merged -- collision box is hardcoded for rails as to avoid unexpected changes in the way rail blocks are merged
selection_box = {{-1.7, -0.8}, {1.7, 0.8}}, selection_box = { { -1.7, -0.8 }, { 1.7, 0.8 } },
damaged_trigger_effect = hit_effects.wall(), damaged_trigger_effect = hit_effects.wall(),
pictures = new_rail_pictures_wood("straight"), pictures = new_rail_pictures_wood("straight"),
placeable_by = {item = "bi-rail-wood", count = 1}, placeable_by = { item = "bi-rail-wood", count = 1 },
walking_sound = tile_sounds.walking.rails, walking_sound = tile_sounds.walking.rails,
extra_planner_goal_penalty = -4, extra_planner_goal_penalty = -4,
factoriopedia_alternative = "straight-rail" factoriopedia_alternative = "straight-rail",
-- for upgrade planer (fast rail change wood/iron)
next_upgrade = "straight-rail",
fast_replaceable_group = "straight-rail",
}, },
{ {
@ -99,30 +116,28 @@ local simulations = require("__base__.prototypes.factoriopedia-simulations")
order = "a[ground-rail]-b[bi-half-diagonal-rail-wood]", order = "a[ground-rail]-b[bi-half-diagonal-rail-wood]",
deconstruction_alternative = "bi-straight-rail-wood", deconstruction_alternative = "bi-straight-rail-wood",
icon = ICONPATH_E .. "curved-rail-wood.png", icon = ICONPATH_E .. "curved-rail-wood.png",
localised_name = {"entity-name.bi-half-diagonal-rail-wood"}, localised_name = { "entity-name.bi-half-diagonal-rail-wood" },
collision_box = {{-0.75, -2.236}, {0.75, 2.236}}, -- has custommly generated box, but the prototype needs something that is used to generate building smokes collision_box = { { -0.75, -2.236 }, { 0.75, 2.236 } }, -- has custommly generated box, but the prototype needs something that is used to generate building smokes
tile_height = 2, tile_height = 2,
extra_planner_goal_penalty = -4, extra_planner_goal_penalty = -4,
flags = {"placeable-neutral", "player-creation", "building-direction-8-way"}, flags = { "placeable-neutral", "player-creation", "building-direction-8-way" },
minable = {mining_time = 0.2, result = "bi-rail-wood", count = 2}, minable = { mining_time = 0.2, result = "bi-rail-wood", count = 2 },
max_health = 200, max_health = 200,
corpse = "half-diagonal-rail-remnants", corpse = "half-diagonal-rail-remnants",
dying_explosion = dying_explosion = {
{
{ {
name = "rail-explosion", name = "rail-explosion",
offset = {0.9, 2.2} offset = { 0.9, 2.2 }
}, },
{ {
name = "rail-explosion" name = "rail-explosion"
}, },
{ {
name = "rail-explosion", name = "rail-explosion",
offset = {-1.2, -2} offset = { -1.2, -2 }
} }
}, },
resistances = resistances = {
{
{ {
type = "fire", type = "fire",
percent = 100 percent = 100
@ -133,13 +148,16 @@ local simulations = require("__base__.prototypes.factoriopedia-simulations")
} }
}, },
-- collision box is hardcoded for rails as to avoid unexpected changes in the way rail blocks are merged -- collision box is hardcoded for rails as to avoid unexpected changes in the way rail blocks are merged
selection_box = {{-1.7, -0.8}, {1.7, 0.8}}, selection_box = { { -1.7, -0.8 }, { 1.7, 0.8 } },
damaged_trigger_effect = hit_effects.wall(), damaged_trigger_effect = hit_effects.wall(),
pictures = new_rail_pictures_wood("half-diagonal"), pictures = new_rail_pictures_wood("half-diagonal"),
placeable_by = {item = "bi-rail-wood", count = 2}, placeable_by = { item = "bi-rail-wood", count = 2 },
walking_sound = tile_sounds.walking.rails, walking_sound = tile_sounds.walking.rails,
extra_planner_penalty = 0, extra_planner_penalty = 0,
factoriopedia_alternative = "straight-rail" factoriopedia_alternative = "straight-rail",
-- for upgrade planer (fast rail change wood/iron)
next_upgrade = "half-diagonal-rail",
fast_replaceable_group = "half-diagonal-rail",
}, },
{ {
type = "curved-rail-a", type = "curved-rail-a",
@ -147,28 +165,26 @@ local simulations = require("__base__.prototypes.factoriopedia-simulations")
order = "a[ground-rail]-c[bi-curved-rail-a-wood]", order = "a[ground-rail]-c[bi-curved-rail-a-wood]",
deconstruction_alternative = "bi-straight-rail-wood", deconstruction_alternative = "bi-straight-rail-wood",
icon = ICONPATH_E .. "curved-rail-wood.png", icon = ICONPATH_E .. "curved-rail-wood.png",
localised_name = {"entity-name.bi-curved-rail-a-wood"}, localised_name = { "entity-name.bi-curved-rail-a-wood" },
collision_box = {{-0.75, -2.516}, {0.75, 2.516}}, -- has custommly generated box, but the prototype needs something that is used to generate building smokes collision_box = { { -0.75, -2.516 }, { 0.75, 2.516 } }, -- has custommly generated box, but the prototype needs something that is used to generate building smokes
flags = {"placeable-neutral", "player-creation", "building-direction-8-way"}, flags = { "placeable-neutral", "player-creation", "building-direction-8-way" },
minable = {mining_time = 0.2, result = "bi-rail-wood", count = 3}, minable = { mining_time = 0.2, result = "bi-rail-wood", count = 3 },
max_health = 200, max_health = 200,
corpse = "curved-rail-a-remnants", corpse = "curved-rail-a-remnants",
dying_explosion = dying_explosion = {
{
{ {
name = "rail-explosion", name = "rail-explosion",
offset = {0.9, 2.2} offset = { 0.9, 2.2 }
}, },
{ {
name = "rail-explosion" name = "rail-explosion"
}, },
{ {
name = "rail-explosion", name = "rail-explosion",
offset = {-1.2, -2} offset = { -1.2, -2 }
} }
}, },
resistances = resistances = {
{
{ {
type = "fire", type = "fire",
percent = 100 percent = 100
@ -179,14 +195,17 @@ local simulations = require("__base__.prototypes.factoriopedia-simulations")
} }
}, },
-- collision box is hardcoded for rails as to avoid unexpected changes in the way rail blocks are merged -- collision box is hardcoded for rails as to avoid unexpected changes in the way rail blocks are merged
selection_box = {{-1.7, -0.8}, {1.7, 0.8}}, selection_box = { { -1.7, -0.8 }, { 1.7, 0.8 } },
damaged_trigger_effect = hit_effects.wall(), damaged_trigger_effect = hit_effects.wall(),
pictures = new_rail_pictures_wood("curved-a"), pictures = new_rail_pictures_wood("curved-a"),
placeable_by = {item = "bi-rail-wood", count = 3}, placeable_by = { item = "bi-rail-wood", count = 3 },
walking_sound = tile_sounds.walking.rails, walking_sound = tile_sounds.walking.rails,
extra_planner_penalty = 0.5, extra_planner_penalty = 0.5,
deconstruction_marker_positions = rail_8shifts_vector(-0.248, -0.533), deconstruction_marker_positions = rail_8shifts_vector(-0.248, -0.533),
factoriopedia_alternative = "straight-rail" factoriopedia_alternative = "straight-rail",
-- for upgrade planer (fast rail change wood/iron)
next_upgrade = "curved-rail-a",
fast_replaceable_group = "curved-rail-a",
}, },
{ {
type = "curved-rail-b", type = "curved-rail-b",
@ -194,28 +213,26 @@ local simulations = require("__base__.prototypes.factoriopedia-simulations")
order = "a[ground-rail]-d[bi-curved-rail-b-wood]", order = "a[ground-rail]-d[bi-curved-rail-b-wood]",
deconstruction_alternative = "bi-straight-rail-wood", deconstruction_alternative = "bi-straight-rail-wood",
icon = ICONPATH_E .. "curved-rail-wood.png", icon = ICONPATH_E .. "curved-rail-wood.png",
localised_name = {"entity-name.bi-curved-rail-b-wood"}, localised_name = { "entity-name.bi-curved-rail-b-wood" },
collision_box = {{-0.75, -2.441}, {0.75, 2.441}}, -- has custommly generated box, but the prototype needs something that is used to generate building smokes collision_box = { { -0.75, -2.441 }, { 0.75, 2.441 } }, -- has custommly generated box, but the prototype needs something that is used to generate building smokes
flags = {"placeable-neutral", "player-creation", "building-direction-8-way"}, flags = { "placeable-neutral", "player-creation", "building-direction-8-way" },
minable = {mining_time = 0.2, result = "bi-rail-wood", count = 3}, minable = { mining_time = 0.2, result = "bi-rail-wood", count = 3 },
max_health = 200, max_health = 200,
corpse = "curved-rail-b-remnants", corpse = "curved-rail-b-remnants",
dying_explosion = dying_explosion = {
{
{ {
name = "rail-explosion", name = "rail-explosion",
offset = {0.9, 2.2} offset = { 0.9, 2.2 }
}, },
{ {
name = "rail-explosion" name = "rail-explosion"
}, },
{ {
name = "rail-explosion", name = "rail-explosion",
offset = {-1.2, -2} offset = { -1.2, -2 }
} }
}, },
resistances = resistances = {
{
{ {
type = "fire", type = "fire",
percent = 100 percent = 100
@ -226,18 +243,16 @@ local simulations = require("__base__.prototypes.factoriopedia-simulations")
} }
}, },
-- collision box is hardcoded for rails as to avoid unexpected changes in the way rail blocks are merged -- collision box is hardcoded for rails as to avoid unexpected changes in the way rail blocks are merged
selection_box = {{-1.7, -0.8}, {1.7, 0.8}}, selection_box = { { -1.7, -0.8 }, { 1.7, 0.8 } },
damaged_trigger_effect = hit_effects.wall(), damaged_trigger_effect = hit_effects.wall(),
pictures = new_rail_pictures_wood("curved-b"), pictures = new_rail_pictures_wood("curved-b"),
placeable_by = {item = "bi-rail-wood", count = 3}, placeable_by = { item = "bi-rail-wood", count = 3 },
walking_sound = tile_sounds.walking.rails, walking_sound = tile_sounds.walking.rails,
extra_planner_penalty = 0.5, extra_planner_penalty = 0.5,
deconstruction_marker_positions = rail_8shifts_vector(-0.309, -0.155), deconstruction_marker_positions = rail_8shifts_vector(-0.309, -0.155),
factoriopedia_alternative = "straight-rail" factoriopedia_alternative = "straight-rail",
-- for upgrade planer (fast rail change wood/iron)
next_upgrade = "curved-rail-b",
fast_replaceable_group = "curved-rail-b",
}, },
}) })
end