# Industry: refining, compacting and fabricating materials across the tiers # (docs/industry.md). # # Recipes name kinds, not materials: "ore" means the ore of the tier being # worked, so one recipe covers all twenty tiers. [ladder] tiers = 20 # An ore, crystal or salvage without a price in materials.toml costs this # many times the same kind a tier below. price_growth = 1.35 # An alloy or component without a price costs what refining it takes, times # this. Refining before you sell is worth the wait. markup = 1.25 # A module one tier up has this many times the main stat (damage, shields, # armor, mining, scanning, cargo, engine boost). Range, rate of fire and # accuracy belong to the module, not the tier. stat_growth = 1.3 # Past the Kessler Ring (tier 3 and up) no belt holds salvage: it comes from # pirate wrecks and from fabricating. A recipe written below that tier (most # forge, scrap and Workshop recipes are written at tier 1, where the ring # keeps salvage plentiful) takes this share of its salvage once it is made up # here (rounded, at least 1), so a handful of cleared hideouts covers an # objective. Refining stretches its batches to match (IndustryDef::refine_at). salvage_from = 3 salvage_share = 0.2 # Refining, at a dock with a refinery of that tier or better: raw materials # of one tier in, refined goods of the same tier out. [refine.alloy] inputs = { ore = 4, salvage = 1 } output = 2 seconds = 8.0 [refine.components] inputs = { crystal = 2, salvage = 1 } output = 2 seconds = 12.0 # Fabricating, at a dock with a refinery of that tier or better: a tier's ore # and crystal made into its salvage, from tier `from` up. A bad trade in # credits, like compacting (the ladder checks it never pays): it is how a # fleet that would rather not hunt gets the plating, slag and husks its forge # asks for. [fabricate.salvage] inputs = { ore = 3, crystal = 1 } output = 1 seconds = 10.0 from = 3 # Compacting: `ratio` units of a raw material make one unit of the same kind # a tier up. A bad trade in credits, a good one in time: it is how a system # with only low-tier belts gets higher-tier stock. The ladder's prices must # keep it lossy (a tier up never costs `ratio` times as much). [compact] ratio = 10 seconds = 20.0 kinds = ["ore", "crystal", "salvage"] # Research projects (forge_projects.rs, docs/industry.md "Research"): past # tier 6 nobody drops Ferrum or Helion gear, so the # forge of a starbase you hold works out a family's next tier itself, once # its forge works that tier. A project costs `forgings` forgings of the # module at the tier it teaches (credits, and that tier's stock from the # hangar) and runs `seconds` by the module's size. A forge runs `at_once` # projects side by side (Rheisen, 2026-10-18), each family at one forge at a # time. A family you don't know yet starts from its twin (modules.toml # `twin`) known to the family's first tier. [projects] factions = ["ferrum", "helion"] from = 7 forgings = 10 seconds = { s = 600.0, m = 900.0, l = 1200.0, xl = 1500.0 } at_once = 3