diff --git a/src/Data/Gems.lua b/src/Data/Gems.lua index 4d684f86d..78d6fb1e8 100644 --- a/src/Data/Gems.lua +++ b/src/Data/Gems.lua @@ -16558,11 +16558,10 @@ return { wyvern = true, area = true, projectile = true, - sustained = true, channelling = true, }, gemType = "Attack", - tagString = "Shapeshift, Wyvern, AoE, Projectile, Sustained, Channelling", + tagString = "Shapeshift, Wyvern, AoE, Projectile, Channelling", weaponRequirements = "Talisman", reqStr = 50, reqDex = 0, @@ -17100,7 +17099,7 @@ return { chaining = true, }, gemType = "Support", - gemFamily = "Dominus' Grasp", + gemFamily = "Piety's Mercy", tagString = "Lineage, Projectile, Chaining", reqStr = 0, reqDex = 100, @@ -18243,11 +18242,10 @@ return { persistent = true, area = true, physical = true, - duration = true, plant = true, }, gemType = "Buff", - tagString = "Spell, Persistent, AoE, Physical, Duration, Plant", + tagString = "Spell, Persistent, AoE, Physical, Plant", reqStr = 50, reqDex = 0, reqInt = 50, @@ -18618,11 +18616,12 @@ return { grants_active_skill = true, buff = true, persistent = true, + trigger = true, invocation = true, meta = true, }, gemType = "Buff", - tagString = "Persistent, Invocation, Meta", + tagString = "Persistent, Trigger, Invocation, Meta", weaponRequirements = "Talisman", reqStr = 50, reqDex = 0, diff --git a/src/Data/Skills/act_dex.lua b/src/Data/Skills/act_dex.lua index 0febdc477..f57e456f9 100644 --- a/src/Data/Skills/act_dex.lua +++ b/src/Data/Skills/act_dex.lua @@ -478,7 +478,7 @@ skills["BloodhoundsMarkPlayer"] = { name = "Bloodhound's Mark", baseTypeName = "Bloodhound's Mark", color = 2, - description = "Mark a target, making them suffer Heavy Stun build up from Blood Loss. If they suffer enough Blood Loss while Marked, the Mark will Activate, Consuming itself and releasing an explosion of blood when they are killed or Heavy Stunned. The Mark's duration does not expire while the Marked target is suffering Blood Loss.", + description = "Mark a target, making them suffer Heavy Stun build up from Blood Loss. If they suffer enough Blood Loss while Marked, the Mark will Activate, Consming itself and releasing an explosion of blood when they are killed or Heavy Stunned. The Mark's duration does not expire while the Marked target is suffering Blood Loss.", skillTypes = { [SkillType.Trappable] = true, [SkillType.Totemable] = true, [SkillType.Mineable] = true, [SkillType.Multicastable] = true, [SkillType.Triggerable] = true, [SkillType.Unleashable] = true, [SkillType.Duration] = true, [SkillType.UsableWhileMoving] = true, [SkillType.Mark] = true, [SkillType.Limit] = true, [SkillType.Physical] = true, [SkillType.UsableWhileMounted] = true, [SkillType.Cooldown] = true, }, castTime = 0.5, qualityStats = { @@ -6690,7 +6690,7 @@ skills["ShatteringSpitePlayer"] = { baseTypeName = "Shattering Spite", fromItem = true, color = 2, - description = "Stamp your spear, destroying all Bloodstone Lances on each enemy in your Presence to cause a damaging explosion around that enemy. Each explosion gains new benefits when reaching higher thresholds of Bloodstone Lances removed from an enemy, causing them to deal more damage, have increased area of effect, and Leech Life from enemies caught in the blast.", + description = "Stamp your spear, destroying all Bloodstone Lances on each enemy in your Presence to cause a damaging explosion around that enemy. Each explosion is independently larger and more damaging for each Bloodstone Lance on from the enemy it originates from.", skillTypes = { [SkillType.Area] = true, [SkillType.Attack] = true, [SkillType.Physical] = true, [SkillType.Lightning] = true, [SkillType.Fire] = true, [SkillType.Damage] = true, [SkillType.Spear] = true, }, weaponTypes = { ["Spear"] = true, @@ -10130,7 +10130,7 @@ skills["VoltaicMarkPlayer"] = { name = "Voltaic Mark", baseTypeName = "Voltaic Mark", color = 2, - description = "Mark a target, making them more susceptible to being Electrocuted. When the Marked target is Electrocuted, the Mark Activates, granting a Buff which gives extra Lightning damage and Consuming the Mark. Marking another target while you have the Buff will remove the Buff.", + description = "Mark a target, making them more susceptible to being Electrocuted. When the Marked target is Electrocuted, the Mark Activates, granting a Buff which gives extra Lightning damage and Consming the Mark. Marking another target while you have the Buff will remove the Buff.", skillTypes = { [SkillType.Trappable] = true, [SkillType.Totemable] = true, [SkillType.Mineable] = true, [SkillType.Multicastable] = true, [SkillType.Triggerable] = true, [SkillType.Unleashable] = true, [SkillType.Duration] = true, [SkillType.UsableWhileMoving] = true, [SkillType.Mark] = true, [SkillType.Lightning] = true, [SkillType.Limit] = true, [SkillType.UsableWhileMounted] = true, [SkillType.Cooldown] = true, [SkillType.Buff] = true, }, castTime = 0.5, qualityStats = { diff --git a/src/Data/Skills/act_int.lua b/src/Data/Skills/act_int.lua index b77d0c103..8ecd2dcf4 100644 --- a/src/Data/Skills/act_int.lua +++ b/src/Data/Skills/act_int.lua @@ -8076,7 +8076,7 @@ skills["FlameblastPlayer"] = { baseTypeName = "Flameblast", color = 3, description = "Channel to build destructive energy around you. Releasing the energy causes a devastating explosion that is larger and more intense the longer you Channelled for.", - skillTypes = { [SkillType.Spell] = true, [SkillType.Damage] = true, [SkillType.Area] = true, [SkillType.Totemable] = true, [SkillType.Fire] = true, [SkillType.Channel] = true, [SkillType.AreaSpell] = true, [SkillType.Nova] = true, [SkillType.UsableWhileMoving] = true, [SkillType.GainsStages] = true, [SkillType.Cooldown] = true, }, + skillTypes = { [SkillType.Spell] = true, [SkillType.Damage] = true, [SkillType.Area] = true, [SkillType.Totemable] = true, [SkillType.Fire] = true, [SkillType.Channel] = true, [SkillType.AreaSpell] = true, [SkillType.Nova] = true, [SkillType.UsableWhileMoving] = true, [SkillType.Cascadable] = true, [SkillType.GainsStages] = true, [SkillType.Cooldown] = true, }, castTime = 0.25, qualityStats = { { "active_skill_cast_speed_+%_final", 1 }, @@ -8470,7 +8470,7 @@ skills["FreezingMarkPlayer"] = { name = "Freezing Mark", baseTypeName = "Freezing Mark", color = 3, - description = "Mark a target, making them more susceptible to being Frozen. When the Marked target is Frozen, the Mark Activates, granting you a Buff which gives extra Cold damage and Consuming the Mark. Marking another target while you have the Buff will remove the Buff.", + description = "Mark a target, making them more susceptible to being Frozen. When the Marked target is Frozen, the Mark Activates, granting you a Buff which gives extra Cold damage and Consming the Mark. Marking another target while you have the Buff will remove the Buff.", skillTypes = { [SkillType.Trappable] = true, [SkillType.Totemable] = true, [SkillType.Mineable] = true, [SkillType.Multicastable] = true, [SkillType.Triggerable] = true, [SkillType.Unleashable] = true, [SkillType.Duration] = true, [SkillType.UsableWhileMoving] = true, [SkillType.Mark] = true, [SkillType.Cold] = true, [SkillType.Limit] = true, [SkillType.UsableWhileMounted] = true, [SkillType.Cooldown] = true, [SkillType.Buff] = true, }, castTime = 0.5, qualityStats = { diff --git a/src/Data/Skills/act_str.lua b/src/Data/Skills/act_str.lua index 07e5997d8..3f140682f 100644 --- a/src/Data/Skills/act_str.lua +++ b/src/Data/Skills/act_str.lua @@ -1952,52 +1952,52 @@ skills["BriarpatchPlayer"] = { baseTypeName = "Briarpatch", color = 1, description = "While active, a portion of the Physical Attack damage you deal is stored. Casting a Spell uses the stored damage to create a patch of Thorny Ground that deals Spell damage to moving enemies.", - skillTypes = { [SkillType.Buff] = true, [SkillType.OngoingSkill] = true, [SkillType.HasReservation] = true, [SkillType.Persistent] = true, [SkillType.AttackInPlace] = true, [SkillType.Physical] = true, [SkillType.Limit] = true, [SkillType.Plant] = true, [SkillType.Spell] = true, [SkillType.Area] = true, [SkillType.AreaSpell] = true, [SkillType.Duration] = true, [SkillType.CreatesGroundEffect] = true, }, + skillTypes = { [SkillType.Buff] = true, [SkillType.OngoingSkill] = true, [SkillType.HasReservation] = true, [SkillType.Persistent] = true, [SkillType.AttackInPlace] = true, [SkillType.Physical] = true, [SkillType.Limit] = true, [SkillType.Plant] = true, [SkillType.Spell] = true, [SkillType.Area] = true, [SkillType.AreaSpell] = true, }, castTime = 0, qualityStats = { - { "spells_chance_to_hinder_on_hit_%", 0.25 }, + { "maim_on_hit_%", 0.25 }, }, levels = { - [1] = { critChance = 10, levelRequirement = 0, spiritReservationFlat = 30, }, - [2] = { critChance = 10, levelRequirement = 3, spiritReservationFlat = 30, }, - [3] = { critChance = 10, levelRequirement = 6, spiritReservationFlat = 30, }, - [4] = { critChance = 10, levelRequirement = 10, spiritReservationFlat = 30, }, - [5] = { critChance = 10, levelRequirement = 14, spiritReservationFlat = 30, }, - [6] = { critChance = 10, levelRequirement = 18, spiritReservationFlat = 30, }, - [7] = { critChance = 10, levelRequirement = 22, spiritReservationFlat = 30, }, - [8] = { critChance = 10, levelRequirement = 26, spiritReservationFlat = 30, }, - [9] = { critChance = 10, levelRequirement = 31, spiritReservationFlat = 30, }, - [10] = { critChance = 10, levelRequirement = 36, spiritReservationFlat = 30, }, - [11] = { critChance = 10, levelRequirement = 41, spiritReservationFlat = 30, }, - [12] = { critChance = 10, levelRequirement = 46, spiritReservationFlat = 30, }, - [13] = { critChance = 10, levelRequirement = 52, spiritReservationFlat = 30, }, - [14] = { critChance = 10, levelRequirement = 58, spiritReservationFlat = 30, }, - [15] = { critChance = 10, levelRequirement = 64, spiritReservationFlat = 30, }, - [16] = { critChance = 10, levelRequirement = 66, spiritReservationFlat = 30, }, - [17] = { critChance = 10, levelRequirement = 72, spiritReservationFlat = 30, }, - [18] = { critChance = 10, levelRequirement = 78, spiritReservationFlat = 30, }, - [19] = { critChance = 10, levelRequirement = 84, spiritReservationFlat = 30, }, - [20] = { critChance = 10, levelRequirement = 90, spiritReservationFlat = 30, }, - [21] = { critChance = 10, levelRequirement = 90, spiritReservationFlat = 30, }, - [22] = { critChance = 10, levelRequirement = 90, spiritReservationFlat = 30, }, - [23] = { critChance = 10, levelRequirement = 90, spiritReservationFlat = 30, }, - [24] = { critChance = 10, levelRequirement = 90, spiritReservationFlat = 30, }, - [25] = { critChance = 10, levelRequirement = 90, spiritReservationFlat = 30, }, - [26] = { critChance = 10, levelRequirement = 90, spiritReservationFlat = 30, }, - [27] = { critChance = 10, levelRequirement = 90, spiritReservationFlat = 30, }, - [28] = { critChance = 10, levelRequirement = 90, spiritReservationFlat = 30, }, - [29] = { critChance = 10, levelRequirement = 90, spiritReservationFlat = 30, }, - [30] = { critChance = 10, levelRequirement = 90, spiritReservationFlat = 30, }, - [31] = { critChance = 10, levelRequirement = 90, spiritReservationFlat = 30, }, - [32] = { critChance = 10, levelRequirement = 90, spiritReservationFlat = 30, }, - [33] = { critChance = 10, levelRequirement = 90, spiritReservationFlat = 30, }, - [34] = { critChance = 10, levelRequirement = 90, spiritReservationFlat = 30, }, - [35] = { critChance = 10, levelRequirement = 90, spiritReservationFlat = 30, }, - [36] = { critChance = 10, levelRequirement = 90, spiritReservationFlat = 30, }, - [37] = { critChance = 10, levelRequirement = 90, spiritReservationFlat = 30, }, - [38] = { critChance = 10, levelRequirement = 90, spiritReservationFlat = 30, }, - [39] = { critChance = 10, levelRequirement = 90, spiritReservationFlat = 30, }, - [40] = { critChance = 10, levelRequirement = 90, spiritReservationFlat = 30, }, + [1] = { levelRequirement = 0, spiritReservationFlat = 30, }, + [2] = { levelRequirement = 3, spiritReservationFlat = 30, }, + [3] = { levelRequirement = 6, spiritReservationFlat = 30, }, + [4] = { levelRequirement = 10, spiritReservationFlat = 30, }, + [5] = { levelRequirement = 14, spiritReservationFlat = 30, }, + [6] = { levelRequirement = 18, spiritReservationFlat = 30, }, + [7] = { levelRequirement = 22, spiritReservationFlat = 30, }, + [8] = { levelRequirement = 26, spiritReservationFlat = 30, }, + [9] = { levelRequirement = 31, spiritReservationFlat = 30, }, + [10] = { levelRequirement = 36, spiritReservationFlat = 30, }, + [11] = { levelRequirement = 41, spiritReservationFlat = 30, }, + [12] = { levelRequirement = 46, spiritReservationFlat = 30, }, + [13] = { levelRequirement = 52, spiritReservationFlat = 30, }, + [14] = { levelRequirement = 58, spiritReservationFlat = 30, }, + [15] = { levelRequirement = 64, spiritReservationFlat = 30, }, + [16] = { levelRequirement = 66, spiritReservationFlat = 30, }, + [17] = { levelRequirement = 72, spiritReservationFlat = 30, }, + [18] = { levelRequirement = 78, spiritReservationFlat = 30, }, + [19] = { levelRequirement = 84, spiritReservationFlat = 30, }, + [20] = { levelRequirement = 90, spiritReservationFlat = 30, }, + [21] = { levelRequirement = 90, spiritReservationFlat = 30, }, + [22] = { levelRequirement = 90, spiritReservationFlat = 30, }, + [23] = { levelRequirement = 90, spiritReservationFlat = 30, }, + [24] = { levelRequirement = 90, spiritReservationFlat = 30, }, + [25] = { levelRequirement = 90, spiritReservationFlat = 30, }, + [26] = { levelRequirement = 90, spiritReservationFlat = 30, }, + [27] = { levelRequirement = 90, spiritReservationFlat = 30, }, + [28] = { levelRequirement = 90, spiritReservationFlat = 30, }, + [29] = { levelRequirement = 90, spiritReservationFlat = 30, }, + [30] = { levelRequirement = 90, spiritReservationFlat = 30, }, + [31] = { levelRequirement = 90, spiritReservationFlat = 30, }, + [32] = { levelRequirement = 90, spiritReservationFlat = 30, }, + [33] = { levelRequirement = 90, spiritReservationFlat = 30, }, + [34] = { levelRequirement = 90, spiritReservationFlat = 30, }, + [35] = { levelRequirement = 90, spiritReservationFlat = 30, }, + [36] = { levelRequirement = 90, spiritReservationFlat = 30, }, + [37] = { levelRequirement = 90, spiritReservationFlat = 30, }, + [38] = { levelRequirement = 90, spiritReservationFlat = 30, }, + [39] = { levelRequirement = 90, spiritReservationFlat = 30, }, + [40] = { levelRequirement = 90, spiritReservationFlat = 30, }, }, statSets = { [1] = { @@ -2021,8 +2021,8 @@ skills["BriarpatchPlayer"] = { }, stats = { "briarpatch_maximum_stored_physical_damage", + "display_statset_no_hit_damage", "thorns_damage_modifiers_apply_to_spell_damage", - "is_area_damage", }, levels = { [1] = { 9, statInterpolation = { 1, }, actorLevel = 1, }, @@ -4927,7 +4927,7 @@ skills["MetaFeralInvocationPlayer"] = { name = "Feral Invocation", baseTypeName = "Feral Invocation", color = 1, - description = "While active, gains Energy when you spend Mana. Using the Invocation once sufficient Energy is gathered will consume the Energy to create visages which attack once with a socketed Shapeshifting Attack, creating multiple visages if it has enough Energy.", + description = "While active, gains Energy when you spend Mana. Using the Invocation once sufficient Energy is gathered will consume the Energy to trigger socketed Shapeshifting Attacks, and can trigger them multiple times if it has enough Energy.", skillTypes = { [SkillType.HasReservation] = true, [SkillType.OngoingSkill] = true, [SkillType.Meta] = true, [SkillType.Persistent] = true, [SkillType.Buff] = true, [SkillType.CanHaveMultipleOngoingSkillInstances] = true, [SkillType.Invocation] = true, [SkillType.GeneratesEnergy] = true, [SkillType.Triggers] = true, [SkillType.AttackInPlace] = true, [SkillType.Cooldown] = true, }, weaponTypes = { ["Talisman"] = true, @@ -12915,7 +12915,6 @@ skills["WolfLunarBlessingPlayer"] = { "wolf_lunar_blessing_all_damage_%_to_gain_as_cold_damage", "global_knockback", "display_this_skill_cooldown_does_not_recover_during_buff", - "base_deal_no_damage", }, levels = { [1] = { 40, statInterpolation = { 1, }, actorLevel = 1, }, @@ -13982,7 +13981,7 @@ skills["OilBarragePlayer"] = { baseTypeName = "Oil Barrage", color = 1, description = "Shapeshift into a Wyvern and spit Oil at enemies, creating Oil Ground where the Projectiles land. Consumes Power Charges if possible to instead Channel a sustained barrage of electrified Oil that does not create Oil Ground. Projectiles are fired in sequence, allowing multiple Projectiles to Hit the same target.", - skillTypes = { [SkillType.Attack] = true, [SkillType.Projectile] = true, [SkillType.ProjectilesFromUser] = true, [SkillType.Damage] = true, [SkillType.Area] = true, [SkillType.RangedAttack] = true, [SkillType.Channel] = true, [SkillType.Shapeshift] = true, [SkillType.Wyvern] = true, [SkillType.ConsumesCharges] = true, [SkillType.SkillConsumesPowerChargesOnUse] = true, [SkillType.CreatesGroundEffect] = true, [SkillType.Sustained] = true, }, + skillTypes = { [SkillType.Attack] = true, [SkillType.Projectile] = true, [SkillType.ProjectilesFromUser] = true, [SkillType.Damage] = true, [SkillType.Area] = true, [SkillType.RangedAttack] = true, [SkillType.Channel] = true, [SkillType.Shapeshift] = true, [SkillType.Wyvern] = true, [SkillType.ConsumesCharges] = true, [SkillType.SkillConsumesPowerChargesOnUse] = true, [SkillType.CreatesGroundEffect] = true, }, weaponTypes = { ["Talisman"] = true, }, @@ -18346,7 +18345,7 @@ skills["ThrashingVinesPlayer"] = { statSets = { [1] = { label = "Thrashing Vines", - baseEffectiveness = 2.0699999332428, + baseEffectiveness = 1.75, incrementalEffectiveness = 0.12999999523163, damageIncrementalEffectiveness = 0.0074000000022352, statDescriptionScope = "thrashing_vines", @@ -18369,7 +18368,7 @@ skills["ThrashingVinesPlayer"] = { { "movement_speed_+%_final_while_performing_action", -70 }, { "movement_speed_acceleration_+%_per_second_while_performing_action", 160 }, { "movement_speed_while_performing_action_locked_duration_%", 50 }, - { "thrashing_vines_retarget_cooldown_ms", 500 }, + { "thrashing_vines_retarget_cooldown_ms", 2000 }, }, stats = { "spell_minimum_base_physical_damage", @@ -18382,46 +18381,46 @@ skills["ThrashingVinesPlayer"] = { "spell_maximum_base_physical_damage", }, levels = { - [1] = { 6, 10, statInterpolation = { 1, 1, }, actorLevel = 1, }, - [2] = { 9, 13, statInterpolation = { 1, 1, }, actorLevel = 3.4519999027252, }, - [3] = { 12, 18, statInterpolation = { 1, 1, }, actorLevel = 6.7670001983643, }, - [4] = { 15, 23, statInterpolation = { 1, 1, }, actorLevel = 10.307999610901, }, - [5] = { 19, 29, statInterpolation = { 1, 1, }, actorLevel = 14.074999809265, }, - [6] = { 23, 35, statInterpolation = { 1, 1, }, actorLevel = 18.068000793457, }, - [7] = { 28, 43, statInterpolation = { 1, 1, }, actorLevel = 22.287000656128, }, - [8] = { 34, 51, statInterpolation = { 1, 1, }, actorLevel = 26.732000350952, }, - [9] = { 40, 60, statInterpolation = { 1, 1, }, actorLevel = 31.40299987793, }, - [10] = { 47, 70, statInterpolation = { 1, 1, }, actorLevel = 36.299999237061, }, - [11] = { 54, 81, statInterpolation = { 1, 1, }, actorLevel = 41.423000335693, }, - [12] = { 63, 94, statInterpolation = { 1, 1, }, actorLevel = 46.771999359131, }, - [13] = { 72, 108, statInterpolation = { 1, 1, }, actorLevel = 52.34700012207, }, - [14] = { 83, 124, statInterpolation = { 1, 1, }, actorLevel = 58.147998809814, }, - [15] = { 94, 142, statInterpolation = { 1, 1, }, actorLevel = 64.175003051758, }, - [16] = { 108, 161, statInterpolation = { 1, 1, }, actorLevel = 70.428001403809, }, - [17] = { 122, 184, statInterpolation = { 1, 1, }, actorLevel = 76.906997680664, }, - [18] = { 139, 208, statInterpolation = { 1, 1, }, actorLevel = 83.611999511719, }, - [19] = { 157, 236, statInterpolation = { 1, 1, }, actorLevel = 90.542999267578, }, - [20] = { 178, 267, statInterpolation = { 1, 1, }, actorLevel = 97.699996948242, }, - [21] = { 201, 302, statInterpolation = { 1, 1, }, actorLevel = 105.08300018311, }, - [22] = { 228, 341, statInterpolation = { 1, 1, }, actorLevel = 112.69200134277, }, - [23] = { 257, 385, statInterpolation = { 1, 1, }, actorLevel = 120.52700042725, }, - [24] = { 290, 435, statInterpolation = { 1, 1, }, actorLevel = 128.58799743652, }, - [25] = { 327, 490, statInterpolation = { 1, 1, }, actorLevel = 136.875, }, - [26] = { 369, 553, statInterpolation = { 1, 1, }, actorLevel = 145.38800048828, }, - [27] = { 416, 624, statInterpolation = { 1, 1, }, actorLevel = 154.12699890137, }, - [28] = { 469, 704, statInterpolation = { 1, 1, }, actorLevel = 163.09199523926, }, - [29] = { 529, 794, statInterpolation = { 1, 1, }, actorLevel = 172.28300476074, }, - [30] = { 597, 896, statInterpolation = { 1, 1, }, actorLevel = 181.69999694824, }, - [31] = { 674, 1011, statInterpolation = { 1, 1, }, actorLevel = 191.34300231934, }, - [32] = { 761, 1141, statInterpolation = { 1, 1, }, actorLevel = 201.21200561523, }, - [33] = { 860, 1289, statInterpolation = { 1, 1, }, actorLevel = 211.30700683594, }, - [34] = { 971, 1457, statInterpolation = { 1, 1, }, actorLevel = 221.62800598145, }, - [35] = { 1098, 1648, statInterpolation = { 1, 1, }, actorLevel = 232.17500305176, }, - [36] = { 1243, 1864, statInterpolation = { 1, 1, }, actorLevel = 242.94799804688, }, - [37] = { 1407, 2111, statInterpolation = { 1, 1, }, actorLevel = 253.94700622559, }, - [38] = { 1595, 2392, statInterpolation = { 1, 1, }, actorLevel = 265.17199707031, }, - [39] = { 1808, 2712, statInterpolation = { 1, 1, }, actorLevel = 276.62298583984, }, - [40] = { 2052, 3078, statInterpolation = { 1, 1, }, actorLevel = 288.29998779297, }, + [1] = { 5, 8, statInterpolation = { 1, 1, }, actorLevel = 1, }, + [2] = { 7, 11, statInterpolation = { 1, 1, }, actorLevel = 3.4519999027252, }, + [3] = { 10, 15, statInterpolation = { 1, 1, }, actorLevel = 6.7670001983643, }, + [4] = { 13, 19, statInterpolation = { 1, 1, }, actorLevel = 10.307999610901, }, + [5] = { 16, 24, statInterpolation = { 1, 1, }, actorLevel = 14.074999809265, }, + [6] = { 20, 30, statInterpolation = { 1, 1, }, actorLevel = 18.068000793457, }, + [7] = { 24, 36, statInterpolation = { 1, 1, }, actorLevel = 22.287000656128, }, + [8] = { 29, 43, statInterpolation = { 1, 1, }, actorLevel = 26.732000350952, }, + [9] = { 34, 51, statInterpolation = { 1, 1, }, actorLevel = 31.40299987793, }, + [10] = { 39, 59, statInterpolation = { 1, 1, }, actorLevel = 36.299999237061, }, + [11] = { 46, 69, statInterpolation = { 1, 1, }, actorLevel = 41.423000335693, }, + [12] = { 53, 79, statInterpolation = { 1, 1, }, actorLevel = 46.771999359131, }, + [13] = { 61, 91, statInterpolation = { 1, 1, }, actorLevel = 52.34700012207, }, + [14] = { 70, 105, statInterpolation = { 1, 1, }, actorLevel = 58.147998809814, }, + [15] = { 80, 120, statInterpolation = { 1, 1, }, actorLevel = 64.175003051758, }, + [16] = { 91, 136, statInterpolation = { 1, 1, }, actorLevel = 70.428001403809, }, + [17] = { 103, 155, statInterpolation = { 1, 1, }, actorLevel = 76.906997680664, }, + [18] = { 117, 176, statInterpolation = { 1, 1, }, actorLevel = 83.611999511719, }, + [19] = { 133, 200, statInterpolation = { 1, 1, }, actorLevel = 90.542999267578, }, + [20] = { 151, 226, statInterpolation = { 1, 1, }, actorLevel = 97.699996948242, }, + [21] = { 170, 255, statInterpolation = { 1, 1, }, actorLevel = 105.08300018311, }, + [22] = { 192, 289, statInterpolation = { 1, 1, }, actorLevel = 112.69200134277, }, + [23] = { 217, 326, statInterpolation = { 1, 1, }, actorLevel = 120.52700042725, }, + [24] = { 245, 368, statInterpolation = { 1, 1, }, actorLevel = 128.58799743652, }, + [25] = { 276, 415, statInterpolation = { 1, 1, }, actorLevel = 136.875, }, + [26] = { 312, 468, statInterpolation = { 1, 1, }, actorLevel = 145.38800048828, }, + [27] = { 352, 527, statInterpolation = { 1, 1, }, actorLevel = 154.12699890137, }, + [28] = { 397, 595, statInterpolation = { 1, 1, }, actorLevel = 163.09199523926, }, + [29] = { 447, 671, statInterpolation = { 1, 1, }, actorLevel = 172.28300476074, }, + [30] = { 505, 757, statInterpolation = { 1, 1, }, actorLevel = 181.69999694824, }, + [31] = { 570, 855, statInterpolation = { 1, 1, }, actorLevel = 191.34300231934, }, + [32] = { 643, 965, statInterpolation = { 1, 1, }, actorLevel = 201.21200561523, }, + [33] = { 727, 1090, statInterpolation = { 1, 1, }, actorLevel = 211.30700683594, }, + [34] = { 821, 1232, statInterpolation = { 1, 1, }, actorLevel = 221.62800598145, }, + [35] = { 929, 1393, statInterpolation = { 1, 1, }, actorLevel = 232.17500305176, }, + [36] = { 1051, 1576, statInterpolation = { 1, 1, }, actorLevel = 242.94799804688, }, + [37] = { 1190, 1785, statInterpolation = { 1, 1, }, actorLevel = 253.94700622559, }, + [38] = { 1348, 2022, statInterpolation = { 1, 1, }, actorLevel = 265.17199707031, }, + [39] = { 1529, 2293, statInterpolation = { 1, 1, }, actorLevel = 276.62298583984, }, + [40] = { 1735, 2602, statInterpolation = { 1, 1, }, actorLevel = 288.29998779297, }, }, }, } @@ -20020,7 +20019,6 @@ skills["WalkingCalamityMeteorPlayer"] = { stats = { "is_area_damage", "attack_is_not_melee_override", - "triggerable_in_any_set", }, levels = { [1] = { actorLevel = 1, }, @@ -20082,7 +20080,6 @@ skills["WalkingCalamityMeteorPlayer"] = { stats = { "is_area_damage", "attack_is_not_melee_override", - "triggerable_in_any_set", }, levels = { [1] = { baseMultiplier = 1.5, actorLevel = 1, }, diff --git a/src/Data/Skills/other.lua b/src/Data/Skills/other.lua index c73b35edb..9b3bca311 100644 --- a/src/Data/Skills/other.lua +++ b/src/Data/Skills/other.lua @@ -4399,7 +4399,7 @@ skills["CommandCorpseBeetleExplodePlayer"] = { name = "Command: {0} ", hidden = true, fromTree = true, - skillTypes = { [SkillType.CommandsMinions] = true, [SkillType.UsableWhileMoving] = true, [SkillType.UsableWhileShapeshifted] = true, }, + skillTypes = { [SkillType.CommandsMinions] = true, [SkillType.UsableWhileMoving] = true, }, castTime = 0.4, qualityStats = { }, @@ -4634,7 +4634,7 @@ skills["CommandSandDjinnKnifeThrowPlayer"] = { name = "Command: {0} ", hidden = true, fromTree = true, - skillTypes = { [SkillType.CommandsMinions] = true, [SkillType.UsableWhileMoving] = true, [SkillType.UsableWhileShapeshifted] = true, }, + skillTypes = { [SkillType.CommandsMinions] = true, [SkillType.UsableWhileMoving] = true, }, castTime = 0.4, qualityStats = { }, @@ -5847,7 +5847,7 @@ skills["CommandWaterDjinnBubblePlayer"] = { name = "Command: {0} ", hidden = true, fromTree = true, - skillTypes = { [SkillType.CommandsMinions] = true, [SkillType.UsableWhileMoving] = true, [SkillType.UsableWhileShapeshifted] = true, }, + skillTypes = { [SkillType.CommandsMinions] = true, [SkillType.UsableWhileMoving] = true, }, castTime = 0.4, qualityStats = { }, @@ -6770,7 +6770,7 @@ skills["CommandFireDjinnLivingBombPlayer"] = { name = "Command: {0} ", hidden = true, fromTree = true, - skillTypes = { [SkillType.CommandsMinions] = true, [SkillType.UsableWhileMoving] = true, [SkillType.UsableWhileShapeshifted] = true, }, + skillTypes = { [SkillType.CommandsMinions] = true, [SkillType.UsableWhileMoving] = true, }, castTime = 0.4, qualityStats = { }, diff --git a/src/Data/Skills/sup_int.lua b/src/Data/Skills/sup_int.lua index 0460846bb..0d84e93b5 100644 --- a/src/Data/Skills/sup_int.lua +++ b/src/Data/Skills/sup_int.lua @@ -3126,7 +3126,7 @@ skills["SupportDrainedAilmentPlayer"] = { } skills["SupportShockingRiftPlayer"] = { name = "Electromagnetism", - description = "Supports Skills that Hit enemies. When Supported Skills Shock an enemy that is nearby other Shocked enemies, trigger Electromagnetism, sucking in nearby enemies, Hindering them, and dealing Lightning damage at an interval.", + description = "Supports Skills that which Hit enemies. When Supported Skills Shock an enemy that is nearby other Shocked enemies, trigger Electromagnetism, sucking in nearby enemies, Hindering them, and dealing Lightning damage at an interval.", color = 3, support = true, requireSkillTypes = { SkillType.Damage, SkillType.Attack, SkillType.CrossbowAmmoSkill, }, @@ -7034,7 +7034,7 @@ skills["SupportSpellCascadePlayer"] = { support = true, requireSkillTypes = { SkillType.Cascadable, }, addSkillTypes = { }, - excludeSkillTypes = { SkillType.SummonsTotem, SkillType.UsedByTotem, SkillType.Trapped, SkillType.RemoteMined, }, + excludeSkillTypes = { SkillType.SummonsTotem, SkillType.UsedByTotem, SkillType.Trapped, SkillType.RemoteMined, SkillType.Vaal, SkillType.Channel, SkillType.Attack, }, gemFamily = { "SpellCascade",}, levels = { [1] = { levelRequirement = 0, }, @@ -7075,7 +7075,7 @@ skills["SupportSpellEchoPlayer"] = { support = true, requireSkillTypes = { SkillType.Cascadable, }, addSkillTypes = { }, - excludeSkillTypes = { SkillType.SummonsTotem, SkillType.UsedByTotem, SkillType.Trapped, SkillType.RemoteMined, SkillType.Triggered, }, + excludeSkillTypes = { SkillType.SummonsTotem, SkillType.UsedByTotem, SkillType.Trapped, SkillType.RemoteMined, SkillType.Vaal, SkillType.Channel, SkillType.Attack, SkillType.Triggered, }, gemFamily = { "SpellEcho",}, levels = { [1] = { levelRequirement = 0, manaMultiplier = 50, }, @@ -8103,7 +8103,7 @@ skills["SupportZenithPlayerTwo"] = { gemFamily = { "Zenith",}, ignoreMinionTypes = true, levels = { - [1] = { levelRequirement = 0, }, + [1] = { levelRequirement = 0, manaMultiplier = 20, }, }, statSets = { [1] = { diff --git a/src/Data/Skills/sup_str.lua b/src/Data/Skills/sup_str.lua index 94a778a4d..8b9d6411b 100644 --- a/src/Data/Skills/sup_str.lua +++ b/src/Data/Skills/sup_str.lua @@ -277,6 +277,11 @@ skills["SupportArmourBreakPlayer"] = { label = "Armour Break I", incrementalEffectiveness = 0.054999999701977, statDescriptionScope = "gem_stat_descriptions", + statMap = { + ["armour_break_physical_damage_%_dealt_as_armour_break"] = { + mod("PhysArmourBreakMulti", "MULTIPLIER", nil), + }, + }, baseFlags = { }, constantStats = { @@ -307,6 +312,11 @@ skills["SupportArmourBreakPlayerTwo"] = { label = "Armour Break II", incrementalEffectiveness = 0.054999999701977, statDescriptionScope = "gem_stat_descriptions", + statMap = { + ["armour_break_physical_damage_%_dealt_as_armour_break"] = { + mod("PhysArmourBreakMulti", "MULTIPLIER", nil), + }, + }, baseFlags = { }, constantStats = { @@ -338,6 +348,11 @@ skills["SupportArmourBreakPlayerThree"] = { label = "Armour Break III", incrementalEffectiveness = 0.054999999701977, statDescriptionScope = "gem_stat_descriptions", + statMap = { + ["armour_break_physical_damage_%_dealt_as_armour_break"] = { + mod("PhysArmourBreakMulti", "MULTIPLIER", nil), + }, + }, baseFlags = { }, constantStats = { diff --git a/src/Export/Skills/sup_str.txt b/src/Export/Skills/sup_str.txt index f1bc03c68..72773ebd0 100644 --- a/src/Export/Skills/sup_str.txt +++ b/src/Export/Skills/sup_str.txt @@ -46,16 +46,31 @@ local skills, mod, flag, skill = ... #skill SupportArmourBreakPlayer #set SupportArmourBreakPlayer +statMap = { + ["armour_break_physical_damage_%_dealt_as_armour_break"] = { + mod("PhysArmourBreakMulti", "MULTIPLIER", nil), + }, +}, #mods #skillEnd #skill SupportArmourBreakPlayerTwo #set SupportArmourBreakPlayerTwo +statMap = { + ["armour_break_physical_damage_%_dealt_as_armour_break"] = { + mod("PhysArmourBreakMulti", "MULTIPLIER", nil), + }, +}, #mods #skillEnd #skill SupportArmourBreakPlayerThree #set SupportArmourBreakPlayerThree +statMap = { + ["armour_break_physical_damage_%_dealt_as_armour_break"] = { + mod("PhysArmourBreakMulti", "MULTIPLIER", nil), + }, +}, #mods #skillEnd diff --git a/src/Modules/CalcOffence.lua b/src/Modules/CalcOffence.lua index fc6eaad03..e64edb013 100644 --- a/src/Modules/CalcOffence.lua +++ b/src/Modules/CalcOffence.lua @@ -389,9 +389,6 @@ function calcs.offence(env, actor, activeSkill) return end - -- Calculate armour break - output.ArmourBreakPerHit = calcLib.val(skillModList, "ArmourBreakPerHit", skillCfg) - local function calcAreaOfEffect(skillModList, skillCfg, skillData, skillFlags, output, breakdown) local incArea, moreArea = calcLib.mods(skillModList, skillCfg, "AreaOfEffect", "AreaOfEffectPrimary") output.AreaOfEffectMod = round(round(incArea * moreArea, 10), 2) @@ -4081,9 +4078,12 @@ function calcs.offence(env, actor, activeSkill) t_insert(globalBreakdown.AverageBurstDamage, s_format("= %.1f ^8(total burst damage)", globalOutput.AverageBurstDamage)) end - - -- Calculate PvP values - + --Calculate armour break based on Average Phys hit + local ArmourFromPhysMulti = skillModList:Sum("MULTIPLIER", skillCfg, "PhysArmourBreakMulti") / 100 + local ArmourBreakFromPhys = (output.PhysicalHitAverage * (1 - output.CritChance / 100) + output.PhysicalCritAverage * output.CritChance / 100) * ArmourFromPhysMulti + skillModList:NewMod("ArmourBreakPerHit", "BASE", ArmourBreakFromPhys) + globalOutput.ArmourBreakPerHit = calcLib.val(skillModList, "ArmourBreakPerHit", skillCfg) + --setup flags skillFlags.isPvP = false skillFlags.notAttackPvP = false