Decursive
Decursive for World of Warcraft
Decursive is a cleansing mod intended to make affliction removal easy, effective and fun for all the classes having this ability.
Documentation:
NOTE: Type /DECURSIVE to open the configuration panel. Decursive's options are not directly available in the "Interface" panel due to ongoing tainting issues Blizzard is not willing to fix.
Decursive usage - Micro Unit Frames documentation - Decursive Macro documentation - Frequently Asked Questions - commands
Decursive key benefits
Ease of use:
- Decursive supports all classes with cleansing abilities and configures itself automatically, it works straight out of the box, no configuration is required.
- Intuitive interface and detailed options, Decursive is suitable for simple usage and power users.
Control what and who you want to dispel:
- Easily Filter out afflictions you don't want to cure or that are useless to remove by class (some are pre-configured). (Such as afflictions affecting mana on non-mana classes, etc...).
- Choose between what you can dispel (magic, curses, poison, diseases, charms) choosing their priority. (this allows you to share the cleansing work with other players effectively)
- Prioritize or exclude members. (keep players, classes, or raid groups in a specific order to cleanse them in order of importance)
Manage Mind controlled units:
- If you are a Mage, a Druid or a Shaman you can Polymorph/Cyclone/Hex mind-controlled players.
- In any case Decursive will allow you to target mind controlled units easily.
- Decursive supports magic charming affect removal for Shamans (Purge and Hex), Priests (Dispel Magic), Hunters (Tranquilizing Shot), and Warlocks (Fellhunter and Doomguards spells).
Don't waste time:
- Your cleansing spell Cooldown is displayed to maximize your dispel speed.
- An automatic blacklist will prevent you from loosing time on players who can't be dispelled. (player 'out of line of sight' for example).
- Decursive choose a logical cleansing order depending on your current position in the raid. (preventing dispel concurrence between players and thus 'nothing to dispel' messages)
React faster:
- Visual and/or auditive alerts when someone needs your attention and can be dispelled.
- Special sound alert when Unstable Affliction is detected and you're about to dispel it.
- Visual and auditive alert when your dispel attempts are resisted or fail.
Integration in any interface:
- Decursive is designed to save screen real estate and to be forgotten when not needed.
- Many options allow you to customize Decursive appearance and interface behavior.
- All Decursive alert colors can be modified making it suitable for color-blind people.
Highly optimized and effective coding:
- Decursive was developed with memory and CPU usage in mind, installing Decursive won't affect your frame rate even in the worst battle conditions.
- Bug free: bugs are not tolerated in Decursive.
In brief, what you get with Decursive is effectiveness, a player using Decursive will always dispel faster than other players.
See also:
- Decursive usage
- Micro Unit Frames documentation
- Decursive Macro documentation
- Frequently Asked Questions try this before asking any question
- commands
Interesting articles and videos about Decursive's usage:
- 2010-11-20 (Updated in 2011-06-11)
A complete Decursive guide by @darista: daritos.apotheosis-now.com/?p=24
- 2009-07-15
Article: www.hotsdots.com/2009/07/improving-the-interface-using-addons-7-decursive-cleansing-and-dispelling/
- 2010-02-20:
Video: WarcraftScience's Decursive tutorial
For other videos about Decursive, see the YouTube playlist.
Decursive is dedicated to the memory of Bertrand Sense known as Glorfindal on the European server Les Sentinelles. He was the raid leader of my guild (Horizon)
For suggestions, feature request, or bug report, use the ticket system provided by WoWAce.com.
Development versions of Decursive are available at this URI: https://www.2072productions.com/to/decursive_dev ; note that development versions may be unstable. Unless you want to help testing unstable code you should download the versions considered stable below.
Do not forget to rate Decursive!
Bitcoin donation address: 1LEHZuPsiHN4hM3H3Gru5xKmDgCj867eFX
-
View User Profile
-
Send Message
Posted Jan 18, 2026I got Decursive to work thanks to the people in these comments!!
1. Download Classic Decursive from CF and copy it from _classic_era_ to _anniversary_ (Interface/AddOns folder for those who do not know).
2. Open Dcr_DIAG.lua in Notepad or VSCode -> Find Line 1033: "if tocversion < DcrMinTOC or tocversion > 20000 and tocversion < DcrMinMidTOC then" -> Change 20000 to 30000 -> Save.
3. Open Dcr_init.lua in Notepad or VSCode -> Find Line 1159: "D.eventFrame:RegisterEvent("LEARNED_SPELL_IN_TAB");" -> DELETE the whole row so that line 1160 becomes 1159 -> Save.
4. Reboot your game and confirm Decursive loading up as it should.
Until the developer updates the addon this temp fix worked for me.
Happy Decursing! :)
-
View User Profile
-
Send Message
Posted Jan 17, 2026I used the classic decursive, just changed one line in DCR_init.lua:
D.eventFrame:RegisterEvent("LEARNED_SPELL_IN_TAB");
on line 1166 to D.eventFrame:RegisterEvent("LEARNED_SPELL_IN_SKILL_LINE");
based on AddOns\Bartender4\ActionBars.lua, which says this is the correct event to use for TBC. So far decursive working for me!
-
View User Profile
-
Send Message
Posted Jan 18, 2026In reply to Ashtanga: Not working Decursive-2.7.32-classic.zip
-
View User Profile
-
Send Message
Posted Jan 16, 2026Please email the content of this window to <[email protected]>
(Use CTRL+A to select all and then CTRL+C to put the text in your clip-board)
Also tell in your report if you noticed any strange behavior of Decursive.
2.7.8.6 NOCLASS(22) CT: 1.7210 D: Fri Jan 16 16:33:53 2026 enUS BG BDTHFAd: nil nDrE: 1 Embeded: true W: 1 (LA: 26 TAMU: 115199) TA: 0 NDRTA: 0 BUIE: 0 TI: [dc:0, lc:0, y:0, LEBY:0, LB:0, TTE:0] (2.5.5, 65417, Jan 14 2026, 20505)
*****************
1.7210 (tr:'' ca:'false' icl:'false' h35_w24-101fps-Wetlands): Interface/AddOns/Decursive/Decursive.xml:270 Unrecognized XML: Backdrop,
STACK:
, nil,
LOCALS:
, nil -|count: 1
*****************
1.7210 (tr:'' ca:'false' icl:'false' h35_w24-101fps-Wetlands): Interface/AddOns/Decursive/Decursive.xml:270 Unrecognized XML attribute: bgFile,
STACK:
, nil,
LOCALS:
, nil -|count: 1
*****************
1.7210 (tr:'' ca:'false' icl:'false' h35_w24-101fps-Wetlands): Interface/AddOns/Decursive/Decursive.xml:270 Unrecognized XML attribute: edgeFile,
STACK:
, nil,
LOCALS:
, nil -|count: 1
*****************
1.7210 (tr:'' ca:'false' icl:'false' h35_w24-101fps-Wetlands): Interface/AddOns/Decursive/Decursive.xml:270 Unrecognized XML attribute: tile,
STACK:
, nil,
LOCALS:
, nil -|count: 1
*****************
1.7210 (tr:'' ca:'false' icl:'false' h35_w24-101fps-Wetlands): Interface/AddOns/Decursive/Decursive.xml:271 Unrecognized XML: EdgeSize,
STACK:
, nil,
LOCALS:
, nil -|count: 1
*****************
1.7210 (tr:'' ca:'false' icl:'false' h35_w24-101fps-Wetlands): Interface/AddOns/Decursive/Decursive.xml:272 Unrecognized XML: AbsValue,
STACK:
, nil,
LOCALS:
, nil -|count: 1
*****************
1.7210 (tr:'' ca:'false' icl:'false' h35_w24-101fps-Wetlands): Interface/AddOns/Decursive/Decursive.xml:272 Unrecognized XML attribute: val,
STACK:
, nil,
LOCALS:
, nil -|count: 1
*****************
1.7210 (tr:'' ca:'false' icl:'false' h35_w24-101fps-Wetlands): Interface/AddOns/Decursive/Decursive.xml:274 Unrecognized XML: TileSize,
STACK:
, nil,
LOCALS:
, nil -|count: 1
*****************
1.7210 (tr:'' ca:'false' icl:'false' h35_w24-101fps-Wetlands): Interface/AddOns/Decursive/Decursive.xml:275 Unrecognized XML: AbsValue,
STACK:
, nil,
LOCALS:
, nil -|count: 1
*****************
1.7210 (tr:'' ca:'false' icl:'false' h35_w24-101fps-Wetlands): Interface/AddOns/Decursive/Decursive.xml:275 Unrecognized XML attribute: val,
STACK:
, nil,
LOCALS:
, nil -|count: 1
-- --
Interface/AddOns/Decursive/Dcr_DIAG.lua:876: bad argument #1 to 'pairs' (table expected, got nil)
-- --_ExportCustomSpellConfiguration: D.classprofile.UserSpells not available
-- --
Decursive known spells:
(left and right side should be 'matching')
{
[DCR_LOC_MINDVISION] = [Mind Vision],
[SPELL_DISPELL_MAGIC] = [Dispel Magic],
[SPELL_COUNTERSPELL] = [Counterspell],
[Lesser Invisibility] = [Lesser Invisibility],
[ANCIENTHYSTERIA] = [Ancient Hysteria],
[CRIPLES] = [Cripple],
[MUTATINGINJECTION] = [Mutating Injection],
[SPELL_CLEANSE] = [Cleanse],
[SPELL_ABOLISH_POISON] = [Abolish Poison],
[Banish] = [Banish],
[SPELL_CURE_POISON_SHAMAN] = [Cure Poison],
[SPELL_ABOLISH_DISEASE] = [Abolish Disease],
[IGNITE] = [Ignite Mana],
[SPELL_CURE_DISEASE_SHAMAN] = [Cure Disease],
[MAGMASHAKLES] = [Magma Shackles],
[SPELL_PURGE] = [Purge],
[SPELL_FEAR] = [Fear],
[TAINTEDMIND] = [Tainted Mind],
[SPELL_REMOVE_LESSER_CURSE] = [Remove Lesser Curse],
[WIDOWSEMBRACE] = [Widow's Embrace],
[SPELL_PURIFY] = [Purify],
[SPELL_CURE_DISEASE_PRIEST] = [Cure Disease],
[DCR_LOC_SILENCE] = [Silence],
[Frost Trap Aura] = [Frost Trap Aura],
[SPELL_POLYMORPH] = [Polymorph],
[Stealth] = [Stealth],
[PET_DEVOUR_MAGIC] = [Devour Magic],
[DREAMLESSSLEEP] = [Dreamless Sleep],
[DELUSIONOFJINDO] = [Delusions of Jin'do],
[SPELL_WILL_OF_THE_FORSAKEN] = [Will of the Forsaken],
[Prowl] = [Prowl],
[SONICBURST] = [Sonic Burst],
[GDREAMLESSSLEEP] = [Greater Dreamless Sleep],
[Shadowmeld] = [Shadowmeld],
[DUSTCLOUD] = [Dust Cloud],
[SPELL_REMOVE_CURSE] = [Remove Curse],
[SPELL_CURE_POISON_DRUID] = [Cure Poison],
}
-- --Script ran too long errors:
{
[total] = [0],
}
-- --
Loaded Addons:
!BugGrabber (v11.2.7)[15]{MU: 83}
AI_VoiceOver (1.4.3)[28]{MU: 1391}
AI_VoiceOverData_TBC (1.0)[29]{MU: 2656}
AI_VoiceOverData_Vanilla (0.1)[30]{MU: 4428}
AI_VoiceOverData_VanillaExtra (1.0)[31]{MU: 785}
AI_VoiceOverData_WoTLK (1.0)[32]{MU: 2814}
Atlas (v3.13.0)[4]{MU: 3597}
AtlasLootClassic (v3.7.1)[6]{MU: 6595}
AtlasLootClassic_Data (v3.7.1)[8]{MU: 2092}
AtlasLootClassic_DungeonsAndRaids (v3.7.1)[9]{MU: 1826}
Attune (@project-version@)[13]{MU: 1607}
Baganator (779)[14]{MU: 4567}
BugSack (v11.2.9)[16]{MU: 98}
Decursive (2.7.8.6)[17]{MU: 1068}
HidingBar (v11.2.8)[18]{MU: 252}
Leatrix_Maps (2.5.000)[20]{MU: 1194}
Leatrix_Plus (2.5.000)[21]{MU: 974}
Questie (11.16.1)[22]{MU: 29092}
Scrap (11.2.6)[1]{MU: 599}
SpeedyAutoLoot (111)[23]{MU: 31}
Syndicator (259)[24]{MU: 1781}
TomTom (v4.2.10-release)[25]{MU: 646}
TradeSkillMaster (v4.14.50)[26]{MU: 41456}
TradeSkillMaster_AppHelper (v4.14.4)[27]{MU: 560}
WeakAuras (5.21.0)[33]{MU: 4673}
WhatsTraining (9.0.0)[38]{MU: 489}
-- --
-
View User Profile
-
Send Message
Posted Jan 16, 2026I got the latest Classic version working on TBC. See my comments here for more info: <a href="https://github.com/2072/Decursive/issues/34" rel="nofollow">https://github.com/2072/Decursive/issues/34</a>
-
View User Profile
-
Send Message
Posted Jan 16, 2026In reply to kj417: Works for me. Thank you.
-
View User Profile
-
Send Message
Posted Jan 15, 2026Same dcr diag.lua error here. plz fix.
-
View User Profile
-
Send Message
Posted Jan 14, 2026Hi, could you please update for Anniversary TBC?
-
View User Profile
-
Send Message
Posted Jan 14, 2026Same for me.
We need an update for TBC.
-
View User Profile
-
Send Message
Posted Jan 14, 2026same for me doesnt work
-
View User Profile
-
Send Message
Posted Jan 14, 2026Hi,
Not working on TBC anniversary, it says that my installation is corrupted, dcr diag.lua not loaded.
Even with a clean install it's the same.
Can someone help ?
Thanks.
-
View User Profile
-
Send Message
Posted Jan 2, 2026I hope this addon continues to work in Midnight. I have used Decursive since 2008, and it has been one of my favorite addons that I've ever used. I've become so reliant on it that dispelling anything without it seems wrong. I hope it survives :(
-
View User Profile
-
Send Message
Posted Dec 1, 2025Thanks for the addon. Would it be possible to add the ability to fix the frame to specific coordinates on the screen kind of like healbot does? I play at different screen sizes depending on what I'm doing and almost every time I log in I have to move the Decursive window to the right location as the window has moved.
-
View User Profile
-
Send Message
Posted Oct 25, 2025After login today in WOW classic the MFUs disappeared.
Everything else seems to work but no MFUs are shown.
-
View User Profile
-
Send Message
Posted Oct 25, 2025In reply to Schieni:
This is related to this: https://eu.forums.blizzard.com/en/wow/t/bug-report-talent-trees-not-displayed-after-patch-1158633829/593747
I've released a new version of Decursive to circumvent the issue.
-
View User Profile
-
Send Message
Posted Oct 21, 2025After todays downtime:
2.9200 (tr:'' ca:'false' icl:'false' h48_w45-241fps-Scarlet Monastery): Interface/AddOns/Decursive/Dcr_Events.lua:1137: Script_GetNumUnspentTalents: API unsupported in this version of World of Warcraft.,
STACK:
, [Interface/AddOns/Decursive/Dcr_Events.lua]:1137: in function <Interface/AddOns/Decursive/Dcr_Events.lua:1121>
[Interface/AddOns/Decursive/Dcr_Events.lua]:1165: in function 'func'
[Interface/AddOns/Decursive/Libs/AceTimer-3.0-17/AceTimer-3.0.lua]:57: in function <.../AddOns/Decursive/Libs/AceTimer-3.0/AceTimer-3.0.lua:50>,
-
View User Profile
-
Send Message
Posted Oct 21, 2025Possible solution (only tested in Anniversary server since that's the only one I play)
1. Open Dcr_Events.lua in Notepad++ or any text editor that shows line numbers.
2. Delete the contents in line 1137 completely.
3. Paste the following two lines (get the indentation correct, two preceding tab spaces) there:
local talentGroup = _G.GetActiveTalentGroup and GetActiveTalentGroup(false, false) or 1
if _G.GetUnspentTalentPoints and GetUnspentTalentPoints(false, false, talentGroup) then
-
View User Profile
-
Send Message
Posted Oct 21, 2025In reply to shk2404: HUGE
-
View User Profile
-
Send Message
Posted Oct 18, 2025Will Decursive still work in Midnight? Or will the great addon purge render it non-functional?
-
View User Profile
-
Send Message
Posted Oct 18, 2025In reply to nicodemusmercy:
From what I've heard so far they plan to kill all combat add-ons that rely on reading the combat log... Decursive does rely partly on the combat log so it is unlikely to survive unfortunately but I don't have enough information yet to be certain of it...