In other languages: Deutsch Français Polska Русский 中文

Lab: Difference between revisions

From Official Factorio Wiki
Jump to navigation Jump to search
m (resolved own <!-- --> comment (labs have different speeds if different modules); for math purists: tweaked T(r), B(r) notation so it doesn't look so much like a 'continuous function of r' :p)
(resolved comment)
Line 4: Line 4:
'''Labs''' are buildings that perform [[research]] for [[technologies]] by consuming [[science pack]]s. Use of a lab is required to progress in Factorio.
'''Labs''' are buildings that perform [[research]] for [[technologies]] by consuming [[science pack]]s. Use of a lab is required to progress in Factorio.


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 (research)|Lab research speed]] is researched and modules are present can be calculated using this formula: <code>research_bonus × module_bonus = speed_bonus</code>; the percentage bonuses have to be converted to decimals (e.g. +140% = 2.4) before the formula is used.
When [[productivity module]]s are used in labs, the productivity bonus is directly calculated and applied each [[game-tick|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. [https://forums.factorio.com/26860]


When [[productivity module]]s are used in labs, the productivity bonus is directly calculated and applied each [[game-tick|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. [https://forums.factorio.com/26860]
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 (research)|lab research speed]] is researched and modules are present can be calculated using this formula: <code>research_bonus × module_bonus = speed_bonus</code>; the percentage bonuses have to be converted to decimals (e.g. +140% = 2.4) before the formula is used.


==Production requirements==
==Production requirements==
Line 31: Line 31:
=== Equation simplification ===
=== 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:
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:
<!--
Comment (invisible on page):
Does a situation ever occur where they wouldn't all have the same bonus? Not AFAIK in single player. Non-shared research in multiplayer? If not, the tail of the sentence probably doesn't need to be here; or else the fact it's always true should be added if the sentence is kept for rigor.
OP's EDIT: Resolved; feel free to delete this. They do, in fact, have different speeds if they have different modules. Text has been updated accordingly. I apologize for the mess. :p


-->
* <code>PPS = N × (1 + [B[r] ÷ 100]) ÷ T[r]</code>
* <code>PPS = N × (1 + [B[r] ÷ 100]) ÷ T[r]</code>



Revision as of 08:31, 2 September 2018

Lab.png
Lab

Lab entity anim.gif

Recipe

Time.png
2
+
Electronic circuit.png
10
+
Iron gear wheel.png
10
+
Transport belt.png
4
Lab.png
1

Total raw

Time.png
21.5
+
Copper plate.png
15
+
Iron plate.png
36

Recipe

Time.png
2
+
Electronic circuit.png
10
+
Iron gear wheel.png
10
+
Transport belt.png
4
Lab.png
1

Total raw

Time.png
34
+
Copper plate.png
40
+
Iron plate.png
70

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

lab

Internal name

lab

Required technologies

None required

Boosting technologies

Lab research speed (research).png

Produced by

Assembling machine 1.png
Assembling machine 2.png
Assembling machine 3.png
Player.png
Science packs put into the front lab will be passed to labs behind it.

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
  • 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 (including any module effects)
  • 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), the calculation is:

  • ELRS = 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]) ÷ T[r]

Thus for the numerical example:

  • PPS = 10 × (1 + [140 ÷ 100]) ÷ 30 = (10 ÷ 30) × (1 + 1.4) = (1 ÷ 3) × 2.4 = 2.4 ÷ 3 = 0.8 packs per second

History

  • 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.2.7:
    • Contents of the Lab is now shown in the entity info.

See also