From 52c73a788ad96867827a8a828c151ff7e5081f88 Mon Sep 17 00:00:00 2001 From: Openarl Date: Fri, 1 Jun 2018 16:30:24 +1000 Subject: [PATCH] Release 1.4.91 - Added limit to Pure Talent - Fixed Slavedriver's Hand converting Attack Speed - Fixed error in Calcs tab caused by Multiplier w/ varList --- .gitignore | 2 + CHANGELOG.md | 5 ++ Classes/CalcBreakdownControl.lua | 38 ++++++----- Data/2_6/Skills/act_dex.lua | 42 ------------- Data/2_6/Skills/act_int.lua | 65 ------------------- Data/2_6/Skills/act_str.lua | 20 ------ Data/2_6/Skills/minion.lua | 9 --- Data/2_6/Skills/other.lua | 8 --- Data/2_6/Skills/spectre.lua | 33 ---------- Data/3_0/Skills/act_dex.lua | 35 ----------- Data/3_0/Skills/act_int.lua | 67 -------------------- Data/3_0/Skills/act_str.lua | 20 ------ Data/3_0/Skills/minion.lua | 9 --- Data/3_0/Skills/other.lua | 14 +---- Data/3_0/Skills/spectre.lua | 33 ---------- Data/3_0/Skills/sup_int.lua | 2 +- Data/Global.lua | 1 + Data/Uniques/jewel.lua | 1 + Export/Skills/act_dex.txt | 62 +++++++++--------- Export/Skills/act_int.txt | 104 +++++++++++++++---------------- Export/Skills/act_str.txt | 36 +++++------ Export/Skills/minion.txt | 10 +-- Export/Skills/other.txt | 16 ++--- Export/Skills/spectre.txt | 40 ++++++------ Export/_common.lua | 35 ++++++++--- Export/mods.lua | 4 +- Export/skills.lua | 98 +++++++++++++++-------------- Modules/CalcActiveSkill.lua | 4 +- Modules/CalcOffence-3_0.lua | 6 +- changelog.txt | 4 ++ manifest.xml | 40 ++++++------ 31 files changed, 274 insertions(+), 589 deletions(-) diff --git a/.gitignore b/.gitignore index 737c0e0c..397a00ca 100644 --- a/.gitignore +++ b/.gitignore @@ -264,3 +264,5 @@ ModelManifest.xml /Export/Tree/skills-3.jpg /Export/Tree/skills-disabled-3.jpg /Export/Tree/groups-3.png +/Export/002460_static_strike_explosion_damage_pluspercent_final.txt +/Export/skillpopup_stat_filters.txt diff --git a/CHANGELOG.md b/CHANGELOG.md index 651aaaa8..f89c3de8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,8 @@ +### 1.4.91 - 2018/06/01 + * Added the missing limit to Pure Talent + * Slavedriver's hand no longer incorrectly converts Attack Speed modifiers to Trap Throwing Speed for Attack traps + * Fixed error when hovering over "Total Increased" in the Calcs tab on certain builds + ### 1.4.90 - 2018/05/31 * Added the following announced uniques for 3.3: * Zeel's Amplifier diff --git a/Classes/CalcBreakdownControl.lua b/Classes/CalcBreakdownControl.lua index cf6caeaf..75905b33 100644 --- a/Classes/CalcBreakdownControl.lua +++ b/Classes/CalcBreakdownControl.lua @@ -372,31 +372,21 @@ function CalcBreakdownClass:AddModSection(sectionData, modList) row.tags = nil if row.mod[1] then -- Format modifier tags - local baseVal = type(row.mod.value) == "number" and (row.mod.type == "BASE" and string.format("%+g ", math.abs(row.mod.value)) or math.abs(row.mod.value).."% ") + local baseVal = type(row.mod.value) == "number" and (self:FormatModBase(row.mod, row.mod.value) .. "") for _, tag in ipairs(row.mod) do local desc - if tag.type == "Condition" then - desc = "Condition: "..(tag.neg and "Not " or "")..(tag.varList and table.concat(tag.varList, "/") or self:FormatModName(tag.var)) - elseif tag.type == "ActorCondition" then - desc = tag.actor:sub(1,1):upper()..tag.actor:sub(2).." Condition: "..(tag.neg and "Not " or "")..(tag.varList and table.concat(tag.varList, "/") or self:FormatModName(tag.var)) + if tag.type == "Condition" or tag.type == "ActorCondition" then + desc = (tag.actor and (tag.actor:sub(1,1):upper()..tag.actor:sub(2).." ") or "").."Condition: "..(tag.neg and "Not " or "")..self:FormatVarNameOrList(tag.var, tag.varList) elseif tag.type == "Multiplier" then - if tag.base then - desc = (row.mod.type == "BASE" and string.format("%+g", tag.base) or tag.base.."%").." + "..math.abs(row.mod.value).." per "..self:FormatModName(tag.var) - else - desc = baseVal.."per "..(tag.div and (tag.div.." ") or "")..self:FormatModName(tag.var) - end + local base = tag.base and (self:FormatModBase(row.mod, tag.base).."+ "..math.abs(row.mod.value).." ") or baseVal + desc = base.."per "..(tag.div and (tag.div.." ") or "")..self:FormatVarNameOrList(tag.var, tag.varList) baseVal = "" - elseif tag.type == "MultiplierThreshold" then - desc = "If "..self:FormatModName(tag.var)..(tag.upper and " <= " or " >= ")..(tag.threshold or self:FormatModName(tag.thresholdVar)) elseif tag.type == "PerStat" then - if tag.base then - desc = (row.mod.type == "BASE" and string.format("%+g", tag.base) or tag.base.."%").." + "..math.abs(row.mod.value).." per "..(tag.div or 1).." "..self:FormatModName(tag.var) - else - desc = baseVal.."per "..(tag.div or 1).." "..self:FormatModName(tag.stat) - end + local base = tag.base and (self:FormatModBase(row.mod, tag.base).."+ "..math.abs(row.mod.value).." ") or baseVal + desc = base.."per "..(tag.div or 1).." "..self:FormatVarNameOrList(tag.stat, tag.statList) baseVal = "" - elseif tag.type == "StatThreshold" then - desc = "If "..self:FormatModName(tag.stat)..(tag.upper and " <= " or " >= ")..(tag.threshold or self:FormatModName(tag.thresholdStat)) + elseif tag.type == "MultiplierThreshold" or tag.type == "StatThreshold" then + desc = "If "..self:FormatVarNameOrList(tag.var or tag.stat, tag.varList or tag.statList)..(tag.upper and " <= " or " >= ")..(tag.threshold or self:FormatModName(tag.thresholdVar or tag.thresholdStat)) elseif tag.type == "SkillName" then desc = "Skill: "..tag.skillName elseif tag.type == "SkillId" then @@ -409,7 +399,7 @@ function CalcBreakdownClass:AddModSection(sectionData, modList) end end if not desc then - desc = "Skill type: ?"..(tag.neg and "Not " or "") + desc = "Skill type: "..(tag.neg and "Not " or "").."?" end elseif tag.type == "SlotNumber" then desc = "When in slot #"..tag.num @@ -430,6 +420,14 @@ function CalcBreakdownClass:FormatModName(modName) return modName:gsub("([%l%d]:?)(%u)","%1 %2"):gsub("(%l)(%d)","%1 %2") end +function CalcBreakdownClass:FormatVarNameOrList(var, varList) + return var and self:FormatModName(var) or table.concat(varList, "/") +end + +function CalcBreakdownClass:FormatModBase(mod, base) + return mod.type == "BASE" and string.format("%+g ", math.abs(base)) or math.abs(base).."% " +end + function CalcBreakdownClass:FormatModValue(value, modType) if modType == "BASE" then return string.format("%+g base", value) diff --git a/Data/2_6/Skills/act_dex.lua b/Data/2_6/Skills/act_dex.lua index 1293b9d4..31ee15f6 100644 --- a/Data/2_6/Skills/act_dex.lua +++ b/Data/2_6/Skills/act_dex.lua @@ -106,7 +106,6 @@ skills["NewArcticArmour"] = { baseFlags = { spell = true, duration = true, - cold = true, }, baseMods = { skill("castTime", 0.5), @@ -607,7 +606,6 @@ skills["BlastRain"] = { attack = true, projectile = true, area = true, - fire = true, }, baseMods = { skill("castTime", 1), @@ -690,7 +688,6 @@ skills["BlinkArrow"] = { attack = true, projectile = true, minion = true, - movement = true, duration = true, }, baseMods = { @@ -839,7 +836,6 @@ skills["BurningArrow"] = { baseFlags = { attack = true, projectile = true, - fire = true, }, baseMods = { skill("castTime", 1), @@ -914,8 +910,6 @@ skills["VaalBurningArrow"] = { attack = true, projectile = true, area = true, - fire = true, - vaal = true, }, baseMods = { skill("castTime", 1), @@ -1078,7 +1072,6 @@ skills["Cyclone"] = { attack = true, melee = true, area = true, - movement = true, }, baseMods = { skill("castTime", 1), @@ -1168,7 +1161,6 @@ skills["VaalCyclone"] = { melee = true, area = true, duration = true, - vaal = true, }, baseMods = { skill("castTime", 1), @@ -1317,7 +1309,6 @@ skills["DetonateDead"] = { baseFlags = { cast = true, area = true, - fire = true, }, baseMods = { skill("castTime", 0.8), @@ -1397,7 +1388,6 @@ skills["VaalDetonateDead"] = { baseFlags = { cast = true, area = true, - fire = true, }, baseMods = { skill("castTime", 0.8), @@ -1561,7 +1551,6 @@ skills["VaalDoubleStrike"] = { attack = true, melee = true, duration = true, - vaal = true, }, baseMods = { skill("castTime", 1), @@ -1717,9 +1706,6 @@ skills["ElementalHit"] = { attack = true, melee = true, projectile = true, - cold = true, - fire = true, - lightning = true, }, baseMods = { skill("castTime", 1), @@ -1890,7 +1876,6 @@ skills["ExplosiveArrow"] = { projectile = true, area = true, duration = true, - fire = true, }, baseMods = { skill("castTime", 1), @@ -1971,7 +1956,6 @@ skills["FireTrap"] = { trap = true, area = true, duration = true, - fire = true, }, baseMods = { skill("castTime", 1), @@ -2061,7 +2045,6 @@ skills["FlickerStrike"] = { baseFlags = { attack = true, melee = true, - movement = true, }, baseMods = { skill("castTime", 1), @@ -2134,7 +2117,6 @@ skills["FreezeMine"] = { spell = true, mine = true, area = true, - cold = true, }, baseMods = { skill("castTime", 0.5), @@ -2305,7 +2287,6 @@ skills["FrostBlades"] = { attack = true, melee = true, projectile = true, - cold = true, }, baseMods = { skill("castTime", 1), @@ -2449,7 +2430,6 @@ skills["VaalGrace"] = { aura = true, area = true, duration = true, - vaal = true, }, baseMods = { skill("castTime", 0.6), @@ -2593,7 +2573,6 @@ skills["VaalHaste"] = { aura = true, area = true, duration = true, - vaal = true, }, baseMods = { skill("castTime", 0.6), @@ -2665,7 +2644,6 @@ skills["Hatred"] = { spell = true, aura = true, area = true, - cold = true, }, baseMods = { skill("castTime", 1.2), @@ -2734,7 +2712,6 @@ skills["HeraldOfIce"] = { baseFlags = { cast = true, area = true, - cold = true, }, baseMods = { skill("castTime", 1), @@ -2828,7 +2805,6 @@ skills["IceShot"] = { projectile = true, area = true, duration = true, - cold = true, }, baseMods = { skill("castTime", 1), @@ -2901,7 +2877,6 @@ skills["IceTrap"] = { spell = true, trap = true, area = true, - cold = true, }, baseMods = { skill("castTime", 1), @@ -3064,7 +3039,6 @@ skills["LightningArrow"] = { baseFlags = { attack = true, projectile = true, - lightning = true, }, baseMods = { skill("castTime", 1), @@ -3159,7 +3133,6 @@ skills["LightningStrike"] = { attack = true, melee = true, projectile = true, - lightning = true, }, baseMods = { skill("castTime", 1), @@ -3253,8 +3226,6 @@ skills["VaalLightningStrike"] = { attack = true, melee = true, duration = true, - lightning = true, - vaal = true, }, baseMods = { skill("castTime", 1), @@ -3331,7 +3302,6 @@ skills["MirrorArrow"] = { attack = true, projectile = true, minion = true, - movement = true, duration = true, }, baseMods = { @@ -3406,7 +3376,6 @@ skills["NewPhaseRun"] = { baseFlags = { spell = true, duration = true, - movement = true, }, baseMods = { skill("castTime", 0.5), @@ -3710,7 +3679,6 @@ skills["ColdResistAura"] = { spell = true, aura = true, area = true, - cold = true, }, baseMods = { skill("castTime", 1.2), @@ -3859,7 +3827,6 @@ skills["VaalRainOfArrows"] = { projectile = true, area = true, duration = true, - vaal = true, }, baseMods = { skill("castTime", 1), @@ -4036,7 +4003,6 @@ skills["VaalReave"] = { attack = true, melee = true, area = true, - vaal = true, }, baseMods = { skill("castTime", 1), @@ -4209,7 +4175,6 @@ skills["ShrapnelShot"] = { attack = true, projectile = true, area = true, - lightning = true, }, baseMods = { skill("castTime", 1), @@ -4366,7 +4331,6 @@ skills["SmokeMine"] = { mine = true, area = true, duration = true, - movement = true, buff = true, }, baseMods = { @@ -4528,7 +4492,6 @@ skills["VaalThrownWeapon"] = { baseFlags = { attack = true, projectile = true, - vaal = true, }, baseMods = { skill("castTime", 1), @@ -4669,7 +4632,6 @@ skills["SummonIceGolem"] = { spell = true, minion = true, golem = true, - cold = true, }, baseMods = { skill("castTime", 1), @@ -4970,7 +4932,6 @@ skills["WhirlingBlades"] = { baseFlags = { attack = true, melee = true, - movement = true, }, baseMods = { skill("castTime", 2.6), @@ -5103,9 +5064,6 @@ skills["WildStrike"] = { projectile = true, chaining = true, area = true, - lightning = true, - cold = true, - fire = true, }, baseMods = { skill("castTime", 1), diff --git a/Data/2_6/Skills/act_int.lua b/Data/2_6/Skills/act_int.lua index 8a921c74..99b62999 100644 --- a/Data/2_6/Skills/act_int.lua +++ b/Data/2_6/Skills/act_int.lua @@ -25,7 +25,6 @@ skills["Arc"] = { baseFlags = { spell = true, chaining = true, - lightning = true, }, baseMods = { skill("castTime", 0.8), @@ -95,8 +94,6 @@ skills["VaalArcChain"] = { skillTypes = { [2] = true, [10] = true, [17] = true, [18] = true, [19] = true, [23] = true, [26] = true, [43] = true, [35] = true, }, baseFlags = { spell = true, - lightning = true, - vaal = true, }, baseMods = { skill("castTime", 0.8), @@ -169,7 +166,6 @@ skills["ArcticBreath"] = { area = true, projectile = true, duration = true, - cold = true, }, baseMods = { skill("castTime", 0.8), @@ -316,7 +312,6 @@ skills["BallLightning"] = { baseFlags = { spell = true, projectile = true, - lightning = true, }, baseMods = { skill("castTime", 0.8), @@ -608,7 +603,6 @@ skills["VaalClarity"] = { aura = true, area = true, duration = true, - vaal = true, }, baseMods = { skill("castTime", 0.6), @@ -676,7 +670,6 @@ skills["ColdSnap"] = { baseFlags = { spell = true, area = true, - cold = true, }, baseMods = { skill("castTime", 0.85), @@ -755,8 +748,6 @@ skills["VaalColdSnap"] = { spell = true, area = true, duration = true, - cold = true, - vaal = true, }, baseMods = { skill("castTime", 0.85), @@ -830,7 +821,6 @@ skills["Conductivity"] = { curse = true, area = true, duration = true, - lightning = true, }, baseMods = { skill("castTime", 0.5), @@ -1115,9 +1105,6 @@ skills["Discharge"] = { baseFlags = { spell = true, area = true, - lightning = true, - cold = true, - fire = true, }, baseMods = { skill("castTime", 1), @@ -1267,7 +1254,6 @@ skills["VaalDiscipline"] = { aura = true, area = true, duration = true, - vaal = true, }, baseMods = { skill("castTime", 0.6), @@ -1565,7 +1551,6 @@ skills["FireNovaMine"] = { mine = true, area = true, duration = true, - fire = true, }, baseMods = { skill("castTime", 0.4), @@ -1652,7 +1637,6 @@ skills["Fireball"] = { baseFlags = { spell = true, projectile = true, - fire = true, }, baseMods = { skill("castTime", 0.85), @@ -1735,8 +1719,6 @@ skills["VaalFireballSpiralNova"] = { baseFlags = { spell = true, projectile = true, - fire = true, - vaal = true, }, baseMods = { skill("castTime", 0.85), @@ -1810,7 +1792,6 @@ skills["Firestorm"] = { spell = true, area = true, duration = true, - fire = true, }, baseMods = { skill("castTime", 0.9), @@ -1887,8 +1868,6 @@ skills["FlameDash"] = { spell = true, area = true, duration = true, - movement = true, - fire = true, }, baseMods = { skill("castTime", 0.75), @@ -1960,7 +1939,6 @@ skills["FlameWhip"] = { baseFlags = { spell = true, area = true, - fire = true, }, baseMods = { skill("castTime", 0.5), @@ -2040,7 +2018,6 @@ skills["Flameblast"] = { baseFlags = { spell = true, area = true, - fire = true, }, baseMods = { skill("castTime", 0.2), @@ -2114,8 +2091,6 @@ skills["VaalFlameblast"] = { baseFlags = { spell = true, area = true, - fire = true, - vaal = true, }, baseMods = { skill("castTime", 1), @@ -2190,7 +2165,6 @@ skills["Flammability"] = { curse = true, area = true, duration = true, - fire = true, }, baseMods = { skill("castTime", 0.5), @@ -2336,7 +2310,6 @@ skills["FreezingPulse"] = { baseFlags = { spell = true, projectile = true, - cold = true, }, baseMods = { skill("castTime", 0.65), @@ -2409,7 +2382,6 @@ skills["FrostBomb"] = { spell = true, area = true, duration = true, - cold = true, }, baseMods = { skill("castTime", 0.5), @@ -2484,7 +2456,6 @@ skills["FrostWall"] = { baseFlags = { spell = true, duration = true, - cold = true, }, baseMods = { skill("castTime", 0.5), @@ -2559,7 +2530,6 @@ skills["Frostbite"] = { curse = true, area = true, duration = true, - cold = true, }, baseMods = { skill("castTime", 0.5), @@ -2630,7 +2600,6 @@ skills["FrostBolt"] = { baseFlags = { spell = true, projectile = true, - cold = true, }, baseMods = { skill("castTime", 0.75), @@ -2699,7 +2668,6 @@ skills["GlacialCascade"] = { baseFlags = { spell = true, area = true, - cold = true, }, baseMods = { skill("castTime", 0.8), @@ -2773,7 +2741,6 @@ skills["HeraldOfThunder"] = { baseFlags = { cast = true, duration = true, - lightning = true, }, baseMods = { skill("castTime", 1), @@ -2851,7 +2818,6 @@ skills["IceNova"] = { baseFlags = { spell = true, area = true, - cold = true, }, baseMods = { skill("castTime", 0.8), @@ -2923,8 +2889,6 @@ skills["VaalIceNova"] = { baseFlags = { spell = true, area = true, - cold = true, - vaal = true, }, baseMods = { skill("castTime", 0.8), @@ -3002,7 +2966,6 @@ skills["IceSpear"] = { baseFlags = { spell = true, projectile = true, - cold = true, }, baseMods = { skill("castTime", 0.85), @@ -3083,7 +3046,6 @@ skills["Incinerate"] = { baseFlags = { spell = true, projectile = true, - fire = true, }, baseMods = { skill("castTime", 0.2), @@ -3239,7 +3201,6 @@ skills["LightningTendrils"] = { baseFlags = { spell = true, area = true, - lightning = true, }, baseMods = { skill("castTime", 0.8), @@ -3315,7 +3276,6 @@ skills["LightningTrap"] = { spell = true, trap = true, projectile = true, - lightning = true, }, baseMods = { skill("castTime", 1), @@ -3396,8 +3356,6 @@ skills["VaalLightningTrap"] = { trap = true, projectile = true, duration = true, - lightning = true, - vaal = true, }, baseMods = { skill("castTime", 1), @@ -3477,8 +3435,6 @@ skills["LightningWarp"] = { spell = true, area = true, duration = true, - movement = true, - lightning = true, }, baseMods = { skill("castTime", 1), @@ -3554,8 +3510,6 @@ skills["VaalLightningWarpInstant"] = { spell = true, area = true, duration = true, - lightning = true, - vaal = true, }, baseMods = { skill("castTime", 1), @@ -3630,7 +3584,6 @@ skills["MagmaOrb"] = { projectile = true, area = true, chaining = true, - fire = true, }, baseMods = { skill("castTime", 0.7), @@ -3704,7 +3657,6 @@ skills["OrbOfStorms"] = { spell = true, chaining = true, duration = true, - lightning = true, }, baseMods = { skill("castTime", 0.5), @@ -3849,7 +3801,6 @@ skills["VaalPowerSiphon"] = { baseFlags = { attack = true, projectile = true, - vaal = true, }, baseMods = { skill("castTime", 1), @@ -4213,7 +4164,6 @@ skills["RighteousFire"] = { baseFlags = { spell = true, area = true, - fire = true, }, baseMods = { skill("castTime", 1), @@ -4288,8 +4238,6 @@ skills["VaalRighteousFire"] = { baseFlags = { spell = true, area = true, - fire = true, - vaal = true, }, baseMods = { skill("castTime", 1), @@ -4368,7 +4316,6 @@ skills["FireBeam"] = { baseFlags = { spell = true, duration = true, - fire = true, }, baseMods = { skill("castTime", 0.5), @@ -4452,7 +4399,6 @@ skills["ShockNova"] = { baseFlags = { spell = true, area = true, - lightning = true, }, baseMods = { skill("castTime", 0.75), @@ -4526,7 +4472,6 @@ skills["Spark"] = { spell = true, projectile = true, duration = true, - lightning = true, }, baseMods = { skill("castTime", 0.65), @@ -4600,8 +4545,6 @@ skills["VaalSparkSpiralNova"] = { spell = true, projectile = true, duration = true, - lightning = true, - vaal = true, }, baseMods = { skill("castTime", 0.65), @@ -4746,7 +4689,6 @@ skills["StormCall"] = { spell = true, area = true, duration = true, - lightning = true, }, baseMods = { skill("castTime", 0.5), @@ -4822,8 +4764,6 @@ skills["VaalStormCall"] = { spell = true, area = true, duration = true, - lightning = true, - vaal = true, }, baseMods = { skill("castTime", 0.5), @@ -4979,7 +4919,6 @@ skills["SummonLightningGolem"] = { spell = true, minion = true, golem = true, - lightning = true, }, baseMods = { skill("castTime", 1), @@ -5059,7 +4998,6 @@ skills["SummonRagingSpirit"] = { spell = true, minion = true, duration = true, - fire = true, }, baseMods = { skill("castTime", 0.5), @@ -5281,7 +5219,6 @@ skills["TempestShield"] = { spell = true, duration = true, chaining = true, - lightning = true, }, baseMods = { skill("castTime", 0.5), @@ -5357,7 +5294,6 @@ skills["FrostBoltNova"] = { spell = true, area = true, duration = true, - cold = true, }, baseMods = { skill("castTime", 0.9), @@ -5594,7 +5530,6 @@ skills["Wrath"] = { spell = true, aura = true, area = true, - lightning = true, }, baseMods = { skill("castTime", 1.2), diff --git a/Data/2_6/Skills/act_str.lua b/Data/2_6/Skills/act_str.lua index 516cc873..102bfc95 100644 --- a/Data/2_6/Skills/act_str.lua +++ b/Data/2_6/Skills/act_str.lua @@ -294,7 +294,6 @@ skills["Anger"] = { spell = true, aura = true, area = true, - fire = true, }, baseMods = { skill("castTime", 1.2), @@ -995,7 +994,6 @@ skills["FlameTotem"] = { totem = true, projectile = true, duration = true, - fire = true, }, baseMods = { skill("castTime", 0.25), @@ -1077,7 +1075,6 @@ skills["GlacialHammer"] = { baseFlags = { attack = true, melee = true, - cold = true, }, baseMods = { skill("castTime", 1), @@ -1157,8 +1154,6 @@ skills["VaalGlacialHammer"] = { melee = true, area = true, duration = true, - cold = true, - vaal = true, }, baseMods = { skill("castTime", 1), @@ -1310,7 +1305,6 @@ skills["VaalGroundSlam"] = { attack = true, melee = true, area = true, - vaal = true, }, baseMods = { skill("castTime", 1), @@ -1457,7 +1451,6 @@ skills["HeraldOfAsh"] = { baseFlags = { spell = true, area = true, - fire = true, }, baseMods = { skill("castTime", 1), @@ -1551,7 +1544,6 @@ skills["IceCrash"] = { attack = true, melee = true, area = true, - cold = true, }, baseMods = { skill("castTime", 1), @@ -1688,7 +1680,6 @@ skills["VaalImmortalCall"] = { baseFlags = { spell = true, duration = true, - vaal = true, }, baseMods = { skill("castTime", 0.85), @@ -1769,7 +1760,6 @@ skills["InfernalBlow"] = { baseFlags = { attack = true, melee = true, - fire = true, }, baseMods = { skill("castTime", 1), @@ -1852,7 +1842,6 @@ skills["LeapSlam"] = { attack = true, melee = true, area = true, - movement = true, }, baseMods = { skill("castTime", 1.4), @@ -1923,7 +1912,6 @@ skills["MoltenShell"] = { spell = true, area = true, duration = true, - fire = true, }, baseMods = { skill("castTime", 0.5), @@ -2002,8 +1990,6 @@ skills["VaalMoltenShell"] = { spell = true, area = true, duration = true, - fire = true, - vaal = true, }, baseMods = { skill("castTime", 0.5), @@ -2108,7 +2094,6 @@ skills["MoltenStrike"] = { melee = true, projectile = true, area = true, - fire = true, }, baseMods = { skill("castTime", 1), @@ -2252,7 +2237,6 @@ skills["FireResistAura"] = { spell = true, aura = true, area = true, - fire = true, }, baseMods = { skill("castTime", 1.2), @@ -2555,7 +2539,6 @@ skills["SearingBond"] = { spell = true, totem = true, duration = true, - fire = true, }, baseMods = { skill("castTime", 1), @@ -2638,7 +2621,6 @@ skills["NewShieldCharge"] = { attack = true, melee = true, area = true, - movement = true, }, baseMods = { skill("castTime", 1), @@ -2815,7 +2797,6 @@ skills["StaticStrike"] = { melee = true, area = true, duration = true, - lightning = true, }, baseMods = { skill("castTime", 1), @@ -2891,7 +2872,6 @@ skills["SummonFireGolem"] = { spell = true, minion = true, golem = true, - fire = true, }, baseMods = { skill("castTime", 1), diff --git a/Data/2_6/Skills/minion.lua b/Data/2_6/Skills/minion.lua index f690d799..170e8222 100644 --- a/Data/2_6/Skills/minion.lua +++ b/Data/2_6/Skills/minion.lua @@ -15,7 +15,6 @@ skills["ChaosElementalCascadeSummoned"] = { baseFlags = { spell = true, area = true, - cold = true, }, baseMods = { skill("castTime", 0.8), @@ -149,7 +148,6 @@ skills["FireElementalFlameRedSummoned"] = { baseFlags = { spell = true, projectile = true, - fire = true, }, baseMods = { skill("castTime", 0.25), @@ -275,7 +273,6 @@ skills["FireElementalConeSummoned"] = { baseFlags = { spell = true, area = true, - fire = true, }, baseMods = { skill("castTime", 0.935), @@ -347,7 +344,6 @@ skills["IceElementalIceCyclone"] = { attack = true, area = true, melee = true, - movement = true, }, baseMods = { skill("castTime", 1), @@ -441,7 +437,6 @@ skills["LightningGolemArcSummoned"] = { baseFlags = { spell = true, projectile = true, - lightning = true, duration = true, }, baseMods = { @@ -582,7 +577,6 @@ skills["LightningGolemWrath"] = { aura = true, area = true, duration = true, - lightning = true, }, baseMods = { skill("castTime", 0.8), @@ -759,7 +753,6 @@ skills["SpectralSkullShieldCharge"] = { baseFlags = { attack = true, melee = true, - movement = true, }, baseMods = { skill("castTime", 1), @@ -1027,7 +1020,6 @@ skills["RockGolemWhirlingBlades"] = { baseFlags = { attack = true, melee = true, - movement = true, }, baseMods = { skill("castTime", 2.6), @@ -1095,7 +1087,6 @@ skills["SpiderMinionLeapSlam"] = { attack = true, melee = true, area = true, - movement = true, }, baseMods = { skill("castTime", 1.4), diff --git a/Data/2_6/Skills/other.lua b/Data/2_6/Skills/other.lua index 7bcd4396..24de607c 100644 --- a/Data/2_6/Skills/other.lua +++ b/Data/2_6/Skills/other.lua @@ -361,7 +361,6 @@ skills["FireBurstOnHit"] = { baseFlags = { spell = true, area = true, - fire = true, }, baseMods = { skill("castTime", 1), @@ -424,7 +423,6 @@ skills["VaalAuraElementalDamageHealing"] = { aura = true, area = true, duration = true, - vaal = true, }, baseMods = { skill("castTime", 1), @@ -452,7 +450,6 @@ skills["IcestormUniqueStaff12"] = { spell = true, area = true, duration = true, - cold = true, }, baseMods = { skill("castTime", 1), @@ -493,8 +490,6 @@ skills["MerveilWarp"] = { spell = true, area = true, duration = true, - movement = true, - cold = true, }, baseMods = { skill("castTime", 0.6), @@ -521,7 +516,6 @@ skills["LightningSpell"] = { baseFlags = { spell = true, area = true, - lightning = true, }, baseMods = { skill("castTime", 1), @@ -621,7 +615,6 @@ skills["TriggeredMoltenStrike"] = { attack = true, projectile = true, area = true, - fire = true, }, baseMods = { skill("castTime", 1), @@ -689,7 +682,6 @@ skills["TriggeredShockedGround"] = { spell = true, area = true, duration = true, - lightning = true, }, baseMods = { skill("castTime", 1), diff --git a/Data/2_6/Skills/spectre.lua b/Data/2_6/Skills/spectre.lua index d07234a7..6ac1a8d5 100644 --- a/Data/2_6/Skills/spectre.lua +++ b/Data/2_6/Skills/spectre.lua @@ -20,7 +20,6 @@ skills["BanditExplosiveArrow"] = { projectile = true, area = true, duration = true, - fire = true, }, baseMods = { skill("castTime", 1), @@ -438,7 +437,6 @@ skills["ExperimenterDetonateDead"] = { baseFlags = { cast = true, area = true, - fire = true, }, baseMods = { skill("castTime", 0.8), @@ -505,7 +503,6 @@ skills["FireMonsterWhirlingBlades"] = { baseFlags = { attack = true, melee = true, - movement = true, duration = true, }, baseMods = { @@ -570,7 +567,6 @@ skills["FlamebearerFlameBlue"] = { spell = true, projectile = true, duration = true, - fire = true, }, baseMods = { skill("castTime", 0.25), @@ -700,7 +696,6 @@ skills["GoatmanFireMagmaOrb"] = { spell = true, area = true, projectile = true, - fire = true, }, baseMods = { skill("castTime", 0.7), @@ -769,7 +764,6 @@ skills["GoatmanMoltenShell"] = { spell = true, area = true, duration = true, - fire = true, }, baseMods = { skill("castTime", 0.5), @@ -835,7 +829,6 @@ skills["GuardianArc"] = { skillTypes = { [2] = true, [10] = true, [17] = true, [18] = true, [19] = true, [23] = true, [26] = true, [36] = true, [45] = true, [35] = true, }, baseFlags = { spell = true, - lightning = true, }, baseMods = { skill("castTime", 0.8), @@ -1196,7 +1189,6 @@ skills["KaomWarriorMoltenStrike"] = { baseFlags = { attack = true, melee = true, - fire = true, }, baseMods = { skill("castTime", 1), @@ -1282,7 +1274,6 @@ skills["MinerThrowFireSpectre"] = { spell = true, projectile = true, area = true, - fire = true, duration = true, }, baseMods = { @@ -1345,7 +1336,6 @@ skills["MonsterArc"] = { skillTypes = { [2] = true, [10] = true, [17] = true, [18] = true, [19] = true, [23] = true, [26] = true, [36] = true, [45] = true, [35] = true, }, baseFlags = { spell = true, - lightning = true, }, baseMods = { skill("castTime", 0.8), @@ -1551,9 +1541,6 @@ skills["MonsterDischarge"] = { baseFlags = { spell = true, area = true, - fire = true, - cold = true, - lightning = true, }, baseMods = { skill("castTime", 1), @@ -1713,7 +1700,6 @@ skills["MonsterFireball"] = { spell = true, projectile = true, area = true, - fire = true, }, baseMods = { skill("castTime", 0.85), @@ -1777,7 +1763,6 @@ skills["MonsterFireBomb"] = { trap = true, area = true, duration = true, - fire = true, }, baseMods = { skill("castTime", 1), @@ -1858,7 +1843,6 @@ skills["MonsterFlickerStrike"] = { baseFlags = { attack = true, melee = true, - movement = true, }, baseMods = { skill("castTime", 1), @@ -1889,7 +1873,6 @@ skills["MonsterFlameRedCannibal"] = { baseFlags = { spell = true, projectile = true, - fire = true, }, baseMods = { skill("castTime", 0.25), @@ -1997,7 +1980,6 @@ skills["MonsterLesserMultiFireballSpectre"] = { spell = true, projectile = true, area = true, - fire = true, }, baseMods = { skill("castTime", 0.85), @@ -2063,7 +2045,6 @@ skills["MonsterLightningArrow"] = { baseFlags = { attack = true, projectile = true, - lightning = true, }, baseMods = { skill("castTime", 1), @@ -2089,7 +2070,6 @@ skills["MonsterLightningThorns"] = { baseFlags = { spell = true, duration = true, - lightning = true, }, baseMods = { skill("castTime", 1), @@ -2151,7 +2131,6 @@ skills["MonsterMultiFireballSpectre"] = { spell = true, projectile = true, area = true, - fire = true, }, baseMods = { skill("castTime", 0.85), @@ -2308,7 +2287,6 @@ skills["MonsterRighteousFireWhileSpectred"] = { baseFlags = { spell = true, area = true, - fire = true, }, baseMods = { skill("castTime", 1), @@ -2372,7 +2350,6 @@ skills["MonsterShockNova"] = { baseFlags = { spell = true, area = true, - lightning = true, }, baseMods = { skill("castTime", 0.75), @@ -2433,7 +2410,6 @@ skills["MonsterSpark"] = { spell = true, projectile = true, duration = true, - lightning = true, }, baseMods = { skill("castTime", 0.65), @@ -2501,7 +2477,6 @@ skills["MonsterSplitFireballSpectre"] = { spell = true, projectile = true, area = true, - fire = true, }, baseMods = { skill("castTime", 0.85), @@ -2598,7 +2573,6 @@ skills["NecromancerConductivity"] = { curse = true, area = true, duration = true, - lightning = true, }, baseMods = { skill("castTime", 0.5), @@ -2706,7 +2680,6 @@ skills["NecromancerFlammability"] = { curse = true, area = true, duration = true, - fire = true, }, baseMods = { skill("castTime", 0.5), @@ -2744,7 +2717,6 @@ skills["NecromancerFrostbite"] = { curse = true, area = true, duration = true, - cold = true, }, baseMods = { skill("castTime", 0.5), @@ -2886,7 +2858,6 @@ skills["PyroChaosFireball"] = { spell = true, projectile = true, area = true, - fire = true, }, baseMods = { skill("castTime", 0.85), @@ -2955,7 +2926,6 @@ skills["PyroFireball"] = { spell = true, projectile = true, area = true, - fire = true, }, baseMods = { skill("castTime", 0.85), @@ -3144,7 +3114,6 @@ skills["SeawitchFrostbolt"] = { baseFlags = { spell = true, projectile = true, - cold = true, }, baseMods = { skill("castTime", 0.75), @@ -3396,7 +3365,6 @@ skills["SkeletonSpark"] = { spell = true, projectile = true, duration = true, - lightning = true, }, baseMods = { skill("castTime", 0.65), @@ -3645,7 +3613,6 @@ skills["UndyingWhirlingBlades"] = { baseFlags = { attack = true, melee = true, - movement = true, }, baseMods = { skill("castTime", 2.6), diff --git a/Data/3_0/Skills/act_dex.lua b/Data/3_0/Skills/act_dex.lua index 5ef01286..6842eb70 100644 --- a/Data/3_0/Skills/act_dex.lua +++ b/Data/3_0/Skills/act_dex.lua @@ -105,7 +105,6 @@ skills["ArcticArmour"] = { baseFlags = { spell = true, duration = true, - cold = true, }, baseMods = { skill("castTime", 0.5), @@ -609,7 +608,6 @@ skills["BlastRain"] = { attack = true, projectile = true, area = true, - fire = true, }, baseMods = { skill("castTime", 1), @@ -693,7 +691,6 @@ skills["BlinkArrow"] = { attack = true, projectile = true, minion = true, - movement = true, duration = true, }, baseMods = { @@ -842,7 +839,6 @@ skills["BurningArrow"] = { baseFlags = { attack = true, projectile = true, - fire = true, }, baseMods = { skill("castTime", 1), @@ -919,7 +915,6 @@ skills["VaalBurningArrow"] = { attack = true, projectile = true, area = true, - fire = true, vaal = true, }, baseMods = { @@ -1171,7 +1166,6 @@ skills["CorpseEruption"] = { baseFlags = { spell = true, projectile = true, - fire = true, area = true, }, baseMods = { @@ -1265,7 +1259,6 @@ skills["Cyclone"] = { attack = true, melee = true, area = true, - movement = true, }, baseMods = { skill("castTime", 1), @@ -1515,7 +1508,6 @@ skills["DetonateDead"] = { baseFlags = { spell = true, area = true, - fire = true, }, baseMods = { skill("castTime", 0.6), @@ -1588,7 +1580,6 @@ skills["VaalDetonateDead"] = { baseFlags = { cast = true, area = true, - fire = true, }, baseMods = { skill("castTime", 0.6), @@ -1912,9 +1903,6 @@ skills["ElementalHit"] = { attack = true, melee = true, projectile = true, - cold = true, - fire = true, - lightning = true, }, baseMods = { skill("castTime", 1), @@ -2082,7 +2070,6 @@ skills["ExplosiveArrow"] = { projectile = true, area = true, duration = true, - fire = true, }, baseMods = { skill("castTime", 1), @@ -2163,7 +2150,6 @@ skills["FireTrap"] = { trap = true, area = true, duration = true, - fire = true, }, baseMods = { skill("castTime", 1), @@ -2254,7 +2240,6 @@ skills["FlickerStrike"] = { baseFlags = { attack = true, melee = true, - movement = true, }, baseMods = { skill("castTime", 1), @@ -2328,7 +2313,6 @@ skills["FreezeMine"] = { spell = true, mine = true, area = true, - cold = true, }, baseMods = { skill("castTime", 0.5), @@ -2500,7 +2484,6 @@ skills["FrostBlades"] = { attack = true, melee = true, projectile = true, - cold = true, }, baseMods = { skill("castTime", 1), @@ -2861,7 +2844,6 @@ skills["Hatred"] = { spell = true, aura = true, area = true, - cold = true, }, baseMods = { skill("castTime", 1.2), @@ -2931,7 +2913,6 @@ skills["HeraldOfIce"] = { baseFlags = { cast = true, area = true, - cold = true, }, baseMods = { skill("castTime", 1), @@ -3025,7 +3006,6 @@ skills["IceShot"] = { projectile = true, area = true, duration = true, - cold = true, }, baseMods = { skill("castTime", 1), @@ -3099,7 +3079,6 @@ skills["IceTrap"] = { spell = true, trap = true, area = true, - cold = true, }, baseMods = { skill("castTime", 1), @@ -3263,7 +3242,6 @@ skills["LightningArrow"] = { baseFlags = { attack = true, projectile = true, - lightning = true, }, baseMods = { skill("castTime", 1), @@ -3359,7 +3337,6 @@ skills["LightningStrike"] = { attack = true, melee = true, projectile = true, - lightning = true, }, baseMods = { skill("castTime", 1), @@ -3455,7 +3432,6 @@ skills["VaalLightningStrike"] = { attack = true, melee = true, duration = true, - lightning = true, vaal = true, }, baseMods = { @@ -3534,7 +3510,6 @@ skills["MirrorArrow"] = { attack = true, projectile = true, minion = true, - movement = true, duration = true, }, baseMods = { @@ -3609,7 +3584,6 @@ skills["NewPhaseRun"] = { baseFlags = { spell = true, duration = true, - movement = true, }, baseMods = { skill("castTime", 0.5), @@ -3914,7 +3888,6 @@ skills["ColdResistAura"] = { spell = true, aura = true, area = true, - cold = true, }, baseMods = { skill("castTime", 1.2), @@ -4419,7 +4392,6 @@ skills["ShrapnelShot"] = { attack = true, projectile = true, area = true, - lightning = true, }, baseMods = { skill("castTime", 1), @@ -4575,7 +4547,6 @@ skills["SmokeMine"] = { mine = true, area = true, duration = true, - movement = true, buff = true, }, baseMods = { @@ -4964,7 +4935,6 @@ skills["SummonIceGolem"] = { spell = true, minion = true, golem = true, - cold = true, }, baseMods = { skill("castTime", 1), @@ -5345,7 +5315,6 @@ skills["VolatileDead"] = { baseFlags = { spell = true, area = true, - fire = true, }, baseMods = { skill("castTime", 0.8), @@ -5424,7 +5393,6 @@ skills["WhirlingBlades"] = { baseFlags = { attack = true, melee = true, - movement = true, }, baseMods = { skill("castTime", 2.6), @@ -5558,9 +5526,6 @@ skills["WildStrike"] = { projectile = true, chaining = true, area = true, - lightning = true, - cold = true, - fire = true, }, baseMods = { skill("castTime", 1), diff --git a/Data/3_0/Skills/act_int.lua b/Data/3_0/Skills/act_int.lua index 6e0691a4..468df958 100644 --- a/Data/3_0/Skills/act_int.lua +++ b/Data/3_0/Skills/act_int.lua @@ -25,7 +25,6 @@ skills["Arc"] = { baseFlags = { spell = true, chaining = true, - lightning = true, }, baseMods = { skill("castTime", 0.8), @@ -96,8 +95,6 @@ skills["VaalArcChain"] = { skillTypes = { [2] = true, [10] = true, [17] = true, [18] = true, [19] = true, [23] = true, [43] = true, [35] = true, }, baseFlags = { spell = true, - lightning = true, - vaal = true, }, baseMods = { skill("castTime", 0.8), @@ -170,7 +167,6 @@ skills["ArcticBreath"] = { area = true, projectile = true, duration = true, - cold = true, }, baseMods = { skill("castTime", 0.8), @@ -317,7 +313,6 @@ skills["BallLightning"] = { baseFlags = { spell = true, projectile = true, - lightning = true, }, baseMods = { skill("castTime", 0.8), @@ -491,8 +486,6 @@ skills["CorpseWarp"] = { baseFlags = { spell = true, area = true, - fire = true, - movement = true, }, baseMods = { skill("castTime", 0.8), @@ -707,7 +700,6 @@ skills["VaalClarity"] = { aura = true, area = true, duration = true, - vaal = true, }, baseMods = { skill("castTime", 0.6), @@ -775,7 +767,6 @@ skills["ColdSnap"] = { baseFlags = { spell = true, area = true, - cold = true, }, baseMods = { skill("castTime", 0.85), @@ -856,8 +847,6 @@ skills["VaalColdSnap"] = { spell = true, area = true, duration = true, - cold = true, - vaal = true, }, baseMods = { skill("castTime", 0.85), @@ -932,7 +921,6 @@ skills["Conductivity"] = { curse = true, area = true, duration = true, - lightning = true, }, baseMods = { skill("castTime", 0.5), @@ -1392,9 +1380,6 @@ skills["Discharge"] = { baseFlags = { spell = true, area = true, - lightning = true, - cold = true, - fire = true, }, baseMods = { skill("castTime", 1), @@ -1545,7 +1530,6 @@ skills["VaalDiscipline"] = { aura = true, area = true, duration = true, - vaal = true, }, baseMods = { skill("castTime", 0.6), @@ -1843,7 +1827,6 @@ skills["FireNovaMine"] = { mine = true, area = true, duration = true, - fire = true, }, baseMods = { skill("castTime", 0.4), @@ -1930,7 +1913,6 @@ skills["Fireball"] = { baseFlags = { spell = true, projectile = true, - fire = true, }, baseMods = { skill("castTime", 0.85), @@ -2013,8 +1995,6 @@ skills["VaalFireballSpiralNova"] = { baseFlags = { spell = true, projectile = true, - fire = true, - vaal = true, }, baseMods = { skill("castTime", 0.85), @@ -2088,7 +2068,6 @@ skills["Firestorm"] = { spell = true, area = true, duration = true, - fire = true, }, baseMods = { skill("castTime", 0.9), @@ -2165,8 +2144,6 @@ skills["FlameDash"] = { spell = true, area = true, duration = true, - movement = true, - fire = true, }, baseMods = { skill("castTime", 0.75), @@ -2239,7 +2216,6 @@ skills["FlameWhip"] = { baseFlags = { spell = true, area = true, - fire = true, }, baseMods = { skill("castTime", 0.5), @@ -2319,7 +2295,6 @@ skills["Flameblast"] = { baseFlags = { spell = true, area = true, - fire = true, }, baseMods = { skill("castTime", 0.2), @@ -2394,8 +2369,6 @@ skills["VaalFlameblast"] = { baseFlags = { spell = true, area = true, - fire = true, - vaal = true, }, baseMods = { skill("castTime", 1), @@ -2471,7 +2444,6 @@ skills["Flammability"] = { curse = true, area = true, duration = true, - fire = true, }, baseMods = { skill("castTime", 0.5), @@ -2617,7 +2589,6 @@ skills["FreezingPulse"] = { baseFlags = { spell = true, projectile = true, - cold = true, }, baseMods = { skill("castTime", 0.65), @@ -2690,7 +2661,6 @@ skills["FrostBomb"] = { spell = true, area = true, duration = true, - cold = true, }, baseMods = { skill("castTime", 0.5), @@ -2766,7 +2736,6 @@ skills["FrostWall"] = { baseFlags = { spell = true, duration = true, - cold = true, }, baseMods = { skill("castTime", 0.5), @@ -2841,7 +2810,6 @@ skills["Frostbite"] = { curse = true, area = true, duration = true, - cold = true, }, baseMods = { skill("castTime", 0.5), @@ -2912,7 +2880,6 @@ skills["FrostBolt"] = { baseFlags = { spell = true, projectile = true, - cold = true, }, baseMods = { skill("castTime", 0.75), @@ -2981,7 +2948,6 @@ skills["GlacialCascade"] = { baseFlags = { spell = true, area = true, - cold = true, }, baseMods = { skill("castTime", 0.8), @@ -3056,7 +3022,6 @@ skills["HeraldOfThunder"] = { baseFlags = { cast = true, duration = true, - lightning = true, }, baseMods = { skill("castTime", 1), @@ -3134,7 +3099,6 @@ skills["IceNova"] = { baseFlags = { spell = true, area = true, - cold = true, }, baseMods = { skill("castTime", 0.8), @@ -3206,8 +3170,6 @@ skills["VaalIceNova"] = { baseFlags = { spell = true, area = true, - cold = true, - vaal = true, }, baseMods = { skill("castTime", 0.8), @@ -3285,7 +3247,6 @@ skills["IceSpear"] = { baseFlags = { spell = true, projectile = true, - cold = true, }, baseMods = { skill("castTime", 0.85), @@ -3367,7 +3328,6 @@ skills["Incinerate"] = { baseFlags = { spell = true, projectile = true, - fire = true, }, baseMods = { skill("castTime", 0.2), @@ -3525,7 +3485,6 @@ skills["LightningTendrilsChannelled"] = { baseFlags = { spell = true, area = true, - lightning = true, }, baseMods = { skill("castTime", 0.23), @@ -3601,7 +3560,6 @@ skills["LightningTrap"] = { spell = true, trap = true, projectile = true, - lightning = true, }, baseMods = { skill("castTime", 1), @@ -3684,8 +3642,6 @@ skills["VaalLightningTrap"] = { trap = true, projectile = true, duration = true, - lightning = true, - vaal = true, }, baseMods = { skill("castTime", 1), @@ -3766,8 +3722,6 @@ skills["LightningWarp"] = { spell = true, area = true, duration = true, - movement = true, - lightning = true, }, baseMods = { skill("castTime", 1), @@ -3843,8 +3797,6 @@ skills["VaalLightningWarpInstant"] = { spell = true, area = true, duration = true, - lightning = true, - vaal = true, }, baseMods = { skill("castTime", 1), @@ -3919,7 +3871,6 @@ skills["MagmaOrb"] = { projectile = true, area = true, chaining = true, - fire = true, }, baseMods = { skill("castTime", 0.7), @@ -3993,7 +3944,6 @@ skills["OrbOfStorms"] = { spell = true, chaining = true, duration = true, - lightning = true, }, baseMods = { skill("castTime", 0.5), @@ -4139,7 +4089,6 @@ skills["VaalPowerSiphon"] = { baseFlags = { attack = true, projectile = true, - vaal = true, }, baseMods = { skill("castTime", 1), @@ -4506,7 +4455,6 @@ skills["RighteousFire"] = { baseFlags = { spell = true, area = true, - fire = true, }, baseMods = { skill("castTime", 1), @@ -4582,8 +4530,6 @@ skills["VaalRighteousFire"] = { baseFlags = { spell = true, area = true, - fire = true, - vaal = true, }, baseMods = { skill("castTime", 1), @@ -4662,7 +4608,6 @@ skills["FireBeam"] = { baseFlags = { spell = true, duration = true, - fire = true, }, baseMods = { skill("castTime", 0.5), @@ -4746,7 +4691,6 @@ skills["ShockNova"] = { baseFlags = { spell = true, area = true, - lightning = true, }, baseMods = { skill("castTime", 0.75), @@ -4821,7 +4765,6 @@ skills["Spark"] = { spell = true, projectile = true, duration = true, - lightning = true, }, baseMods = { skill("castTime", 0.65), @@ -4895,8 +4838,6 @@ skills["VaalSparkSpiralNova"] = { spell = true, projectile = true, duration = true, - lightning = true, - vaal = true, }, baseMods = { skill("castTime", 0.65), @@ -5125,7 +5066,6 @@ skills["StormCall"] = { spell = true, area = true, duration = true, - lightning = true, }, baseMods = { skill("castTime", 0.5), @@ -5202,8 +5142,6 @@ skills["VaalStormCall"] = { spell = true, area = true, duration = true, - lightning = true, - vaal = true, }, baseMods = { skill("castTime", 0.5), @@ -5359,7 +5297,6 @@ skills["SummonLightningGolem"] = { spell = true, minion = true, golem = true, - lightning = true, }, baseMods = { skill("castTime", 1), @@ -5439,7 +5376,6 @@ skills["SummonRagingSpirit"] = { spell = true, minion = true, duration = true, - fire = true, }, baseMods = { skill("castTime", 0.5), @@ -5662,7 +5598,6 @@ skills["TempestShield"] = { spell = true, duration = true, chaining = true, - lightning = true, }, baseMods = { skill("castTime", 0.5), @@ -5738,7 +5673,6 @@ skills["FrostBoltNova"] = { spell = true, area = true, duration = true, - cold = true, }, baseMods = { skill("castTime", 0.9), @@ -5904,7 +5838,6 @@ skills["Wrath"] = { spell = true, aura = true, area = true, - lightning = true, }, baseMods = { skill("castTime", 1.2), diff --git a/Data/3_0/Skills/act_str.lua b/Data/3_0/Skills/act_str.lua index 5e453f88..342c9694 100644 --- a/Data/3_0/Skills/act_str.lua +++ b/Data/3_0/Skills/act_str.lua @@ -296,7 +296,6 @@ skills["Anger"] = { spell = true, aura = true, area = true, - fire = true, }, baseMods = { skill("castTime", 1.2), @@ -1000,7 +999,6 @@ skills["FlameTotem"] = { totem = true, projectile = true, duration = true, - fire = true, }, baseMods = { skill("castTime", 0.25), @@ -1082,7 +1080,6 @@ skills["GlacialHammer"] = { baseFlags = { attack = true, melee = true, - cold = true, }, baseMods = { skill("castTime", 1), @@ -1164,8 +1161,6 @@ skills["VaalGlacialHammer"] = { melee = true, area = true, duration = true, - cold = true, - vaal = true, }, baseMods = { skill("castTime", 1), @@ -1319,7 +1314,6 @@ skills["VaalGroundSlam"] = { attack = true, melee = true, area = true, - vaal = true, }, baseMods = { skill("castTime", 1), @@ -1470,7 +1464,6 @@ skills["HeraldOfAsh"] = { baseFlags = { spell = true, area = true, - fire = true, }, baseMods = { skill("castTime", 1), @@ -1567,7 +1560,6 @@ skills["IceCrash"] = { attack = true, melee = true, area = true, - cold = true, }, baseMods = { skill("castTime", 1), @@ -1705,7 +1697,6 @@ skills["VaalImmortalCall"] = { baseFlags = { spell = true, duration = true, - vaal = true, }, baseMods = { skill("castTime", 0.85), @@ -1786,7 +1777,6 @@ skills["InfernalBlow"] = { baseFlags = { attack = true, melee = true, - fire = true, }, baseMods = { skill("castTime", 1), @@ -1870,7 +1860,6 @@ skills["LeapSlam"] = { attack = true, melee = true, area = true, - movement = true, }, baseMods = { skill("castTime", 1.4), @@ -1942,7 +1931,6 @@ skills["MoltenShell"] = { spell = true, area = true, duration = true, - fire = true, }, baseMods = { skill("castTime", 0.5), @@ -2021,8 +2009,6 @@ skills["VaalMoltenShell"] = { spell = true, area = true, duration = true, - fire = true, - vaal = true, }, baseMods = { skill("castTime", 0.5), @@ -2127,7 +2113,6 @@ skills["MoltenStrike"] = { melee = true, projectile = true, area = true, - fire = true, }, baseMods = { skill("castTime", 1), @@ -2273,7 +2258,6 @@ skills["FireResistAura"] = { spell = true, aura = true, area = true, - fire = true, }, baseMods = { skill("castTime", 1.2), @@ -2577,7 +2561,6 @@ skills["SearingBond"] = { spell = true, totem = true, duration = true, - fire = true, }, baseMods = { skill("castTime", 1), @@ -2660,7 +2643,6 @@ skills["NewShieldCharge"] = { attack = true, melee = true, area = true, - movement = true, }, baseMods = { skill("castTime", 1), @@ -2838,7 +2820,6 @@ skills["StaticStrike"] = { melee = true, area = true, duration = true, - lightning = true, }, baseMods = { skill("castTime", 1), @@ -2917,7 +2898,6 @@ skills["SummonFireGolem"] = { spell = true, minion = true, golem = true, - fire = true, }, baseMods = { skill("castTime", 1), diff --git a/Data/3_0/Skills/minion.lua b/Data/3_0/Skills/minion.lua index f690d799..170e8222 100644 --- a/Data/3_0/Skills/minion.lua +++ b/Data/3_0/Skills/minion.lua @@ -15,7 +15,6 @@ skills["ChaosElementalCascadeSummoned"] = { baseFlags = { spell = true, area = true, - cold = true, }, baseMods = { skill("castTime", 0.8), @@ -149,7 +148,6 @@ skills["FireElementalFlameRedSummoned"] = { baseFlags = { spell = true, projectile = true, - fire = true, }, baseMods = { skill("castTime", 0.25), @@ -275,7 +273,6 @@ skills["FireElementalConeSummoned"] = { baseFlags = { spell = true, area = true, - fire = true, }, baseMods = { skill("castTime", 0.935), @@ -347,7 +344,6 @@ skills["IceElementalIceCyclone"] = { attack = true, area = true, melee = true, - movement = true, }, baseMods = { skill("castTime", 1), @@ -441,7 +437,6 @@ skills["LightningGolemArcSummoned"] = { baseFlags = { spell = true, projectile = true, - lightning = true, duration = true, }, baseMods = { @@ -582,7 +577,6 @@ skills["LightningGolemWrath"] = { aura = true, area = true, duration = true, - lightning = true, }, baseMods = { skill("castTime", 0.8), @@ -759,7 +753,6 @@ skills["SpectralSkullShieldCharge"] = { baseFlags = { attack = true, melee = true, - movement = true, }, baseMods = { skill("castTime", 1), @@ -1027,7 +1020,6 @@ skills["RockGolemWhirlingBlades"] = { baseFlags = { attack = true, melee = true, - movement = true, }, baseMods = { skill("castTime", 2.6), @@ -1095,7 +1087,6 @@ skills["SpiderMinionLeapSlam"] = { attack = true, melee = true, area = true, - movement = true, }, baseMods = { skill("castTime", 1.4), diff --git a/Data/3_0/Skills/other.lua b/Data/3_0/Skills/other.lua index c41e42c7..e743840d 100644 --- a/Data/3_0/Skills/other.lua +++ b/Data/3_0/Skills/other.lua @@ -281,7 +281,7 @@ skills["CatAspect"] = { --"avoid_damage_%" = 15 --"enemy_aggro_radius_+%" = -50 mod("Speed", "INC", 10, ModFlag.Attack, 0, { type = "GlobalEffect", effectType = "Buff", effectName = "Cat's Agility", effectCond = "CatsAgilityActive" }), --"attack_speed_+%" = 10 - mod("Speed", "INC", 10, ModFlag.Cast, 0, { type = "GlobalEffect", effectType = "Buff", effectName = "Cat's Agility", effectCond = "CatsAgilityActive" }), --"base_cast_speed_+%" = 10 + mod("Speed", "INC", 10, ModFlag.Cast, 0, { type = "GlobalEffect", effectType = "Buff", effectName = "Cat's Agility", effectCond = "CatsAgilityActive" }), --"cast_speed_+%_granted_from_skill" = 10 skill("duration", 4), --"base_skill_effect_duration" = 4000 skill("durationSecondary", 6), --"base_secondary_skill_effect_duration" = 6000 }, @@ -788,7 +788,6 @@ skills["FireBurstOnHit"] = { baseFlags = { spell = true, area = true, - fire = true, }, baseMods = { skill("castTime", 1), @@ -851,7 +850,6 @@ skills["VaalAuraElementalDamageHealing"] = { aura = true, area = true, duration = true, - vaal = true, }, baseMods = { skill("castTime", 1), @@ -879,7 +877,6 @@ skills["IcestormUniqueStaff12"] = { spell = true, area = true, duration = true, - cold = true, }, baseMods = { skill("castTime", 1), @@ -953,8 +950,6 @@ skills["MerveilWarp"] = { spell = true, area = true, duration = true, - movement = true, - cold = true, }, baseMods = { skill("castTime", 0.6), @@ -981,7 +976,6 @@ skills["LightningSpell"] = { baseFlags = { spell = true, area = true, - lightning = true, }, baseMods = { skill("castTime", 1), @@ -1035,8 +1029,8 @@ skills["UniqueAnimateWeapon"] = { name = "Manifest Dancing Dervish", hidden = true, color = 4, - description = "Releases Dancing Dervish to fight by your side. While Dancing Dervish is manifested, you have Onslaught and cannot use Weapons.", - skillTypes = { [2] = true, [9] = true, [21] = true, [36] = true, [61] = true, }, + description = "Manifests Dancing Dervish to fight by your side. While Dancing Dervish is manifested, you have Onslaught and cannot use Weapons. Cannot be supported by supports that would create other minions.", + skillTypes = { [2] = true, [9] = true, [21] = true, [36] = true, [61] = true, [72] = true, }, minionSkillTypes = { [1] = true, [24] = true, [25] = true, [11] = true, [38] = true, [28] = true, }, fromItem = true, minionList = { @@ -1082,7 +1076,6 @@ skills["TriggeredMoltenStrike"] = { attack = true, projectile = true, area = true, - fire = true, }, baseMods = { skill("castTime", 1), @@ -1178,7 +1171,6 @@ skills["TriggeredShockedGround"] = { spell = true, area = true, duration = true, - lightning = true, }, baseMods = { skill("castTime", 1), diff --git a/Data/3_0/Skills/spectre.lua b/Data/3_0/Skills/spectre.lua index d07234a7..6ac1a8d5 100644 --- a/Data/3_0/Skills/spectre.lua +++ b/Data/3_0/Skills/spectre.lua @@ -20,7 +20,6 @@ skills["BanditExplosiveArrow"] = { projectile = true, area = true, duration = true, - fire = true, }, baseMods = { skill("castTime", 1), @@ -438,7 +437,6 @@ skills["ExperimenterDetonateDead"] = { baseFlags = { cast = true, area = true, - fire = true, }, baseMods = { skill("castTime", 0.8), @@ -505,7 +503,6 @@ skills["FireMonsterWhirlingBlades"] = { baseFlags = { attack = true, melee = true, - movement = true, duration = true, }, baseMods = { @@ -570,7 +567,6 @@ skills["FlamebearerFlameBlue"] = { spell = true, projectile = true, duration = true, - fire = true, }, baseMods = { skill("castTime", 0.25), @@ -700,7 +696,6 @@ skills["GoatmanFireMagmaOrb"] = { spell = true, area = true, projectile = true, - fire = true, }, baseMods = { skill("castTime", 0.7), @@ -769,7 +764,6 @@ skills["GoatmanMoltenShell"] = { spell = true, area = true, duration = true, - fire = true, }, baseMods = { skill("castTime", 0.5), @@ -835,7 +829,6 @@ skills["GuardianArc"] = { skillTypes = { [2] = true, [10] = true, [17] = true, [18] = true, [19] = true, [23] = true, [26] = true, [36] = true, [45] = true, [35] = true, }, baseFlags = { spell = true, - lightning = true, }, baseMods = { skill("castTime", 0.8), @@ -1196,7 +1189,6 @@ skills["KaomWarriorMoltenStrike"] = { baseFlags = { attack = true, melee = true, - fire = true, }, baseMods = { skill("castTime", 1), @@ -1282,7 +1274,6 @@ skills["MinerThrowFireSpectre"] = { spell = true, projectile = true, area = true, - fire = true, duration = true, }, baseMods = { @@ -1345,7 +1336,6 @@ skills["MonsterArc"] = { skillTypes = { [2] = true, [10] = true, [17] = true, [18] = true, [19] = true, [23] = true, [26] = true, [36] = true, [45] = true, [35] = true, }, baseFlags = { spell = true, - lightning = true, }, baseMods = { skill("castTime", 0.8), @@ -1551,9 +1541,6 @@ skills["MonsterDischarge"] = { baseFlags = { spell = true, area = true, - fire = true, - cold = true, - lightning = true, }, baseMods = { skill("castTime", 1), @@ -1713,7 +1700,6 @@ skills["MonsterFireball"] = { spell = true, projectile = true, area = true, - fire = true, }, baseMods = { skill("castTime", 0.85), @@ -1777,7 +1763,6 @@ skills["MonsterFireBomb"] = { trap = true, area = true, duration = true, - fire = true, }, baseMods = { skill("castTime", 1), @@ -1858,7 +1843,6 @@ skills["MonsterFlickerStrike"] = { baseFlags = { attack = true, melee = true, - movement = true, }, baseMods = { skill("castTime", 1), @@ -1889,7 +1873,6 @@ skills["MonsterFlameRedCannibal"] = { baseFlags = { spell = true, projectile = true, - fire = true, }, baseMods = { skill("castTime", 0.25), @@ -1997,7 +1980,6 @@ skills["MonsterLesserMultiFireballSpectre"] = { spell = true, projectile = true, area = true, - fire = true, }, baseMods = { skill("castTime", 0.85), @@ -2063,7 +2045,6 @@ skills["MonsterLightningArrow"] = { baseFlags = { attack = true, projectile = true, - lightning = true, }, baseMods = { skill("castTime", 1), @@ -2089,7 +2070,6 @@ skills["MonsterLightningThorns"] = { baseFlags = { spell = true, duration = true, - lightning = true, }, baseMods = { skill("castTime", 1), @@ -2151,7 +2131,6 @@ skills["MonsterMultiFireballSpectre"] = { spell = true, projectile = true, area = true, - fire = true, }, baseMods = { skill("castTime", 0.85), @@ -2308,7 +2287,6 @@ skills["MonsterRighteousFireWhileSpectred"] = { baseFlags = { spell = true, area = true, - fire = true, }, baseMods = { skill("castTime", 1), @@ -2372,7 +2350,6 @@ skills["MonsterShockNova"] = { baseFlags = { spell = true, area = true, - lightning = true, }, baseMods = { skill("castTime", 0.75), @@ -2433,7 +2410,6 @@ skills["MonsterSpark"] = { spell = true, projectile = true, duration = true, - lightning = true, }, baseMods = { skill("castTime", 0.65), @@ -2501,7 +2477,6 @@ skills["MonsterSplitFireballSpectre"] = { spell = true, projectile = true, area = true, - fire = true, }, baseMods = { skill("castTime", 0.85), @@ -2598,7 +2573,6 @@ skills["NecromancerConductivity"] = { curse = true, area = true, duration = true, - lightning = true, }, baseMods = { skill("castTime", 0.5), @@ -2706,7 +2680,6 @@ skills["NecromancerFlammability"] = { curse = true, area = true, duration = true, - fire = true, }, baseMods = { skill("castTime", 0.5), @@ -2744,7 +2717,6 @@ skills["NecromancerFrostbite"] = { curse = true, area = true, duration = true, - cold = true, }, baseMods = { skill("castTime", 0.5), @@ -2886,7 +2858,6 @@ skills["PyroChaosFireball"] = { spell = true, projectile = true, area = true, - fire = true, }, baseMods = { skill("castTime", 0.85), @@ -2955,7 +2926,6 @@ skills["PyroFireball"] = { spell = true, projectile = true, area = true, - fire = true, }, baseMods = { skill("castTime", 0.85), @@ -3144,7 +3114,6 @@ skills["SeawitchFrostbolt"] = { baseFlags = { spell = true, projectile = true, - cold = true, }, baseMods = { skill("castTime", 0.75), @@ -3396,7 +3365,6 @@ skills["SkeletonSpark"] = { spell = true, projectile = true, duration = true, - lightning = true, }, baseMods = { skill("castTime", 0.65), @@ -3645,7 +3613,6 @@ skills["UndyingWhirlingBlades"] = { baseFlags = { attack = true, melee = true, - movement = true, }, baseMods = { skill("castTime", 2.6), diff --git a/Data/3_0/Skills/sup_int.lua b/Data/3_0/Skills/sup_int.lua index d1166cd1..cd4f7ec5 100644 --- a/Data/3_0/Skills/sup_int.lua +++ b/Data/3_0/Skills/sup_int.lua @@ -2168,7 +2168,7 @@ skills["SupportSummonGhostOnKill"] = { support = true, requireSkillTypes = { 1, 10, 9, }, addSkillTypes = { 9, 21, }, - excludeSkillTypes = { }, + excludeSkillTypes = { 72, }, addFlags = { minion = true, }, diff --git a/Data/Global.lua b/Data/Global.lua index 42f32694..f5a6b4c4 100644 --- a/Data/Global.lua +++ b/Data/Global.lua @@ -172,4 +172,5 @@ SkillType = { SkillCanMirageArcher = 69, -- Skill can be supported by Mirage Archer Type70 = 70, -- Excludes Volley from Vaal Fireball and Vaal Spark Type71 = 71, -- Excludes Volley from Spectral Shield Throw + Type72 = 72, -- Excludes Summon Phantasm on Kill from Manifest Dancing Dervish } diff --git a/Data/Uniques/jewel.lua b/Data/Uniques/jewel.lua index 60366140..fcf9dc32 100644 --- a/Data/Uniques/jewel.lua +++ b/Data/Uniques/jewel.lua @@ -310,6 +310,7 @@ Radius: Large ]],[[ Pure Talent Viridian Jewel +Limited to: 1 Implicits: 0 While your Passive Skill Tree connects to a class' Starting location, you gain: Marauder: Melee Skills have 15% increased Area of Effect diff --git a/Export/Skills/act_dex.txt b/Export/Skills/act_dex.txt index b9b190e1..498d00c3 100644 --- a/Export/Skills/act_dex.txt +++ b/Export/Skills/act_dex.txt @@ -22,7 +22,7 @@ local skills, mod, flag, skill = ... #mods #skill ArcticArmour -#flags spell duration cold +#flags spell duration #mods #skill Barrage @@ -97,7 +97,7 @@ local skills, mod, flag, skill = ... #mods #skill BlastRain -#flags attack projectile area fire +#flags attack projectile area parts = { { name = "1 explosion", @@ -111,7 +111,7 @@ local skills, mod, flag, skill = ... #mods #skill BlinkArrow -#flags attack projectile minion movement duration +#flags attack projectile minion duration minionList = { "Clone", }, @@ -124,11 +124,11 @@ local skills, mod, flag, skill = ... #mods #skill BurningArrow -#flags attack projectile fire +#flags attack projectile #mods #skill VaalBurningArrow -#flags attack projectile area fire vaal +#flags attack projectile area vaal #mods #skill PoisonArrow @@ -143,7 +143,7 @@ local skills, mod, flag, skill = ... #mods #skill CorpseEruption -#flags spell projectile fire area +#flags spell projectile area #baseMod skill("explodeCorpse", true, { type = "SkillPart", skillPart = 2 }) parts = { { @@ -160,7 +160,7 @@ local skills, mod, flag, skill = ... #mods #skill Cyclone -#flags attack melee area movement +#flags attack melee area #baseMod skill("dpsMultiplier", 2) #baseMod skill("radiusIsWeaponRange", true) #mods @@ -175,7 +175,7 @@ local skills, mod, flag, skill = ... #mods #skill DetonateDead -#flags spell area fire +#flags spell area #baseMod skill("radius", 22) #baseMod skill("explodeCorpse", true, { type = "SkillPart", skillPart = 2 }) parts = { @@ -193,7 +193,7 @@ local skills, mod, flag, skill = ... #mods #skill VaalDetonateDead -#flags cast area fire +#flags cast area #baseMod skill("explodeCorpse", true) #mods @@ -211,7 +211,7 @@ local skills, mod, flag, skill = ... #mods #skill ElementalHit -#flags attack melee projectile cold fire lightning +#flags attack melee projectile parts = { { name = "Added fire", @@ -230,7 +230,7 @@ local skills, mod, flag, skill = ... #mods #skill ExplosiveArrow -#flags attack projectile area duration fire +#flags attack projectile area duration parts = { { name = "Explosion (1 fuse)", @@ -259,18 +259,18 @@ local skills, mod, flag, skill = ... #mods #skill FireTrap -#flags spell trap area duration fire +#flags spell trap area duration #baseMod skill("dotIsArea", true) #baseMod skill("radius", 15) #mods #skill FlickerStrike -#flags attack melee movement +#flags attack melee #setMod base_skill_show_average_damage_instead_of_dps==nil #mods #skill FreezeMine -#flags spell mine area cold +#flags spell mine area #mods #skill Frenzy @@ -278,7 +278,7 @@ local skills, mod, flag, skill = ... #mods #skill FrostBlades -#flags attack melee projectile cold +#flags attack melee projectile parts = { { name = "Melee hit", @@ -314,16 +314,16 @@ local skills, mod, flag, skill = ... #mods #skill Hatred -#flags spell aura area cold +#flags spell aura area #baseMod skill("radius", 36) #mods #skill HeraldOfIce -#flags cast area cold +#flags cast area #mods #skill IceShot -#flags attack projectile area duration cold +#flags attack projectile area duration parts = { { name = "Arrow", @@ -339,7 +339,7 @@ local skills, mod, flag, skill = ... #mods #skill IceTrap -#flags spell trap area cold +#flags spell trap area #mods #skill DoubleSlash @@ -357,11 +357,11 @@ local skills, mod, flag, skill = ... #mods #skill LightningArrow -#flags attack projectile lightning +#flags attack projectile #mods #skill LightningStrike -#flags attack melee projectile lightning +#flags attack melee projectile parts = { { name = "Melee hit", @@ -378,7 +378,7 @@ local skills, mod, flag, skill = ... #mods #skill VaalLightningStrike -#flags attack melee duration lightning vaal +#flags attack melee duration vaal parts = { { name = "Strike", @@ -390,7 +390,7 @@ local skills, mod, flag, skill = ... #mods #skill MirrorArrow -#flags attack projectile minion movement duration +#flags attack projectile minion duration minionList = { "Clone", }, @@ -398,7 +398,7 @@ local skills, mod, flag, skill = ... #mods #skill NewPhaseRun -#flags spell duration movement +#flags spell duration #mods #skill PoachersMark @@ -419,7 +419,7 @@ local skills, mod, flag, skill = ... #mods #skill ColdResistAura -#flags spell aura area cold +#flags spell aura area #baseMod skill("radius", 36) #mods @@ -473,7 +473,7 @@ local skills, mod, flag, skill = ... #mods #skill ShrapnelShot -#flags attack projectile area lightning +#flags attack projectile area parts = { { name = "Arrow", @@ -491,7 +491,7 @@ local skills, mod, flag, skill = ... #mods #skill SmokeMine -#flags spell mine area duration movement buff +#flags spell mine area duration buff #global Buff #mods @@ -521,7 +521,7 @@ local skills, mod, flag, skill = ... #mods #skill SummonIceGolem -#flags spell minion golem cold +#flags spell minion golem #baseMod skill("allowTotemBuff", true) #baseMod flag("Condition:HaveColdGolem", { type = "GlobalEffect", effectType = "Buff" }) minionList = { @@ -549,7 +549,7 @@ local skills, mod, flag, skill = ... #mods #skill VolatileDead -#flags spell area fire +#flags spell area #baseMod skill("explodeCorpse", true, { type = "SkillPart", skillPart = 2 }) parts = { { @@ -566,11 +566,11 @@ local skills, mod, flag, skill = ... #mods #skill WhirlingBlades -#flags attack melee movement +#flags attack melee #mods #skill WildStrike -#flags attack melee projectile chaining area lightning cold fire +#flags attack melee projectile chaining area parts = { { name = "Fire hit", diff --git a/Export/Skills/act_int.txt b/Export/Skills/act_int.txt index 6043d657..1e229584 100644 --- a/Export/Skills/act_int.txt +++ b/Export/Skills/act_int.txt @@ -6,15 +6,15 @@ local skills, mod, flag, skill = ... #skill Arc -#flags spell chaining lightning +#flags spell chaining #mods #skill VaalArcChain -#flags spell lightning vaal +#flags spell #mods #skill ArcticBreath -#flags spell area projectile duration cold +#flags spell area projectile duration #baseMod skill("radius", 12) #mods @@ -25,7 +25,7 @@ local skills, mod, flag, skill = ... #mods #skill BallLightning -#flags spell projectile lightning +#flags spell projectile #baseMod skill("radius", 20) #mods @@ -37,7 +37,7 @@ local skills, mod, flag, skill = ... #mods #skill CorpseWarp -#flags spell area fire movement +#flags spell area #baseMod skill("explodeCorpse", true, { type = "SkillPart", skillPart = 2 }) #setMod spell_minimum_base_fire_damage==skill("FireMin", nil, { type = "SkillPart", skillPart = 1 }) #setMod spell_maximum_base_fire_damage==skill("FireMax", nil, { type = "SkillPart", skillPart = 1 }) @@ -79,22 +79,22 @@ local skills, mod, flag, skill = ... #mods #skill VaalClarity -#flags spell aura area duration vaal +#flags spell aura area duration #baseMod skill("radius", 36) #mods #skill ColdSnap -#flags spell area cold +#flags spell area #baseMod skill("showAverage", false) #baseMod skill("radius", 16) #mods #skill VaalColdSnap -#flags spell area duration cold vaal +#flags spell area duration #mods #skill Conductivity -#flags spell curse area duration lightning +#flags spell curse area duration #baseMod skill("debuff", true) #baseMod skill("radius", 22) #mods @@ -150,7 +150,7 @@ local skills, mod, flag, skill = ... #mods #skill Discharge -#flags spell area lightning cold fire +#flags spell area #baseMod skill("radius", 30) #mods @@ -160,7 +160,7 @@ local skills, mod, flag, skill = ... #mods #skill VaalDiscipline -#flags spell aura area duration vaal +#flags spell aura area duration #baseMod skill("radius", 36) #mods @@ -183,12 +183,12 @@ local skills, mod, flag, skill = ... #mods #skill FireNovaMine -#flags spell mine area duration fire +#flags spell mine area duration #baseMod skill("radius", 30) #mods #skill Fireball -#flags spell projectile fire +#flags spell projectile parts = { { name = "Projectile", @@ -203,7 +203,7 @@ local skills, mod, flag, skill = ... #mods #skill VaalFireballSpiralNova -#flags spell projectile fire vaal +#flags spell projectile parts = { { name = "Projectile", @@ -217,23 +217,23 @@ local skills, mod, flag, skill = ... #mods #skill Firestorm -#flags spell area duration fire +#flags spell area duration #baseMod skill("radius", 25) #baseMod skill("radiusSecondary", 10) #mods #skill FlameDash -#flags spell area duration movement fire +#flags spell area duration #baseMod skill("dotIsArea", true) #mods #skill FlameWhip -#flags spell area fire +#flags spell area #baseMod skill("radius", 30) #mods #skill Flameblast -#flags spell area fire +#flags spell area parts = { { name = "1 Stage", @@ -248,12 +248,12 @@ local skills, mod, flag, skill = ... #mods #skill VaalFlameblast -#flags spell area fire vaal +#flags spell area #baseMod mod("Multiplier:FlameblastStage", "BASE", 9) #mods #skill Flammability -#flags spell curse area duration fire +#flags spell curse area duration #baseMod skill("debuff", true) #baseMod skill("radius", 22) #mods @@ -265,7 +265,7 @@ local skills, mod, flag, skill = ... #mods #skill FreezingPulse -#flags spell projectile cold +#flags spell projectile setupFunc = function(env, output) env.modDB:NewMod("Damage", "MORE", -100, "Skill:FreezingPulse", { type = "DistanceRamp", ramp = {{0,0},{60*output.ProjectileSpeedMod,1}} }) env.modDB:NewMod("EnemyFreezeChance", "BASE", 25, "Skill:FreezingPulse", { type = "DistanceRamp", ramp = {{0,1},{15*output.ProjectileSpeedMod,0}} }) @@ -273,46 +273,46 @@ local skills, mod, flag, skill = ... #mods #skill FrostBomb -#flags spell area duration cold +#flags spell area duration #baseMod skill("debuffSecondary", true) #global Debuff #mods #skill FrostWall -#flags spell duration cold +#flags spell duration #mods #skill Frostbite -#flags spell curse area duration cold +#flags spell curse area duration #baseMod skill("debuff", true) #baseMod skill("radius", 22) #mods #skill FrostBolt -#flags spell projectile cold +#flags spell projectile #mods #skill GlacialCascade -#flags spell area cold +#flags spell area #baseMod skill("radius", 12) #mods #skill HeraldOfThunder -#flags cast duration lightning +#flags cast duration #baseMod skill("radius", 32) #mods #skill IceNova -#flags spell area cold +#flags spell area #baseMod skill("radius", 30) #mods #skill VaalIceNova -#flags spell area cold vaal +#flags spell area #mods #skill IceSpear -#flags spell projectile cold +#flags spell projectile parts = { { name = "First Form", @@ -325,7 +325,7 @@ local skills, mod, flag, skill = ... #mods #skill Incinerate -#flags spell projectile fire +#flags spell projectile parts = { { name = "Base damage", @@ -353,33 +353,33 @@ local skills, mod, flag, skill = ... #mods #skill LightningTendrilsChannelled -#flags spell area lightning +#flags spell area #baseMod skill("radius", 22) #mods #skill LightningTrap -#flags spell trap projectile lightning +#flags spell trap projectile #mods #skill VaalLightningTrap -#flags spell trap projectile duration lightning vaal +#flags spell trap projectile duration #mods #skill LightningWarp -#flags spell area duration movement lightning +#flags spell area duration #baseMod skill("radius", 16) #mods #skill VaalLightningWarpInstant -#flags spell area duration lightning vaal +#flags spell area duration #mods #skill MagmaOrb -#flags spell projectile area chaining fire +#flags spell projectile area chaining #mods #skill OrbOfStorms -#flags spell chaining duration lightning +#flags spell chaining duration #mods #skill PowerSiphon @@ -387,7 +387,7 @@ local skills, mod, flag, skill = ... #mods #skill VaalPowerSiphon -#flags attack projectile vaal +#flags attack projectile #mods #skill Purity @@ -415,7 +415,7 @@ local skills, mod, flag, skill = ... #mods #skill RighteousFire -#flags spell area fire +#flags spell area setupFunc = function(actor, output) if actor.mainSkill.skillFlags.totem then actor.mainSkill.skillData.FireDot = output.TotemLife * 0.4 @@ -428,7 +428,7 @@ local skills, mod, flag, skill = ... #mods #skill VaalRighteousFire -#flags spell area fire vaal +#flags spell area setupFunc = function(actor, output) actor.mainSkill.skillData.FireMin = output.EnergyShield + output.Life - 1 actor.mainSkill.skillData.FireMax = output.EnergyShield + output.Life - 1 @@ -436,7 +436,7 @@ local skills, mod, flag, skill = ... #mods #skill FireBeam -#flags spell duration fire +#flags spell duration parts = { { name = "1 Stage", @@ -457,7 +457,7 @@ local skills, mod, flag, skill = ... #mods #skill ShockNova -#flags spell area lightning +#flags spell area parts = { { name = "Ring", @@ -470,11 +470,11 @@ local skills, mod, flag, skill = ... #mods #skill Spark -#flags spell projectile duration lightning +#flags spell projectile duration #mods #skill VaalSparkSpiralNova -#flags spell projectile duration lightning vaal +#flags spell projectile duration #mods #skill SpiritOffering @@ -499,12 +499,12 @@ local skills, mod, flag, skill = ... #mods #skill StormCall -#flags spell area duration lightning +#flags spell area duration #baseMod skill("radius", 20) #mods #skill VaalStormCall -#flags spell area duration lightning vaal +#flags spell area duration #mods #skill SummonChaosGolem @@ -517,7 +517,7 @@ local skills, mod, flag, skill = ... #mods #skill SummonLightningGolem -#flags spell minion golem lightning +#flags spell minion golem #baseMod skill("allowTotemBuff", true) #baseMod flag("Condition:HaveLightningGolem", { type = "GlobalEffect", effectType = "Buff" }) minionList = { @@ -526,7 +526,7 @@ local skills, mod, flag, skill = ... #mods #skill SummonRagingSpirit -#flags spell minion duration fire +#flags spell minion duration minionList = { "SummonedRagingSpirit", }, @@ -552,12 +552,12 @@ local skills, mod, flag, skill = ... #mods #skill TempestShield -#flags spell duration chaining lightning +#flags spell duration chaining #setMod shield_block_%==mod("BlockChance", "BASE", {val}, 0, 0, { type = "GlobalEffect", effectType = "Buff" }) #mods #skill FrostBoltNova -#flags spell area duration cold +#flags spell area duration #baseMod skill("dotIsArea", true) #mods @@ -588,6 +588,6 @@ local skills, mod, flag, skill = ... #mods #skill Wrath -#flags spell aura area lightning +#flags spell aura area #baseMod skill("radius", 36) #mods \ No newline at end of file diff --git a/Export/Skills/act_str.txt b/Export/Skills/act_str.txt index 9b0ba5c3..3788e62d 100644 --- a/Export/Skills/act_str.txt +++ b/Export/Skills/act_str.txt @@ -22,7 +22,7 @@ local skills, mod, flag, skill = ... #mods #skill Anger -#flags spell aura area fire +#flags spell aura area #baseMod skill("radius", 36) #mods @@ -91,15 +91,15 @@ local skills, mod, flag, skill = ... #mods #skill FlameTotem -#flags spell totem projectile duration fire +#flags spell totem projectile duration #mods #skill GlacialHammer -#flags attack melee cold +#flags attack melee #mods #skill VaalGlacialHammer -#flags attack melee area duration cold vaal +#flags attack melee area duration #mods #skill GroundSlam @@ -108,7 +108,7 @@ local skills, mod, flag, skill = ... #mods #skill VaalGroundSlam -#flags attack melee area vaal +#flags attack melee area #mods #skill HeavyStrike @@ -116,12 +116,12 @@ local skills, mod, flag, skill = ... #mods #skill HeraldOfAsh -#flags spell area fire +#flags spell area #baseMod skill("radius", 10) #mods #skill IceCrash -#flags attack melee area cold +#flags attack melee area parts = { { name = "First Hit", @@ -141,30 +141,30 @@ local skills, mod, flag, skill = ... #mods #skill VaalImmortalCall -#flags spell duration vaal +#flags spell duration #mods #skill InfernalBlow -#flags attack melee fire +#flags attack melee #baseMod skill("radius", 15) #mods #skill LeapSlam -#flags attack melee area movement +#flags attack melee area #baseMod skill("radius", 15) #mods #skill MoltenShell -#flags spell area duration fire +#flags spell area duration #baseMod skill("radius", 15) #mods #skill VaalMoltenShell -#flags spell area duration fire vaal +#flags spell area duration #mods #skill MoltenStrike -#flags attack melee projectile area fire +#flags attack melee projectile area parts = { { name = "Melee Hit", @@ -189,7 +189,7 @@ local skills, mod, flag, skill = ... #mods #skill FireResistAura -#flags spell aura area fire +#flags spell aura area #baseMod skill("radius", 36) #mods @@ -208,11 +208,11 @@ local skills, mod, flag, skill = ... #mods #skill SearingBond -#flags spell totem duration fire +#flags spell totem duration #mods #skill NewShieldCharge -#flags attack melee area movement +#flags attack melee area #mods #skill ShockwaveTotem @@ -221,7 +221,7 @@ local skills, mod, flag, skill = ... #mods #skill StaticStrike -#flags attack melee area duration lightning +#flags attack melee area duration parts = { { name = "Melee hit", @@ -236,7 +236,7 @@ local skills, mod, flag, skill = ... #mods #skill SummonFireGolem -#flags spell minion golem fire +#flags spell minion golem #baseMod skill("allowTotemBuff", true) #baseMod flag("Condition:HaveFireGolem", { type = "GlobalEffect", effectType = "Buff" }) minionList = { diff --git a/Export/Skills/minion.txt b/Export/Skills/minion.txt index b8f171da..df5e4124 100644 --- a/Export/Skills/minion.txt +++ b/Export/Skills/minion.txt @@ -6,7 +6,7 @@ local skills, mod, flag, skill = ... #skill ChaosElementalCascadeSummoned Cascade -#flags spell area cold +#flags spell area #mods #skill SandstormChaosElementalSummoned Chaos Aura @@ -14,7 +14,7 @@ local skills, mod, flag, skill = ... #mods #skill FireElementalFlameRedSummoned Immolate -#flags spell projectile fire +#flags spell projectile #mods #skill FireElementalMortarSummoned Magma Ball @@ -22,7 +22,7 @@ local skills, mod, flag, skill = ... #mods #skill FireElementalConeSummoned Flame Wave -#flags spell area fire +#flags spell area #mods #skill IceElementalIceCyclone Cyclone @@ -34,7 +34,7 @@ local skills, mod, flag, skill = ... #mods #skill LightningGolemArcSummoned Storm Orb -#flags spell projectile lightning duration +#flags spell projectile duration #mods #skill MonsterProjectileSpellLightningGolemSummoned Lightning Projectile @@ -42,7 +42,7 @@ local skills, mod, flag, skill = ... #mods #skill LightningGolemWrath Wrath -#flags spell aura area duration lightning +#flags spell aura area duration #mods #skill SpectralSkullShieldCharge Charge diff --git a/Export/Skills/other.txt b/Export/Skills/other.txt index f0f4e92d..729a44a3 100644 --- a/Export/Skills/other.txt +++ b/Export/Skills/other.txt @@ -47,7 +47,7 @@ local skills, mod, flag, skill = ... #flags cast duration #setMod critical_strike_chance_+%==mod("CritChance", "INC", {val}, 0, 0, { type = "GlobalEffect", effectType = "Buff", effectName = "Cat's Stealth", effectCond = "CatsStealthActive" }) #setMod attack_speed_+%==mod("Speed", "INC", {val}, ModFlag.Attack, 0, { type = "GlobalEffect", effectType = "Buff", effectName = "Cat's Agility", effectCond = "CatsAgilityActive" }) -#setMod base_cast_speed_+%==mod("Speed", "INC", {val}, ModFlag.Cast, 0, { type = "GlobalEffect", effectType = "Buff", effectName = "Cat's Agility", effectCond = "CatsAgilityActive" }) +#setMod cast_speed_+%_granted_from_skill==mod("Speed", "INC", {val}, ModFlag.Cast, 0, { type = "GlobalEffect", effectType = "Buff", effectName = "Cat's Agility", effectCond = "CatsAgilityActive" }) fromItem = true, #mods @@ -151,18 +151,18 @@ local skills, mod, flag, skill = ... #mods #skill FireBurstOnHit -#flags spell area fire +#flags spell area fromItem = true, #mods #skill VaalAuraElementalDamageHealing -#flags spell aura area duration vaal +#flags spell aura area duration #baseMod skill("radius", 36) fromItem = true, #mods #skill IcestormUniqueStaff12 -#flags spell area duration cold +#flags spell area duration #baseMod skill("duration", 0.15, { type = "PerStat", stat = "Int", div = 100, base = 1.5 }) #baseMod skill("radius", 25) #baseMod skill("radiusSecondary", 10) @@ -176,12 +176,12 @@ local skills, mod, flag, skill = ... #mods #skill MerveilWarp -#flags spell area duration movement cold +#flags spell area duration fromItem = true, #mods #skill LightningSpell -#flags spell area lightning +#flags spell area fromItem = true, #mods @@ -202,7 +202,7 @@ local skills, mod, flag, skill = ... #mods #skill TriggeredMoltenStrike -#flags attack projectile area fire +#flags attack projectile area fromItem = true, #mods @@ -220,7 +220,7 @@ local skills, mod, flag, skill = ... #mods #skill TriggeredShockedGround -#flags spell area duration lightning +#flags spell area duration fromItem = true, #mods diff --git a/Export/Skills/spectre.txt b/Export/Skills/spectre.txt index 019b6e22..30c10b3e 100644 --- a/Export/Skills/spectre.txt +++ b/Export/Skills/spectre.txt @@ -6,7 +6,7 @@ local skills, mod, flag, skill = ... #skill BanditExplosiveArrow Explosive Arrow -#flags cast projectile area duration fire +#flags cast projectile area duration #baseMod skill("showAverage", true) #mods @@ -44,7 +44,7 @@ local skills, mod, flag, skill = ... #mods #skill ExperimenterDetonateDead Detonate Dead -#flags cast area fire +#flags cast area #mods #skill FireMonsterWhirlingBlades Fire Roll @@ -52,7 +52,7 @@ local skills, mod, flag, skill = ... #mods #skill FlamebearerFlameBlue Blue Flame -#flags spell projectile duration fire +#flags spell projectile duration #mods #skill GhostPirateBladeVortexSpectre Blade Vortex @@ -61,11 +61,11 @@ local skills, mod, flag, skill = ... #mods #skill GoatmanFireMagmaOrb Magma Orb -#flags spell area projectile fire +#flags spell area projectile #mods #skill GoatmanMoltenShell Molten Shell -#flags spell area duration fire +#flags spell area duration #mods #skill GuardianArc Arc @@ -94,7 +94,7 @@ local skills, mod, flag, skill = ... #mods #skill KaomWarriorMoltenStrike Molten Strike -#flags attack melee fire +#flags attack melee #mods #skill MassFrenzy Mass Frenzy @@ -102,7 +102,7 @@ local skills, mod, flag, skill = ... #mods #skill MinerThrowFireSpectre Throw Fire -#flags spell projectile area fire duration +#flags spell projectile area duration #mods #skill MonsterArc Arc @@ -118,7 +118,7 @@ local skills, mod, flag, skill = ... #mods #skill MonsterDischarge Discharge -#flags spell area fire cold lightning +#flags spell area lightning #mods #skill MonsterEnduringCry Enduring Cry @@ -130,11 +130,11 @@ local skills, mod, flag, skill = ... #mods #skill MonsterFireball Fireball -#flags spell projectile area fire +#flags spell projectile area #mods #skill MonsterFireBomb Fire Bomb -#flags spell trap area duration fire +#flags spell trap area duration #mods #skill MonsterFlickerStrike Flicker Strike @@ -142,7 +142,7 @@ local skills, mod, flag, skill = ... #mods #skill MonsterFlameRedCannibal Incinerate -#flags spell projectile fire +#flags spell projectile #mods #skill MonsterLeapSlam Leap Slam @@ -150,7 +150,7 @@ local skills, mod, flag, skill = ... #mods #skill MonsterLesserMultiFireballSpectre Lesser Multi Fireball -#flags spell projectile area fire +#flags spell projectile area #mods #skill MonsterLightningArrow Lightning Arrow @@ -162,7 +162,7 @@ local skills, mod, flag, skill = ... #mods #skill MonsterMultiFireballSpectre Multi Fireball -#flags spell projectile area fire +#flags spell projectile area #mods #skill MonsterProjectileWeakness Projectile Weakness @@ -179,7 +179,7 @@ local skills, mod, flag, skill = ... #mods #skill MonsterRighteousFireWhileSpectred Unrighteous Fire -#flags spell area fire +#flags spell area #mods #skill MonsterShockNova Shock Nova @@ -191,7 +191,7 @@ local skills, mod, flag, skill = ... #mods #skill MonsterSplitFireballSpectre Split Fireball -#flags spell projectile area fire +#flags spell projectile area #mods #skill MonsterWarlordsMark Warlord's Mark @@ -211,11 +211,11 @@ local skills, mod, flag, skill = ... #mods #skill NecromancerFlammability Flammability -#flags spell curse area duration fire +#flags spell curse area duration #mods #skill NecromancerFrostbite Frostbite -#flags spell curse area duration cold +#flags spell curse area duration #mods #skill NecromancerProjectileWeakness Projectile Weakness @@ -231,11 +231,11 @@ local skills, mod, flag, skill = ... #mods #skill PyroChaosFireball Chaos Fireball -#flags spell projectile area fire +#flags spell projectile area #mods #skill PyroFireball Fireball -#flags spell projectile area fire +#flags spell projectile area #mods #skill PyroSuicideExplosion Suicide Explosion @@ -247,7 +247,7 @@ local skills, mod, flag, skill = ... #mods #skill SeawitchFrostbolt Frostbolt -#flags spell projectile cold +#flags spell projectile #mods #skill SeaWitchScreech Screech diff --git a/Export/_common.lua b/Export/_common.lua index 3f37093c..f5442c1f 100644 --- a/Export/_common.lua +++ b/Export/_common.lua @@ -71,19 +71,40 @@ function writeLuaTable(out, t, indent) out:write('}') end +local outJson + function loadDat(name) if _G[name] then return end printf("Loading '%s'...", name) - local f = io.open(name..".json", "r") - if not f then - os.execute("pypoe_exporter dat json "..name..".json --files "..name..".dat") - f = io.open(name..".json", "r") + local t + if not outJson then + local f = io.open("out.json", "r") + if f then + local text = f:read("*a") + f:close() + outJson = json.decode(text) + end + end + if outJson then + for _, jt in ipairs(outJson) do + if jt.filename == name..".dat" then + t = jt + break + end + end + end + if not t then + f = io.open(name..".json", "r") + if not f then + os.execute("pypoe_exporter dat json "..name..".json --files "..name..".dat") + f = io.open(name..".json", "r") + end + local text = f:read("*a") + f:close() + t = json.decode(text)[1] end - local text = f:read("*a") - f:close() - local t = json.decode(text)[1] local headerMap = { } for i, header in pairs(t.header) do headerMap[header.name] = i diff --git a/Export/mods.lua b/Export/mods.lua index ad8c86e2..1a1ba605 100644 --- a/Export/mods.lua +++ b/Export/mods.lua @@ -49,10 +49,10 @@ writeMods("../Data/3_0/ModFlask.lua", function(mod) return mod.Domain == 2 and (mod.GenerationType == 1 or mod.GenerationType == 2) end) writeMods("../Data/3_0/ModJewel.lua", function(mod) - return mod.Domain == 11 and (mod.GenerationType == 1 or mod.GenerationType == 2) + return mod.Domain == 10 and (mod.GenerationType == 1 or mod.GenerationType == 2) end) writeMods("../Data/3_0/ModJewelAbyss.lua", function(mod) - return mod.Domain == 14 and (mod.GenerationType == 1 or mod.GenerationType == 2) + return mod.Domain == 13 and (mod.GenerationType == 1 or mod.GenerationType == 2) end) writeMods("../Data/3_0/ModCorrupted.lua", function(mod) return mod.GenerationType == 5 diff --git a/Export/skills.lua b/Export/skills.lua index 6122aaf8..72c2ce30 100644 --- a/Export/skills.lua +++ b/Export/skills.lua @@ -142,6 +142,8 @@ local weaponClassMap = { [36] = "None", } +local gems = { } + local directiveTable = { } -- #noGem @@ -151,7 +153,7 @@ directiveTable.noGem = function(state, args, out) end -- #skill [] --- Initialises the gem data and emits the skill header +-- Initialises the skill data and emits the skill header directiveTable.skill = function(state, args, out) local grantedId, displayName = args:match("(%w+) (.+)") if not grantedId then @@ -165,8 +167,8 @@ directiveTable.skill = function(state, args, out) print('Unknown GE: "'..grantedId..'"') end local skillGemKey = SkillGems.GrantedEffectsKey(grantedKey)[1] - local gem = { } - state.gem = gem + local skill = { } + state.skill = skill if skillGemKey and not state.noGem then local skillGem = SkillGems[skillGemKey] out:write('\tname = "', BaseItemTypes[skillGem.BaseItemTypesKey].Name:gsub(" Support",""), '",\n') @@ -194,15 +196,15 @@ directiveTable.skill = function(state, args, out) out:write('\thidden = true,\n') end state.noGem = false - gem.baseFlags = { } - gem.mods = { } + skill.baseFlags = { } + skill.mods = { } local modMap = { } - gem.levels = { } - gem.global = "nil" - gem.curse = "nil" + skill.levels = { } + skill.global = "nil" + skill.curse = "nil" out:write('\tcolor = ', granted.Unknown0, ',\n') if granted.IsSupport then - gem.isSupport = true + skill.isSupport = true out:write('\tsupport = true,\n') out:write('\trequireSkillTypes = { ') for _, type in ipairs(granted.Data0) do @@ -260,30 +262,30 @@ directiveTable.skill = function(state, args, out) typeFlag[mapAST(type)] = true end if typeFlag[32] then - gem.global = '{ type = "GlobalEffect", effectType = "Curse" }' - gem.curse = gem.global + skill.global = '{ type = "GlobalEffect", effectType = "Curse" }' + skill.curse = skill.global elseif typeFlag[44] then - gem.global = '{ type = "GlobalEffect", effectType = "Aura" }' + skill.global = '{ type = "GlobalEffect", effectType = "Aura" }' elseif typeFlag[5] or typeFlag[31] then - gem.global = '{ type = "GlobalEffect", effectType = "Buff" }' + skill.global = '{ type = "GlobalEffect", effectType = "Buff" }' end - addMod(gem.mods, 'skill("castTime", {val})', granted.CastTime / 1000) + addMod(skill.mods, 'skill("castTime", {val})', granted.CastTime / 1000) end for _, key in ipairs(GrantedEffectsPerLevel.GrantedEffectsKey(grantedKey)) do local level = { } local levelRow = GrantedEffectsPerLevel[key] level.level = levelRow.Level - table.insert(gem.levels, level) + table.insert(skill.levels, level) local function addLevelMod(statKey, value, forcePerLevel) - local mod = gem.mods[modMap[statKey]] + local mod = skill.mods[modMap[statKey]] if mod then if value ~= mod.val then mod.perLevel = true end else - modMap[statKey] = #gem.mods + 1 - addMod(gem.mods, statKey) - mod = gem.mods[modMap[statKey]] + modMap[statKey] = #skill.mods + 1 + addMod(skill.mods, statKey) + mod = skill.mods[modMap[statKey]] mod.val = value end if forcePerLevel then @@ -323,10 +325,10 @@ directiveTable.skill = function(state, args, out) for i, statKey in ipairs(levelRow.StatsKeys2) do addLevelMod(statKey) end - if not gem.qualityMods then - gem.qualityMods = { } + if not skill.qualityMods then + skill.qualityMods = { } for i, statKey in ipairs(levelRow.Quality_StatsKeys) do - addMod(gem.qualityMods, statKey, levelRow.Quality_Values[i] / 1000) + addMod(skill.qualityMods, statKey, levelRow.Quality_Values[i] / 1000) end end end @@ -335,35 +337,35 @@ end -- #global -- Sets the global effect tag for this skill directiveTable.global = function(state, args, out) - local gem = state.gem - gem.global = '{ type = "GlobalEffect", effectType = "'..args..'" }' + local skill = state.skill + skill.global = '{ type = "GlobalEffect", effectType = "'..args..'" }' end -- #flags [ [...]] -- Sets the base flags for this active skill directiveTable.flags = function(state, args, out) - local gem = state.gem + local skill = state.skill for flag in args:gmatch("%a+") do - table.insert(gem.baseFlags, flag) + table.insert(skill.baseFlags, flag) end end -- #baseMod -- Adds a base modifier to the skill directiveTable.baseMod = function(state, args, out) - local gem = state.gem - addMod(gem.mods, args) + local skill = state.skill + addMod(skill.mods, args) end -- #levelMod ==[ [...]] -- Adds a per-level modifier to the skill directiveTable.levelMod = function(state, args, out) - local gem = state.gem + local skill = state.skill local def, vals = args:match("(.*)==(.*)") - local mod = addMod(gem.mods, def) + local mod = addMod(skill.mods, def) mod.perLevel = true local i = 1 - for _, level in ipairs(gem.levels) do + for _, level in ipairs(skill.levels) do local s, e, val = vals:find("([%+%-]?[%d%.]+)", i) mod.levels[level.level] = tonumber(val) i = e + 1 @@ -373,15 +375,15 @@ end -- #setLevelVals ==[ [...]] -- Overrides the values of the given level modifier directiveTable.setLevelVals = function(state, args, out) - local gem = state.gem + local skill = state.skill local index, vals = args:match("(.*)==(.*)") index = tonumber(index) - for _, mod in ipairs(gem.mods) do + for _, mod in ipairs(skill.mods) do if mod.perLevel then index = index - 1 if index == 0 then local i = 1 - for _, level in ipairs(gem.levels) do + for _, level in ipairs(skill.levels) do local s, e, val = vals:find("([%+%-]?[%d%.]+)", i) mod.levels[level.level] = tonumber(val) i = e + 1 @@ -395,9 +397,9 @@ end -- #setMod ===] -- Sets or overrides the mapping of the given stat directiveTable.setMod = function(state, args, out) - local gem = state.gem + local skill = state.skill local id, def = args:match("(.*)==(.*)") - for _, list in ipairs({gem.mods,gem.qualityMods}) do + for _, list in ipairs({skill.mods,skill.qualityMods}) do for _, mod in ipairs(list) do if mod.id == id then local name, mult = def:match("(.*);mult=(.*)") @@ -421,20 +423,20 @@ end -- #mods -- Emits the skill modifiers directiveTable.mods = function(state, args, out) - local gem = state.gem - if not gem.isSupport then + local skill = state.skill + if not skill.isSupport then out:write('\tbaseFlags = {\n') - for _, flag in ipairs(gem.baseFlags) do + for _, flag in ipairs(skill.baseFlags) do out:write('\t\t', flag, ' = true,\n') end out:write('\t},\n') end out:write('\tbaseMods = {\n') - for _, mod in ipairs(gem.mods) do + for _, mod in ipairs(skill.mods) do if not mod.perLevel then out:write('\t\t') if mod.def and mod.def ~= "nil" then - out:write(mod.def:gsub("{val}",(mod.val or 0)*mod.mult):gsub("{global}",gem.global):gsub("{curse}",gem.curse), ', ') + out:write(mod.def:gsub("{val}",(mod.val or 0)*mod.mult):gsub("{global}",skill.global):gsub("{curse}",skill.curse), ', ') end if mod.id then out:write('--"', mod.id, '" = ', (mod.val or "?")) @@ -444,10 +446,10 @@ directiveTable.mods = function(state, args, out) end out:write('\t},\n') out:write('\tqualityMods = {\n') - for _, mod in ipairs(gem.qualityMods) do + for _, mod in ipairs(skill.qualityMods) do out:write('\t\t') if mod.def then - out:write(mod.def:gsub("{val}",mod.levels[1]*mod.mult):gsub("{global}",gem.global):gsub("{curse}",gem.curse), ', ') + out:write(mod.def:gsub("{val}",mod.levels[1]*mod.mult):gsub("{global}",skill.global):gsub("{curse}",skill.curse), ', ') end if mod.id then out:write('--"', mod.id, '" = ', mod.levels[1]) @@ -457,11 +459,11 @@ directiveTable.mods = function(state, args, out) out:write('\t},\n') out:write('\tlevelMods = {\n') local lcol = 1 - for _, mod in ipairs(gem.mods) do + for _, mod in ipairs(skill.mods) do if mod.perLevel then out:write('\t\t') if mod.def then - out:write('[', lcol, '] = ', mod.def:gsub("{val}","nil"):gsub("{global}",gem.global):gsub("{curse}",gem.curse), ', ') + out:write('[', lcol, '] = ', mod.def:gsub("{val}","nil"):gsub("{global}",skill.global):gsub("{curse}",skill.curse), ', ') if mod.id then out:write('--"', mod.id, '"') end @@ -475,9 +477,9 @@ directiveTable.mods = function(state, args, out) end out:write('\t},\n') out:write('\tlevels = {\n') - for _, level in ipairs(gem.levels) do + for _, level in ipairs(skill.levels) do out:write('\t\t[', level.level, '] = { ') - for _, mod in ipairs(gem.mods) do + for _, mod in ipairs(skill.mods) do if mod.perLevel then if mod.levels[level.level] then out:write(tostring(mod.levels[level.level] * mod.mult), ', ') @@ -490,7 +492,7 @@ directiveTable.mods = function(state, args, out) end out:write('\t},\n') out:write('}') - state.gem = nil + state.skill = nil end for _, name in pairs({"act_str","act_dex","act_int","other","glove","minion","spectre","sup_str","sup_dex","sup_int"}) do diff --git a/Modules/CalcActiveSkill.lua b/Modules/CalcActiveSkill.lua index 1997aa21..1f9e6aab 100644 --- a/Modules/CalcActiveSkill.lua +++ b/Modules/CalcActiveSkill.lua @@ -302,10 +302,10 @@ function calcs.buildActiveSkillModList(env, actor, activeSkill) if skillFlags.warcry then skillKeywordFlags = bor(skillKeywordFlags, KeywordFlag.Warcry) end - if skillFlags.movement then + if skillTypes[SkillType.MovementSkill] then skillKeywordFlags = bor(skillKeywordFlags, KeywordFlag.Movement) end - if skillFlags.vaal then + if skillTypes[SkillType.Vaal] then skillKeywordFlags = bor(skillKeywordFlags, KeywordFlag.Vaal) end if skillTypes[SkillType.LightningSkill] then diff --git a/Modules/CalcOffence-3_0.lua b/Modules/CalcOffence-3_0.lua index 52c859bb..c5e28556 100644 --- a/Modules/CalcOffence-3_0.lua +++ b/Modules/CalcOffence-3_0.lua @@ -220,10 +220,10 @@ function calcs.offence(env, actor) if modDB:Sum("FLAG", nil, "CastSpeedAppliesToTrapThrowingSpeed") then -- Cast Speed conversion from Slavedriver's Hand for i, mod in ipairs(modDB.mods.Speed or { }) do - if mod.type == "INC" and band(mod.flags, ModFlag.Cast) then - modDB:NewMod("TrapThrowingSpeed", "INC", mod.value, mod.source, band(mod.flags, bnot(ModFlag.Cast)), mod.keywordFlags, unpack(mod)) + if mod.type == "INC" and band(mod.flags, ModFlag.Cast) ~= 0 then + modDB:NewMod("TrapThrowingSpeed", "INC", mod.value, mod.source, band(mod.flags, bnot(ModFlag.Cast), bnot(ModFlag.Attack)), mod.keywordFlags, unpack(mod)) end - end + end end local isAttack = skillFlags.attack diff --git a/changelog.txt b/changelog.txt index 79e9b413..13fefcf0 100644 --- a/changelog.txt +++ b/changelog.txt @@ -1,3 +1,7 @@ +VERSION[1.4.91][2018/06/01] + * Added the missing limit to Pure Talent + * Slavedriver's hand no longer incorrectly converts Attack Speed modifiers to Trap Throwing Speed for Attack traps + * Fixed error when hovering over "Total Increased" in the Calcs tab on certain builds VERSION[1.4.90][2018/05/31] * Added the following announced uniques for 3.3: * Zeel's Amplifier diff --git a/manifest.xml b/manifest.xml index c11ce8e2..b67eb6e4 100644 --- a/manifest.xml +++ b/manifest.xml @@ -1,16 +1,16 @@ - + - + - + @@ -55,12 +55,12 @@ - + - + @@ -80,7 +80,7 @@ - + @@ -93,7 +93,7 @@ - + @@ -134,13 +134,13 @@ - - - + + + - - - + + + @@ -178,15 +178,15 @@ - - - + + + - - - + + + - +