Skip to content
Open
Show file tree
Hide file tree
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions src/Data/ModCache.lua
Original file line number Diff line number Diff line change
Expand Up @@ -1386,7 +1386,7 @@ c["15% increased Flask Effect Duration"]={{[1]={flags=0,keywordFlags=0,name="Fla
c["15% increased Freeze Buildup"]={{}," Freeze Buildup "}
c["15% increased Freeze Buildup 15% increased Chill and Freeze Duration on Enemies"]={{[1]={flags=0,keywordFlags=0,name="EnemyFreezeDuration",type="INC",value=15},[2]={flags=0,keywordFlags=0,name="EnemyChillDuration",type="INC",value=15}}," Freeze Buildup 15% increased "}
c["15% increased Global Physical Damage"]={{[1]={[1]={type="Global"},flags=0,keywordFlags=0,name="PhysicalDamage",type="INC",value=15}},nil}
c["15% increased Glory generation"]={{}," Glory generation "}
c["15% increased Glory generation"]={{[1]={flags=0,keywordFlags=0,name="GloryGeneration",type="INC",value=15}},nil}
c["15% increased Ignite Duration on Enemies"]={{[1]={flags=0,keywordFlags=0,name="EnemyIgniteDuration",type="INC",value=15}},nil}
c["15% increased Ignite Magnitude"]={{[1]={flags=0,keywordFlags=8388608,name="AilmentMagnitude",type="INC",value=15}},nil}
c["15% increased Immobilisation buildup"]={{}," Immobilisation buildup "}
Expand Down Expand Up @@ -1698,7 +1698,7 @@ c["20% increased Freeze Duration on Enemies"]={{[1]={flags=0,keywordFlags=0,name
c["20% increased Frenzy Charge Duration"]={{[1]={flags=0,keywordFlags=0,name="FrenzyChargesDuration",type="INC",value=20}},nil}
c["20% increased Global Defences"]={{[1]={[1]={type="Global"},flags=0,keywordFlags=0,name="Defences",type="INC",value=20}},nil}
c["20% increased Global Physical Damage"]={{[1]={[1]={type="Global"},flags=0,keywordFlags=0,name="PhysicalDamage",type="INC",value=20}},nil}
c["20% increased Glory generation for Banner Skills"]={{}," Glory generation for Banner Skills "}
c["20% increased Glory generation for Banner Skills"]={{[1]={[1]={skillType=88,type="SkillType"},flags=0,keywordFlags=0,name="GloryGeneration",type="INC",value=20}},nil}
c["20% increased Hazard Duration"]={{[1]={[1]={skillType=203,type="SkillType"},flags=0,keywordFlags=0,name="Duration",type="INC",value=20}},nil}
c["20% increased Hazard Immobilisation buildup"]={{}," Immobilisation buildup "}
c["20% increased Hinder Duration"]={{[1]={flags=0,keywordFlags=0,name="Duration",type="INC",value=20}}," Hinder "}
Expand Down Expand Up @@ -2948,7 +2948,7 @@ c["8% increased Flask Charges gained"]={{[1]={flags=0,keywordFlags=0,name="Flask
c["8% increased Flask Effect Duration"]={{[1]={flags=0,keywordFlags=0,name="FlaskDuration",type="INC",value=8}},nil}
c["8% increased Flask and Charm Charges gained"]={{[1]={flags=0,keywordFlags=0,name="CharmChargesGained",type="INC",value=8},[2]={flags=0,keywordFlags=0,name="FlaskChargesGained",type="INC",value=8}},nil}
c["8% increased Freeze Buildup"]={{}," Freeze Buildup "}
c["8% increased Glory generation"]={{}," Glory generation "}
c["8% increased Glory generation"]={{[1]={flags=0,keywordFlags=0,name="GloryGeneration",type="INC",value=8}},nil}
c["8% increased Ignite Duration on Enemies"]={{[1]={flags=0,keywordFlags=0,name="EnemyIgniteDuration",type="INC",value=8}},nil}
c["8% increased Ignite Magnitude"]={{[1]={flags=0,keywordFlags=8388608,name="AilmentMagnitude",type="INC",value=8}},nil}
c["8% increased Immobilisation buildup"]={{}," Immobilisation buildup "}
Expand Down Expand Up @@ -3229,7 +3229,7 @@ c["Allies in your Presence have 15% increased Attack Speed"]={{[1]={flags=0,keyw
c["Allies in your Presence have 15% increased Cast Speed"]={{[1]={flags=0,keywordFlags=0,name="ExtraAura",type="LIST",value={mod={flags=16,keywordFlags=0,name="Speed",type="INC",value=15},onlyAllies=true}}},nil}
c["Allies in your Presence have 20% increased Attack Speed"]={{[1]={flags=0,keywordFlags=0,name="ExtraAura",type="LIST",value={mod={flags=1,keywordFlags=0,name="Speed",type="INC",value=20},onlyAllies=true}}},nil}
c["Allies in your Presence have 20% increased Cast Speed"]={{[1]={flags=0,keywordFlags=0,name="ExtraAura",type="LIST",value={mod={flags=16,keywordFlags=0,name="Speed",type="INC",value=20},onlyAllies=true}}},nil}
c["Allies in your Presence have 30% increased Glory generation"]={{}," Glory generation "}
c["Allies in your Presence have 30% increased Glory generation"]={{[1]={flags=0,keywordFlags=0,name="ExtraAura",type="LIST",value={mod={flags=0,keywordFlags=0,name="GloryGeneration",type="INC",value=30},onlyAllies=true}}},nil}
c["Allies in your Presence have 32% increased Critical Damage Bonus"]={{[1]={flags=0,keywordFlags=0,name="ExtraAura",type="LIST",value={mod={flags=0,keywordFlags=0,name="CritMultiplier",type="INC",value=32},onlyAllies=true}}},nil}
c["Allies in your Presence have 32% increased Critical Hit Chance"]={{[1]={flags=0,keywordFlags=0,name="ExtraAura",type="LIST",value={mod={flags=0,keywordFlags=0,name="CritChance",type="INC",value=32},onlyAllies=true}}},nil}
c["Allies in your Presence have 40% increased Critical Damage Bonus"]={{[1]={flags=0,keywordFlags=0,name="ExtraAura",type="LIST",value={mod={flags=0,keywordFlags=0,name="CritMultiplier",type="INC",value=40},onlyAllies=true}}},nil}
Expand Down
8 changes: 7 additions & 1 deletion src/Data/SkillStatMap.lua
Original file line number Diff line number Diff line change
Expand Up @@ -318,6 +318,13 @@ return {
skill("castTimeOverride", nil),
div = 1000,
},
["active_skill_requires_X_glory"] = {
skill("gloryCost", nil),
},
["active_skill_generates_mp_%_glory_per_attack_hit"] = {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing Glory mods for active_skill_generates_mp_%_glory_per_heavy_stun on Hammer of the Gods and Spear of Solaris,

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

True, but I don't know how to display anything meaningful for those.
The intent was to display something meaningful for players with a banner, because it's very hard to gauge as a player.
The heavy stun mechanic is much more predictable, because a warrior will already know how often he stuns.

mod("GloryPctOnHitMp", "MAX", nil, 0, KeywordFlag.Attack, { type = "GlobalEffect", effectType = "Aura" }),
div = 100
},
["skill_cannot_gain_repeat_bonuses"] = {
flag("NoRepeatBonuses"),
},
Expand Down Expand Up @@ -2495,7 +2502,6 @@ return {
["banner_aura_magnitude_+%_final_per_resource"] = {
mod("AuraEffect", "MORE", nil, 0, 0, { type = "Multiplier", var = "BannerValour" }, { type = "Condition", var = "BannerPlanted" }),
},

-- Crossbow
["reload_speed_+%"] = {
mod("ReloadSpeed", "INC", nil),
Expand Down
2 changes: 2 additions & 0 deletions src/Modules/BuildDisplayStats.lua
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,8 @@ local displayStats = {
{ stat = "SealMax", label = "Max Number of Seals", fmt = "d" },
{ stat = "TimeMaxSeals", label = "Time to Gain Max Seals", fmt = ".2fs", lowerIsBetter = true },
{ stat = "AreaOfEffectRadiusMetres", label = "AoE Radius", fmt = ".1fm" },
{ stat = "GloryCost", label = "Glory Cost", fmt = ".0f", colorCodes.RARE },
{ stat = "BannerGloryPerSecond", label = "Banner glory per second", fmt = ".0f", colorCodes.RARE },
{ stat = "BrandAttachmentRangeMetre", label = "Attachment Range", fmt = ".1fm", flag = "brand" },
{ stat = "BrandTicks", label = "Activations per Brand", fmt = "d", flag = "brand" },
{ stat = "ManaCost", label = "Mana Cost", fmt = "d", color = colorCodes.MANA, pool = "ManaUnreserved", compPercent = true, lowerIsBetter = true, condFunc = function(v,o) return o.ManaHasCost end },
Expand Down
11 changes: 11 additions & 0 deletions src/Modules/CalcOffence.lua
Original file line number Diff line number Diff line change
Expand Up @@ -5601,6 +5601,17 @@ function calcs.offence(env, actor, activeSkill)
end
end

if skillData.gloryCost then
output.GloryCost = skillData.gloryCost
end

local gloryPctOnHitMp = modDB:Max(skillCfg, "GloryPctOnHitMp") or 0
if gloryPctOnHitMp > 0 then
local inc = modDB:Sum("INC", skillCfg, "GloryGeneration")
local monsterPower = 20
output.BannerGloryPerSecond = gloryPctOnHitMp * (1+inc/100) * output.Speed * monsterPower
end

-- Calculate combined DPS estimate, including DoTs
local baseDPS = output[(skillData.showAverage and "AverageDamage") or "TotalDPS"]
output.CombinedDPS = baseDPS
Expand Down
2 changes: 2 additions & 0 deletions src/Modules/ModParser.lua
Original file line number Diff line number Diff line change
Expand Up @@ -870,6 +870,7 @@ local modNameList = {
["penalty to accuracy rating at range"] = "AccuracyPenalty",
["when you reload a crossbow to be immediate"] = "InstantReloadChance",
["to not expend ammunition"] = "ChanceToNotConsumeAmmo",
["glory generation"] = "GloryGeneration",
-- Flask and Charm modifiers
["effect"] = "LocalEffect",
["effect of flasks"] = "FlaskEffect",
Expand Down Expand Up @@ -1100,6 +1101,7 @@ local modFlagList = {
["of your mark skills"] = { tag = { type = "SkillType", skillType = SkillType.Mark } },
["with command skills"] = { tag = { type = "Condition", var = "CommandableSkill" } },
["for command skills"] = { tag = { type = "Condition", var = "CommandableSkill" } },
["for banner skills"] = { tag = { type = "SkillType", skillType = SkillType.Banner } },
["minion"] = { addToMinion = true },
["zombie"] = { addToMinion = true, addToMinionTag = { type = "SkillName", skillName = "Raise Zombie", includeTransfigured = true } },
["raised zombie"] = { addToMinion = true, addToMinionTag = { type = "SkillName", skillName = "Raise Zombie", includeTransfigured = true } },
Expand Down