Thursday, August 9, 2007

BigRedKitty: The Whole Scorpid Thing


So just what is the deal with Scorpids? You've run around the Internet and seen folks yammering and flapping their pie holes about them and don't understand the hoopla. They're small. They scuttle. They don't Dash or Dive. They have lower white damage per attack than almost all other pets, although they do have the best armor of them all.

But why all the commotion?

Because something cool is afoot and the Scorpid-Hunters out there are living in fear, just like the Windserpent-Hunters did.

You don't know what happened and how the Great Windserpent Smackdown is causing a mild panic among our class to this very day? Oh this is a great story. Grab a snack; this is the best.


In the early pre-dawn of the Burning Crusade-era the windserpent began a new life among our class. With its Lightning Breath attack it is one of the few pets that benefit from the +Spell Damage bonus a pet receives from his hunter's Ranged Attack Power. Lightning Breath's damage per hit is calculated thusly:

LB_Damage = LB_Base_Damage + Spell_Power_Damage

The highest rank of Lightning Breath will hit for an un-RAP-adjusted average of 106 damage. This is a result of the formula:

LB_Base_Damage = ( LB_Low + LB_High ) / 2

LB_Base_Damage = ( 99 + 113 ) / 2 = 106

Now a windserpent's Spell Power Damage was determined by a using a percentage of our own Ranged Attack Power in this formula:

Spell_Power_Damage = RAP * 0.125

Our Lightning Breath Damage formula could then be written:

LB_Damage = 106 + ( RAP * 0.125 )

Imagine you are a Marksman-spec hunter with a Ranged Attack Power in the 2300-range. What happened with your windserpent's Lightning Breath attack was this:

LB_Damage = 106 + ( 2300 * 0.125 ) = 394 damage per attack

Can't argue with that. Marksman hunters, with their penchant to focus heavily on boosting their Ranged Attack Power, naturally went bananas for windserpents and the massive Lightning Breath damage they inflicted.

But there was a problem; the pet-programmers had made a mistake.

Lightning Breath is an instant cast spell. As our squishy caster-friends know, instant casts do not get the full benefit of +Spell Damage bonuses, they are only supposed to get a percentage. Specifically they are supposed to get 42.86% of the bonus +Spell Damage provides, but our windserpents were getting a full 100% bonus. The Great Lightning Breath Nerf of 2007 arrived and the formula for calculating Lightning Breath damage was "corrected":

LB_Damage = LB_Base_Damage + ( Spell_Power_Damage * 42.86% )

LB_Damage = LB_Base_Damage + ( RAP * 0.125 * 42.86% )

LB_Damage = 106 + ( RAP * 0.125 * 0.4286 )

Simplifed, it looks like:

LB_Damage = 106 + ( RAP * 0.053575 )

And when our 2300-RAP marksmen brethren took their windserpents out to play after the Hunter Nerf Bat was swung, they saw these results:

LB_Damage = 106 + ( 2300 * 0.053575 ) = 229 damage

The blood-curdling cries were heard from Darnassus to Sporeggar. Many a drunken hunter slept fitfully in the corner, the floor damp from his tears, his voice lost due to wild rantings on the forums... and the windserpent population among us has never recovered.

But what does this have to do with scorpids?

Because there is a similar feeling among us that the Great Scorpid Nerf of 2007 is brewing in some programmer's mind and if we don't bribe him soon it'll be too late.

"Too late for what!" you cry. It'll be too late to save the Rogue-Scorpid Trick, that's what.

Scorpids have a neat attack called Scorpid Poison. There are five ranks of it and each does more damage over time than the next, typical spell advancement theory. But the application of the poison is different than anything else we have.

Let's pretend your scorpid hits its target with a Scorpid Poison which does 40 damage every 10 seconds. The spell's cooldown is four seconds, then it hits him again. Tada, your poison stacks. What was once doing 40 damage per 10 seconds is now doing 80. Now this can stack up to five times, which would be 200 damage per 10 seconds.

But Scorpid Poison, like Lightning Breath, is also affected by +Spell Damage which is in turn boosted by your hunter's Ranged Attack Power. If our hunter has a 2300 Ranged Attack Power, and remembering that Scorpid Poison is an instant cast and is also affected by the 42.86% reduction to +Spell Damage, our Scorpid Poison damage formula can be written:

SP_Damage = SP_Base + ( RAP * 0.125 * 0.4286 )

SP_Damage = 40 + ( 2300 * 0.053575 ) = 163 damage per 10 seconds

Since the poison stacks five times, one would assume that the total damage would be calculated like this:

SP_Stacking_Damage = First_Strike + Second_Strike + Third_Strike + Fourth_Strike + Fifth+Strike = 163 + 163 + 163 + 163 + 163 = 815 damage per 10 seconds

But that's not correct; the algorithm works in a different manner. The trick with this calculation is that the algorithm does not add the value of the poisons individually, it multiplies the value of the first hit by the number of poisons in the stack.

It is not calculating:

SP_Stacking_Damage = First_Strike + Second_Strike + Third_Strike + Fourth_Strike + Fifth+Strike = 163 + 163 + 163 + 163 + 163 = 815 damage per 10 seconds

Instead, it is doing:

SP_Stacking_Damage = First_Strike * Number_In_Stack = 163 * 5 = 815 damage per 10 seconds

"What difference does that make," you ponder, "It's the same number, right?" Hold on, here's the Big Deal:

The algorithm for calculating Scorpid Poison stacking damage will not recalculate the First_Strike damage as long as the stack remains unbroken.

Chew on that for a minute, then continue.

What if you popped every trinket you had, Bestial Wrath, chugged potions and elixirs, sacrificed a squishy on an alter to the Spell Damage gods, and did whatever you could to blast that initial hit of your pet's poison as high as possible by inflating your Ranged Attack Power as high as you could, and then let your pet attack with Scorpid Poison?

Let's get our hunter with his 2300 Ranged Attack Power and slap him in a raid, pump him with agility totems, attack power flasks, attack power food, and everything else we can think of. He pops two attack power trinkets and gets his first Scorpid Poison to hit for 300 damage per 10 seconds. Let's also assume that his massive Ranged Attack Power persists for ten seconds.

The way we originally assumed the stacking damage calculation would work would be for the first two high-RAP poison attacks to be added, then the next poison strikes would be degraded as our RAP fell.

SP_Stacking_Damage = 300 + 300 + 163 + 163 + 163 = 1089 damage per 10 seconds

And with the next application of poison, the stack would again be degraded, like this:

SP_Stacking_Damage = 300 + 163 + 163 + 163 + 163 = 952 damage per 10 seconds

But that's not how the algorithm works! Remember, your Scorpid Poison damage is not calculated like that, the formula looks like this:

SP_Stacking_Damage = First_Strike * Number_In_Stack

SP_Stacking_Damage = 300 * 5 = 1500 damage per 10 seconds

And the Big Deal comes into play now: As long as your pet can reapply poisond and prevent the stack from resetting, that 1500/10 will continue to be the damage-calculation long after the effects of your mega-high RAP have dissipated.

This is The Whole Scorpid Thing: Jam that RAP and +Spell Damage, let your scorpid drop a massive initial Scorpid Poison and make him keep applying poison so the stack doesn't reset... and your scorpid can be doing rogue-like damage forever.

Just how high have the initial hits of Scorpid Poison been and how much damage can Scorpid Poison do? BRK has seen screenshots where Scorpid Poison is doing 1100 nature damage every tick. No, that's not a typo, every tick. And we're sure some of you are going to put in the comments how, against certain bosses, that number can double.

The question now becomes: How do we keep the stack from recalculating the initial hit; how do we keep the stack from resetting? Well, we need two things:

First, we need to cram Focus down our pet's throat so that he can cast Scorpid Poison whenever its cooldown is up. Therefore, we want two talent points in Go For The Throat and a high crit-percentage. Every poison-cast costs 30 Focus and we need to replenish at least that much every four seconds after the initial three strikes so our pet can keep reapplying Scorpid Poison every four seconds.

Second, we need our pet to not miss. With Scorpid Rank 5, the stack will reset after 8 seconds. If our pet were to miss once the stack would reset. But with Scorpid Rank 4, the stack will reset after 10 seconds. This allows our pet to miss once and still keep the stack going as long as he hits on his next poison attack. This is why practitioners of the Rogue-Scorpid Trick train only Scorpid Poison Rank 4; it gives them a safety buffer for pet-misses.

What are some pitfalls of this Scorpid Poison technique?

You need to be able to jam that initial poison-hit as high as possible and one cannot do that on every trash mob. Most hunters will save their massive initial hit for boss fights and just use their scorpid like any other pet until then.

The boss cannot be immune to poison, natch.

Your pet cannot die mid-fight. If you're not used to micromanaging your pet you'll have to learn to do it.

And finally you have to hope Blizzard doesn't break out the Hunter Nerf Bat and smack scorpids back to obsecurity like they did with the windserpents. Find those squishies, sacrifice them good and pray the hunter-programmers accept our offerings.

Daniel Howell continues his quest to get Kitty Saliva classified as a pet attack as the hunter-pet duo extraordinaire known to lore as BigRedKitty. More of his theorycrafting and slanderous belittling of the lesser classes can be found at bigredkitty.blogspot.com.

[Fan art by Moony]


all by wow gold | wow money | world of warcraft gold

No comments: