In other languages: Deutsch Español Français Italiano 日本語 한국어 Polski Português, Brasil Русский Українська 简体中文

Research

From Official Factorio Wiki
Revision as of 03:42, 3 September 2018 by Misacek01 (talk | contribs) (→‎'Infinite' research: added section on inf research cumulative cost properties;; made table a section to make it visible in TOC, so that people know there *is* a table :p)
Jump to navigation Jump to search

Research is used to unlock technologies, offering new recipes and bonuses. Research is performed by labs consuming different types of science packs.

Mechanics

The technology screen

In single player games, only one technology can be researched at a time, while in multiplayer, research progress is shared within forces.

The technology to be researched is selected from the technology screen, opened by pressing T. The current active research can be changed at any time from the technology screen; if another research is in progress, that progress will be saved. Multiple research topics can be partially researched like this at any one time.

Research progress for a technology is divided into units. Each unit has a time and a science pack cost. When research is in progress, labs with the required amount of science packs for one unit will consume the amount and contribute towards research progress.

The progress bar shown in the top right corner of the screen when research is in progress

The time T it will take to research a particular technology is given by:

  • T = (T[0] × P) ÷ (L × S) seconds,

where:

  • T[0] is the time cost per unit (as shown in Research screen)
  • P is the price of the research, in units (as shown in Research screen)
  • L is the number of labs used
  • S is lab speed, which is given by:
    • 1 + B[r]
    • where B[r] is the total research speed modifier from lab research speed research and any module effects

Note that P represents the research price in units, not in individual science packs summed across all their types. For example, a research that costs 100 science packs 1 and 100 science packs 2, grouped into 100 units of 1 each of science packs 1 and 2, would have a P of 100, not 200.

Automation

A simple lab setup using science pack 1 and 2, belts, and inserters

Crafting science packs by hand is not feasible, mainly because of the amount of resources and time needed to craft them. Some science packs also require ingredients that cannot be handcrafted, such as oil products. Science pack production automation is the primary incentive for factory development throughout the game.

The insertion of science packs into labs may be automated using inserters and transport belts, as shown to the right, or using robots and the logistic network.

Note that inserters can take science packs from labs and hand them to other labs, making a lab chain a feasible solution. Other options include using 3 belts (before space science packs are needed), or a sushi belt.

'Infinite' research

While most research topics in Factorio are either one-off or have a finite, relatively small number of levels available, several (14 in total) are "infinite", meaning the player can research as many levels as they can afford. All of them unlock bonuses to existing technologies, never new structures or abilities. With the exception of mining productivity and worker robot speed, all infinite research topics are combat-related. The per-level bonuses are constant for a particular infinite research topic and, like normal research bonuses, are additive (rather than multiplicative) within a single topic.

All infinite research levels require space science packs, and are also the only research topics that do. As such, they are late-game research topics intended primarily for players who wish to continue playing and expand their factory past the nominal victory condition of launching a single rocket.

Infinite research topics are identified in-game by a small infinity symbol shown in the top right corner of the research topic's card in the research screen. Note that this category of research topics has no official name or other distinction apart from the above; "infinite research" is a placeholder name bestowed by the community.

Most infinite research topics are continuations of ordinary multi-level topics; the "infinite" mechanic becomes effective once the player reaches the card initially labeled with N - ∞ in the research tree. Only the two artillery-related topics (artillery shell range and shooting speed) are infinite-only; for these, N - ∞ is shown before any levels in them are researched.

In either case, once the first infinite level is researched, the card label switches to the one discussed above. Unlike normal leveled research, infinite research topics do not switch to a new card for every level, instead only incrementing the level number on the same card. This is likely so as to prevent the "tree" visualization of available research from becoming overly long.

Pricing equations

The price of all infinite research topics is generated in a mathematical progression; for the majority of topics, the progression is geometric, mostly in powers of 2; a single topic - artillery shell shooting speed - uses a powers-of-3 progression. Two topics - mining productivity and follower robot count - use an arithmetic progression instead, in both cases with a difference of 100.

The equations that generate infinite research prices take the following forms:

  1. P[N] = P[0] × 2 ^ (N - N[0]) + C - most infinite topics
  2. P[N] = P[0] × 3 ^ (N - N[0]) + C - artillery shell shooting speed
  3. P[N] = P[0] × (N - N[0]) + C - mining productivity and follower robot count

where:

  • P[N] is the price of the Nth level of the research topic (as reported by the game; i.e., counting also all starting "non-infinite" levels, if any)
  • P[0] is a price multiplier
  • N is the level of the research topic, as reported by the game (i.e., including any starting non-infinite levels)
  • N[0] is a shift factor relative to the source series
  • C is a constant

Among others, the following properties can be observed:

  • P[0] = 1,000 for topics with a geometric progression and P[0] = 100 for topics with an arithmetic progression
  • for both infinite-only topics, P[1] = 2 × P[0]
  • denote F the final level of non-infinite research available in the topic if such exists; for infinite-only research, set F = 0; then:
  • the majority of geometric-progression topics have P[F+1] = P[0]; the rest have P[F+1] = 2 × P[0] (where P[F+1] is the price of the first "infinite" level)
  • for topics with preceding non-infinite levels, the relation between P[F+1] and non-infinite level prices may vary, but in all cases P[F+1] >= P[F] (where P[F] is the price of the last non-infinite level)
  • either N[0] = F or N[0] = F + 1; this is mostly idiosyncratic to the research topic in question
  • C != 0 only for follower robot count (C = 900) and artillery shooting speed (C = 1,000)

Price table

The table below summarizes the applicable equation type and parameters (using the same notation as in the preceding section), plus the per-level bonus, for all infinite research topics in the game. Topics are ordered based on similarity of the parameters; if parameters are identical, then alphabetically.

Technology Equation
type
F + 1 P[F + 1] Equation Bonus
Gun turret damage (research).png
Gun turret damage
1 7 1,000 1,000 × 2^(N - F - 1) +70%
Rocket damage (research).png
Rocket damage
1 7 1,000 1,000 × 2^(N - F - 1) +50%
Bullet damage (research).png
Bullet damage
1 7 1,000 1,000 × 2^(N - F - 1) +40%
Shotgun shell damage (research).png
Shotgun shell damage
1 7 1,000 1,000 × 2^(N - F - 1) +40%
Flamethrower damage (research).png
Flamethrower damage
1 7 1,000 1,000 × 2^(N - F - 1) +20%
Worker robot speed (research).png
Worker robot speed
1 6 1,000 1,000 × 2^(N - F - 1) +65%
Combat robot damage (research).png
Combat robot damage
1 6 1,000 1,000 × 2^(N - F - 1) +30%
Cannon shell damage (research).png
Cannon shell damage
1 6 1,000 1,000 × 2^(N - F - 1) +30%
Laser turret damage (research).png
Laser turret damage
1 8 1,000 1,000 × 2^(N - F - 1) +70%
Artillery shell range (research).png
Artillery shell range
1 1 2,000 1,000 × 2^(N - F) +30%
Grenade damage (research).png
Grenade damage
1 7 2,000 1,000 × 2^(N - F) +20%
Mining productivity (research).png
Mining productivity
3 16 1,500 100 × (N - 1) +2%
Follower robot count (research).png
Follower robot count
3 7 1,000 100 × N + 900 +10
Artillery shell shooting speed (research).png
Artillery shell shooting speed
2 1 2,000 1,000 × 3^(N - F - 1) + 1,000 +100%

Affordability

Infinite research is essentially an inexhaustible resource sink for players who build very large bases. While the bonuses it provides can significantly improve the player's capabilities (particularly as regards combat), they are subject to diminishing returns; thus, the per-level contributions from very high levels of infinite research will eventually provide only marginal improvements.

As the price of most infinite research topics (specifically, those based on geometric progressions) increases very steeply, it may be a good idea for players to set realistic target levels for each of the infinite research topics they wish to pursue, and make their factory plans accordingly. To that end, the following properties of cumulative infinite research prices may be useful:

  1. The cumulative price of the first N - F levels (notation as in previous sections; i.e., here counting "infinite" levels only) of infinite research topics whose underlying equation is a powers-of-two geometric series (see equation type (1) in preceding sections) is 2 × P[N] - P[F+1]; i.e., twice the price of the final researched level, less the price of the first "infinite" level.
    • This tends toward 2 × P[N] as N goes to infinity.
    • The above also shows that, assuming constant research speed (usually, this is the same as science pack production capacity), each subsequent level of an infinite research topic of this type will take about as long as all preceding infinite levels took combined (or, twice as long as the previous level).
    • Further, assuming one has reached a level M they consider the "highest feasible" with their current science pack production capacity, expanding said capacity by a factor of X will allow at least floor(log[2](X)) and at most ceiling(log[2](X)) (i.e., the next lower / higher integer from the base-2 logarithm of X) additional levels to be researched before the next level takes longer to research with the expanded capacity than level M + 1 would have taken with the pre-expansion production capacity.
    • For example, if one expands production capacity by a factor of 10, they will be able to research at least floor(log[2](10)) = 3 and at most ceiling(log[2](10)) = 4 additional levels in a given technology before the exponential increase in price wipes out the benefits of their ×10 capacity expansion.
  2. The cumulative price of the first N - F levels of infinite research topics whose underlying equation is an arithmetic series (equation type (3)) is (N - F) × (P[N] + P[F + 1]) ÷ 2; i.e, N - F times the mean of the prices of the first and last "infinite" level.
    • Expanding production capacity by a factor of X, as above, will in this case allow an additional N × (X - 1) levels to be researched before the benefit of the expansion is wiped out (i.e., research progress speed drops to or below what it was pre-expansion).
  3. The cumulative price of the first N levels of artillery shell shooting speed, the sole infinite research topic whose underlying equation is a powers-of-three geometric series (equation type (2)) is 1.5 × P[N] - 0.5 × P[1]; i.e., 1.5 times the price of the final researched level, less half the price of the first level.
    • Note that the expressions above have been simplified to reflect the fact that this particular topic has F = 0. Since it is the only topic with this equation type, the loss of generality does not matter.
In all calculations above, the constant C (see equations) is ignored; for the topics where C ≠ 0, results must be adjusted by adding C × (N - F). This only applies to follower robot count and artillery shooting speed.

In all cases, the player can calculate the research price of their target level using the general equations (1), (2), (3) (see preceding sections), look up the price of the first "infinite" level in the table above, then use the summation properties described herein to arrive at a total science pack budget.

Note that these prices reflect research units, which will not be equal to science packs if productivity modules are used in labs. (In that case, the science pack requirement will be lower.)

Achievements

Tech-maniac-achievement.png Tech maniac

Research all technologies.

History

  • 0.15.0:
    • Research system overhauled
      • There are now 7 science pack types instead of 4, research prices have been changed to compensate.
      • Top-tier science pack is no longer obtained by destroying alien nests, but by launching rockets with satellites.
      • "Infinite research" mechanic introduced

See also