Release 1.4.97

- Updated tree to 3.4
This commit is contained in:
Openarl
2018-08-29 12:05:21 +10:00
parent beff94015f
commit 4e4f87cb68
30 changed files with 252 additions and 194 deletions

View File

@@ -166,14 +166,17 @@ local modNameList = {
["to dodge attack and spell hits"] = { "AttackDodgeChance", "SpellDodgeChance" },
["to block"] = "BlockChance",
["to block attacks"] = "BlockChance",
["to block attack damage"] = "BlockChance",
["block chance"] = "BlockChance",
["block chance with staves"] = { "BlockChance", tag = { type = "Condition", var = "UsingStaff" } },
["to block with staves"] = { "BlockChance", tag = { type = "Condition", var = "UsingStaff" } },
["spell block chance"] = "SpellBlockChance",
["to block spells"] = "SpellBlockChance",
["to block spell damage"] = "SpellBlockChance",
["chance to block attacks and spells"] = { "BlockChance", "SpellBlockChance" },
["maximum block chance"] = "BlockChanceMax",
["block chance applied to spells"] = "BlockChanceConv",
["maximum chance to block attack damage"] = "BlockChanceMax",
["maximum chance to block spell damage"] = "SpellBlockChanceMax",
["to avoid being stunned"] = "AvoidStun",
["to avoid being shocked"] = "AvoidShock",
["to avoid being frozen"] = "AvoidFrozen",
@@ -203,6 +206,7 @@ local modNameList = {
-- Auras/curses/buffs
["aura effect"] = "AuraEffect",
["effect of non-curse auras you cast"] = "AuraEffect",
["effect of non-curse auras from your skills"] = "AuraEffect",
["effect of your curses"] = "CurseEffect",
["effect of auras on you"] = "AuraEffectOnSelf",
["effect of auras on your minions"] = { "AuraEffectOnSelf", addToMinion = true },
@@ -345,6 +349,7 @@ local modNameList = {
["critical strike multiplier"] = "CritMultiplier",
["accuracy"] = "Accuracy",
["accuracy rating"] = "Accuracy",
["minion accuracy rating"] = { "Accuracy", addToMinion = true },
["attack speed"] = { "Speed", flags = ModFlag.Attack },
["cast speed"] = { "Speed", flags = ModFlag.Cast },
["attack and cast speed"] = "Speed",
@@ -454,6 +459,7 @@ local modFlagList = {
["melee"] = { flags = ModFlag.Melee },
["with melee attacks"] = { flags = ModFlag.Melee },
["with melee critical strikes"] = { flags = ModFlag.Melee, tag = { type = "Condition", var = "CriticalStrike" } },
["with bow skills"] = { keywordFlags = KeywordFlag.Bow },
["on melee hit"] = { flags = ModFlag.Melee },
["with hits"] = { keywordFlags = KeywordFlag.Hit },
["with hits and ailments"] = { keywordFlags = bor(KeywordFlag.Hit, KeywordFlag.Ailment) },
@@ -537,8 +543,8 @@ local preFlagList = {
["^attack skills [hd][ae][va][el] "] = { keywordFlags = KeywordFlag.Attack },
["^spells [hd][ae][va][el] "] = { flags = ModFlag.Spell },
["^projectile attack skills [hd][ae][va][el] "] = { tagList = { { type = "SkillType", skillType = SkillType.Attack }, { type = "SkillType", skillType = SkillType.Projectile } } },
["^arrows [hd][ae][va][el] "] = { tagList = { { type = "SkillType", skillType = SkillType.Attack }, { type = "SkillType", skillType = SkillType.Projectile } } },
["^bow attacks [hdf][aei][var][el] "] = { flags = bor(ModFlag.Attack, ModFlag.Bow) },
["^arrows [hd][ae][va][el] "] = { keywordFlags = KeywordFlag.Bow },
["^bow attacks [hdf][aei][var][el] "] = { keywordFlags = KeywordFlag.Bow },
["^projectiles [hdf][aei][var][el] "] = { flags = ModFlag.Projectile },
["^melee attacks have "] = { flags = ModFlag.Melee },
["^movement attack skills have "] = { flags = ModFlag.Attack, keywordFlags = KeywordFlag.Movement },
@@ -561,10 +567,10 @@ local preFlagList = {
["^your flasks grant "] = { },
["^when hit, "] = { },
["^you and allies [hgd][ae][via][enl] "] = { },
["^auras you cast grant "] = { addToAura = true },
["^auras from your skills grant "] = { addToAura = true },
["^you and nearby allies [hgd][ae][via][enl] "] = { newAura = true },
["^nearby allies [hgd][ae][via][enl] "] = { newAura = true, newAuraOnlyAllies = true },
["^you and allies affected by your auras have "] = { affectedByAura = true },
["^you and allies affected by your aura skills [hgd][ae][via][enl] "] = { affectedByAura = true },
["^take "] = { modSuffix = "Taken" },
["^marauder: melee skills have "] = { flags = ModFlag.Melee, tag = { type = "Condition", var = "ConnectedToMarauderStart" } },
["^duelist: "] = { tag = { type = "Condition", var = "ConnectedToDuelistStart" } },
@@ -581,6 +587,7 @@ local modTagList = {
["while active"] = { },
[" on critical strike"] = { tag = { type = "Condition", var = "CriticalStrike" } },
["while affected by auras you cast"] = { affectedByAura = true },
["for you and nearby allies"] = { newAura = true },
-- Multipliers
["per power charge"] = { tag = { type = "Multiplier", var = "PowerCharge" } },
["per frenzy charge"] = { tag = { type = "Multiplier", var = "FrenzyCharge" } },
@@ -706,6 +713,7 @@ local modTagList = {
["while at maximum endurance charges"] = { tag = { type = "StatThreshold", stat = "EnduranceCharges", thresholdStat = "EnduranceChargesMax" } },
["while you have at least (%d+) crab barriers"] = function(num) return { tag = { type = "StatThreshold", stat = "CrabBarriers", threshold = num } } end,
["while you have a totem"] = { tag = { type = "Condition", var = "HaveTotem" } },
["while you have at least one nearby ally"] = { tag = { type = "MultiplierThreshold", var = "NearbyAlly", threshold = 1 } },
["while you have fortify"] = { tag = { type = "Condition", var = "Fortify" } },
["during onslaught"] = { tag = { type = "Condition", var = "Onslaught" } },
["while you have onslaught"] = { tag = { type = "Condition", var = "Onslaught" } },
@@ -762,7 +770,7 @@ local modTagList = {
["if you[' ]h?a?ve blocked recently"] = { tag = { type = "Condition", var = "BlockedRecently" } },
["if you[' ]h?a?ve blocked an attack recently"] = { tag = { type = "Condition", var = "BlockedAttackRecently" } },
["if you[' ]h?a?ve blocked a spell recently"] = { tag = { type = "Condition", var = "BlockedSpellRecently" } },
["if you[' ]h?a?ve blocked a hit from a unique enemy in the past 10 seconds"] = { tag = { type = "Condition", var = "BlockedHitFromUniqueEnemyInPast10Sec" } },
["if you[' ]h?a?ve blocked damage from a unique enemy in the past 10 seconds"] = { tag = { type = "Condition", var = "BlockedHitFromUniqueEnemyInPast10Sec" } },
["if you[' ]h?a?ve attacked recently"] = { tag = { type = "Condition", var = "AttackedRecently" } },
["if you[' ]h?a?ve cast a spell recently"] = { tag = { type = "Condition", var = "CastSpellRecently" } },
["if you[' ]h?a?ve consumed a corpse recently"] = { tag = { type = "Condition", var = "ConsumedCorpseRecently" } },
@@ -970,13 +978,15 @@ local specialModList = {
["gain chilling, shocking and igniting conflux for %d seconds"] = { },
-- Gladiator
["enemies maimed by you take (%d+)%% increased physical damage"] = function(num) return { mod("EnemyModifier", "LIST", { mod = mod("PhysicalDamageTaken", "INC", num, { type = "Condition", var = "Maimed" }) }) } end,
["chance to block spell damage is equal to chance to block attack damage"] = { flag("SpellBlockChanceIsBlockChance") },
["maximum chance to block spell damage is equal to maximum chance to block attack damage"] = { flag("SpellBlockChanceMaxIsBlockChanceMax") },
-- Guardian
["grants armour equal to (%d+)%% of your reserved life to you and nearby allies"] = function(num) return { mod("GrantReservedLifeAsAura", "LIST", { mod = mod("Armour", "BASE", num / 100) }) } end,
["grants maximum energy shield equal to (%d+)%% of your reserved mana to you and nearby allies"] = function(num) return { mod("GrantReservedManaAsAura", "LIST", { mod = mod("EnergyShield", "BASE", num / 100) }) } end,
["warcries cost no mana"] = { mod("ManaCost", "MORE", -100, nil, 0, KeywordFlag.Warcry) },
["(%d+)%% additional block chance for %d seconds? every %d seconds"] = function(num) return { mod("BlockChance", "BASE", num, { type = "Condition", var = "BastionOfHopeActive" }) } end,
["if you've attacked recently, you and nearby allies have (%d+)%% chance to block attacks"] = function(num) return { mod("ExtraAura", "LIST", { mod = mod("BlockChance", "BASE", num) }, { type = "Condition", var = "AttackedRecently" }) } end,
["if you've cast a spell recently, you and nearby allies have (%d+)%% chance to block spells"] = function(num) return { mod("ExtraAura", "LIST", { mod = mod("SpellBlockChance", "BASE", num) }, { type = "Condition", var = "CastSpellRecently" }) } end,
["%+(%d+)%% chance to block attack damage for %d seconds? every %d seconds"] = function(num) return { mod("BlockChance", "BASE", num, { type = "Condition", var = "BastionOfHopeActive" }) } end,
["if you've attacked recently, you and nearby allies have %+(%d+)%% chance to block attack damage"] = function(num) return { mod("ExtraAura", "LIST", { mod = mod("BlockChance", "BASE", num) }, { type = "Condition", var = "AttackedRecently" }) } end,
["if you've cast a spell recently, you and nearby allies have %+(%d+)%% chance to block spell damage"] = function(num) return { mod("ExtraAura", "LIST", { mod = mod("SpellBlockChance", "BASE", num) }, { type = "Condition", var = "CastSpellRecently" }) } end,
-- Hierophant
-- Inquisitor
["critical strikes ignore enemy monster elemental resistances"] = { flag("IgnoreElementalResistances", { type = "Condition", var = "CriticalStrike" }) },
@@ -1083,6 +1093,7 @@ local specialModList = {
["socketed [%a+]* ?gems a?r?e? ?supported by level (%d+) (.+)"] = function(num, _, support) return { mod("ExtraSupport", "LIST", { skillId = gemIdLookup[support] or gemIdLookup[support:gsub("^increased ","")] or "Unknown", level = num }, { type = "SocketedIn", slotName = "{SlotName}" }) } end,
-- Conversion
["increases and reductions to minion damage also affects? you"] = { flag("MinionDamageAppliesToPlayer") },
["increases and reductions to minion attack speed also affects? you"] = { flag("MinionAttackSpeedAppliesToPlayer") },
["increases and reductions to spell damage also apply to attacks"] = { flag("SpellDamageAppliesToAttacks") },
["modifiers to claw damage also apply to unarmed"] = { flag("ClawDamageAppliesToUnarmed") },
["modifiers to claw damage also apply to unarmed attack damage"] = { flag("ClawDamageAppliesToUnarmed") },