Description
RootKeeper
RootKeeper is a focused crowd-control timer for Druids in World of Warcraft Classic Era. It tracks your own directly cast Entangling Roots, warns when it is time to recast, and reports how active Roots ended.
The addon never casts automatically and does not change your action bars.
Features
- Rank-correct PvE countdown for Entangling Roots
- Prewarning plus cast-time and optional latency marker
- Refresh detection
- Normal expiry without a false break warning
- Conservative likely attribution for damage-broken Roots
- Breaker name, breaking spell and remaining Roots time
- Fatal-hit handling for early Roots breaks
- Detection of resisted, immune and missed casts
- Unknown early-break warning when no likely culprit can be found
- Movable and scalable timer, Breaker and diagnostic-log windows
- Copyable debug log
- Saved window positions and settings
- Hidden group communication in PARTY, RAID and INSTANCE_CHAT
- Event-ID deduplication for network messages
- Optional visible PARTY announcements, disabled by default
- English, German, French, Spanish and Russian localization
Supported Classic Era ranks
| Rank | Spell ID | PvE duration | Learned at |
|---|---|---|---|
| 1 | 339 | 12 seconds | Level 8 |
| 2 | 1062 | 15 seconds | Level 18 |
| 3 | 5195 | 18 seconds | Level 28 |
| 4 | 5196 | 21 seconds | Level 38 |
| 5 | 9852 | 24 seconds | Level 48 |
| 6 | 9853 | 27 seconds | Level 58 |
These are maximum PvE durations. PvP diminishing returns are not modeled.
Roots-specific break attribution
Classic Era does not reliably provide SPELL_AURA_BROKEN or SPELL_AURA_BROKEN_SPELL when Entangling Roots ends from damage. Testing on the real Classic Era client confirmed that the breaking damage event can arrive immediately after SPELL_AURA_REMOVED.
RootKeeper briefly delays the early-break decision so it can correlate this damage correctly. Damage arriving immediately after the aura loss takes priority; eligible recent damage from before the aura loss is used as a fallback. The periodic damage of the tracked Entangling Roots spell is excluded as a culprit candidate.
Because the client provides no explicit break confirmation in these cases, RootKeeper always labels the source and spell as likely, never confirmed. If no suitable damage event exists, it reports an unknown early break without blaming a player. Fatal breaking hits are handled before target-death cleanup.
Nature's Grasp
Version 1.0.0 tracks only directly cast Entangling Roots. Automatic Roots triggered by the Nature's Grasp talent use separate proc spell IDs and are not included in this release.
Failed casts
Failed casts such as RESIST, IMMUNE or MISS are shown in the Breaker window. They have no remaining-time value because no new Roots aura was applied.
Group communication
RootKeeper can share Breaker events invisibly with other RootKeeper users in the group. Supported channels are PARTY, RAID and INSTANCE_CHAT. Receiving works on non-Druid characters. Event IDs prevent a sender's echoed addon message from creating duplicate entries.
Public PARTY announcements are available as an option and are off by default. Likely and unknown attribution is never sent as a public accusation.
Commands
- Use
/rkor/rootkeeper. - Useful commands:
/rk help/rk lockand/rk unlock/rk reset/rk prewarn 5/rk latency on|off/rk breaker/rk say on|off/rk log/rk debug on|off
Languages
- English (
enUS) - German (
deDE) - French (
frFR) - Spanish (
esESandesMX) - Russian (
ruRU) - English is used as the fallback language.
Release notes — 1.0.0
- First public release for WoW Classic Era 1.15.9
- Directly cast Entangling Roots ranks 1-6
- Roots-specific handling for damage events delivered after aura removal
- Real-client testing confirmed Rank 1 timing, normal expiry, Wrath and melee breaks, fatal-hit handling, RESIST reporting, remaining-time display, hidden PARTY transmission to a non-Druid receiver, and sender-message deduplication
- Nature's Grasp proc variants are not included in this release
Author: aba_kus


