Lab
Lab |
Recipe |
|
+ + + → | |
Total raw |
|
+ + | |
Map color |
|
Health |
150 |
Stack size |
10 |
Dimensions |
3×3 |
Energy consumption |
60 kW (electric) |
Mining time |
0.2 |
Module slots |
2 slots |
Prototype type |
|
Internal name |
lab |
Required technologies |
|
Boosting technologies |
|
Produced by |
|
Labs are buildings that perform research for technologies by consuming science packs. Use of a lab is required to progress in Factorio.
When productivity modules are used in labs, the productivity bonus is directly calculated and applied each tick so the productivity bar is simply cosmetic. This means that it does not matter that the productivity bar resets when the research is changed, no productivity bonus is lost. [1]
The player can only research one technology at a time, but can use multiple labs for faster results. The speed bonus of labs when lab research speed is researched and modules are present can be calculated using this formula: research_bonus × module_bonus = speed_bonus
; the percentage bonuses have to be converted to decimals (e.g. +140% = 2.4) before the formula is used.
Production requirements
Calculating the number of science packs needed per second is straightforward:
ERS = (1 + B[r] ÷ 100) × (1 + M[r] ÷ 100)
ACT = T[r] ÷ ERS
PPS = N ÷ ACT
Where:
- ERS is "effective lab research speed"
- B[r] is the Lab Research Speed bonus as reported by the game, in percent
- M[r] is the sum of all module speed effects (Speed modules - positive; Productivity modules - negative), in percent
- ACT is "adjusted cycle time"
- T[r] is the research cycle time as displayed in the research screen
- PPS is "packs per second"
- N is the number of labs available.
Thus, for a 10-lab setup, researching Nuclear Power (30 second cycle time) with Lab Research Speed 4 (140% bonus) and no module effects, the calculation is:
ERS = 1 + (140 ÷ 100) = 2.4
ACT = 30 ÷ 2.4 = 12.5 s
PPS = 10 ÷ 12.5 = 0.8
This means 0.8 science packs per second, of each type, would need to be produced to continuously supply the labs.
Equation simplification
Assuming all labs have the same B[r] (which they always will unless they are affected by different module configurations), the above calculations can be combined into one equation:
PPS = N × (1 + B[r] ÷ 100) × (1 + M[r] ÷ 100) ÷ T[r]
Thus for the numerical example:
PPS = 10 × (1 + 140 ÷ 100) × 1 ÷ 30
=(10 ÷ 30) × (1 + 1.4)
=(1 ÷ 3) × 2.4
=2.4 ÷ 3
=0.8
packs per second
If trying to find the amount of labs needed to consume a given amount of packs per second, use the following rearrangement:
N = ((1 + B[r] ÷ 100) × (1 + M[r] ÷ 100) ÷ T[r] ÷ PPS) ^ −1
History
- 0.15.12:
- Lab speed info in the description contains the researched speed bonus as well.
- 0.12.6:
- The research speed of a lab is now not dependent on its electricity consumption, and can be scripted.
- 0.12.0:
- Lab research is now continuous; Science packs now have progress bars.
- 0.9.2:
- Labs are now named after early access backers when built from blueprints.
- 0.7.2:
- Changed the recipe of Lab to require 4 transport belts, down from 5.
- 0.7.0:
- Added support for modules to labs.
- 0.6.0:
- New graphics.
- Labs are dedicated to backers (displayed in entity info).
- 0.2.7:
- Contents of the Lab is now shown in the entity info.
- 0.1.0:
- Introduced