@@ -3004,14 +3004,14 @@ function calcs.offence(env, actor, activeSkill)
30043004 globalOutput .AncestralCryCooldown = calcSkillCooldown (value .skillModList , value .skillCfg , value .skillData )
30053005 globalOutput .AncestralCryCastTime = calcWarcryCastTime (value .skillModList , value .skillCfg , value .skillData , actor )
30063006 globalOutput .AncestralExertsCount = env .modDB :Sum (" BASE" , nil , " NumAncestralExerts" ) or 0
3007- local baseUptimeRatio = m_min ((globalOutput .AncestralExertsCount / output .Speed ) / (globalOutput .AncestralCryCooldown + globalOutput .AncestralCryCastTime ), 1 ) * 100
3007+ local baseUptimeRatio = m_min ((globalOutput .AncestralExertsCount / globalOutput .Speed ) / (globalOutput .AncestralCryCooldown + globalOutput .AncestralCryCastTime ), 1 ) * 100
30083008 local storedUses = value .skillData .storedUses or 0 + value .skillModList :Sum (" BASE" , value .skillCfg , " AdditionalCooldownUses" )
30093009 globalOutput .AncestralUpTimeRatio = m_min (100 , baseUptimeRatio * storedUses )
30103010 globalOutput .GlobalWarcryUptimeRatio = globalOutput .GlobalWarcryUptimeRatio + globalOutput .AncestralUpTimeRatio
30113011 if globalBreakdown then
30123012 globalBreakdown .AncestralUpTimeRatio = { }
30133013 t_insert (globalBreakdown .AncestralUpTimeRatio , s_format (" (%d ^8(number of exerts)" , globalOutput .AncestralExertsCount ))
3014- t_insert (globalBreakdown .AncestralUpTimeRatio , s_format (" / %.2f) ^8(attacks per second)" , output .Speed ))
3014+ t_insert (globalBreakdown .AncestralUpTimeRatio , s_format (" / %.2f) ^8(attacks per second)" , globalOutput .Speed ))
30153015 if globalOutput .AncestralCryCastTime > 0 then
30163016 t_insert (globalBreakdown .AncestralUpTimeRatio , s_format (" / (%.2f ^8(warcry cooldown)" , globalOutput .AncestralCryCooldown ))
30173017 t_insert (globalBreakdown .AncestralUpTimeRatio , s_format (" + %.2f) ^8(warcry casttime)" , globalOutput .AncestralCryCastTime ))
@@ -3027,14 +3027,14 @@ function calcs.offence(env, actor, activeSkill)
30273027 globalOutput .InfernalCryCastTime = calcWarcryCastTime (value .skillModList , value .skillCfg , value .skillData , actor )
30283028 if activeSkill .skillTypes [SkillType .Melee ] then
30293029 globalOutput .InfernalExertsCount = env .modDB :Sum (" BASE" , nil , " NumInfernalExerts" ) or 0
3030- local baseUptimeRatio = m_min ((globalOutput .InfernalExertsCount / output .Speed ) / (globalOutput .InfernalCryCooldown + globalOutput .InfernalCryCastTime ), 1 ) * 100
3030+ local baseUptimeRatio = m_min ((globalOutput .InfernalExertsCount / globalOutput .Speed ) / (globalOutput .InfernalCryCooldown + globalOutput .InfernalCryCastTime ), 1 ) * 100
30313031 local storedUses = value .skillData .storedUses or 0 + value .skillModList :Sum (" BASE" , value .skillCfg , " AdditionalCooldownUses" )
30323032 globalOutput .InfernalUpTimeRatio = m_min (100 , baseUptimeRatio * storedUses )
30333033 globalOutput .GlobalWarcryUptimeRatio = globalOutput .GlobalWarcryUptimeRatio + globalOutput .InfernalUpTimeRatio
30343034 if globalBreakdown then
30353035 globalBreakdown .InfernalUpTimeRatio = { }
30363036 t_insert (globalBreakdown .InfernalUpTimeRatio , s_format (" (%d ^8(number of exerts)" , globalOutput .InfernalExertsCount ))
3037- t_insert (globalBreakdown .InfernalUpTimeRatio , s_format (" / %.2f) ^8(attacks per second)" , output .Speed ))
3037+ t_insert (globalBreakdown .InfernalUpTimeRatio , s_format (" / %.2f) ^8(attacks per second)" , globalOutput .Speed ))
30383038 if globalOutput .InfernalCryCastTime > 0 then
30393039 t_insert (globalBreakdown .InfernalUpTimeRatio , s_format (" / (%.2f ^8(warcry cooldown)" , globalOutput .InfernalCryCooldown ))
30403040 t_insert (globalBreakdown .InfernalUpTimeRatio , s_format (" + %.2f) ^8(warcry casttime)" , globalOutput .InfernalCryCastTime ))
@@ -3051,14 +3051,14 @@ function calcs.offence(env, actor, activeSkill)
30513051 globalOutput .IntimidatingCryCooldown = calcSkillCooldown (value .skillModList , value .skillCfg , value .skillData )
30523052 globalOutput .IntimidatingCryCastTime = calcWarcryCastTime (value .skillModList , value .skillCfg , value .skillData , actor )
30533053 globalOutput .IntimidatingExertsCount = env .modDB :Sum (" BASE" , nil , " NumIntimidatingExerts" ) or 0
3054- local baseUptimeRatio = m_min ((globalOutput .IntimidatingExertsCount / output .Speed ) / (globalOutput .IntimidatingCryCooldown + globalOutput .IntimidatingCryCastTime ), 1 ) * 100
3054+ local baseUptimeRatio = m_min ((globalOutput .IntimidatingExertsCount / globalOutput .Speed ) / (globalOutput .IntimidatingCryCooldown + globalOutput .IntimidatingCryCastTime ), 1 ) * 100
30553055 local storedUses = value .skillData .storedUses or 0 + value .skillModList :Sum (" BASE" , value .skillCfg , " AdditionalCooldownUses" )
30563056 globalOutput .IntimidatingUpTimeRatio = m_min (100 , baseUptimeRatio * storedUses )
30573057 globalOutput .GlobalWarcryUptimeRatio = globalOutput .GlobalWarcryUptimeRatio + globalOutput .IntimidatingUpTimeRatio
30583058 if globalBreakdown then
30593059 globalBreakdown .IntimidatingUpTimeRatio = { }
30603060 t_insert (globalBreakdown .IntimidatingUpTimeRatio , s_format (" (%d ^8(number of exerts)" , globalOutput .IntimidatingExertsCount ))
3061- t_insert (globalBreakdown .IntimidatingUpTimeRatio , s_format (" / %.2f) ^8(attacks per second)" , output .Speed ))
3061+ t_insert (globalBreakdown .IntimidatingUpTimeRatio , s_format (" / %.2f) ^8(attacks per second)" , globalOutput .Speed ))
30623062 if globalOutput .IntimidatingCryCastTime > 0 then
30633063 t_insert (globalBreakdown .IntimidatingUpTimeRatio , s_format (" / (%.2f ^8(warcry cooldown)" , globalOutput .IntimidatingCryCooldown ))
30643064 t_insert (globalBreakdown .IntimidatingUpTimeRatio , s_format (" + %.2f) ^8(warcry casttime)" , globalOutput .IntimidatingCryCastTime ))
@@ -3096,14 +3096,14 @@ function calcs.offence(env, actor, activeSkill)
30963096 globalOutput .RallyingCryCooldown = calcSkillCooldown (value .skillModList , value .skillCfg , value .skillData )
30973097 globalOutput .RallyingCryCastTime = calcWarcryCastTime (value .skillModList , value .skillCfg , value .skillData , actor )
30983098 globalOutput .RallyingExertsCount = env .modDB :Sum (" BASE" , nil , " NumRallyingExerts" ) or 0
3099- local baseUptimeRatio = m_min ((globalOutput .RallyingExertsCount / output .Speed ) / (globalOutput .RallyingCryCooldown + globalOutput .RallyingCryCastTime ), 1 ) * 100
3099+ local baseUptimeRatio = m_min ((globalOutput .RallyingExertsCount / globalOutput .Speed ) / (globalOutput .RallyingCryCooldown + globalOutput .RallyingCryCastTime ), 1 ) * 100
31003100 local storedUses = value .skillData .storedUses or 0 + value .skillModList :Sum (" BASE" , value .skillCfg , " AdditionalCooldownUses" )
31013101 globalOutput .RallyingUpTimeRatio = m_min (100 , baseUptimeRatio * storedUses )
31023102 globalOutput .GlobalWarcryUptimeRatio = globalOutput .GlobalWarcryUptimeRatio + globalOutput .RallyingUpTimeRatio
31033103 if globalBreakdown then
31043104 globalBreakdown .RallyingUpTimeRatio = { }
31053105 t_insert (globalBreakdown .RallyingUpTimeRatio , s_format (" (%d ^8(number of exerts)" , globalOutput .RallyingExertsCount ))
3106- t_insert (globalBreakdown .RallyingUpTimeRatio , s_format (" / %.2f) ^8(attacks per second)" , output .Speed ))
3106+ t_insert (globalBreakdown .RallyingUpTimeRatio , s_format (" / %.2f) ^8(attacks per second)" , globalOutput .Speed ))
31073107 if globalOutput .RallyingCryCastTime > 0 then
31083108 t_insert (globalBreakdown .RallyingUpTimeRatio , s_format (" / (%.2f ^8(warcry cooldown)" , globalOutput .RallyingCryCooldown ))
31093109 t_insert (globalBreakdown .RallyingUpTimeRatio , s_format (" + %.2f) ^8(warcry casttime)" , globalOutput .RallyingCryCastTime ))
@@ -3142,7 +3142,7 @@ function calcs.offence(env, actor, activeSkill)
31423142 globalOutput .SeismicCryCooldown = calcSkillCooldown (value .skillModList , value .skillCfg , value .skillData )
31433143 globalOutput .SeismicCryCastTime = calcWarcryCastTime (value .skillModList , value .skillCfg , value .skillData , actor )
31443144 globalOutput .SeismicExertsCount = env .modDB :Sum (" BASE" , nil , " NumSeismicExerts" ) or 0
3145- local baseUptimeRatio = m_min ((globalOutput .SeismicExertsCount / output .Speed ) / (globalOutput .SeismicCryCooldown + globalOutput .SeismicCryCastTime ), 1 ) * 100
3145+ local baseUptimeRatio = m_min ((globalOutput .SeismicExertsCount / globalOutput .Speed ) / (globalOutput .SeismicCryCooldown + globalOutput .SeismicCryCastTime ), 1 ) * 100
31463146 local storedUses = value .skillData .storedUses or 0 + value .skillModList :Sum (" BASE" , value .skillCfg , " AdditionalCooldownUses" )
31473147 globalOutput .SeismicUpTimeRatio = m_min (100 , baseUptimeRatio * storedUses )
31483148 globalOutput .GlobalWarcryUptimeRatio = globalOutput .GlobalWarcryUptimeRatio + globalOutput .SeismicUpTimeRatio
@@ -3156,7 +3156,7 @@ function calcs.offence(env, actor, activeSkill)
31563156 if globalBreakdown then
31573157 globalBreakdown .SeismicUpTimeRatio = { }
31583158 t_insert (globalBreakdown .SeismicUpTimeRatio , s_format (" (%d ^8(number of exerts)" , globalOutput .SeismicExertsCount ))
3159- t_insert (globalBreakdown .SeismicUpTimeRatio , s_format (" / %.2f) ^8(attacks per second)" , output .Speed ))
3159+ t_insert (globalBreakdown .SeismicUpTimeRatio , s_format (" / %.2f) ^8(attacks per second)" , globalOutput .Speed ))
31603160 if globalOutput .SeismicCryCastTime > 0 then
31613161 t_insert (globalBreakdown .SeismicUpTimeRatio , s_format (" / (%.2f ^8(warcry cooldown)" , globalOutput .SeismicCryCooldown ))
31623162 t_insert (globalBreakdown .SeismicUpTimeRatio , s_format (" + %.2f) ^8(warcry casttime)" , globalOutput .SeismicCryCastTime ))
@@ -3172,14 +3172,14 @@ function calcs.offence(env, actor, activeSkill)
31723172 globalOutput .BattleMageCryCastTime = calcWarcryCastTime (value .skillModList , value .skillCfg , value .skillData , actor )
31733173 if activeSkill .skillTypes [SkillType .Melee ] then
31743174 globalOutput .BattleCryExertsCount = env .modDB :Sum (" BASE" , nil , " NumBattlemageExerts" ) or 0
3175- local baseUptimeRatio = m_min ((globalOutput .BattleCryExertsCount / output .Speed ) / (globalOutput .BattleMageCryCooldown + globalOutput .BattleMageCryCastTime ), 1 ) * 100
3175+ local baseUptimeRatio = m_min ((globalOutput .BattleCryExertsCount / globalOutput .Speed ) / (globalOutput .BattleMageCryCooldown + globalOutput .BattleMageCryCastTime ), 1 ) * 100
31763176 local storedUses = value .skillData .storedUses or 0 + value .skillModList :Sum (" BASE" , value .skillCfg , " AdditionalCooldownUses" )
31773177 globalOutput .BattlemageUpTimeRatio = m_min (100 , baseUptimeRatio * storedUses )
31783178 globalOutput .GlobalWarcryUptimeRatio = globalOutput .GlobalWarcryUptimeRatio + globalOutput .BattlemageUpTimeRatio
31793179 if globalBreakdown then
31803180 globalBreakdown .BattlemageUpTimeRatio = { }
31813181 t_insert (globalBreakdown .BattlemageUpTimeRatio , s_format (" (%d ^8(number of exerts)" , globalOutput .BattleCryExertsCount ))
3182- t_insert (globalBreakdown .BattlemageUpTimeRatio , s_format (" / %.2f) ^8(attacks per second)" , output .Speed ))
3182+ t_insert (globalBreakdown .BattlemageUpTimeRatio , s_format (" / %.2f) ^8(attacks per second)" , globalOutput .Speed ))
31833183 if globalOutput .BattleMageCryCastTime > 0 then
31843184 t_insert (globalBreakdown .BattlemageUpTimeRatio , s_format (" / (%.2f ^8(warcry cooldown)" , globalOutput .BattleMageCryCooldown ))
31853185 t_insert (globalBreakdown .BattlemageUpTimeRatio , s_format (" + %.2f) ^8(warcry casttime)" , globalOutput .BattleMageCryCastTime ))
@@ -3277,10 +3277,10 @@ function calcs.offence(env, actor, activeSkill)
32773277 -- If Fist of War & Active Skill is a Slam Skill & NOT a Vaal Skill & NOT used by mirage or other
32783278 if globalOutput .FistOfWarCooldown ~= 0 and activeSkill .skillTypes [SkillType .Slam ] and not activeSkill .skillTypes [SkillType .Vaal ] and not activeSkill .skillTypes [SkillType .OtherThingUsesSkill ] then
32793279 globalOutput .FistOfWarDamageMultiplier = skillModList :Sum (" BASE" , nil , " FistOfWarDamageMultiplier" ) / 100
3280- globalOutput .FistOfWarUptimeRatio = m_min ( (1 / output .Speed ) / globalOutput .FistOfWarCooldown , 1 ) * 100
3280+ globalOutput .FistOfWarUptimeRatio = m_min ( (1 / globalOutput .Speed ) / globalOutput .FistOfWarCooldown , 1 ) * 100
32813281 if globalBreakdown then
32823282 globalBreakdown .FistOfWarUptimeRatio = {
3283- s_format (" min( (1 / %.2f) ^8(second per attack)" , output .Speed ),
3283+ s_format (" min( (1 / %.2f) ^8(second per attack)" , globalOutput .Speed ),
32843284 s_format (" / %.2f, 1) ^8(fist of war cooldown)" , globalOutput .FistOfWarCooldown ),
32853285 s_format (" = %d%%" , globalOutput .FistOfWarUptimeRatio ),
32863286 }
0 commit comments