This World of Warcraft AddOn tracks the talents, buffs and damage modifiers applied for Rake, Rip, Thrash and Lunar Inspiration Moonfire. These damage modifiers are then displayed from WeakAuras, Plater and other addons.
Feral Druid is the only class where damage over time abilities "snapshot". The buffs apply for the full duration of the debuff, even after they have expired. Deciding when to replace a weaker snapshot is what makes Feral so much fun to play.
Enabling the FeralSnapshots NamePlates addon, snapshot strength will show on Blizzard NamePlates.
Each bleed that can snapshot shows indicators on the current and next snapshots based on the player's current buffs. Use this to decide to overwrite a bleed with a stronger or weaker version.
The shape and color of the indicator compares the current snapshot to what would be applied if the bleed is overwritten.
Indicator | Has Snapshot | Would apply snapshot | Power | Action |
---|---|---|---|---|
Equal | Gain snapshotting buff (Tiger's Fury, Shadowmeld, Bloodtalons) | |||
X | X | Equal (buffed) | Reapply in pandemic window | |
X | Gain | Reapply soon | ||
X | Loss | Gain snapshotting buff or wait for expiration |
The lower indicator is for Tiger's Fury snapshots which applies to all Rake, Rip, Thrash and Moonfire with Lunar Inspiration.
The upper indicator is for bleed specific snapshots like Stealth, Bloodtalons and Clear Casting with Moment of Clarity.
Indicator | Buffs | Strength |
---|---|---|
Prowl, Sudden Ambush (Talented), Shadowmeld (Racial) | 160% | |
Bloodtalons (Talented) | 125% | |
Clear Casting (Moment of Clarity) | 115% |
The global FeralSnapshots table provides functions that return a damage modifier table by buff class.
When buffs are active, the damage modifiers will reflect the power of each buff by spell. For example for rake, with tigersFury
and a stealth
spell active.
-- Snapshot examples with: Tiger's Fury, Sudden Ambush, and Bloodtalons auras
{ -- Rake
tigersFury = 1.15,
bloodtalons = 1,
momentOfClarity = 1,
stealth = 1.6,
total = 1.84,
}
{ -- Rip
tigersFury = 1.15,
bloodtalons = 1.25,
momentOfClarity = 1,
stealth = 1,
total = 1.4375,
}
The API functions return damage modifier tables for the spell per unit.
-- Next damage modifiers that would snapshot on next application based on
-- current buffs and talents.
--
-- Modifiers are >= 1
--
-- Returns nil if the spell will not snapshot.
FeralSnapshots.Next(spellId)
FeralSnapshots.NextRake()
FeralSnapshots.NextRip()
FeralSnapshots.NextThrash()
FeralSnapshots.NextMoonfire()
-- Current snapshot damage modifier applied to the unit.
--
-- Modifiers are >= 1
--
-- Returns nil if the spell is not applied.
-- Returns nil if the spell will not snapshot.
FeralSnapshots.Current(GUID, spellId)
FeralSnapshots.CurrentRake(GUID)
FeralSnapshots.CurrentRip(GUID)
FeralSnapshots.CurrentThrash(GUID)
FeralSnapshots.CurrentMoonfire(GUID)
-- Relative damage modifiers to the applied snapshot.
--
-- Stronger damage modifiers are > 1
-- Weaker damage modifiers are < 1
--
-- Returns the next damage modifiers if the spell is not applied.
-- Returns nil if the spell will not snapshot.
FeralSnapshots.Relative(GUID, spellId)
FeralSnapshots.RelativeRake(GUID)
FeralSnapshots.RelativeRip(GUID)
FeralSnapshots.RelativeThrash(GUID)
FeralSnapshots.RelativeMoonfire(GUID)
Spell IDs cast in Cat Form that snapshot:
{
rake = 155722, -- DoT portion
rip = 1079, -- DoT
thrash = 405233, -- DoT portion
moonfire = 155625, -- lunar inspiration DoT portion
}
Add a Custom Status Trigger to your aura on events UNIT_AURA:player:target PLAYER_TARGET_CHANGED
that exposes the relative damage percentage with dynamic stacks info:
Use conditions to.
Stacks > 100
Stacks < 100
This project came from asking "What is the minimum information needed to be an amazing Feral Druid?".
Deciding when to cast a bleed is the most dynamic aspect of Feral gameplay. I wanted to aid that decision in any addon, like WeakAuras, Plater or other AddOns, without custom scripts in one addon depending on scripts in another.
Similar:
Different: