diff --git a/src/Data/ModCache.lua.rej b/src/Data/ModCache.lua.rej new file mode 100644 index 000000000..958f70aaa --- /dev/null +++ b/src/Data/ModCache.lua.rej @@ -0,0 +1,28 @@ +diff a/src/Data/ModCache.lua b/src/Data/ModCache.lua (rejected hunks) +@@ -4881,7 +4881,7 @@ c["30% increased Fire Damage if you have used a Cold Skill Recently"]={{[1]={[1] + c["30% increased Fire Damage with Attack Skills"]={{[1]={flags=0,keywordFlags=65536,name="FireDamage",type="INC",value=30}},nil} + c["30% increased Fire Damage with Hits and Ailments against Blinded Enemies"]={{[1]={[1]={actor="enemy",type="ActorCondition",var="Blinded"},flags=0,keywordFlags=786432,name="FireDamage",type="INC",value=30}},nil} + c["30% increased Flask Recovery rate"]={{[1]={flags=0,keywordFlags=0,name="FlaskRecoveryRate",type="INC",value=30}},nil} +-c["30% increased Fortification Duration"]={{[1]={flags=0,keywordFlags=0,name="FortificationDuration",type="INC",value=30}},nil} ++c["30% increased Fortification Duration"]={{[1]={flags=0,keywordFlags=0,name="FortifyDuration",type="INC",value=30}},nil} + c["30% increased Freeze Duration on Enemies"]={{[1]={flags=0,keywordFlags=0,name="EnemyFreezeDuration",type="INC",value=30}},nil} + c["30% increased Global Accuracy Rating"]={{[1]={[1]={type="Global"},flags=0,keywordFlags=0,name="Accuracy",type="INC",value=30}},nil} + c["30% increased Global Critical Strike Chance"]={{[1]={[1]={type="Global"},flags=0,keywordFlags=0,name="CritChance",type="INC",value=30}},nil} +@@ -5094,7 +5094,7 @@ c["35% increased Effect of your Curses"]={{[1]={flags=0,keywordFlags=0,name="Cur + c["35% increased Elemental Damage"]={{[1]={flags=0,keywordFlags=0,name="ElementalDamage",type="INC",value=35}},nil} + c["35% increased Elemental Damage with Hits and Ailments for each type of Elemental Ailment on Enemy"]={{[1]={[1]={actor="enemy",type="ActorCondition",var="Frozen"},flags=0,keywordFlags=786432,name="ElementalDamage",type="INC",value=35},[2]={[1]={actor="enemy",type="ActorCondition",var="Chilled"},flags=0,keywordFlags=786432,name="ElementalDamage",type="INC",value=35},[3]={[1]={actor="enemy",type="ActorCondition",var="Ignited"},flags=0,keywordFlags=786432,name="ElementalDamage",type="INC",value=35},[4]={[1]={actor="enemy",type="ActorCondition",var="Shocked"},flags=0,keywordFlags=786432,name="ElementalDamage",type="INC",value=35},[5]={[1]={actor="enemy",type="ActorCondition",var="Scorched"},flags=0,keywordFlags=786432,name="ElementalDamage",type="INC",value=35},[6]={[1]={actor="enemy",type="ActorCondition",var="Brittle"},flags=0,keywordFlags=786432,name="ElementalDamage",type="INC",value=35},[7]={[1]={actor="enemy",type="ActorCondition",var="Sapped"},flags=0,keywordFlags=786432,name="ElementalDamage",type="INC",value=35}},nil} + c["35% increased Fire Damage"]={{[1]={flags=0,keywordFlags=0,name="FireDamage",type="INC",value=35}},nil} +-c["35% increased Fortification Duration"]={{[1]={flags=0,keywordFlags=0,name="FortificationDuration",type="INC",value=35}},nil} ++c["35% increased Fortification Duration"]={{[1]={flags=0,keywordFlags=0,name="FortifyDuration",type="INC",value=35}},nil} + c["35% increased Global Critical Strike Chance"]={{[1]={[1]={type="Global"},flags=0,keywordFlags=0,name="CritChance",type="INC",value=35}},nil} + c["35% increased Global maximum Energy Shield and reduced Lightning Resistance"]={{[1]={[1]={type="Global"},flags=0,keywordFlags=0,name="EnergyShield",type="INC",value=35},[2]={flags=0,keywordFlags=0,name="LightningResist",type="INC",value=-35}},nil} + c["35% increased Life Recovery from Flasks"]={{[1]={flags=0,keywordFlags=0,name="FlaskLifeRecovery",type="INC",value=35}},nil} +@@ -5330,7 +5330,7 @@ c["40% increased Evasion Rating while Phasing"]={{[1]={[1]={type="Condition",var + c["40% increased Evasion Rating while you have Onslaught"]={{[1]={[1]={type="Condition",var="Onslaught"},flags=0,keywordFlags=0,name="Evasion",type="INC",value=40}},nil} + c["40% increased Fire Damage"]={{[1]={flags=0,keywordFlags=0,name="FireDamage",type="INC",value=40}},nil} + c["40% increased Fire Damage with Hits and Ailments against Blinded Enemies"]={{[1]={[1]={actor="enemy",type="ActorCondition",var="Blinded"},flags=0,keywordFlags=786432,name="FireDamage",type="INC",value=40}},nil} +-c["40% increased Fortification Duration"]={{[1]={flags=0,keywordFlags=0,name="FortificationDuration",type="INC",value=40}},nil} ++c["40% increased Fortification Duration"]={{[1]={flags=0,keywordFlags=0,name="FortifyDuration",type="INC",value=40}},nil} + c["40% increased Global Accuracy Rating"]={{[1]={[1]={type="Global"},flags=0,keywordFlags=0,name="Accuracy",type="INC",value=40}},nil} + c["40% increased Global Critical Strike Chance"]={{[1]={[1]={type="Global"},flags=0,keywordFlags=0,name="CritChance",type="INC",value=40}},nil} + c["40% increased Global Critical Strike Chance while wielding a Staff"]={{[1]={[1]={type="Global"},[2]={type="Condition",var="UsingStaff"},flags=0,keywordFlags=0,name="CritChance",type="INC",value=40}},nil} diff --git a/src/Data/SkillStatMap.lua b/src/Data/SkillStatMap.lua index a7f9412c6..b24ddc0cc 100644 --- a/src/Data/SkillStatMap.lua +++ b/src/Data/SkillStatMap.lua @@ -721,6 +721,10 @@ return { ["fortify_duration_+%"] = { mod("FortifyDuration", "INC", nil), }, +["gain_fortify_on_melee_hit_ms"] = { + mod("FortifyDuration", "OVERRIDE", nil), + div = 1000, +}, ["support_swift_affliction_skill_effect_and_damaging_ailment_duration_+%_final"] = { mod("Duration", "MORE", nil), mod("DamagingAilmentDuration", "MORE", nil), diff --git a/src/Modules/CalcPerform.lua.rej b/src/Modules/CalcPerform.lua.rej new file mode 100644 index 000000000..e33b07e63 --- /dev/null +++ b/src/Modules/CalcPerform.lua.rej @@ -0,0 +1,20 @@ +diff a/src/Modules/CalcPerform.lua b/src/Modules/CalcPerform.lua (rejected hunks) +@@ -614,15 +614,16 @@ local function doActorMisc(env, actor) + end + -- Fortify + if modDB:Flag(nil, "Fortified") or modDB:Sum("BASE", nil, "Multiplier:Fortification") > 0 then ++ local skillModList = actor.mainSkill.skillModList + local maxStacks = modDB:Override(nil, "MaximumFortification") or modDB:Sum("BASE", skillCfg, "MaximumFortification") + local minStacks = m_min(modDB:Flag(nil, "Condition:HaveMaxFortification") and maxStacks or modDB:Sum("BASE", nil, "MinimumFortification"), maxStacks) + local stacks = m_min(modDB:Override(nil, "FortificationStacks") or (alliedFortify > 0 and alliedFortify) or (minStacks > 0 and minStacks) or maxStacks, maxStacks) +- local duration = modDB:Sum("INC", nil, "FortificationDuration") ++ local increasedDuration = skillModList:Sum("INC", nil, "FortifyDuration") + output.MaximumFortification = maxStacks + output.MinimumFortification = minStacks + output.FortificationStacks = stacks + output.FortificationStacksOver20 = m_min(m_max(0, stacks - 20), maxStacks - 20) +- output.FortificationDuration = (6 + (env.player.mainSkill.skillCfg.skillName == "Vigilant Strike" and 2 or 0)) * (1 + duration / 100) ++ output.FortifyDuration = (skillModList:Override(nil, "FortifyDuration") or data.misc.FortifyBaseDuration) * (1 + increasedDuration / 100) + output.FortificationEffect = "0" -- string allows shown for Willowgift mod + if not modDB:Flag(nil,"Condition:NoFortificationMitigation") then + output.FortificationEffect = stacks diff --git a/src/Modules/CalcSections.lua.rej b/src/Modules/CalcSections.lua.rej new file mode 100644 index 000000000..2aeb2b85c --- /dev/null +++ b/src/Modules/CalcSections.lua.rej @@ -0,0 +1,10 @@ +diff a/src/Modules/CalcSections.lua b/src/Modules/CalcSections.lua (rejected hunks) +@@ -1743,7 +1743,7 @@ return { + } }, { defaultCollapsed = false, label = "Fortification", data = { + { label = "Maximum Stacks", haveOutput = "MaximumFortification", { format = "{0:output:MaximumFortification}", { breakdown = "MaximumFortification" }, { modName = "MaximumFortification" }, }, }, + { label = "Minimum Stacks", haveOutput = "MinimumFortification", { format = "{0:output:MinimumFortification}", { breakdown = "MinimumFortification" }, { modName = "MinimumFortification" }, }, }, +- { label = "Duration", haveOutput = "FortificationDuration", { format = "{2:output:FortificationDuration}s", { breakdown = "FortificationDuration" }, { modName = "FortificationDuration" }, }, }, ++ { label = "Duration", haveOutput = "FortifyDuration", { format = "{2:output:FortifyDuration}s", { breakdown = "FortifyDuration" }, { modName = "FortifyDuration" }, }, }, + { label = "Less Dmg. Taken", haveOutput = "FortificationEffect", { format = "{output:FortificationEffect}%", { breakdown = "FortificationEffect" }, { modName = "Condition:NoFortificationMitigation" }, }, }, + } }, { defaultCollapsed = false, label = "Stun Duration", data = { + { label = "Stun Avoid Chance", haveOutput = "StunAvoidChance", { format = "{0:output:StunAvoidChance}%", { breakdown = "StunAvoidChance" }, { modName = "AvoidStun" }, }, }, diff --git a/src/Modules/Data.lua.rej b/src/Modules/Data.lua.rej new file mode 100644 index 000000000..d51b1efdd --- /dev/null +++ b/src/Modules/Data.lua.rej @@ -0,0 +1,9 @@ +diff a/src/Modules/Data.lua b/src/Modules/Data.lua (rejected hunks) +@@ -177,6 +177,7 @@ data.misc = { -- magic numbers + SuppressionChanceCap = 100, + SuppressionEffect = 40, + AvoidChanceCap = 75, ++ FortifyBaseDuration = 6, + ManaRegenBase = data.characterConstants["mana_regeneration_rate_per_minute_%"] / 60 / 100, + EnergyShieldRechargeBase = data.characterConstants["energy_shield_recharge_rate_per_minute_%"] / 60 / 100, + EnergyShieldRechargeBase = 0.33, diff --git a/src/Modules/ModParser.lua.rej b/src/Modules/ModParser.lua.rej new file mode 100644 index 000000000..8c185709d --- /dev/null +++ b/src/Modules/ModParser.lua.rej @@ -0,0 +1,10 @@ +diff a/src/Modules/ModParser.lua b/src/Modules/ModParser.lua (rejected hunks) +@@ -454,7 +454,7 @@ local modNameList = { + ["rage effect"] = "RageEffect", + ["maximum fortification"] = "MaximumFortification", + ["fortification"] = "MinimumFortification", +- ["fortification duration"] = "FortificationDuration", ++ ["fortification duration"] = "FortifyDuration", + ["maximum valour"] = "MaximumValour", + -- Charges + ["maximum power charge"] = "PowerChargesMax",