Skip to content

Commit a5723eb

Browse files
committed
Update ailment threshold to current values
https://poedb.tw/us/Sirus%2C_Awakener_of_Worlds#SirusAwakenerofWorldsAtlasExile5 Also remove awakening level as it do not exists anymore and it was taken into account for ailment calculations but sirus is now always A8 (ignoring unleashed uber version but pob do not supports ubers atm anyway). Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
1 parent 2ae8d2b commit a5723eb

File tree

6 files changed

+30
-13
lines changed

6 files changed

+30
-13
lines changed

src/Data/Misc.lua

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,12 @@ data.monsterEvasionTable = { 67, 86, 104, 124, 144, 166, 188, 211, 234, 259, 285
66
data.monsterAccuracyTable = { 14, 15, 15, 16, 17, 18, 19, 20, 21, 23, 24, 25, 26, 28, 29, 31, 32, 34, 35, 37, 39, 41, 43, 45, 47, 49, 52, 54, 57, 59, 62, 65, 68, 71, 74, 77, 81, 84, 88, 92, 96, 100, 105, 109, 114, 119, 124, 129, 135, 140, 146, 152, 159, 165, 172, 179, 187, 195, 203, 211, 220, 229, 238, 247, 257, 268, 279, 290, 301, 314, 326, 339, 352, 366, 381, 396, 412, 428, 444, 462, 480, 499, 518, 538, 559, 580, 603, 626, 650, 675, 701, 728, 755, 784, 814, 845, 877, 910, 945, 980, }
77
data.monsterLifeTable = { 22, 26, 31, 36, 42, 48, 55, 62, 70, 78, 87, 97, 107, 119, 131, 144, 158, 173, 190, 207, 226, 246, 267, 290, 315, 341, 370, 400, 432, 467, 504, 543, 585, 630, 678, 730, 785, 843, 905, 972, 1042, 1118, 1198, 1284, 1375, 1472, 1575, 1685, 1802, 1927, 2059, 2200, 2350, 2509, 2678, 2858, 3050, 3253, 3469, 3698, 3942, 4201, 4476, 4768, 5078, 5407, 5756, 6127, 6520, 6937, 7380, 7850, 8348, 8876, 9436, 10030, 10660, 11328, 12036, 12787, 13582, 14425, 15319, 16265, 17268, 18331, 19457, 20649, 21913, 23250, 24667, 26168, 27756, 29438, 31220, 33105, 35101, 37214, 39450, 41817, }
88
data.monsterAllyLifeTable = { 15, 17, 20, 23, 26, 30, 33, 37, 41, 46, 50, 55, 60, 66, 71, 77, 84, 91, 98, 105, 113, 122, 131, 140, 150, 161, 171, 183, 195, 208, 222, 236, 251, 266, 283, 300, 318, 337, 357, 379, 401, 424, 448, 474, 501, 529, 559, 590, 622, 656, 692, 730, 769, 810, 853, 899, 946, 996, 1048, 1102, 1159, 1219, 1281, 1346, 1415, 1486, 1561, 1640, 1722, 1807, 1897, 1991, 2089, 2192, 2299, 2411, 2528, 2651, 2779, 2913, 3053, 3199, 3352, 3511, 3678, 3853, 4035, 4225, 4424, 4631, 4848, 5074, 5310, 5557, 5815, 6084, 6364, 6658, 6964, 7283, }
9-
data.monsterDamageTable = { 4.9899997711182, 5.5599999427795, 6.1599998474121, 6.8099999427795, 7.5, 8.2299995422363, 9, 9.8199996948242, 10.699999809265, 11.619999885559, 12.60000038147, 13.640000343323, 14.739999771118, 15.909999847412, 17.139999389648, 18.450000762939, 19.829999923706, 21.290000915527, 22.840000152588, 24.469999313354, 26.190000534058, 28.010000228882, 29.940000534058, 31.959999084473, 34.110000610352, 36.360000610352, 38.75, 41.259998321533, 43.909999847412, 46.700000762939, 49.650001525879, 52.75, 56.009998321533, 59.450000762939, 63.080001831055, 66.889999389648, 70.910003662109, 75.129997253418, 79.580001831055, 84.26000213623, 89.180000305176, 94.349998474121, 99.800003051758, 105.51999664307, 111.5299987793, 117.86000061035, 124.5, 131.49000549316, 138.83000183105, 146.5299987793, 154.63000488281, 163.13999938965, 172.07000732422, 181.44999694824, 191.30000305176, 201.63000488281, 212.47999572754, 223.86999511719, 235.83000183105, 248.36999511719, 261.5299987793, 275.32998657227, 289.82000732422, 305.01000976562, 320.94000244141, 337.64999389648, 355.17999267578, 373.54998779297, 392.80999755859, 413.01000976562, 434.17999267578, 456.36999511719, 479.61999511719, 504, 529.53997802734, 556.29998779297, 584.34997558594, 613.72998046875, 644.5, 676.75, 710.52001953125, 745.89001464844, 782.94000244141, 821.72998046875, 862.35998535156, 904.90002441406, 949.44000244141, 996.07000732422, 1044.8900146484, 1096, 1149.5, 1205.5, 1264.1099853516, 1325.4499511719, 1389.6400146484, 1456.8199462891, 1527.1199951172, 1600.6800537109, 1677.6400146484, 1758.1700439453, }
9+
data.monsterDamageTable = { 4.9899997711182, 5.5599999427795, 6.1599998474121, 6.8099999427795, 7.5, 8.2299995422363, 9, 9.8199996948242, 10.699999809265, 11.619999885559, 12.60000038147, 13.640000343323, 14.739999771118, 15.909999847412, 17.139999389648, 18.450000762939, 19.829999923706, 21.290000915527, 22.840000152588, 24.469999313354, 26.190000534058, 28.010000228882, 29.940000534058, 31.959999084473, 34.110000610352, 36.360000610352, 38.75, 41.259998321533, 43.909999847412, 46.700000762939, 49.650001525879, 52.75, 56.009998321533, 59.450000762939, 63.080001831055, 66.889999389648, 70.910003662109, 75.129997253418, 79.580001831055, 84.26000213623, 89.180000305176, 94.349998474121, 99.800003051758, 105.51999664307, 111.5299987793, 117.86000061035, 124.5, 131.49000549316, 138.83000183105, 146.5299987793, 154.63000488281, 163.13999938965, 172.07000732422, 181.44999694824, 191.30000305176, 201.63000488281, 212.47999572754, 223.86999511719, 235.83000183105, 248.36999511719, 261.5299987793, 275.32998657227, 289.82000732422, 305.01000976563, 320.94000244141, 337.64999389648, 355.17999267578, 373.54998779297, 392.80999755859, 413.01000976563, 434.17999267578, 456.36999511719, 479.61999511719, 504, 529.53997802734, 556.29998779297, 584.34997558594, 613.72998046875, 644.5, 676.75, 710.52001953125, 745.89001464844, 782.94000244141, 821.72998046875, 862.35998535156, 904.90002441406, 949.44000244141, 996.07000732422, 1044.8900146484, 1096, 1149.5, 1205.5, 1264.1099853516, 1325.4499511719, 1389.6400146484, 1456.8199462891, 1527.1199951172, 1600.6800537109, 1677.6400146484, 1758.1700439453, }
1010
data.monsterArmourTable = { 22, 26, 31, 36, 42, 48, 55, 62, 70, 78, 87, 97, 107, 119, 131, 144, 158, 173, 190, 207, 226, 246, 267, 290, 315, 341, 370, 400, 432, 467, 504, 543, 585, 630, 678, 730, 785, 843, 905, 972, 1042, 1118, 1198, 1284, 1375, 1472, 1575, 1685, 1802, 1927, 2059, 2200, 2350, 2509, 2678, 2858, 3050, 3253, 3469, 3698, 3942, 4201, 4476, 4768, 5078, 5407, 5756, 6127, 6520, 6937, 7380, 7850, 8348, 8876, 9436, 10030, 10660, 11328, 12036, 12787, 13582, 14425, 15319, 16265, 17268, 18331, 19457, 20649, 21913, 23250, 24667, 26168, 27756, 29438, 31220, 33105, 35101, 37214, 39450, 41817, }
1111
-- From MonsterVarieties.dat combined with SkillTotemVariations.dat
1212
data.totemLifeMult = { [1] = 1, [2] = 1, [3] = 1, [4] = 1, [5] = 1, [6] = 1.2, [7] = 1, [8] = 1.2, [9] = 1, [10] = 1, [11] = 1, [12] = 1, [13] = 1.2, [15] = 1.2, [16] = 7.44, [17] = 1.2, [18] = 1, [19] = 1, [20] = 1.2, }
1313
-- From MonsterMapDifficulty.dat
1414
data.mapLevelLifeMult = { [66] = 1.01, [67] = 1.03, [68] = 1.05, [69] = 1.09, [70] = 1.13, [71] = 1.19, [72] = 1.24, [73] = 1.3, [74] = 1.36, [75] = 1.43, [76] = 1.49, [77] = 1.55, [78] = 1.61, [79] = 1.68, [80] = 1.77, [81] = 1.87, [82] = 1.98, [83] = 2.09, [84] = 2.17, [85] = 2.25, [86] = 2.34, [87] = 2.42, [88] = 2.5, [89] = 2.58, [90] = 2.66, }
15+
-- From MonsterMapBossDifficulty.dat
16+
data.mapLevelBossLifeMult = { [66] = 2.8, [67] = 2.8, [68] = 2.8, [69] = 3.03, [70] = 3.16, [71] = 3.32, [72] = 3.48, [73] = 5.63, [74] = 5.97, [75] = 6.32, [76] = 6.66, [77] = 6.99, [78] = 10.46, [79] = 11.32, [80] = 13.01, [81] = 15.43, [82] = 17.2, [83] = 19.64, [84] = 21.46, [85] = 21.46, [86] = 21.46, [87] = 21.46, [88] = 21.46, [89] = 21.46, [90] = 21.46, }
17+
data.mapLevelBossAilmentMult = { [66] = 0.63, [67] = 0.63, [68] = 0.6, [69] = 0.59, [70] = 0.58, [71] = 0.57, [72] = 0.56, [73] = 0.55, [74] = 0.53, [75] = 0.52, [76] = 0.51, [77] = 0.5, [78] = 0.49, [79] = 0.48, [80] = 0.48, [81] = 0.47, [82] = 0.47, [83] = 0.47, [84] = 0.47, [85] = 0.47, [86] = 0.47, [87] = 0.47, [88] = 0.47, [89] = 0.47, [90] = 0.47, }

src/Export/Scripts/miscdata.lua

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,17 @@ for row in dat("MonsterMapDifficulty"):Rows() do
4141
end
4242
out:write('}\n')
4343

44+
local mapBossLifeMult = ""
45+
local mapBossAilmentMult = ""
46+
for var in dat("MonsterMapBossDifficulty"):Rows() do
47+
mapBossLifeMult = mapBossLifeMult .. "[" .. var.AreaLevel .. "] = " .. 1 + var.BossLifePercentIncrease / 100 .. ", "
48+
mapBossAilmentMult = mapBossAilmentMult .. "[" .. var.AreaLevel .. "] = " .. (100 + var.BossAilmentPercentDecrease) / 100 .. ", "
49+
end
50+
51+
out:write('-- From MonsterMapBossDifficulty.dat\n')
52+
out:write('data.mapLevelBossLifeMult = { '..mapBossLifeMult..'}\n')
53+
out:write('data.mapLevelBossAilmentMult = { '..mapBossAilmentMult..'}\n')
54+
4455
out:close()
4556

4657
print("Misc data exported.")

src/Export/spec.lua

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5068,7 +5068,7 @@ return {
50685068
},
50695069
[11]={
50705070
list=false,
5071-
name="",
5071+
name="BossAilmentPercentDecrease",
50725072
refTo="",
50735073
type="Int",
50745074
width=150

src/Modules/CalcOffence.lua

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3387,7 +3387,14 @@ function calcs.offence(env, actor, activeSkill)
33873387
end
33883388

33893389
-- Calculate non-damaging ailments effect and duration modifiers
3390-
local enemyThreshold = enemyDB:Sum("BASE", nil, "AilmentThreshold") * enemyDB:More(nil, "Life")
3390+
local isBoss = env.configInput["enemyIsBoss"] ~= "None"
3391+
local enemyLevel = m_max(env.enemyLevel, 66)
3392+
local enemyBaseLife = data.monsterLifeTable[enemyLevel]
3393+
local enemyMapLifeMult = isBoss and data.mapLevelBossLifeMult[enemyLevel] or data.mapLevelLifeMult[enemyLevel]
3394+
local enemyMapAilmentMult = isBoss and data.mapLevelBossAilmentMult[enemyLevel] or 1
3395+
local enemyTypeMult = isBoss and 7.68 or 1
3396+
local enemyThreshold = enemyBaseLife * enemyTypeMult * enemyMapLifeMult * enemyMapAilmentMult * enemyDB:More(nil, "AilmentThreshold")
3397+
33913398
local bonechill = output.BonechillEffect or enemyDB:Sum("BASE", nil, "DesiredBonechillEffect")
33923399
local ailments = {
33933400
["Chill"] = {
@@ -3487,7 +3494,7 @@ function calcs.offence(env, actor, activeSkill)
34873494
t_insert(val.effList, desired)
34883495
end
34893496
breakdown[ailment.."DPS"].label = "Resulting ailment effect"..((current > 0 and val.ramping) and s_format(" ^8(with a ^7%s%% ^8%s on the enemy)^7", current, ailment) or "")
3490-
breakdown[ailment.."DPS"].footer = s_format("^8(ailment threshold is about equal to life, except on bosses where it is about half their life)\n(the above table shows that when the enemy has X ailment threshold, you ^8%s for Y)", ailment:lower())
3497+
breakdown[ailment.."DPS"].footer = s_format("^8(ailment threshold is about equal to life, except on bosses that have specific ailement thresholds)\n(the above table shows that when the enemy has X ailment threshold, you ^8%s for Y)", ailment:lower())
34913498
breakdown[ailment.."DPS"].rowList = { }
34923499
breakdown[ailment.."DPS"].colList = {
34933500
{ label = "Ailment Threshold", key = "thresh" },
@@ -3500,7 +3507,7 @@ function calcs.offence(env, actor, activeSkill)
35003507
local precision = ailmentData[ailment].precision
35013508
value = m_floor(value * (10 ^ precision)) / (10 ^ precision)
35023509
local valueFormat = "%."..tostring(precision).."f%%"
3503-
local threshString = s_format("%d", thresh)..(m_floor(thresh + 0.5) == m_floor(enemyThreshold + 0.5) and s_format(" ^8(AL%d %s)", skillModList:Sum("BASE", nil, "AwakeningLevel"), env.configInput.enemyIsBoss) or "")
3510+
local threshString = s_format("%d", thresh)..(m_floor(thresh + 0.5) == m_floor(enemyThreshold + 0.5) and s_format(" ^8(%s)", env.configInput.enemyIsBoss) or "")
35043511
local labels = { }
35053512
if decCheck == 1 and value ~= 0 then
35063513
if ailment == "Chill" and value == bonechill then

src/Modules/ConfigOptions.lua

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1337,7 +1337,7 @@ Sirus adds the following modifiers:
13371337
enemyModList:NewMod("CurseEffectOnSelf", "MORE", -33, "Boss")
13381338
enemyModList:NewMod("ElementalResist", "BASE", 40, "Boss")
13391339
enemyModList:NewMod("ChaosResist", "BASE", 25, "Boss")
1340-
enemyModList:NewMod("AilmentThreshold", "BASE", 1070897, "Boss")
1340+
enemyModList:NewMod("AilmentThreshold", "MORE", 488, "Boss")
13411341
modList:NewMod("WarcryPower", "BASE", 20, "Boss")
13421342
elseif val == "Shaper" then
13431343
enemyModList:NewMod("Condition:RareOrUnique", "FLAG", true, "Config", { type = "Condition", var = "Effective" })
@@ -1346,7 +1346,7 @@ Sirus adds the following modifiers:
13461346
enemyModList:NewMod("ElementalResist", "BASE", 50, "Boss")
13471347
enemyModList:NewMod("ChaosResist", "BASE", 30, "Boss")
13481348
enemyModList:NewMod("Armour", "MORE", 33, "Boss")
1349-
enemyModList:NewMod("AilmentThreshold", "BASE", 14803760, "Boss")
1349+
enemyModList:NewMod("AilmentThreshold", "MORE", 404, "Boss")
13501350
modList:NewMod("WarcryPower", "BASE", 20, "Boss")
13511351
elseif val == "Sirus" then
13521352
enemyModList:NewMod("Condition:RareOrUnique", "FLAG", true, "Config", { type = "Condition", var = "Effective" })
@@ -1355,14 +1355,10 @@ Sirus adds the following modifiers:
13551355
enemyModList:NewMod("ElementalResist", "BASE", 50, "Boss")
13561356
enemyModList:NewMod("ChaosResist", "BASE", 30, "Boss")
13571357
enemyModList:NewMod("Armour", "MORE", 100, "Boss")
1358-
enemyModList:NewMod("AilmentThreshold", "BASE", 14803760, "Boss")
1358+
enemyModList:NewMod("AilmentThreshold", "MORE", 404, "Boss")
13591359
modList:NewMod("WarcryPower", "BASE", 20, "Boss")
13601360
end
13611361
end },
1362-
{ var = "enemyAwakeningLevel", type = "count", label = "Awakening Level:", tooltip = "Each Awakening Level gives Bosses 3% more ^xE05030Life.", apply = function(val, modList, enemyModList)
1363-
enemyModList:NewMod("Life", "MORE", 3 * m_min(val, 9), "Config")
1364-
modList:NewMod("AwakeningLevel", "BASE", m_min(val, 9), "Config")
1365-
end },
13661362
{ var = "deliriousPercentage", type = "list", label = "Delirious Effect:", list = {{val=0,label="None"},{val="20Percent",label="20% Delirious"},{val="40Percent",label="40% Delirious"},{val="60Percent",label="60% Delirious"},{val="80Percent",label="80% Delirious"},{val="100Percent",label="100% Delirious"}}, tooltip = "Delirium scales enemy 'less Damage Taken' as well as enemy 'increased Damage dealt'\nAt 100% effect:\nEnemies Deal 30% Increased Damage\nEnemies take 96% Less Damage", apply = function(val, modList, enemyModList)
13671363
if val == "20Percent" then
13681364
enemyModList:NewMod("DamageTaken", "MORE", -19.2, "20% Delirious")

src/Modules/Data.lua

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -374,7 +374,7 @@ data.misc = { -- magic numbers
374374
TrapTriggerRadiusBase = 10,
375375
MineDetonationRadiusBase = 60,
376376
MineAuraRadiusBase = 35,
377-
MaxEnemyLevel = 84,
377+
MaxEnemyLevel = 85,
378378
LowPoolThreshold = 0.5,
379379
AccuracyPerDexBase = 2,
380380
BrandAttachmentRangeBase = 30,

0 commit comments

Comments
 (0)