Tip of the Day
Pressing the mini-map at the top-right opens the full map for travel options.
Quality Outcome (Mechanics): Difference between revisions
m Text replacement - "{{Version|B}}" to "{{Version|A}}" Tag: Manual revert |
m Text replacement - "{{Version|573}}" to "{{Version|579}}" |
||
| (5 intermediate revisions by the same user not shown) | |||
| Line 4: | Line 4: | ||
== Bands == | == Bands == | ||
Each | Each recipe has a series of bands that work with the weights to control the odds of each crafting quality. | ||
{| class="wikitable" | {| class="wikitable" | ||
| Line 10: | Line 10: | ||
! Quality !! Band Start !! Band End | ! Quality !! Band Start !! Band End | ||
|- | |- | ||
| Normal || 0 || (100 + | | Normal || 0 || (100 + Recipe Level Requirement) × 1 | ||
|- | |- | ||
| Good || 100 || (100 + | | Good || 100 || (100 + Recipe Level Requirement) × 2 | ||
|- | |- | ||
| Great || 200 || (100 + | | Great || 200 || (100 + Recipe Level Requirement) × 3 | ||
|- | |- | ||
| Excellent || 300 || (100 + | | Excellent || 300 || (100 + Recipe Level Requirement) × 4 | ||
|- | |- | ||
| Perfect || 400 || (100 + | | Perfect || 400 || (100 + Recipe Level Requirement) × 5 | ||
|- | |- | ||
| Eternal || 500 || (100 + | | Eternal || 500 || (100 + Recipe Level Requirement) × 6 | ||
|} | |} | ||
== Weights == | == Weights == | ||
Each | Each recipe has a series of weights that control the percentage chance of each quality. These weights are adjusted by the quality outcome score we'll look at next. For now lets look at an example of unadjusted weights. | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
! Quality !! Starting</br>Weight !! Minimum</br>Weight !! Starting</br>Percentage</br>Chance | ! Quality !! Starting</br>Weight !! Minimum</br>Weight !! Starting</br>Percentage</br>Chance | ||
| Line 43: | Line 42: | ||
|} | |} | ||
== | == Quality Outcome Calculation == | ||
# | # Quality outcome is affected from three sources. | ||
#* The difference between the level requirement of the recipe and your | #* The difference between the level requirement of the recipe and your level in the artisan skill for the recipe. | ||
#* The bonus to | #* The bonus to quality outcome from equipment. | ||
#* A buff from [[Consumables]]. | #* A buff from [[Consumables]]. | ||
# The combined | # The combined quality outcome is used along with the band and weights to calculate a series of new calculated weights. | ||
#* The weights are determined by the following calculation step at each quality level. | #* The weights are determined by the following calculation step at each quality level. | ||
#** First, we compare the | #** First, we compare the quality outcome to the band start. If the band start is larger than the quality outcome, then we keep the normal starting weight as the new weight. If it is not then we continue on. | ||
#** Second, we calculate the band end. The band end is equal to (100 + | #** Second, we calculate the band end. The band end is equal to (100 + Recipe Level Requirement) × Quality. Where Quality is 1 for normal up to 5 for eternal. | ||
#** Third, we calculate the slope of the line in the space of weights and bands. (Starting Weight - Minimum Weight) ÷ (Band Start - Band End) | #** Third, we calculate the slope of the line in the space of weights and bands. (Starting Weight - Minimum Weight) ÷ (Band Start - Band End) | ||
#** Fourth, we compare the minimum possible weight to the Starting Weight + (Slope × ( | #** Fourth, we compare the minimum possible weight to the Starting Weight + (Slope × (Quality Outcome - Band Start)). We take the higher value and it becomes the new weight | ||
#** Finally, we compare our new weight to the calculated weight of the next highest quality and take the larger value. | #** Finally, we compare our new weight to the calculated weight of the next highest quality and take the larger value. | ||
#*** This makes it so that a lower quality is never rarer than a higher quality. It also means that it is useful to calculate starting from eternal quality and work backwards. | #*** This makes it so that a lower quality is never rarer than a higher quality. It also means that it is useful to calculate starting from eternal quality and work backwards. | ||
# The new weights give a series of new percentages at each quality level | # The new weights give a series of new percentages at each quality level | ||
#* Percentages are calculated by taking the weight of the quality level and dividing by the sum of all quality weights. | #* Percentages are calculated by taking the weight of the quality level and dividing by the sum of all quality weights. | ||
# The | # The quality outcome is rolled on the new percentage table to see what quality is obtained from this recipe action. | ||
=== Example with Minimum Required Level and no | === Example with Minimum Required Level and no Quality Outcome Bonus === | ||
If we want to craft an [[Iron Sickle]] at crafting level 20 with no equipment, and we complete the | If we want to craft an [[Iron Sickle]] at crafting level 20 with no equipment, and we complete the recipe action. | ||
# First we need to determine the | # First we need to determine the quality outcome bonus. | ||
#* We calculate the | #* We calculate the quality outcome from level difference. | ||
#** Crafting an Iron Sickle requires a minimum crafting level of 20, and we have crafting level 20. | #** Crafting an Iron Sickle requires a minimum crafting level of 20, and we have crafting level 20. | ||
#**20 crafting level - 20 recipe level = 0 | #**20 crafting level - 20 recipe level = 0 quality outcome bonus | ||
#* We have no equipment, so we don't gain any | #* We have no equipment, so we don't gain any quality outcome percentage. | ||
#** | #** Quality outcome from equipment = 0 quality outcome bonus | ||
#* We have no consumables, so we don't gain any | #* We have no consumables, so we don't gain any quality outcome percentage. | ||
#** | #** Quality outcome from consumables = 0 quality outcome bonus | ||
# We have a combined 0 | # We have a combined 0 quality outcome. We calculate the new calculated weights and percentages with this quality outcome. | ||
#* The | #* The quality outcome is less than the band start for every quality level, so we keep the original weights. | ||
#We use the weights to calculate the percentages as seen in the table below. | #We use the weights to calculate the percentages as seen in the table below. | ||
#The quality of the item crafted is determined by rolling with the new percentages. | #The quality of the item crafted is determined by rolling with the new percentages. | ||
| Line 93: | Line 92: | ||
|} | |} | ||
=== Example with Higher than Required Level and a | === Example with Higher than Required Level and a Quality Outcome Bonus from Equipment and Consumable === | ||
If we want to craft an [[Iron Sickle]] at crafting level 40 with a [[Crafting Shirt]] and [[Sweet Carrot Pie]], and we complete the | If we want to craft an [[Iron Sickle]] at crafting level 40 with a [[Crafting Shirt]] and [[Sweet Carrot Pie]], and we complete the recipe action. | ||
# First we need to determine the | # First we need to determine the quality outcome bonus. | ||
#* We calculate the | #* We calculate the quality outcome from level difference. | ||
#** Crafting an Iron Sickle requires a minimum crafting level of 20, and we have crafting level 40. | #** Crafting an Iron Sickle requires a minimum crafting level of 20, and we have crafting level 40. | ||
#**40 crafting level - 20 recipe level = 20 | #**40 crafting level - 20 recipe level = 20 quality outcome bonus | ||
#* Our Crafting Shirt gives us a +19 | #* Our Crafting Shirt gives us a +19 quality outcome bonus. | ||
#** | #** Quality outcome from equipment = 19 quality outcome bonus | ||
#* Our Sweet Carrot Pie gives us a +25 | #* Our Sweet Carrot Pie gives us a +25 quality outcome bonus. | ||
#** | #** Quality outcome from consumables = 25 quality outcome bonus | ||
# We have a combined 64 | # We have a combined 64 quality outcome. We calculate the new calculated weights and percentages with this quality outcome. | ||
#* The | #* The quality outcome is greater than the band start for "Normal" quality, so we need to calculate the slope and a new weight. | ||
#** First, we calculate a band end using the formula (100 + | #** First, we calculate a band end using the formula (100 + Recipe Level Requirement) × 1 = (100 + 20 ) × 1 = 120 | ||
#** Second, we calculate the slope (Starting Weight - Minimum Weight) ÷ (Band Start - Band End) = (1000 - 4) ÷ (0 - 120)</br>= -8.30 | #** Second, we calculate the slope (Starting Weight - Minimum Weight) ÷ (Band Start - Band End) = (1000 - 4) ÷ (0 - 120)</br>= -8.30 | ||
#** Third, we compare the minimum weight of 4 to the result of Starting Weight + (Slope × ( | #** Third, we compare the minimum weight of 4 to the result of Starting Weight + (Slope × (Quality Outcome - Band Start)) = 1000 + (-8.3 × (64-0) = 468.8. This is bigger than the minimum weight of 4 so we use it as the weight for normal quality. | ||
#* The | #* The quality outcome is lower than the band start for "Good" and higher qualities, so we keep the original weights. | ||
#** Good = 200, Great = 50, Excellent = 10, Perfect = 2.5, Eternal = 0.05 | #** Good = 200, Great = 50, Excellent = 10, Perfect = 2.5, Eternal = 0.05 | ||
#We use the weights to calculate the percentages as seen in the table below. | #We use the weights to calculate the percentages as seen in the table below. | ||
| Line 135: | Line 134: | ||
|} | |} | ||
=== Example with an Exaggerated | === Example with an Exaggerated Quality Outcome Bonus === | ||
If we want to craft an [[Iron Sickle]] with a total | If we want to craft an [[Iron Sickle]] with a total quality outcome of 200, and we complete the recipe action. | ||
{| class="wikitable" | {| class="wikitable" | ||
| Line 146: | Line 145: | ||
| Good || 200 || 4 || 100 || (100 + 20) × 2</br>= 240 || (200 - 4) ÷ (100 - 240)</br>= -1.40 || 200 + (-1.40 × (200 - 100))</br>= 60 || 60 ÷ 182.55</br>= ~32.87% | | Good || 200 || 4 || 100 || (100 + 20) × 2</br>= 240 || (200 - 4) ÷ (100 - 240)</br>= -1.40 || 200 + (-1.40 × (200 - 100))</br>= 60 || 60 ÷ 182.55</br>= ~32.87% | ||
|- | |- | ||
| Great || 50 || 4 || 200 || (100 + 20) × 3</br>= 360 || (50 - 4 ÷ (200 - 360)</br>= -0.2875 || | | Great || 50 || 4 || 200 || (100 + 20) × 3</br>= 360 || (50 - 4 ÷ (200 - 360)</br>= -0.2875 || Quality outcome is not greater than the band start.</br>Set to starting weight.</br>= 50 || 50 ÷ 182.55</br>= ~27.39% | ||
|- | |- | ||
| Excellent || 10 || 4 || 300 || (100 + 20) × 4</br>= 480 || (10 - 4) ÷ (300 - 480)</br>= -0.0<span style="text-decoration:overline">33</span> || | | Excellent || 10 || 4 || 300 || (100 + 20) × 4</br>= 480 || (10 - 4) ÷ (300 - 480)</br>= -0.0<span style="text-decoration:overline">33</span> || Quality outcome is not greater than the band start.</br>Set to starting weight.</br>= 10 || 10 ÷ 182.55</br>= ~5.48% | ||
|- | |- | ||
| Perfect || 2.5 || 2 || 400 || (100 + 20) × 5</br>= 600 || (2.5 - 2) ÷ (400 - 600)</br>= -0.0025 || | | Perfect || 2.5 || 2 || 400 || (100 + 20) × 5</br>= 600 || (2.5 - 2) ÷ (400 - 600)</br>= -0.0025 || Quality outcome is not greater than the band start.</br>Set to starting weight.</br>= 2.5 || 2.5 ÷ 182.55</br>= ~1.37% | ||
|- | |- | ||
| Eternal || 0.05 || 0.05 || 500 || (100 + 20) × 6</br>= 720 || (0.05 - 0.05) ÷ (500 - 720)</br>= 0 || | | Eternal || 0.05 || 0.05 || 500 || (100 + 20) × 6</br>= 720 || (0.05 - 0.05) ÷ (500 - 720)</br>= 0 || Quality outcome is not greater than the band start.</br>Set to starting weight.</br> = 0.05 || 0.05 ÷ 182.55</br>= ~0.03% | ||
|} | |} | ||
So, with our exaggerated | So, with our exaggerated quality outcome we completely reduced the weight of Normal to be the same as Good and almost reduced Good to be a low as Great. The other qualities remain the same but because of the reduced total weight all rare percentages are increased. For example, Eternal is now about three times more likely. | ||
{{Version| | {{Version|579}} | ||
[[Category:Game Mechanics]] | [[Category:Game Mechanics]] | ||
Latest revision as of 00:35, 3 December 2025
Before the explanation of the calculation we need to understand the concepts of "bands", "weights" and the "slope".
Note that there is a lot of math in the calculations here and they can be hard to follow on the wiki I recommend reading the Deep Dive #3 by Floursifter and testing with a copy of the spreadsheet calculator. --Editor
Bands
Each recipe has a series of bands that work with the weights to control the odds of each crafting quality.
| Quality | Band Start | Band End |
|---|---|---|
| Normal | 0 | (100 + Recipe Level Requirement) × 1 |
| Good | 100 | (100 + Recipe Level Requirement) × 2 |
| Great | 200 | (100 + Recipe Level Requirement) × 3 |
| Excellent | 300 | (100 + Recipe Level Requirement) × 4 |
| Perfect | 400 | (100 + Recipe Level Requirement) × 5 |
| Eternal | 500 | (100 + Recipe Level Requirement) × 6 |
Weights
Each recipe has a series of weights that control the percentage chance of each quality. These weights are adjusted by the quality outcome score we'll look at next. For now lets look at an example of unadjusted weights.
| Quality | Starting Weight |
Minimum Weight |
Starting Percentage Chance |
|---|---|---|---|
| Normal | 1000 | 4 | 79.20% |
| Good | 200 | 4 | 15.84% |
| Great | 50 | 4 | 3.96% |
| Excellent | 10 | 4 | 0.79% |
| Perfect | 2.5 | 2 | 0.20% |
| Eternal | 0.05 | 0.05 | ~0.004% |
Quality Outcome Calculation
- Quality outcome is affected from three sources.
- The difference between the level requirement of the recipe and your level in the artisan skill for the recipe.
- The bonus to quality outcome from equipment.
- A buff from Consumables.
- The combined quality outcome is used along with the band and weights to calculate a series of new calculated weights.
- The weights are determined by the following calculation step at each quality level.
- First, we compare the quality outcome to the band start. If the band start is larger than the quality outcome, then we keep the normal starting weight as the new weight. If it is not then we continue on.
- Second, we calculate the band end. The band end is equal to (100 + Recipe Level Requirement) × Quality. Where Quality is 1 for normal up to 5 for eternal.
- Third, we calculate the slope of the line in the space of weights and bands. (Starting Weight - Minimum Weight) ÷ (Band Start - Band End)
- Fourth, we compare the minimum possible weight to the Starting Weight + (Slope × (Quality Outcome - Band Start)). We take the higher value and it becomes the new weight
- Finally, we compare our new weight to the calculated weight of the next highest quality and take the larger value.
- This makes it so that a lower quality is never rarer than a higher quality. It also means that it is useful to calculate starting from eternal quality and work backwards.
- The weights are determined by the following calculation step at each quality level.
- The new weights give a series of new percentages at each quality level
- Percentages are calculated by taking the weight of the quality level and dividing by the sum of all quality weights.
- The quality outcome is rolled on the new percentage table to see what quality is obtained from this recipe action.
Example with Minimum Required Level and no Quality Outcome Bonus
If we want to craft an Iron Sickle at crafting level 20 with no equipment, and we complete the recipe action.
- First we need to determine the quality outcome bonus.
- We calculate the quality outcome from level difference.
- Crafting an Iron Sickle requires a minimum crafting level of 20, and we have crafting level 20.
- 20 crafting level - 20 recipe level = 0 quality outcome bonus
- We have no equipment, so we don't gain any quality outcome percentage.
- Quality outcome from equipment = 0 quality outcome bonus
- We have no consumables, so we don't gain any quality outcome percentage.
- Quality outcome from consumables = 0 quality outcome bonus
- We calculate the quality outcome from level difference.
- We have a combined 0 quality outcome. We calculate the new calculated weights and percentages with this quality outcome.
- The quality outcome is less than the band start for every quality level, so we keep the original weights.
- We use the weights to calculate the percentages as seen in the table below.
- The quality of the item crafted is determined by rolling with the new percentages.
| Quality | Weight | Percentages |
|---|---|---|
| Normal | 1000 | 79.20% |
| Good | 200 | 15.84% |
| Great | 50 | 3.96% |
| Excellent | 10 | 0.79% |
| Perfect | 2.5 | 0.20% |
| Eternal | 0.05 | ~0.004% |
Example with Higher than Required Level and a Quality Outcome Bonus from Equipment and Consumable
If we want to craft an Iron Sickle at crafting level 40 with a Crafting Shirt and Sweet Carrot Pie, and we complete the recipe action.
- First we need to determine the quality outcome bonus.
- We calculate the quality outcome from level difference.
- Crafting an Iron Sickle requires a minimum crafting level of 20, and we have crafting level 40.
- 40 crafting level - 20 recipe level = 20 quality outcome bonus
- Our Crafting Shirt gives us a +19 quality outcome bonus.
- Quality outcome from equipment = 19 quality outcome bonus
- Our Sweet Carrot Pie gives us a +25 quality outcome bonus.
- Quality outcome from consumables = 25 quality outcome bonus
- We calculate the quality outcome from level difference.
- We have a combined 64 quality outcome. We calculate the new calculated weights and percentages with this quality outcome.
- The quality outcome is greater than the band start for "Normal" quality, so we need to calculate the slope and a new weight.
- First, we calculate a band end using the formula (100 + Recipe Level Requirement) × 1 = (100 + 20 ) × 1 = 120
- Second, we calculate the slope (Starting Weight - Minimum Weight) ÷ (Band Start - Band End) = (1000 - 4) ÷ (0 - 120)
= -8.30 - Third, we compare the minimum weight of 4 to the result of Starting Weight + (Slope × (Quality Outcome - Band Start)) = 1000 + (-8.3 × (64-0) = 468.8. This is bigger than the minimum weight of 4 so we use it as the weight for normal quality.
- The quality outcome is lower than the band start for "Good" and higher qualities, so we keep the original weights.
- Good = 200, Great = 50, Excellent = 10, Perfect = 2.5, Eternal = 0.05
- The quality outcome is greater than the band start for "Normal" quality, so we need to calculate the slope and a new weight.
- We use the weights to calculate the percentages as seen in the table below.
- The quality of the item crafted is determined by rolling with the new percentages.
| Quality | Weight | Percentages |
|---|---|---|
| Normal | 468.8 | 468.8 ÷ 731.35 = ~64.10% |
| Good | 200 | 200 ÷ 731.35 = ~27.35% |
| Great | 50 | 50 ÷ 731.35 = ~6.84% |
| Excellent | 10 | 10 ÷ 731.35 = ~1.37% |
| Perfect | 2.5 | 2.5 ÷ 731.35 = ~0.34% |
| Eternal | 0.05 | 0.05 ÷ 731.35 = ~0.01% |
| Sum: | 731.35 |
Example with an Exaggerated Quality Outcome Bonus
If we want to craft an Iron Sickle with a total quality outcome of 200, and we complete the recipe action.
| Quality | Starting Weight |
Minimum Weight |
Band Start | Band End | Slope | New Weight | New Percentages |
|---|---|---|---|---|---|---|---|
| Normal | 1000 | 4 | 0 | (100 + 20) × 1 = 120 |
(1000 - 4) ÷ (0 - 120) = -8.30 |
1000 + (-8.30 × (200 - 0)) = -660 This is lower than the good weight, so it is set to = 60. |
60 ÷ 182.55 = ~32.87% |
| Good | 200 | 4 | 100 | (100 + 20) × 2 = 240 |
(200 - 4) ÷ (100 - 240) = -1.40 |
200 + (-1.40 × (200 - 100)) = 60 |
60 ÷ 182.55 = ~32.87% |
| Great | 50 | 4 | 200 | (100 + 20) × 3 = 360 |
(50 - 4 ÷ (200 - 360) = -0.2875 |
Quality outcome is not greater than the band start. Set to starting weight. = 50 |
50 ÷ 182.55 = ~27.39% |
| Excellent | 10 | 4 | 300 | (100 + 20) × 4 = 480 |
(10 - 4) ÷ (300 - 480) = -0.033 |
Quality outcome is not greater than the band start. Set to starting weight. = 10 |
10 ÷ 182.55 = ~5.48% |
| Perfect | 2.5 | 2 | 400 | (100 + 20) × 5 = 600 |
(2.5 - 2) ÷ (400 - 600) = -0.0025 |
Quality outcome is not greater than the band start. Set to starting weight. = 2.5 |
2.5 ÷ 182.55 = ~1.37% |
| Eternal | 0.05 | 0.05 | 500 | (100 + 20) × 6 = 720 |
(0.05 - 0.05) ÷ (500 - 720) = 0 |
Quality outcome is not greater than the band start. Set to starting weight. = 0.05 |
0.05 ÷ 182.55 = ~0.03% |
So, with our exaggerated quality outcome we completely reduced the weight of Normal to be the same as Good and almost reduced Good to be a low as Great. The other qualities remain the same but because of the reduced total weight all rare percentages are increased. For example, Eternal is now about three times more likely.
| This page has been updated to reflect information in game version ✨📡 0.3.0-beta+579 "QoL & OTA Update"📡✨. |
