Decursive

Curse affliction 1

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 onfiguration 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 (Symbiosis' links included) 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:

  • 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:


Interesting articles and videos about Decursive's usage:

  • 2010-11-20 (Updated in 2011-06-11)

A complete Decursive guide by @darista: http://daritos.apotheosis-now.com/?p=24

  • 2009-07-15

Article: http://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)


You can subscribe to Decursive's newsletter to be alerted whenever a new stable version is released.

For suggestions, feature request, or bug report, use the ticket system provided by WoWAce.com.

Development versions of Decursive are available at this URI: http://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!

stats

You must login to post a comment. Don't have an account? Register to get one!

  • Avatar of faithkills faithkills Feb 08, 2011 at 00:09 UTC - 0 likes

    The Unitdebuff call with the removable flag set wouldn't tell you if there's a debuff that is removable by the hunter?

    in the scan for people in the raid something like

    deb=Unitdebuff(raiditerator,0,1) if deb!=nil then {we know there's a hunter dispellable debuff, so light the button} end

    Presumably we only need to check index 0 of rhe debuffs since if any are returned then there's something to debuff? Or would you need to check all the buff slots?

    This assumes Unitdebuff knows about the hunter decurse spell, possibly not.

  • Avatar of Archarodim Archarodim Feb 05, 2011 at 15:31 UTC - 0 likes

    @faithkills: not really because it would require to make and maintain a list of all known movement impairing effects...

  • Avatar of faithkills faithkills Feb 03, 2011 at 18:38 UTC - 0 likes

    Would it be possible to make this work with the Hunter spell Master's Call which decurses movement impairing effects?

  • Avatar of Archarodim Archarodim Dec 07, 2010 at 21:40 UTC - 0 likes
    Quote:

    Man, this is really going out on a limb. You really think this is a big problem? It isn't. If people can't install mods correctly, they certainly aren't going to be able to interpret a warning message telling them that "The shared library |cFF00FF00%s|r is out-dated, revision |cFF0077FF%s|r at least is required".

    You copy pasted a little too fast, the following string is also included in the error message:

     local GenericErrorMessage2 = "Try to re-install Decursive from its original archive or use the |cFF00FF00Curse client|r (Curse.com) to update |cFFFF0000ALL|r your add-ons properly.\nIf that doesn't work, install the add-ons BugGrabber and BugSack in order to detect other errors preventing Decursive to load.";
    

    If they can't install mods correctly, then this message automatically points it out to them and they can do something about it immediately on their own without getting back to me.

    Quote:

    But there was a misunderstanding of the point I was making with "say to them "use release versions"". Not just in the docs (that people may or may not read). But when someone comes to you through one of the sources for this mod with an outdated alpha bug, etc., just _tell_ them to "Use release versions for a bug-free experience..." in a reply. Heck, just create a fast form letter reply that can be endlessly copied..

    Most people don't tell what version they are using when they are reporting an issue...
    having to use a pre-written reply is also annoying and clearly points out that something is wrong somewhere.
    This is inefficient and annoying both for the user and the author:
    - The author have to loose his time telling the same thing over and over again.
    - The user needs to wait for feedback and is unable to use the program in the meanwhile...

    Why not just make an automatic system that will fix the most common issues instead??????

    Quote:

    You want to get the free benefit of unqualified users trying out alpha versions of apps/programs in the dim hope you'll get useful feedback, but then get annoyed when they come back to you later with an issue with them that has since been fixed. And then try to implement various mechanical social engineering ways to avoid them coming back to you and/or "improve their experience" (using up CPU/memory/bandwidth/etc. and being annoying) instead of providing regular support. Or instead of using a cheap form letter reply as I suggest above, etc..

    I do get useful feedback this way. Users don't need to be qualified to report issues with something they're used to.
    Now I just want my users to get the best experience possible with my work making sure they're using the right version. Not an alpha version not meant for production nor a six months old one...
    All my users seems to be happy, except for one it seems...

  • Avatar of Zidomo Zidomo Dec 07, 2010 at 13:30 UTC - 0 likes
    Quote:

    That's the theory yes, but in the real world some people don't know how to install mods correctly and may not replace the whole directory thus leaving old library versions

    Man, this is really going out on a limb. You really think this is a big problem? It isn't. If people can't install mods correctly, they certainly aren't going to be able to interpret a warning message telling them that "The shared library |cFF00FF00%s|r is out-dated, revision |cFF0077FF%s|r at least is required".

    Its an imaginary problem.

    Quote:

    As a developer yourself, you should know that less than 1/100th (if not 1/1000th) of users are reading descriptions and documentations...

    For consumer-level apps, certainly that's often the case.

    But there was a misunderstanding of the point I was making with "say to them "use release versions"". Not just in the docs (that people may or may not read). But when someone comes to you through one of the sources for this mod with an outdated alpha bug, etc., just _tell_ them to "Use release versions for a bug-free experience..." in a reply. Heck, just create a fast form letter reply that can be endlessly copied..

    You want to get the free benefit of unqualified users trying out alpha versions of apps/programs in the dim hope you'll get useful feedback, but then get annoyed when they come back to you later with an issue with them that has since been fixed. And then try to implement various mechanical social engineering ways to avoid them coming back to you and/or "improve their experience" (using up CPU/memory/bandwidth/etc. and being annoying) instead of providing regular support. Or instead of using a cheap form letter reply as I suggest above, etc..

    I just don't see the "good" side of that. Its extraordinarily heavy-handed. Especially with no options for experienced users/testers to disable any of that behavior other than code modifications.

    Anyway, have fun with it again.

    Last edited Dec 07, 2010 by Zidomo
  • Avatar of Archarodim Archarodim Dec 02, 2010 at 01:21 UTC - 0 likes
    Quote:

    If you include the version of Ace3 you want people to use with release versions of this mod, there won't be any problems. And due to the backward-compatible nature of Ace3, there won't be problems with older mods either. Bump the version of this to repackage if a new release version of Ace3 comes out.

    That's the theory yes, but in the real world some people don't know how to install mods correctly and may not replace the whole directory thus leaving old library versions... Checking that all library versions are the same than the one used during developments eliminates a great deal of potential issues I won't have to consider when someone is reporting a problem, it also validates Decursive's installation.

    Quote:

    Just tell people to use release versions if they want to have a "problem free" experience. Its that simple.

    That's exactly what the warning does when you install a non-release version of Decursive.

    Quote:

    Average users don't go looking for alphas of mods (i.e. come to WowAce to download them). People who like testing and/or more "advanced" users do. Unless, that is, you put up alphas on Curse and/or tag alphas as releases (or put up alphas as "betas" on Curse, which you have done).

    There are not enough people using alpha versions, this is why I have to publish beta on curse and sometimes publish Release Candidates versions as release because some bugs are very difficult to reproduce! Without non-release version automatically expiring I couldn't do that.
    Some of the bugs I fixed this way had one chance over ten thousands to happen...
    Despite its simplicity of use, Decursive is a very complex program

    Just take WoW as an example, before each major patch Blizzard spends several months in beta test with users on the test realms but it's never enough... each time they release the patch to the public (to their 11 millions users) they immediately find bugs they had NO CHANCE to find during the beta test phase and they have to make an emergency patch two days after the release...

    Quote:

    Then again, just noticed in the in the mod description that you do say that...heh. So its really an issue of wanting to nag/engineer people through the mod, instead of just saying "use release versions".

    As a developer yourself, you should know that less than 1/100th (if not 1/1000th) of users are reading descriptions and documentations...
    And no it's not just wanting to nag/engineer people through the mod. This 'nagging' system revealed to be clearly necessary because writing "use release versions" in the doc revealed do be completely useless.

    You know that absolutely no one (except you) ever complained about those warning/alerts self-diagnostics... Decursive has more than 400,000 users...
    That's simply because this system is a direct, immediate and pertinent help to the user!
    As a user myself I prefer guidance instead of an obscure error message no one but the developer can understand.

    Did you ever notice how few complaints or bug reports Decursive gets compared to other popular mods? (Curse comments, or WoWAce tickets)
    Decursive is probably one of the most stable add-ons available today, this is certainly not by accident and this automatic support to the user plays a big role in that.

  • Avatar of Zidomo Zidomo Dec 01, 2010 at 09:04 UTC - 0 likes

    No, I didn't just say it "was bad". I brought up several valid reasons why an option to disable the output comm spam might be preferable for some/many people. And spent time detailing everything. They weren't valid for you as they interfered with your grand design.

    Its the same old, same old. The same thing as a few years ago when I brought to your attention a large issue/bug with an updated revision of this mod on a boss in Karazhan. I provided very detailed information on the bug. Yet you wanted me to "do further tests" (i.e. wipe my raid) on the same revision to "verify" it was actually a problem with that Decursive revision instead of with "another mod". When I said no, I was unwilling to wipe my raid to get further experience with the same revision (despite the massive details I previously provided), the fun began. No more testing on this mod has been done by me since then.

    BTW, having the "newest" version of Ace3 simply isn't necessarily a valid positive. Tagged release versions are normally known to have no major usability bugs. "Newest" alphas might have bugs. And...the newest revision of libraries such as Ace3 are always what are used by every mod loaded by someone; they supersede in memory older revisions.

    If you include the version of Ace3 you want people to use with release versions of this mod, there won't be any problems. And due to the backward-compatible nature of Ace3, there won't be problems with older mods either. Bump the version of this to repackage if a new release version of Ace3 comes out.

    Average users don't go looking for alphas of mods (i.e. come to WowAce to download them). People who like testing and/or more "advanced" users do. Unless, that is, you put up alphas on Curse and/or tag alphas as releases (or put up alphas as "betas" on Curse, which you have done). Which naturally has the potential to increase your emails. Social engineering in a mod (using up CPU/memory/bandwidth, etc.) by nagging people to update/put out mommy warnings/etc. in-game is pushing in a thumb tack with a jackhammer. Just tell people to use release versions if they want to have a "problem free" experience. Its that simple.

    Then again, just noticed in the in the mod description that you do say that...heh. So its really an issue of wanting to nag/engineer people through the mod, instead of just saying "use release versions".

    Have fun with it.

  • Avatar of Archarodim Archarodim Nov 26, 2010 at 02:10 UTC - 0 likes
    Quote:

    No, software design discussions often/usually do not lead "nowhere". But as you aren't open to suggestions for anything, in the case for sure it will lead nowhere.

    This is not a discussion, this is a deep disagreement in ethical perception.

    Quote:

    You have this strongly held belief that no matter how few people actually see the spam alerts, pushing them will "better their game experience".

    Most players (if not all) running old versions (except those who never party or raid at all...) will know when a new version is available, certainly not right after a new release but eventually they'll see the alert.

    This is possible because there are enough players using Decursive so that it can benefit from such a version alert system.
    I wouldn't have done it if I wasn't certain of that.

    Quote:

    And you want to forcefully social engineer that experience for those people, regardless of any secondary effects for those who will not see them.

    As said before, those "secondary effects" are in your head only.

    Quote:

    What you are failing to understand is that forced spam is bad mod/software behavior as well as worsening the game experience for those who know what the mod is doing and don't wish to have it doing that every 1/2 hour. Even if the receivers can disable seeing it (but not actually disabling receiving or transmitting it).

    Those 'who know' and don't wish can simply use StopAddonMessage and feel better again.

    Quote:

    You know I don't? Charming.

    No, disabling seeing the spam wasn't there "from the beginning". It was put in during the past 3 weeks of alphas. The last release version - - 2.5.2.2 from Oct. 30 - - has a "Check other players" button.

    It's there from the beginning of this new version alert system. the last release 2.5.2.2 has just a "Check other players' version" system.

    Here is the proof you actually need:

    Quote from changelog:

    (685f4bd) Archarodim on 2010-11-15 02:26:47 +0100:

    • A 'new-version' detection mechanism has been implemented.
    • New option: "New version alerts"
    • Enhanced version display information in 'About dialog'
    • New locals to translate!
    Quote:

    The turning point was the alpha from a few days ago: Reverse the way the new-version detection system works: instead of asking everyone what version they use, each Decursive will now announce its version every 30 minutes when zoning. That's the extreme end point of bad mod behavior/social engineering. Thus I brought it up.

    You misunderstood the change.. Before that alpha, Decursive was doing something else for the new version alert system to work (for the sake of your heart I won't get into details).

    Quote:

    Cute. And bitching eh? Charming. Wish I was psychic too. No, pointing out why forced spamming is bad mod behavior isn't bitching. But its apparently something you don't want to hear. Social engineers rarely want to hear questions raised about the "righteousness" of what they are doing

    You're the only one ranting here...

    Quote:

    If you deny you are into social engineering/mommy-knows-best design, will bring up the following Decursive changelogs:

    - - Added a notice message for those using Decursive in an unpackaged state mentioning all the disadvantages and problems involved. (Message will be displayed once every 24 hours).

    - - Added a message when Decursive's installation appears to be corrupted to prompt the user to install BugGrabber and BugSack.

    - - Added an expiration feature to all dev versions (message displayed at each login and error reports disabled once the expiration date is reached)

    - - Small addition to diagnostic massages when a library is too old (with the backwards-compatible design of Ace3, that's particularly amusing)

    - - the previously debated forced update spam

    This automatic alpha expiration notice is one of the best things I ever did you know. It's highly effective. Until I did that I was still receiving several emails a week from people using a six months old bugged alpha version of Decursive (and probably telling everyone "ahh Decursive is completely bugged, it doesn't work!")...

    All these changes help the users to deal with problems they can fix on their own without me receiving 'it doesn't work' emails.

    This new version alert system is not different.

    And yes I strongly believe that developers know better than their users what version they should use and if they need to update.

    Quote:

    (with the backwards-compatible design of Ace3, that's particularly amusing)

    Ace3 libraries, like all programs, have bugs or sometimes need enhancements, so just as Decursive (that relies on them), they need to be up to date. (This also eliminates a great number of problems due to out dated libraries - again less emails to me and automatic help and guidance to the user...)

    Quote:

    I wasn't asking to totally get rid of the bad behavior/mommy-knows-best/social engineering system. I was discussing adding an option to stop the behavior for those who would like not to have it active.

    Well, what I actually don't undersdand is why someone wouldn't want to have it active.
    The only answer you provided is "because it's bad", it's not enough. Sorry.

    http://www.2072productions.com/to/dcrcursedisplayonWoWAce.gif

    Last edited Nov 26, 2010 by Archarodim
  • Avatar of Zidomo Zidomo Nov 25, 2010 at 01:45 UTC - 0 likes
    Quote:

    Like all internet "debates" this one will lead nowhere Don't you think?

    No, software design discussions often/usually do not lead "nowhere". But as you aren't open to suggestions for anything, in the case for sure it will lead nowhere. So will finish up my comments here before moving onto SmartDebuff and/or Healbot after years of using/testing/recommending this mod.

    Quote:

    No, it doesn't but I give up trying to explain it to you, you're unable to understand the subtleties apparently.

    No actually, I understand perfectly what you are trying to do. You have this strongly held belief that no matter how few people actually see the spam alerts, pushing them will "better their game experience". And you want to forcefully social engineer that experience for those people, regardless of any secondary effects for those who will not see them. Yes, going ahead and adding an option for people to choose to stop their spamming might change slightly the social engineering you are trying to implement.

    What you are failing to understand is that forced spam is bad mod/software behavior as well as worsening the game experience for those who know what the mod is doing and don't wish to have it doing that every 1/2 hour. Even if the receivers can disable seeing it (but not actually disabling receiving or transmitting it).

    Quote:

    I didn't add it, it was there from the beginning... check in the previous alphas if you don't believe me (I know you don't)

    You know I don't? Charming.

    No, disabling seeing the spam wasn't there "from the beginning". It was put in during the past 3 weeks of alphas. The last release version - - 2.5.2.2 from Oct. 30 - - has a "Check other players" button. Which can't be turned off on the receiving end, but also doesn't spam them regularly by design. As pointed out before, that is also bad mod behavior. But as its similar to what some other mods have had in the past, I didn't say anything.

    The turning point was the alpha from a few days ago: Reverse the way the new-version detection system works: instead of asking everyone what version they use, each Decursive will now announce its version every 30 minutes when zoning. That's the extreme end point of bad mod behavior/social engineering. Thus I brought it up.

    I stopped testing alphas of this a few weeks after you put in the extreme mommy-knows-best/social engineering behavior (yet again) of popping up warning alerts and disabling alphas after a set period of time (that can't be turned off...heh). I commented out and changed line 256 (at the time) among others in DCR_init.lua to disable the alerts. After a while, I got tired of removing the social engineering.

    Quote:

    I like to boldly go when no one has gone before and I kind of hate conformity. I knew you would bitch about this update system... you did as expected. That's the difference between us.

    Cute. And bitching eh? Charming. Wish I was psychic too. No, pointing out why forced spamming is bad mod behavior isn't bitching. But its apparently something you don't want to hear. Social engineers rarely want to hear questions raised about the "righteousness" of what they are doing.

    If you deny you are into social engineering/mommy-knows-best design, will bring up the following Decursive changelogs:

    - - Added a notice message for those using Decursive in an unpackaged state mentioning all the disadvantages and problems involved. (Message will be displayed once every 24 hours).

    - - Added a message when Decursive's installation appears to be corrupted to prompt the user to install BugGrabber and BugSack.

    - - Added an expiration feature to all dev versions (message displayed at each login and error reports disabled once the expiration date is reached)

    - - Small addition to diagnostic massages when a library is too old (with the backwards-compatible design of Ace3, that's particularly amusing)

    - - the previously debated forced update spam

    and on and on.

    As someone who designs business software with accepted "good behavior", seeing a WoW mod that has worked relatively well in the past (despite the above changelogs), but has finally added the worst behavior out of the thousands and thousands of mods I've tested over the years is something I wanted to bring up. And try to work out.

    I wasn't asking to totally get rid of the bad behavior/mommy-knows-best/social engineering system. I was discussing adding an option to stop the behavior for those who would like not to have it active. The issue doesn't affect me as I use StopAddonMessage. It does affect guildies, friends and many others who come to me about mod recommendations. Who I am now recommending to drop this mod (despite being the #1 choice in the past) when the pushed spam goes to release and use instead either SmartDebuff or Healbot. Oh well.

  • Avatar of Archarodim Archarodim Nov 24, 2010 at 22:45 UTC - 0 likes
    Quote:

    Ah, so you've added an ability for a user to manually disable seeing the forced alerts on the receiving end? Well, that's a bit better than nothing. But it brings up the question: what's the point of this system again?

    I didn't add it, it was there from the beginning... check in the previous alphas if you don't believe me (I know you don't)

    Quote:

    But with the ability to disable the receiving alert spam, it defeats the point of a lot of (social engineering) you are trying to accomplish, don't you think?

    No, it doesn't but I give up trying to explain it to you, you're unable to understand the subtleties apparently.

    Quote:

    And if it was so critically important & innocent for people to be pushing/spamming mod update notifications within WoW instead of outside it, would there not be a lot of popular, regularly updated mods other than just Decursive doing it (i.e. MobMap back in the day, Recount, MSBT, etc.)? There isn't.

    I like to boldly go when no one has gone before and I kind of hate conformity. I knew you would bitch about this update system... you did as expected. That's the difference between us.

    Like all internet "debates" this one will lead nowhere Don't you think?^^

Facts

Date created
Jan 24, 2007
Categories
Last update
Jun 09, 2014
Development stage
Release
Language
  • deDE
  • enUS
  • esES
  • frFR
  • koKR
  • ruRU
  • zhCN
  • zhTW
License
All Rights Reserved
Curse link
Decursive
Downloads
12,253,021
Recent files

Authors

Relationships

Optional dependency
!BugGrabber
Embedded library
Ace3
CallbackHandler-1.0
LibDataBroker-1.1
LibDBIcon-1.0
LibQTip-1.0
LibStub