Quality: Difference between revisions
m (→Optimal module usage: Forgot the comment code) |
(→Creating high-quality items: Fixed header level of "Derivation" to be a child of the Optimal Module Usage section.) |
||
(23 intermediate revisions by 6 users not shown) | |||
Line 1: | Line 1: | ||
{{Languages}} | |||
{{Boilerplate | {{Boilerplate | ||
|icon=No-building-material-icon.png | |icon=No-building-material-icon.png | ||
Line 56: | Line 57: | ||
* +30% increased ammo damage | * +30% increased ammo damage | ||
* +30% inserter rotation speed | * +30% inserter rotation speed | ||
* | * -16.67% (1/6) resource drain on miners. | ||
** This is multiplicative with productivity | ** This is multiplicative with productivity | ||
* +100% (+5 MJ) capacity on accumulators | * +100% (+5 MJ) capacity on accumulators | ||
Line 62: | Line 63: | ||
** Note that consumption and pollution are also increased at the same rate | ** Note that consumption and pollution are also increased at the same rate | ||
* −16% power consumption on beacons | * −16% power consumption on beacons | ||
* +1 to both | * +1 to both continuous coverage distance and exploration coverage distance in [[radar]]s | ||
* +100% durability on consumable items ([[repair pack]]s, [[science pack]]s) | * +100% durability on consumable items ([[repair pack]]s, [[science pack]]s) | ||
* +5% fork chance on the [[tesla turret]] and tesla ammo for the tesla gun | * +5% fork chance on the [[tesla turret]] and tesla ammo for the tesla gun | ||
Line 68: | Line 69: | ||
These effects are per quality strength and additive: a Legendary (5 tier-levels) [[Productivity module 3]] (base +10% productivity) would grant 25% productivity. | These effects are per quality strength and additive: a Legendary (5 tier-levels) [[Productivity module 3]] (base +10% productivity) would grant 25% productivity. | ||
Some buildings, | Some buildings only get increased health, with no special effect. Examples are: | ||
*Buildings related to [[Circuit network]]s and [[Rail signal]]s | |||
*[[Transport belt]]s | |||
*[[Pipe]]s | |||
*[[Wall]]s | |||
*[[Locomotive|Trains]] | |||
*[[Cargo wagon]]s | |||
{| class="wikitable" | |||
|+ Quality Effects | |||
|- | |||
! Item !! [[File:quality_normal.png|15px]] Normal !! [[File:quality_uncommon.png|15px]] Uncommon !! [[File:quality_rare.png|15px]] Rare !! [[File:quality_epic.png|15px]] Epic !! [[File:quality_legendary.png|15px]] Legendary | |||
|- | |||
| [[File:assembling_machine_1.png|15px]] [[Assembling machine 1]] || | |||
* Health - 300 | |||
* Crafting speed - 0.5 | |||
|| | |||
* Health - 390 | |||
* Crafting speed - 0.65 | |||
|| | |||
* Health - 480 | |||
* Crafting speed - 0.8 | |||
|| | |||
* Health - 570 | |||
* Crafting speed - 0.95 | |||
|| | |||
* Health - 750 | |||
* Crafting speed - 1.25 | |||
|- | |||
| [[File:assembling_machine_2.png|15px]] [[Assembling machine 2]] || | |||
* Health - 350 | |||
* Crafting speed - 0.75 | |||
|| | |||
* Health - 455 | |||
* Crafting speed - 0.975 | |||
|| | |||
* Health - 560 | |||
* Crafting speed - 1.2 | |||
|| | |||
* Health - 665 | |||
* Crafting speed - 1.425 | |||
|| | |||
* Health - 875 | |||
* Crafting speed - 1.875 | |||
|- | |||
| [[File:assembling_machine_3.png|15px]] [[Assembling machine 3]] || | |||
* Health - 400 | |||
* Crafting speed - 1.25 | |||
|| | |||
* Health - 520 | |||
* Crafting speed - 1.625 | |||
|| | |||
* Health - 640 | |||
* Crafting speed - 2 | |||
|| | |||
* Health - 760 | |||
* Crafting speed - 2.375 | |||
|| | |||
* Health - 1000 | |||
* Crafting speed - 3.125 | |||
|- | |||
| [[File:construction_robot.png|15px]] [[Construction robot]]|| | |||
* Health - 100 | |||
* Max flying reach - 571m | |||
* Energy capacity - 3MJ | |||
|| | |||
* Health - 130 | |||
* Max flying reach - 1152m | |||
* Energy capacity - 6MJ | |||
|| | |||
* Health - 160 | |||
* Max flying reach - 1728m | |||
* Energy capacity - 9MJ | |||
|| | |||
* Health - 190 | |||
* Max flying reach - 2305m | |||
* Energy capacity - 12MJ | |||
|| | |||
* Health - 250 | |||
* Max flying reach - 3457m | |||
* Energy capacity - 18MJ | |||
|- | |||
| [[File:inserter.png|15px]] [[Inserter]] || | |||
* Health - 150 | |||
* Energy consumption - 15.1kW | |||
* Rotation speed - 302°/s | |||
|| | |||
* Health - 195 | |||
* Energy consumption - 19.51kW | |||
* Rotation speed - 393°/s | |||
|| | |||
* Health - 240 | |||
* Energy consumption - 23.92kW | |||
* Rotation speed - 484°/s | |||
|| | |||
* Health - 285 | |||
* Energy consumption - 28.33kW | |||
* Rotation speed - 575°/s | |||
|| | |||
* Health - 375 | |||
* Energy consumption - 37.15kW | |||
* Rotation speed - 756°/s | |||
|- | |||
| [[File:fast_inserter.png|15px]] [[Fast inserter]] || | |||
* Health - 150 | |||
* Energy consumption - 59.3kW | |||
* Rotation speed - 864°/s | |||
|| | |||
* Health - 195 | |||
* Energy consumption - 76.94kW | |||
* Rotation speed - 1123°/s | |||
|| | |||
* Health - 240 | |||
* Energy consumption - 94.58kW | |||
* Rotation speed - 1382°/s | |||
|| | |||
* Health - 285 | |||
* Energy consumption - 112kW | |||
* Rotation speed - 1642°/s | |||
|| | |||
* Health - 375 | |||
* Energy consumption - 148kW | |||
* Rotation speed - 2160°/s | |||
|- | |||
| [[File:iron_chest.png|15px]] [[Iron chest]] || | |||
* Health - 200 | |||
* Storage size - 32 | |||
|| | |||
* Health - 260 | |||
* Storage size - 41 | |||
|| | |||
* Health - 320 | |||
* Storage size - 51 | |||
|| | |||
* Health - 380 | |||
* Storage size - 60 | |||
|| | |||
* Health - 500 | |||
* Storage size - 80 | |||
|- | |||
| [[File:laser_turret.png|15px]] [[Laser turret]] || | |||
* Health - 1000 | |||
* Range - 24 tiles | |||
|| | |||
* Health - 1300 | |||
* Range - 26.4 tiles | |||
|| | |||
* Health - 1600 | |||
* Range - 28.8 tiles | |||
|| | |||
* Health - 1900 | |||
* Range - 31.2 tiles | |||
|| | |||
* Health - 2500 | |||
* Range - 36 tiles | |||
|- | |||
| [[File:pipe.png|15px]] [[Pipe]] || | |||
* Health - 100 | |||
|| | |||
* Health - 130 | |||
|| | |||
* Health - 160 | |||
|| | |||
* Health - 190 | |||
|| | |||
* Health - 250 | |||
|- | |||
| [[File:roboport.png|15px]] [[Roboport]] || | |||
* Health - 500 | |||
* Energy consumption - 2.1MW | |||
* Robot recharge rate - 4 x 500kW | |||
|| | |||
* Health - 650 | |||
* Energy consumption - 2.7MW | |||
* Robot recharge rate - 4 x 650kW | |||
|| | |||
* Health - 800 | |||
* Energy consumption - 3.3MW | |||
* Robot recharge rate - 4 x 800kW | |||
|| | |||
* Health - 950 | |||
* Energy consumption - 3.9MW | |||
* Robot recharge rate - 4 x 950kW | |||
|| | |||
* Health - 1250 | |||
* Energy consumption - 5.1MW | |||
* Robot recharge rate - 4 x 1.25MW | |||
|- | |||
| [[File:small_electric_pole.png|15px]] [[Small electric pole]] || | |||
* Health - 100 | |||
* 5x5 supply area | |||
* Wire reach - 7.5 tiles | |||
|| | |||
* Health - 130 | |||
* 7x7 supply area | |||
* Wire reach - 9.5 tiles | |||
|| | |||
* Health - 160 | |||
* 9x9 supply area | |||
* Wire reach - 11.5 tiles | |||
|| | |||
* Health - 190 | |||
* 11x11 supply area | |||
* Wire reach - 13.5 tiles | |||
|| | |||
* Health - 250 | |||
* 15x15 supply area | |||
* Wire reach - 17.5 tiles | |||
|- | |||
| [[File:steel_chest.png|15px]] [[Steel chest]] || | |||
* Health - 350 | |||
* Storage size - 48 | |||
|| | |||
* Health - 455 | |||
* Storage size - 62 | |||
|| | |||
* Health - 560 | |||
* Storage size - 76 | |||
|| | |||
* Health - 665 | |||
* Storage size - 91 | |||
|| | |||
* Health - 875 | |||
* Storage size - 120 | |||
|- | |||
| [[File:wooden_chest.png|15px]] [[Wooden chest]] || | |||
* Health - 100 | |||
* Storage size - 16 | |||
|| | |||
* Health - 130 | |||
* Storage size - 20 | |||
|| | |||
* Health - 160 | |||
* Storage size - 25 | |||
|| | |||
* Health - 190 | |||
* Storage size - 30 | |||
|| | |||
* Health - 250 | |||
* Storage size - 40 | |||
|} | |||
== Creating high-quality items == | == Creating high-quality items == | ||
Line 105: | Line 419: | ||
Where Q is quality chance | Where Q is quality chance, the following tables present expected outputs for each level of research. | ||
<div style="display:inline-block; vertical-align:top; margin-right:20px;"> | <div style="display:inline-block; vertical-align:top; margin-right:20px;"> | ||
{| class="wikitable" style="text-align:center; vertical-align:middle;" | {| class="wikitable" style="text-align:center; vertical-align:middle;" | ||
Line 162: | Line 476: | ||
==== Examples ==== | ==== Examples ==== | ||
<div style="display:inline-block; margin-right:20px;"> | <div style="display:inline-block; margin-right:20px; vertical-align:top;"> | ||
{|class="wikitable" style="text-align: center;" | {|class="wikitable" style="text-align: center;" | ||
|+ 2× {{Icon|quality_module_2|[[File:quality_normal.png|Normal|16px]]}} → Q = 4% | |+ 2× {{Icon|quality_module_2|[[File:quality_normal.png|Normal|16px]]}} → Q = 4% | ||
Line 178: | Line 491: | ||
|} | |} | ||
</div><div style="display:inline-block; margin-right:20px;"> | </div><div style="display:inline-block; margin-right:20px;"> | ||
{|class="wikitable" style="text-align: center;" | {|class="wikitable" style="text-align: center;" | ||
|+ 4× {{Icon|quality_module_3|[[File:quality_normal.png|Normal|16px]]}} → Q = 10% | |+ 4× {{Icon|quality_module_3|[[File:quality_normal.png|Normal|16px]]}} → Q = 10% | ||
Line 199: | Line 511: | ||
|} | |} | ||
</div><div style="display:inline-block; margin-right:20px;"> | </div><div style="display:inline-block; margin-right:20px;"> | ||
{|class="wikitable" style="text-align: center;" | {|class="wikitable" style="text-align: center;" | ||
! {{Diagonal split header|Input|Output}} !! [[File:quality_normal.png|Normal|32px]] !! [[File:quality_uncommon.png|Uncommon|32px]] !! [[File:quality_rare.png|Rare|32px]] !! [[File:quality_epic.png|Epic|32px]] !! [[File:quality_legendary.png|Legendary|32px]] | ! {{Diagonal split header|Input|Output}} !! [[File:quality_normal.png|Normal|32px]] !! [[File:quality_uncommon.png|Uncommon|32px]] !! [[File:quality_rare.png|Rare|32px]] !! [[File:quality_epic.png|Epic|32px]] !! [[File:quality_legendary.png|Legendary|32px]] | ||
Line 222: | Line 533: | ||
==== Optimal module usage ==== | ==== Optimal module usage ==== | ||
It is optimal to improve quality on the lead-up to the target output item due to the recycler only giving back 25% of the input items, except for cases where the chosen item has a productivity research available, in which case looping through a recycler is optimal and has no added material cost (ignoring fluids). | It is optimal to improve quality on the lead-up to the target output item due to the recycler only giving back 25% of the input items, except for cases where the chosen item has a productivity research available, in which case looping through a recycler is optimal and has no added material cost (ignoring fluids). | ||
The following tables summarize the number of normal crafts needed to produce 1 legendary output | The following tables summarize the number of normal crafts (rounded up) needed to produce 1 legendary output using ideal ratios of quality module 3s to productivity module 3s, with 4 matching quality module 3 in the recycler. | ||
It is important to emphasize that these ratios maximize return per input material. If input capacity isn't a concern and the goal is speed rather than material efficiency, then switch out productivity modules for quality modules as needed. Beware, however, that in many cases material inefficiency nearly keeps pace with the legendary output rate. | |||
<div style="display:inline-block; vertical-align:top; margin-right:20px;"> | <div style="display:inline-block; vertical-align:top; margin-right:20px;"> | ||
{| class="wikitable" style="border: 2px solid; text-align:center;" | {| class="wikitable" style="border: 2px solid; text-align:center;" | ||
! Max Modules !! Base Prod. !! No. of {{Icon|productivity_module_3|[[File:quality_rare.png|Rare|16px]]}} !! No. of {{Icon|quality_module_3|[[File:quality_rare.png|Rare|16px]]}} !! Crafts | |||
|- | |- | ||
| 2 || 0% || 0 || 2 || 891 | |||
| | |||
|0%||0 | |||
|- | |- | ||
| | | 3 || 0% || 0 || 3 || 533 | ||
|- | |- | ||
| | | 4 || 0% || 1 || 3 || 342 | ||
|- | |- | ||
|50%|| | | 4 || 50% || 0 || 4 || 97 | ||
|- | |- | ||
|50%|| | | 5 || 50% || 1 || 4 || 67 | ||
|- | |- | ||
| | | 8 || 0% || 4 || 4 || 70 | ||
|} | |}</div> | ||
</div> | |||
<div style="display:inline-block; vertical-align:top; margin-right:20px;"> | <div style="display:inline-block; vertical-align:top; margin-right:20px;"> | ||
{| class="wikitable" style="border: 2px solid; text-align:center;" | {| class="wikitable" style="border: 2px solid; text-align:center;" | ||
! Max Modules !! Base Prod. !! No. of {{Icon|productivity_module_3|[[File:quality_epic.png|Epic|16px]]}} !! No. of {{Icon|quality_module_3|[[File:quality_epic.png|Epic|16px]]}} !! Crafts | |||
|- | |- | ||
| 2 || 0% || 0 || 2 || 608 | |||
| | |||
|0%||0 | |||
|- | |- | ||
| | | 3 || 0% || 1 || 2 || 356 | ||
|- | |- | ||
| | | 4 || 0% || 1 || 3 || 212 | ||
|- | |- | ||
|50%|| | | 4 || 50% || 1 || 3 || 62 | ||
|- | |- | ||
|50%|| | | 5 || 50% || 2 || 3 || 40 | ||
|- | |- | ||
| | | 8 || 0% || 5 || 3 || 34 | ||
|} | |}</div> | ||
</div> | |||
<div style="display:inline-block; vertical-align:top; margin-right:20px;"> | <div style="display:inline-block; vertical-align:top; margin-right:20px;"> | ||
{| class="wikitable" style="border: 2px solid; text-align:center;" | {| class="wikitable" style="border: 2px solid; text-align:center;" | ||
! Max Modules !! Base Prod. !! No. of {{Icon|productivity_module_3|[[File:quality_legendary.png|Legendary|16px]]}} !! No. of {{Icon|quality_module_3|[[File:quality_legendary.png|Legendary|16px]]}} !! Crafts | |||
|- | |- | ||
| 2 || 0% || 0 || 2 || 309 | |||
|0%||0|| | |||
|- | |- | ||
|0%||1|| | | 3 || 0% || 1 || 2 || 153 | ||
|- | |- | ||
|0%||2||2|| | | 4 || 0% || 2 || 2 || 80 | ||
|- | |- | ||
| | | 4 || 50% || 3 || 1 || 25 | ||
|- | |- | ||
| | | 5 || 50% || 4 || 1 || 14 | ||
|50%|| | |||
|- | |- | ||
| | | 8 || 0% || 8 || 0 || 7 | ||
|}</div> | |||
For example, suppose legendary T3 modules are available and the goal is to produce legendary [[File:Processing_unit.png|link=Processing unit|20px]]. If each electromagnetic plant producing epic quality or below has 4 legendary [[File:productivity_module_3.png|link=Productivity module 3|20px]] and 1 legendary [[File:quality_module_3.png|link=Quality module 3|20px]], and the electromagnetic plant with the legendary recipe has 5 legendary [[File:productivity_module_3.png|link=Productivity module 3|20px]], then on average an input of 280 normal [[File:Electronic_circuit.png|link=Electronic circuit|20px]] and 28 normal [[File:Advanced_circuit.png|link=Advanced circuit|20px]] is expected to produce 1 legendary [[File:Processing_unit.png|link=Processing unit|20px]]. | |||
|} | |||
</div> | |||
| | |||
| | |||
===== Derivation ===== | |||
Derivation of the tables above was as follows: Starting with 1 set of common ingredients, with an assembly quality chance of Q and total productivity bonus of P, the statistical expected number of product is as follows: | |||
Derivation of the tables above was as follows: | |||
Starting with 1 set of common ingredients, with an assembly quality chance of Q and total productivity bonus of P, the statistical expected number of product is as follows: | |||
{| class="wikitable" style="text-align:center; vertical-align:middle;" | {| class="wikitable" style="text-align:center; vertical-align:middle;" | ||
|+ | |+ | ||
! [[File:quality_normal.png|Normal|20px]] !! [[File:quality_uncommon.png|Uncommon|20px]] !! [[File:quality_rare.png|Rare|20px]] !! [[File:quality_epic.png|Epic|20px]] !! [[File:quality_legendary.png|Legendary|20px]] | ! [[File:quality_normal.png|Normal|20px]] !! [[File:quality_uncommon.png|Uncommon|20px]] !! [[File:quality_rare.png|Rare|20px]] !! [[File:quality_epic.png|Epic|20px]] !! [[File:quality_legendary.png|Legendary|20px]] | ||
|- | |- | ||
| (1 + P) * (1 - Q) || (1 + P) * (Q * (10<sup>0</sup> - 10<sup>-1</sup>))|| (1 + P) * (Q * (10<sup>-1</sup> - 10<sup>-2</sup>)) | | (1 + P) * (1 - Q) || (1 + P) * (Q * (10<sup>0</sup> - 10<sup>-1</sup>))|| (1 + P) * (Q * (10<sup>-1</sup> - 10<sup>-2</sup>)) || (1 + P) * (Q * (10<sup>-2</sup> - 10<sup>-3</sup>)) || (1 + P) * (Q * 10<sup>-3</sup>) | ||
|- | |- | ||
| | | (1 + P) * (1 - Q) || (1 + P) * Q * 9/10 || (1 + P) * Q * 9/100 || (1 + P) * Q * 9/1000 || (1 + P) * Q * 1/1000 | ||
|} | |} | ||
In a similar vein, the same calculations can be done for recycling products, except that there is, in effect, -75% productivity bonus, where only a quarter of the items are returned. | In a similar vein, the same calculations can be done for recycling products, except that there is, in effect, -75% productivity bonus, where only a quarter of the items are returned. | ||
{| class="wikitable" style="text-align:center; vertical-align:middle;" | {| class="wikitable" style="text-align:center; vertical-align:middle;" | ||
! [[File:quality_normal.png|Normal|20px]] !! [[File:quality_uncommon.png|Uncommon|20px]] !! [[File:quality_rare.png|Rare|20px]] !! [[File:quality_epic.png|Epic|20px]] !! [[File:quality_legendary.png|Legendary|20px]] | ! [[File:quality_normal.png|Normal|20px]] !! [[File:quality_uncommon.png|Uncommon|20px]] !! [[File:quality_rare.png|Rare|20px]] !! [[File:quality_epic.png|Epic|20px]] !! [[File:quality_legendary.png|Legendary|20px]] | ||
|- | |- | ||
| (1 + -0.75) * (1-Q) || (1 + -0.75) * (Q * (10<sup>0</sup> - 10<sup>-1</sup>))|| (1 + -0.75) * (Q * (10<sup>-1</sup> - 10<sup>-2</sup>)) | | (1 + -0.75) * (1-Q) || (1 + -0.75) * (Q * (10<sup>0</sup> - 10<sup>-1</sup>)) || (1 + -0.75) * (Q * (10<sup>-1</sup> - 10<sup>-2</sup>)) || (1 + -0.75) * (Q * (10<sup>-2</sup> - 10<sup>-3</sup>)) || (1 + -0.75) * (Q * 10<sup>-3</sup>) | ||
|- | |- | ||
| 0.25 * (1-Q) || 0.25 * Q * 9/10|| 0.25 * Q * 9/100 | | 0.25 * (1-Q) || 0.25 * Q * 9/10|| 0.25 * Q * 9/100 || 0.25 * Q * 9/1000 || 0.25 * Q * 1/1000 | ||
|} | |} | ||
For example, recycling with a Q of 25%: | For example, recycling an uncommon ingredient with a Q of 25%: | ||
{| class="wikitable" style="text-align:center; vertical-align:middle;" | {| class="wikitable" style="text-align:center; vertical-align:middle;" | ||
! {{Diagonal split header|Input|Output}} !! [[File:quality_normal.png|Normal|20px]] !! [[File:quality_uncommon.png|Uncommon|20px]] !! [[File:quality_rare.png|Rare|20px]] !! [[File:quality_epic.png|Epic|20px]] !! [[File:quality_legendary.png|Legendary|20px]] | |||
!{{Diagonal split header|Input|Output}} !! [[File:quality_normal.png|Normal|20px]] !! [[File:quality_uncommon.png|Uncommon|20px]] !! [[File:quality_rare.png|Rare|20px]] !! [[File:quality_epic.png|Epic|20px]] !! [[File:quality_legendary.png|Legendary|20px]] | |||
|- | |- | ||
|style="background:#424242"| [[File: | | style="background:#424242" | [[File:quality_uncommon.png|Uncommon|16px]] || - || 0.1875 || 0.05625 || 0.005625 || 0.000625 | ||
|} | |} | ||
Combining these results allows a 'Transition Matrix' to be developed (see Stochastic Matrix on wikipedia) which after iteration can generate the expected number of legendary products from 1 set of common ingredients via matrix multiplication. An example matrix for P of 50% and Q of 25% for both recycling and assembly is copied below. Note that since legendary products are the goal, they are not recycled. | Combining these results allows a 'Transition Matrix' to be developed (see Stochastic Matrix on wikipedia) which after iteration can generate the expected number of legendary products from 1 set of common ingredients via matrix multiplication. An example matrix for P of 50% and Q of 25% for both recycling and assembly is copied below. Note that since legendary products are the goal, they are not recycled. | ||
{| class="wikitable" style="border:2px solid; text-align:center;" | {| class="wikitable" style="border:2px solid; text-align:center;" | ||
! | ! !! style="border-left:2px solid" | I<sub>[[File:quality_normal.png|Normal|10px]]</sub> !! I<sub>[[File:quality_uncommon.png|Uncommon|10px]]</sub> !! I<sub>[[File:quality_rare.png|Rare|10px]]</sub> !! I<sub>[[File:quality_epic.png|Epic|10px]]</sub> !! I<sub>[[File:quality_legendary.png|Legendary|10px]]</sub> | ||
!style="border-left:2px solid"| P<sub>[[File:quality_normal.png|Normal|10px]]</sub> !! P<sub>[[File:quality_uncommon.png|Uncommon|10px]]</sub> !! P<sub>[[File:quality_rare.png|Rare|10px]]</sub> !! P<sub>[[File:quality_epic.png|Epic|10px]]</sub> !! P<sub>[[File:quality_legendary.png|Legendary|10px]]</sub> | ! style="border-left:2px solid" | P<sub>[[File:quality_normal.png|Normal|10px]]</sub> !! P<sub>[[File:quality_uncommon.png|Uncommon|10px]]</sub> !! P<sub>[[File:quality_rare.png|Rare|10px]]</sub> !! P<sub>[[File:quality_epic.png|Epic|10px]]</sub> !! P<sub>[[File:quality_legendary.png|Legendary|10px]]</sub> | ||
|- style="border-top:2px solid" | |- style="border-top:2px solid" | ||
! I<sub>[[File:quality_normal.png|Normal|10px]]</sub> | ! I<sub>[[File:quality_normal.png|Normal|10px]]</sub> | ||
|style="border-left:2px solid"| 0 || 0 || 0 || 0 || 0 | | style="border-left:2px solid" | 0 || 0 || 0 || 0 || 0 | ||
|style="border-left:2px solid"| 1.125 || 0.3375 || 0.03375 || 0.003375 || 0.000375 | | style="border-left:2px solid" | 1.125 || 0.3375 || 0.03375 || 0.003375 || 0.000375 | ||
|- | |- | ||
! I<sub>[[File:quality_uncommon.png|Uncommon|10px]]</sub> | ! I<sub>[[File:quality_uncommon.png|Uncommon|10px]]</sub> | ||
|style="border-left:2px solid"| 0 || 0 || 0 || 0 || 0 | | style="border-left:2px solid" | 0 || 0 || 0 || 0 || 0 | ||
|style="border-left:2px solid"| 0 || 1.125 || 0.3375 || 0.03375 || 0.00375 | | style="border-left:2px solid" | 0 || 1.125 || 0.3375 || 0.03375 || 0.00375 | ||
|- | |- | ||
! I<sub>[[File:quality_rare.png|Rare|10px]]</sub> | ! I<sub>[[File:quality_rare.png|Rare|10px]]</sub> | ||
|style="border-left:2px solid"| 0 || 0 || 0 || 0 || 0 | | style="border-left:2px solid" | 0 || 0 || 0 || 0 || 0 | ||
|style="border-left:2px solid"| 0 || 0 || 1.125 || 0.3375 || 0.0375 | | style="border-left:2px solid" | 0 || 0 || 1.125 || 0.3375 || 0.0375 | ||
|- | |- | ||
! I<sub>[[File:quality_epic.png|Epic|10px]]</sub> | ! I<sub>[[File:quality_epic.png|Epic|10px]]</sub> | ||
|style="border-left:2px solid"| 0 || 0 || 0 || 0 || 0 | | style="border-left:2px solid" | 0 || 0 || 0 || 0 || 0 | ||
|style="border-left:2px solid"| 0 || 0 || 0 || 1.125 || 0.375 | | style="border-left:2px solid" | 0 || 0 || 0 || 1.125 || 0.375 | ||
|- | |- | ||
! I<sub>[[File:quality_legendary.png|Legendary|10px]]</sub> | ! I<sub>[[File:quality_legendary.png|Legendary|10px]]</sub> | ||
|style="border-left:2px solid"| 0 || 0 || 0 || 0 || 0 | | style="border-left:2px solid" | 0 || 0 || 0 || 0 || 0 | ||
|style="border-left:2px solid"| 0 || 0 || 0 || 0 || 1.5 | | style="border-left:2px solid" | 0 || 0 || 0 || 0 || 1.5 | ||
|- style="border-top:2px solid" | |- style="border-top:2px solid" | ||
! P<sub>[[File:quality_normal.png|Normal|10px]]</sub> | ! P<sub>[[File:quality_normal.png|Normal|10px]]</sub> | ||
|style="border-left:2px solid"| 0.1875 || 0. | | style="border-left:2px solid" | 0.1875 || 0.05625 || 0.005625 || 0.0005625 || 0.0000625 | ||
|style="border-left:2px solid"| 0 || 0 || 0 || 0 || 0 | | style="border-left:2px solid" | 0 || 0 || 0 || 0 || 0 | ||
|- | |- | ||
! P<sub>[[File:quality_uncommon.png|Uncommon|10px]]</sub> | ! P<sub>[[File:quality_uncommon.png|Uncommon|10px]]</sub> | ||
|style="border-left:2px solid"| 0 || 0.1875 || 0.05625 || 0.005625 || 0.000625 | | style="border-left:2px solid" | 0 || 0.1875 || 0.05625 || 0.005625 || 0.000625 | ||
|style="border-left:2px solid"| 0 || 0 || 0 || 0 || 0 | | style="border-left:2px solid" | 0 || 0 || 0 || 0 || 0 | ||
|- | |- | ||
! P<sub>[[File:quality_rare.png|Rare|10px]]</sub> | ! P<sub>[[File:quality_rare.png|Rare|10px]]</sub> | ||
|style="border-left:2px solid"| 0 || 0 || 0.1875 || 0.05625 || 0.00625 | | style="border-left:2px solid" | 0 || 0 || 0.1875 || 0.05625 || 0.00625 | ||
|style="border-left:2px solid"| 0 || 0 || 0 || 0 || 0 | | style="border-left:2px solid" | 0 || 0 || 0 || 0 || 0 | ||
|- | |- | ||
! P<sub>[[File:quality_epic.png|Epic|10px]]</sub> | ! P<sub>[[File:quality_epic.png|Epic|10px]]</sub> | ||
|style="border-left:2px solid"| 0 || 0 || 0 || 0.1875 || 0.0625 | | style="border-left:2px solid" | 0 || 0 || 0 || 0.1875 || 0.0625 | ||
|style="border-left:2px solid"| 0 || 0 || 0 || 0 || 0 | | style="border-left:2px solid" | 0 || 0 || 0 || 0 || 0 | ||
|- | |- | ||
! P<sub>[[File:quality_legendary.png|Legendary|10px]]</sub> | ! P<sub>[[File:quality_legendary.png|Legendary|10px]]</sub> | ||
|style="border-left:2px solid"| 0 || 0 || 0 || 0 || 0 | | style="border-left:2px solid" | 0 || 0 || 0 || 0 || 0 | ||
|style="border-left:2px solid"| 0 || 0 || 0 || 0 || 1 | | style="border-left:2px solid" | 0 || 0 || 0 || 0 || 1 | ||
|} | |} | ||
To iterate this matrix (M) apply the matrix to itself. For example, M<sup>6</sup> would indicate 6 iterations, corresponding to 3 crafting steps and 3 recycling steps. To see how much 1 ingredient set produces after a given iteration, x, multiply an input vector by M<sup>x</sup>. The vector format follows that of the matrix labels, so with the table arranged as above, left multiply a row vector of ingredient(s) by the matrix. In order to see the expected product of 1 set of normal ingredients, the vector will have '1' in the first column and '0's everywhere else. Likewise, a set of uncommon ingredients will correspond to '1' in the second column of the vector. | |||
It is important to note that since the recycling step has a material loss of 75% most recycling loops will be well behaved and converge quickly. | |||
Extreme productivity from research breaks this pattern and will prevent convergence, but this simply means that there is a positive material cycle, so 1 set of ingredients will produce infinite legendary crafts, on average. The closer the total productivity is to 400%, the slower the convergence of the matrix iteration and the higher you need to calculate x in M<sup>x</sup>. | |||
<!--[[File:Quality_Transition_Matrix.png]]--> | <!--[[File:Quality_Transition_Matrix.png]]--> | ||
Latest revision as of 17:30, 18 December 2024
This article is a lacking sources for details of upcoming changes. |
---|
You can help this wiki by adding them. |
Space Age expansion exclusive feature.
Quality is a feature of the Space Age expansion. It introduces four higher quality levels for all items, structures and equipment with improved attributes. The goal of quality is to allow vertical factory upgrading as alternative to expansion in size. Items of higher quality are created by chance when using quality modules in the producing structure. The two highest quality tiers require technology not available on Nauvis. Different buildings and items can have different attributes that can be upgraded. When hovering over something, the attributes that will be upgraded with quality will be marked with a blue diamond in the tooltip.
While players are required to own Space Age to access this feature, quality is a separate mod, and can be activated independent of most Space Age content.
Quality tiers
There are 5 quality tiers in vanilla gameplay, with tier strength in brackets:
Note that legendary quality represents a 2-tier improvement over epic.
Technologies
Certain tiers of quality cannot be created until they have been researched.
Research | Base Game | Space Age | Unlocks |
---|---|---|---|
Quality module (research) | x 300 | x 500 | |
Epic quality (research) | x 5000 | x 5000 | |
Legendary quality (research) | x 5000 | x 5000 |
Quality effects
The currently known effects of each level of quality are as follows:
- +30% health
- +30% crafting speed
- +30% robot limit (rounded down)
- +30% robot recharge rate (both number and speed, rounded down)
- +30% positive module effects (rounded down for at least quality modules)
- +10% turret range
- +10% weapon range
- +1 tile reach and +2 wire reach on power poles
- +1 equipment grid size (both dimensions)
- +30% chest inventory size (rounded down)
- +30% increased ammo damage
- +30% inserter rotation speed
- -16.67% (1/6) resource drain on miners.
- This is multiplicative with productivity
- +100% (+5 MJ) capacity on accumulators
- +30% output rate on boilers, steam engines, steam turbines, accumulators (also affects input rate), and nuclear reactors
- Note that consumption and pollution are also increased at the same rate
- −16% power consumption on beacons
- +1 to both continuous coverage distance and exploration coverage distance in radars
- +100% durability on consumable items (repair packs, science packs)
- +5% fork chance on the tesla turret and tesla ammo for the tesla gun
These effects are per quality strength and additive: a Legendary (5 tier-levels) Productivity module 3 (base +10% productivity) would grant 25% productivity.
Some buildings only get increased health, with no special effect. Examples are:
- Buildings related to Circuit networks and Rail signals
- Transport belts
- Pipes
- Walls
- Trains
- Cargo wagons
Item | Normal | Uncommon | Rare | Epic | Legendary |
---|---|---|---|---|---|
Assembling machine 1 |
|
|
|
|
|
Assembling machine 2 |
|
|
|
|
|
Assembling machine 3 |
|
|
|
|
|
Construction robot |
|
|
|
|
|
Inserter |
|
|
|
|
|
Fast inserter |
|
|
|
|
|
Iron chest |
|
|
|
|
|
Laser turret |
|
|
|
|
|
Pipe |
|
|
|
|
|
Roboport |
|
|
|
|
|
Small electric pole |
|
|
|
|
|
Steel chest |
|
|
|
|
|
Wooden chest |
|
|
|
|
|
Creating high-quality items
There are two ways to create an item with above normal quality: The player must either use ingredient items of the same quality, or use quality modules for a random chance of a higher-quality item.
Quality ingredients
Recipes that create items have variations for each quality that the item might take. When setting such a recipe in a production unit, an ingredient quality must be selected. For these variations, the set of ingredients required is the same, except that all item ingredients must have the specified quality.
Item ingredient quality requirements are exact, not minimum. For example, one can not combine uncommon iron plates with rare batteries to make an accumulator of any quality. One must therefore ensure that high-quality items do not clog up belts and starve production units of lower-quality items.
As fluids do not possess any quality, they are exempt from ingredient quality requirements; the same lubricant can be used to create electric engine units of any quality.
Quality modules
- Main article: Quality module
Quality modules allow crafting machines to produce items of a higher quality than their ingredients. Each module adds a quality chance to a machine, depending on its tier and quality. See the following table for all quality chances:
Quality Module |
|||||
---|---|---|---|---|---|
+1% | +1.3% | +1.6% | +1.9% | +2.5% | |
+2% | +2.6% | +3.2% | +3.8% | +5% | |
+2.5% | +3.2% | +4% | +4.7% | +6.2% |
When working out the odds of improving quality, a machine starts with the sum of the quality chance of all its modules. When the machine produces an item, it performs a random roll with that chance to succeed. If it succeeds, the product is upgraded 1 level from its ingredients. If the product was upgraded, the machine repeats this process, now with a constant 10% chance of passing, rolling and upgrading until a roll fails.
When using quality ingredients as an input, the base quality is the quality of the recipe. You can only use items with the same quality as input.
Quality modules are only required to improve quality, crafting will always give the base quality of the used items. Additionally, the odds of improving from a given base quality is the same as improving the same number of tiers from Normal quality.
Where Q is quality chance, the following tables present expected outputs for each level of research.
Output Input |
|||
---|---|---|---|
1 - Q | Q * 9/10 | Q * 1/10 | |
- | 1 - Q | Q | |
- | - | 1 |
Output Input |
||||
---|---|---|---|---|
1 - Q | Q * 9/10 | Q * 9/100 | Q * 1/100 | |
- | 1 - Q | Q * 9/10 | Q * 1/10 | |
- | - | 1 - Q | Q | |
- | - | - | 1 |
Output Input |
|||||
---|---|---|---|---|---|
1 - Q | Q * 9/10 | Q * 9/100 | Q * 9/1000 | Q * 1/1000 | |
- | 1 - Q | Q * 9/10 | Q * 9/100 | Q * 1/100 | |
- | - | 1 - Q | Q * 9/10 | Q * 1/10 | |
- | - | - | 1 - Q | Q | |
- | - | - | - | 1 |
Examples
Output Input |
|||||
---|---|---|---|---|---|
90% | 9% | 0.9% | 0.09% | 0.01% | |
- | 90% | 9% | 0.9% | 0.1% | |
- | - | 90% | 9% | 1% | |
- | - | - | 90% | 10% | |
- | - | - | - | 100% |
Output Input |
|||||
---|---|---|---|---|---|
75.2% | 22.32% | 2.232% | 0.2232% | 0.0248% | |
- | 75.2% | 22.32% | 2.232% | 0.248% | |
- | - | 75.2% | 22.32% | 2.48% | |
- | - | - | 75.2% | 24.8% | |
- | - | - | - | 100% |
Optimal module usage
It is optimal to improve quality on the lead-up to the target output item due to the recycler only giving back 25% of the input items, except for cases where the chosen item has a productivity research available, in which case looping through a recycler is optimal and has no added material cost (ignoring fluids).
The following tables summarize the number of normal crafts (rounded up) needed to produce 1 legendary output using ideal ratios of quality module 3s to productivity module 3s, with 4 matching quality module 3 in the recycler.
It is important to emphasize that these ratios maximize return per input material. If input capacity isn't a concern and the goal is speed rather than material efficiency, then switch out productivity modules for quality modules as needed. Beware, however, that in many cases material inefficiency nearly keeps pace with the legendary output rate.
Max Modules | Base Prod. | No. of | No. of | Crafts |
---|---|---|---|---|
2 | 0% | 0 | 2 | 891 |
3 | 0% | 0 | 3 | 533 |
4 | 0% | 1 | 3 | 342 |
4 | 50% | 0 | 4 | 97 |
5 | 50% | 1 | 4 | 67 |
8 | 0% | 4 | 4 | 70 |
Max Modules | Base Prod. | No. of | No. of | Crafts |
---|---|---|---|---|
2 | 0% | 0 | 2 | 608 |
3 | 0% | 1 | 2 | 356 |
4 | 0% | 1 | 3 | 212 |
4 | 50% | 1 | 3 | 62 |
5 | 50% | 2 | 3 | 40 |
8 | 0% | 5 | 3 | 34 |
Max Modules | Base Prod. | No. of | No. of | Crafts |
---|---|---|---|---|
2 | 0% | 0 | 2 | 309 |
3 | 0% | 1 | 2 | 153 |
4 | 0% | 2 | 2 | 80 |
4 | 50% | 3 | 1 | 25 |
5 | 50% | 4 | 1 | 14 |
8 | 0% | 8 | 0 | 7 |
For example, suppose legendary T3 modules are available and the goal is to produce legendary . If each electromagnetic plant producing epic quality or below has 4 legendary and 1 legendary , and the electromagnetic plant with the legendary recipe has 5 legendary , then on average an input of 280 normal and 28 normal is expected to produce 1 legendary .
Derivation
Derivation of the tables above was as follows: Starting with 1 set of common ingredients, with an assembly quality chance of Q and total productivity bonus of P, the statistical expected number of product is as follows:
In a similar vein, the same calculations can be done for recycling products, except that there is, in effect, -75% productivity bonus, where only a quarter of the items are returned.
For example, recycling an uncommon ingredient with a Q of 25%:
Output Input |
|||||
---|---|---|---|---|---|
- | 0.1875 | 0.05625 | 0.005625 | 0.000625 |
Combining these results allows a 'Transition Matrix' to be developed (see Stochastic Matrix on wikipedia) which after iteration can generate the expected number of legendary products from 1 set of common ingredients via matrix multiplication. An example matrix for P of 50% and Q of 25% for both recycling and assembly is copied below. Note that since legendary products are the goal, they are not recycled.
To iterate this matrix (M) apply the matrix to itself. For example, M6 would indicate 6 iterations, corresponding to 3 crafting steps and 3 recycling steps. To see how much 1 ingredient set produces after a given iteration, x, multiply an input vector by Mx. The vector format follows that of the matrix labels, so with the table arranged as above, left multiply a row vector of ingredient(s) by the matrix. In order to see the expected product of 1 set of normal ingredients, the vector will have '1' in the first column and '0's everywhere else. Likewise, a set of uncommon ingredients will correspond to '1' in the second column of the vector.
It is important to note that since the recycling step has a material loss of 75% most recycling loops will be well behaved and converge quickly.
Extreme productivity from research breaks this pattern and will prevent convergence, but this simply means that there is a positive material cycle, so 1 set of ingredients will produce infinite legendary crafts, on average. The closer the total productivity is to 400%, the slower the convergence of the matrix iteration and the higher you need to calculate x in Mx.
Usage tips
Using quality to increase production
There are four ways in which quality can increase the output of a single production machine:
- Increasing the quality of the machine itself will improve its base crafting speed.
- Increasing the quality of speed modules will increase the effect of their speed improvements.
- Increasing the quality of productivity modules will increase their productivity bonus without reducing crafting speed. Since extra items obtained from the productivity bonus do not take extra time to produce, this will also increase the number of items produced over time.
- Increasing the quality of beacons will increase their transmission efficiency. If they contain speed modules, then the effect of these modules is increased.
These four options share a powerful synergy, as they react multiplicatively with one another. This makes it possible to achieve very high production rates with very few machines when compared to only using normal quality items. For example, imagine a setup where electronic circuits are made using one electromagnetic plant with five productivity module 3s, which is surrounded by 12 beacons with two speed module 3s, each. With normal quality, this will achieve an output rate of almost 45 items per second (almost enough to saturate one non-layered express transport belt). However, if the electromagnetic plant and all beacons and modules have legendary quality, the output rate becomes slightly more than 600 items per second (enough to saturate two and a half turbo transport belts with four layers of items). This is more than 13 times as many items as without quality.
It should be noted that quality beacons are the only one of these factors that may increase energy consumption over time, as the transmission effect is also applied to the energy cost of speed modules. However, this is offset or even negated by the reduced energy consumption of the beacons themselves (which is also affected by quality), especially with high beacon counts wherein the transmission effect is subject to diminishing returns. For speed modules, productivity modules, and the machine itself, only the speed increase, productivity bonus, and base crafting speed are affected, respectively.
The increased transmission effect of high-quality beacons is also notable because unlike when increasing the number of beacons, there are no diminishing returns for increasing their quality (aside from the exponentially increasing cost of producing those higher-quality beacons in the first place). This means that, despite a legendary beacon only being 1.66 times as powerful as a normal-quality beacon, one would need 0.36 times as many legendary beacons as normal ones to achieve the same effect. Aside from making more powerful beacon setups, this can also be used to save space by achieving the same effect with fewer beacons, thereby leaving more room for machines and belts.
Higher-quality machines are also particularly useful for producing quality items as, unlike speed modules, machine quality does not reduce the chance of increasing a product's quality.
Using quality to save space
Another use for quality is decreasing the amount of buildings needed to perform the same production. This is particularly useful in a space platform, where small, compact designs are rewarded with increased speed, as well as needing fewer rockets to build the platform.
Relevant Factorio Friday Facts
Trivia
- Quality is not technically exclusive to player-made entities; Though this does not occur naturally, quality is also allowed on enemies, asteroids, and even the player character.
- Some enemies with qualities above normal can even be created in regular sandbox gameplay: Big biters, behemoth biters, and big premature wriggler pentapods born from spoiled biter eggs, captive biter spawners, and pentapod eggs inherit the quality of the spoiled items, with the latter two being possible to craft with quality modules. Furthermore, a starved captured biter spawner will retain its quality upon converting into a hostile biter spawner, with said quality even being inherited by the biters that it will spawn. Should these biters chose to expand, they may also create quality spitters and worms.