Pages

Wednesday, September 16, 2009

Addon: WiseEclipse

Have you ever been dpsing a boss and thought to yourself, "I wish my last Starfire cast during Lunar Eclipse could proc Solar Eclipse?" This may sound a little cheesy but I actually have.

We've all been on those long runs where we cast a spell for what seems like 1000 tries and Eclipse never procs. During those tries I often wish I had the 90% crit chance that Lunar Eclipse provides.

Well, my wish has come true with this helpful little addon called WiseEclipse. It was created by Kurohoshi (EU-Minahonda), and based on the macros by Hamlet (US-Mal'Ganis). You can download it from WoWInterface here.

Why You Want It:

This addon increases your Eclipse uptime by allowing your last buffed spell cast to proc Eclipse. Obviously this is really nice when transitioning from Lunar Eclipse to Solar Eclipse because you will have a 75% - 90% chance to proc Solar Eclipse. You may be amazed that this is even possible, but it is. I tried it out on a target dummy and tested it in raid last night. It worked as I expected in both situations.

What the Addon does is compare the time remaining on your Eclipse buff to the cast time of your next spell. If your cast time is longer then the Eclipse buff the addon will cancel your Eclipse buff to allow the opposite Eclipse to proc.

I don't understand all of the technical details to fully explain why this addon works, but I will do my best. The addon works because of Lag. As you play the game some things are done on your computer (the client), and other things are done on the server. If I understand the process correctly the server determines your damage and if the spell crits, but the client determines cooldowns and if the buff can proc or not.

For example lets say you cast Starfire with Lunar Eclipse. When it hits you only 1.5 seconds left on your Lunar Eclipse, and your cast time is 2.4 seconds. Obviously your not going to be able to get another buffed Starfire off. So, WiseEclipse cancels the Lunar Eclipse right as the spell hits. At the same time the server calculates the damage of this spell and is likely a crit due to your 75%-90% crit chance. So, the server sends a message back to the client saying that the Starfire cast was a crit. Because of Lag the client has already cancelled the Lunar Eclipse when it receives this message. Since Solar is not on cooldown and Lunar Eclipse is not up the conditions are met for the critical hit to proc Solar Eclipse, thus giving you back to back Eclipse procs with very high frequency.

The addon has some other functionality as well, like allowing you to automatically cancel Solar Eclipse during Bloodlust/Heroism if the shaman buff has more then 15 seconds and Lunar Eclipse is not on cooldown. I think it is also possible for the last cast of your Solar Eclipse to proc Lunar Eclipse, but it is unlikely due to the way the buffs work.

The Ethics of this Addon:

I think it is safe to say that this addon drops in to a grey area (no pun intended). In my opinion it is not an exploit that severely compromises the integrity of the game, like the old Void Reaver/Mindcontrol trick or the Sarth Reflective Shield trick. However, it is obviously outside the intended design of the talent.

In my opinion it falls into the "Creative Use of Game Mechanics" category. Hamlet compares the functionality and design to the Shatter Combos Frost Mages use, which are fine according to some Blizzard quotes. While I see the similarities I think WiseEclipse is more like the old Idol Swapping macros, where you could get the [Idol of the Unseen Moon] buff as well as increased spell damage from the [Ivory Idol of the Moongoddess]. In that situation you could macro the Moonfire spell and Idol together so that the Idol was equipped right after the spell was cast so that the two GCD's over lapped, but due to lag the the MF cast could proc the Idol even though the idol was equipped after the cast.

In patch 2.4.3, Blizzard killed the Moonkin Idol swapping macros by making it so that swapping a weapon/idol would cancel you current cast. Blizzards explanation wasn't directly targeted at Idols, saying the change was made to prevent PvP casters from swapping high haste and high spell power weapons in and out so that they could get the benefits of the haste and the spell power. However, Blizzard is taking it a step further in 3.2.2. In the up coming patch, unequiping an idol will cancel the buff it provides. This is being done to prevent Feral tanks from having multiple Idol buffs up at the same time.

So, I wouldn't be surprised if Blizzard did something that eliminated the utility of this addon. Cancelling the Eclipse buffs in time probably impossible to do by hand and requires the use of an addon or macro. Since, Blizzard doesn't want any macro or addon to be a mandatory part of the game, it is unlikely that Blizzard will look on this addon favorable. However, even though Blizzard probably won't like the addon, that doesn't mean that they have the time or ability to prevent its functionality. Lets face it, Blizzard has a lot of stuff on its plate, and preventing this functionality might not be quick and easy. So, I could also see Blizzard ignoring the issue for quite a while because the impact is small enough, and the solution is complicated.

What I'm trying to say is that I think this addon is safe to use, but don't get extremely attached to it. I would be very surprised if anyone got banned for using it, since it is very similar to other practices already in game. However, if Blizzard can break it, they probably will eventually.

The "Too Public" Issue:

There have been a couple of comments posted around the web saying that users are worried that this addon will become "too public." The basic theory is that if we can limit the usage of WiseEclipse by the community then Blizzard won't take steps to prevent its functionality. I understand the concern, but it is already to late in my opinion.

First off all, while it is possible that by publishing this post, I am bringing the addon to Blizzards attention, I find it highly unlike. Blizzard has confirmed that they read the EJ forums where this addon first came up. So they probably already know about it.

Second, I realize that by not posting this article I would probably slow its growth and may delay any fix that may or may not come. However, this information is already available from several other sources. I doubt my silence would have much affect.

It sounds illegal to me. It makes a decision that could have been made by the player (right click buff) automatic. Sounds like the old Decursive that would automatically dispel or like totem stomping macros that automatically would kill totems. It's a nice addon, but I won't be using it.

@pasgoo:The readme states"Added BL/Heroism function: WE cancels the Solar Eclipse if there is no CD in Lunar Eclipse and you are under the effects of BL/Heroism, so you can maximice the Lunar Eclipse Uptime"

Ignoring BL/Heroism therefore should mean that the function above is disabled.

I have been using WiseEclipse for a couple of weeks now, and I can attest that it does improve DPS. It makes me wonder why /cancelaura is not a protected function.

For the time being, I'll continue to use WE. My hope is that Eclipse mechanics will be changed so cancelling the buff is not imperative for maximum DPS. I'd be disappointed if clicking the buff off manually became a part of Moonkin rotation.

For those wondering, the Bloodlust option will cancel a solar eclipse (Wrath bonus)during Bloodlust if the cooldown for lunar eclipse is complete. This lets you use Starfire during eclipse, since there is no benefit to Bloodlust with Wrath. This is another broken (imo) Moonkin mechanic, since there's no real way to time the right eclipse to coincide with lust, even if we know when it's coming.

Oh that's a good option. How have I to keep it set? enabled or disabled? I want it activated (it must cancel solar eclipse when BL is up) so I've to set IGNORE to disabled? or?That thing is really confusing me xD Author of the addon, please make it better :D

I completely agree that what this addon does is shady, but I disagree with your context.

The old Decursive literally played the game for you. All you had to do was push a single button and it would target the correct player and cast the right spell. Same with the onld fishing modes that would cast the line for you. Reel it in when a fish was caught and loot. WiseEclipse is not to that level. All it does as cancel a buff on your own toon, at an optimal time.

Totem Stomping macros are also a completely different animal. Blizzard has no problem with the core functionality of the totem stomping macros. The problem with the totem stomping macros is that totems are a core element of the shaman class that totem stomping macros eliminated the viablity of shaman in PvP. Notice that blizzard did not get rid of /tar or /cast or any of the functions that made the macros possible.

If your dont' like things that automate you play I can only assume that you won't use macros either. Thats what a targeting macro does. It automates who you target. A casting macro automates what you cast.

The grey area with addon is that it causes Eclipse to perform in a way that Blizzard probably didn't intend. If blizzard didn't want you to automate stuff it would have to get rid of a vast majority of the addons and macros out there.

I was trying to download this off of WoWInterface, and it couldnt open it. I read what Fortitude said, but it doesnt give me an unzip option. If i open it, it says i dont have the software to open a RAR file and then tries to sell me $25 software to get the file. And if i save it, it does the same process just takes more time... Am i doing something wrong? Or do i need a program?

This works for the same reason that /stopcasting works. /stopcasting was never 'illegal', the fact that you could stop your clients cast, but that your spell would still go off was because of the client->server nature of the game. It wasn't long before everyone in BC was using /stopcasting macros in order to improve their dps, they did pretty much become mandatory if you wanted to eek out every bit of dps as a caster. Blizzard finally implemented the spell queue system, which basically eliminated the need to do /stopcasting in order to get the best DPS.

At this point I doubt blizz will do anything. The proper thing to do is to change eclipse, and the proper time to change eclipse is in the next expansion. For now this doesn't cause a 'game breaking' increase in dps, and it only really helps half your rotation. (it helps the flipside as well, but much less so).

Just a quick note on the "Too Public" thing. If you have to worry about your addon or manipulation of in-game mechanics becoming too popular that Blizz might notice and fix it, then you are probably doing something you shouldn't be. That said, I had noticed this latency issue right when 3.2 hit and was constantly trying to sync my last Starfire with the expiration of my Lunar Eclipse. This addon is smarter about it, canceling the buff in order to help your chances.

My biggest issue with this is that, when done manually, you are forced to make split second decisions. When incorporated in a macro/addon, you allow joe shmoe to excel by spamming his buttons. But meh, that's neither here nor there.

I do use the addon and I have also tested it. I am pleased with its performance so far and it is nice not having to time my cancel macro to a special cast.

A few people in this thread seem confused about the .rar file extension. .rar is a file compression like .zip, but you need a program to open it. I personally use 7-zip or AlZip, WinRar is what most people will recommend. You can find any of these programs with Google.

This is the first time I post here and I wanted to thank you for this great site.

As regards why the addons works, my understanding is that the stats of the spell (spell power, crit, etc) are determined right after the spell has been cast. However, the eclipse buff procs on hit.

So if you cancel the lunar buff after a starfire has been cast, but before it hits, that spell will have a great chance to crit (because it was cast when the lunar buff was active), and in that case it will proc the solar eclipse (because when it hits there is no eclipse buff active).

Personally I agree with Graylo about the validity of this addon. I think that it was probably not intended by Blizzard, but it's a fair use of the game mechanichs.

IMO this is a game mechanic that balance druids should absolutely abuse until Blizzard fixes it, but I don't see the automation as falling into a gray area at all--I think it's just plain wrong.

Even back in the days of /stopcasting, casters had to time their macro use carefully or they would clip their previous spell. That is to say that /stopcasting macros did not increase DPS independent of player actions. This tool, if used incorrectly, would result in a certain DPS loss.

Along the same line of thought, if you want to abuse client to server latency to maximize your DPS going from Lunar to Solar, you should click off the Eclipse buff manually or use a /cancelaura macro that you activate yourself.

Addons that increase player DPS independent of player thought and action are absolutely unethical.

"If your dont' like things that automate you play I can only assume that you won't use macros either. Thats what a targeting macro does. It automates who you target. A casting macro automates what you cast."

The difference is that I initiate the macro command, it is my decision when to hit it. The effect after I hit it is a direct outcome of my decision.

With this addon, there is no decision on my part. It automatically calculates something and decides for itself what to do, without me playing a part in it.

So, I do use some macros for targetting or activating my trinkets, but the difference is that those are my choice, not an automated response of a program making the choice for me.

One way Blizzard may "fix" this is to simply make the internal cd remains so canceling the aura would do no good. That is, suppose that you have a solar eclipse up, it should contains a 15 seconds internal cd for lunar eclipse.

--If you want it to cancel Solar Eclipse if Lunar is off cooldown and more than 15 seconds remain on Bloodlust, turn ignorebloodlust OFF. However, note that this actually comes up rarely--if you successfully transtioned from Lunar to Solar in the first place, Lunar won't come off ICD before Solar is done anyway.

--There's nothing illegal about it whatsoever. /cancelaura has always been unprotected, which we Druids should be very familiar with from powershifting macros in TBC.

--Blizzard might not like this behavior, in which case they'll have to change Eclipse somehow, probably by attaching a hard 15 second cooldown to each Eclipse preventing the other from proccing. Note that this wouldn't eliminate the possibility altogether, we'd just have to try to manually time the final Starfire with the exact end of Eclipse each time, which would be incredibly annoying.

--There's no way to tell in advance whether Blizzard will fix some particular minor mechanics issue; some are fixed next patch but some have persisted for years.

--If you don't like having an addon play such an active role in your DPS cycle:1) I guess I don't care that much to begin with. My goal is maximizing potential DPS, not maximizing DPS subject to peoples' own idiosyncratic constraints.2) If you don't want to run the addon, use the macro in my Moonkin guide.3) If you don't even want to use the macro, then make a "/cancelaura Eclipse" button, put it on your action bar, and press it at the appropriate time during your cycle. Same result, slightly more effort from you.4) If you're not doing any of the above, you're simply not maximizing your DPS under the current mechanics.

"I do not believe in addons which actively do something for you." Please delete you mouse over addons and buffing addons and any macro as you should have typed it out yourself. Please delete you AH addons and any other ad on that does something for you.

"It makes a decision that could have been made by the player" Please delete your equipping addons and the Blizz built in function of gear swapping and any add on where you make the decision to do it ahead of time but at the moment you need to do it the add on does it for you.

“if you want to abuse client to server latency”Abuse latency… I have been able to log, invite my mage into a group, log, accept, log, make a port, log, and then take the port. Is this abuse?

“If you don't want to run the addon, use the macro in my Moonkin guide.”There is the answer to those who don’t like it… a macro is a macro is a macro.

Graylo might have said it best here.. “If blizzard didn't want you to automate stuff it would have to get rid of a vast majority of the addons and macros out there.” And I would add, they would remove all the ‘illegal’ addons from their program, ‘Curse’ addon downloader if it weren’t legit.

I have to say thanks a ton for mentioning this on your website. I have always wished to proc my into Wrath immediately after Starfire, with movement dot refreshes and other various things within a raid it was always difficult.