Saturday, May 27, 2017

Boss3 Test: Ronin

I recently rolled a Ronin, lucky that.  So, next up for Boss3 testing: Ronin.  

Here's the setup.

I put Scatter 4 crests on Ronin for the test.  As expected, the boss could not proc.  Good.

Here's the result:
71559684 damage.

Analysis: We want to figure out how many proc hits Ronin does.  PD is assumed to take 3 seconds.  Normally I assume that heroes other than PD (with the Blitz Scroll and Berserk 8) ramp up in 5s.  However, Ronin has a 650ms attack time naturally.  So I am assuming that he will take 4s to ramp up.  

Thus we have PD active for 177s.  He gets 5.0 HPS (all auto hits); 885 hits total.  Ronin gets 176s active, where he will get 880 auto hits.  Total auto hits: 1765.  Each one does 35000 damage, so these should have done 61775000 damage.  This leaves 9784684 damage unaccounted for, which must be Ronin's proc damage. 

We can divide by 35000 to get the total proc hits: ~279.6.  We can divide that by 176 to get the proc's HPS: ~1.59.  This does not match well with the assumptions made by Mr_Perfect in his reddit thread.  (He derives 1.25 HPS.)   My guess is that Ronin gets 6 hits per proc.  This would yield 1.5 HPS, which is reasonably close to our observed amount.

Friday, May 26, 2017

Boss3 Test: Beast Tamer

I ran a Boss3 test for Beast Tamer last night.  Given how much damage he does, and the fact that Grizzly cannot be given Scatter to pull the last-hero-scatter trick, I decided to run three heroes for the test: PD, HQ, and BT.  Adding a third hero has the downside that the boss will run out of hitpoints. 

I have previously tested just PD+HQ; that test can be found here.  So, with that result in hand we proceed to the BT test.  My BT normally crests Slowdown 4, but I removed it. 
I feel naked.
HQ has her talent, scatter 8, and her normal crests (berserk 4).  That should be enough scatter to keep the boss from proccing.   Here's the setup:
Let's kill a boss.
I did the run and it worked smoothly -- no procs.  The result?  As expected, 120m damage exactly: killed the boss before time ran out.  I knew this would happen, and so was carefully watching the time.  There were 18 seconds left when it ended.

18 seconds left out of 180.  So, 162 seconds spent.  But some of that was spent when PD was ramping up.  As in previous boss3 tests, I assume PD ramps in 3 seconds, non-berserk-8 heroes in 5 seconds. 

So now we can compute what BT got.  Over a run of 162s, PD should have gotten 159s of damage, and HQ 156s.  Thus, they should have totaled 27825000 damage and 28350000 damage respectively.  Total: 56175000 damage.  The remaining damage is BT's: that is 63825000 damage.  This was done by BT in 159s (effectively), so his DPS is ~401415.  We divide by 35000 to convert this to HPS: ~11.47.

How does this compare to what we'd expect?  Well, each of BT and Grizzly get 5.0 HPS individually from their autohits.  In addition, Grizzly has Heavy Blow 8, which gets another 1.25 HPS.  Then are their procs: BT's proc has a 12s cooldown, thus .0833 HPS.  Grizzly's proc has a 5s cooldown, thus adding .2 HPS.  [see comments]  Total expected hits is 11.333 HPS.  

The test confirms the prediction.

Monday, May 22, 2017

Boss3 Test: Heavy Blow

Heavy Blow is supposed to work via extra hits, 1 in 10 chance each.  Time to test it!  I am using my Harpy Queen again for this, removing her normal crests (Berserk) for Heavy Blow 4 crests.

Here's the setup...
HQ + HB
And here is the result:
HQ+HB damage.
67921653 damage.

When I tested this same pair of heroes, except using Berserk crests on HQ, I got 64953661 damage.  The difference is 2967992 damage.  Divide by 35000 to find extra hits from HB: ~84.8 hits.

As we have done before, we estimate HQ's ramp-up as if she was full speed for 175s.  So, at 5 auto hits per second, that's 875 hits.  The extra hits are almost exactly 10% of the auto hits.

Thus, the test confirms our model of HB.  Yay.

Saturday, May 20, 2017

Boss3 Test: Grimfiend

Next up for Boss3 testing: Grimfiend.  In this case I feel it is known pretty well how he works, but there is still to some extent some question.  In particular, Grim's demon form has a cooldown of 3 seconds, but lasts 12 seconds.  At max speed, how does this shake out?  Does he proc 3 times per demon form (at 3 seconds, 6s, and 9s), or does he proc 4 times (also on 12s)?

Here's the setup.
I'm ugly.
As you can see, my Grim has scatter (it's at 6), so there should be plenty of scatter to stop the boss proccing.  His crests are Bulwark 4, which won't change the test more than trivially.

Here's the result:
PD + GF damage.
63806836 damage.

Analysis: We want to figure out how many proc hits Grim does.  Grimfiend has Berserk 8 in demon form, but he starts human, and he is not berserk in human form.  So I am assuming that he will take the same 5s (estimated) to ramp up as any other normal hero.  PD is assumed to take 3 seconds.

Thus we have PD active for 177s.  He gets 5.0 HPS (all auto hits); 885 hits total.  Grimfiend gets 175s active, where he will get 875 auto hits.  Total auto hits: 1760.  Each one does 35000 damage, so these should have done 61600000 damage.  This leaves 2206836 damage unaccounted for, which must be Grim's proc damage.

We can divide by 35000 to get the total proc hits: 63.05.  We can divide that by 175 to get the proc's HPS: ~0.36.  This matches fairly well with the assumptions made by Mr_Perfect in his reddit thread.  (He derives .32 HPS.)

We can also calculated expected procs.  GF will proc first at around the 4 to 5 second mark.  (Why not 7 seconds?  He does not get energy from being hit, but the PD is ramping up and GF is swinging faster.)  Assume it's 4 seconds.  Then at that point he transitions to demon form every 15 seconds.  Thus he gets exactly 12 transformations to demon form during the course of the run.  In all of those transformations except the final one, he gets either 3 or 4 procs.  (This is what we want to know.)  So we know he should get either 36 proc hits, or 48 proc hits.  Obviously, 48 proc hits is closer to what we observe (63 hits).  So I guess he is getting all four procs as a demon.  But the estimate is still low.  What explains the additional 15 hits?

Should run this again.

OK, next day.  Same lineup.  Result:
More PD + GF damage.
64263405 damage.  This is .7% more than last time, that is, easily within experimental variance.  But it's higher, so it's in no way suggestive that my result last time (with extra 15 proc hits) was a fluke.  Not sure what's going on here.

UPDATE: UraniumSnail pm'ed me to suggest the GF has Berserk 8 in both forms.  The wikia page is unclear on that; I guess I assumed wrong.  That speeds him up by 2 seconds in the ramp-up at the start, thus adding 10 hits.  (Estimated, natch.)  This gets us close.

Wednesday, May 17, 2017

Immortep Exceeds Expectation

I ran the Boss3 test on Immortep.  Like Vlad, I think Immo can trigger a proc if the only energy reduction on the boss is him with Scatter 4.  So I added my HQ to the lineup to make sure that doesn't happen.

Here's the setup:
Immo not evo.
Immo has on Bulwark crests, but you can't see that.  HQ has Berserk.  Neither of these should chance the test result more than a tiny amount.

And here's the outcome:
Better than Vlad!
106022552 damage. My earlier test of just PD+HQ got 64953661 damage. So we can see the delta from adding Immo is 41068891 damage. Immo has 1000ms attack speed, so as in the previous tests, I model his ramp-up as 5 seconds of nothing followed by full damage. So, 175s. We find the number of hits by dividing by 35000: that's ~1173.4 hits.

In 175s, there should be 875 auto-hits. So, we find ~298.4 hits from procs. According to the wikia article on Immo, he procs every 5 seconds, so we estimate 35 procs during the run. Thus, he's hitting ~8.53 times per proc.

The wikia article says that Immo's proc pulses every 0.2s, for "just under 5 seconds", with a 20% chance per pulse to hit. Taking "just under 5" as 4.8, that works out to 4.8 hits per proc.  Incorrect!  4.8 HPS is clearly ruled out by my test.

My test shows a roughly 35.5% chance to hit each pulse (assuming pulses of 200ms, and 24 pulses).  This is unexpected.  On the other hand, since the wikia is already claiming that Immo's in-game description is wrong for the duration of Sandstorm, it's not too shocking that we might have the percentage wrong too.  (Where did the asserted 20% come from?)

I plan to re-run the test tomorrow.  At the least I can replicate the result, and verify visually that Immo is continually proccing (as the wikia article suggests should happen).

Update: here's another run.  Same setup and double checked for nothing wrong.
Ditto.
105959354 damage.  That is .05% less damage than before, that is, basically indistinguishable from the earlier run.  I did watch it carefully, and I can verify two things asserted at the wiki.  First, the proc really is 5 seconds.  Second, there really is a brief gap where it's not on.  That might be a graphical glitch or it might not, but you can certainly see it.

Anyway, the conclusion stands.  At max speed, Immo hits substantially more than he has gotten credit for.

Tuesday, May 16, 2017

Tested Vlad for Proc Hits

I have not done a boss3 test for a few days because I ran out of things I was curious about that I could test.  (There are several heroes I'd love to test but I can't since I don't have.)  But as I was cheesing in the recent guild war, I was reminded again of how nasty Vlad is.  It always seems like he gets a lot of hits.  So I wondered if our understanding of how he works is correct.  Hey, I can test it!
Setup for Boss3 test of Vlad
The setup is a bit more complicated than the vanilla Boss3 test, because I was afraid that Vlad's proc would give the boss enough energy to proc.  So I added my HQ to make sure the boss stayed flat.  (My HQ has scatter 8.)  I was not sure if this would cause the test run to end early, so I watched carefully.  It didn't, though: the test went the full three minutes.  Here's the result:
Is this too much? 
99394792 damage.

My earlier test of just PD+HQ got 64953661 damage.  So we can see the delta from adding Vlad is 34441131 damage.  Vlad has 1200ms attack speed, so as in the previous tests, I model his ramp-up as 5 seconds of nothing followed by full damage.  So, 175s.  Assuming all hits are full damage, we find the number of hits by dividing by 35000: that's ~984 hits.

In 175s, there should be 875 auto-hits.  So, we find ~109 hits from procs.  Vlad procs every 6 seconds, so we estimate 29.16 procs during the run.  Thus, he's hitting ~3.74 times per proc.

The wikia article on Vlad says that his proc hits every 0.4s, for 4 seconds, with a 30% chance per pulse to hit.  That would suggest he averages 3 hits per proc, but that is clearly ruled out by my test.

One anomaly about Vlad is his fear infliction.  I don't think it varies when it happens, and I think it happens immediately every time.  So I'd suggest a different model for his proc: in the tick that it procs, it hits all enemies in range and inflicts fear.  For the remaining time, it works as wikia indicates (9 pulses, 30% chance per pulse).  In this model, we expect 1 guaranteed hit plus an average of 2.7 over the rest of the time.  This gives an expected 3.7 hits, which is within experimental error.

Thursday, May 11, 2017

Verified Slowdown Hit Operation

I have run out of obvious things I wanted to test with Boss3.  So instead of a new hero I thought I'd experimentally verify something that "everyone knows": how slowdown crests work.  Since I think I know how they work, I am going to work out a damage prediction before I collect data.

At max speedup, we know that HQ gets 5.5 HPS, and PD gets the minimum 5.0 HPS.  They are in the fight for 180 actual seconds, but we estimate that PD ramps up in 3 seconds, HQ in 5 seconds.  So, the total hits we expect are 885 for PD, 962.5 for HQ.  Total is 1847.5.  At 35000 hitpoints of damage per hit, expected damage is 64662500.

The actual number from the earlier run was 64953661 damage.  Now let's add on the effect of slowdown.

Slowdown has a 25% chance to happen on each auto-hit.  When it does happen, it adds one extra hit.  At max speed, all heroes get 5 HPS of auto attacks.  Thus, we expect slowdown to add on average 1.25 HPS.

This raises HQ's expected hits by 218.75, for an expected hit total of 2066.25.  Expected damage is thus 72318750.

Now, we run the test.  I realized last time that showing a snap of the two heroes in the "challenge a boss" team UI is not very useful for the purpose of testing crests, since you cannot see the cresting on that UI.  So, instead I have a snap of HQ crested:
HQ with slowdown crests.
And here's the result of the run:
Boss3 result for HQ with slowdown.
72711760 damage.  My prediction is off by just ~.5%.  We have experimentally confirmed the existing theory of how slowdown works.

Wednesday, May 10, 2017

Deadly Strike Works Via Extra Hits

TLDR: see the title?

I've never been 100% certain how Deadly Strike works.  Does Deadly Strike multiply an "existing" autoattack hit, or does it provide an extra hit that is multiplied, the way that Slowdown and Heavy Blow work?

I did a test last year that seemed to indicate the latter (extra blow), and since the other two talents work that way, it makes the most sense to me.  But it's better to have a rigorous test.

Since I have some data with Boss3 tests, I figured to test it next.

To test, I needed a hero with both scatter (to stop the boss proccing) and heavy blow.  Since my Harpy Queen has scatter as her talent, and I have already tested her, she's perfect.

To set the test up, I took off her Berserk 4 crests and replaced them with Deadly Strike 2.  As such, we can expect a slightly longer ramp-up time, so perhaps slightly less damage.  However, the difference should be not more than a second or two of damage at most.  A second's damage in the Boss3 test is ~200000 hitpoints.

Now the actual test.  In the previous test, HQ scored 64953661 damage.

Here's the setup:
Test setup.  Pity you can't see the cresting.
And here's the score:
Boss3 score with Deadly Strike
67936102 damage.  That's 2982441 more damage than the original run without DS crests.  Over 175 seconds (this is approximated time of engagement to account for PD having to amp up), it is 17042 DPS.  In terms of extra hits, it is 0.487 HPS extra.  This is almost exactly the 0.5 extra HPS predicted.

Conclusion: Deadly Strike works via extra hits.

Monday, May 8, 2017

Tested Trixie Treat for Max Speed Hits per Second

I did the "Boss3 test" for Trixie Treat last night.  The "Boss3 test" is ... I think I need to write a post about that.  OK, done.  Read that.

Actually I did my first run at testing TT a few nights ago.  But it failed horribly: I put it down, then looked and PD was dead!  Oops, oh yeah, you can't test summoners using the "standard" boss3 test.  The problem is that whenever a hero summons, the heroes that are summoned are now "last".  And thus the "last-hero-scatter" trick fails.

On that run, I quickly added a few random devoes and did the run.  It did not test anything, but I did at least get the honor badges.

So how to test TT?  Well, at max speed, 2 heroes plus four pumpkies should be adding 450 energy/s to the boss. Then the boss adds another 15 from his own hit. To get rid 465energy/s, we need 93 energy scattered per 200ms. That's challenging. With scatter4 crested on TT, would need 73 from some other hero. I can do that with HQ because mine has scatter8. There's no other way I can do that.

So I decided to run three heroes for the TT tests: PD, HQ, and TT.  Adding a third hero has the downside that the boss will run out of hitpoints. So I'll have to make more assumptions to get a decent number. Challenge accepted.

Testing HQ

First things first, though.  I did a run with just PD and HQ.  This gives me a good baseline to work from.
Boss3 testing HQ.
Here's the result:
Boss3 HQ result.
64953661 damage.  We know that at max speed HQ gets 5.5 HPS (hits per second).  PD gets the minimum 5 HPS.   Somewhat arbitrarily, I am estimating the ramp-up by removing 3 seconds from PD, and 5 seconds from other heroes.

(How long does my PD ramp up take?  He starts out hitting every 600ms; because he is being hit he'll proc after his first or second hit.  I am guessing 2nd.  So, 1200ms to one stack.  Then his speed is 400ms.  Over the next 2 seconds the boss hits him twice, and he hits 5 times.  Then he procs again: 2 stacks.  Now his speed is 200ms.  PD is fully ramped at this point.  Over the next 1.2s, the boss hits him once and he hits 6 times.  Then he procs to 3 stacks.  At this point he has spent 3.4s.  It takes him 4.6s to reach 4 stacks, and 5.8 to reach 5.

Even 3 stacks is enough to get 30000 damage on Boss3 from any reasonably high level hero.  But speedwise, TT and HQ both need 5 stacks to get to 200ms.

All in all, because damage is ramping up exponentially no hero will get very much until almost fully ramped in speed.  So, as an estimate I am going to use 5 seconds as the ramp-up time, and pretend that all heroes get zero damage during ramp-up and full damage (and speed) after it.  PD similarly gets 3 seconds as his ramp-up.)

OK, now we have enough numbers we can compute.  First we compute DPS for PD as follows.  PD and HQ together got 64953661, in 180s.  So, that is 177s of PD damage (at 5HPS), and 175s of HQ damage (at 5.5HPS).  Thus, total hits applied are estimated to be 1847.5.  (Multiply by 35000: this checks out very well with the actual damage applied.)

Testing TT

OK, with HQ's number in hand we proceed to the TT test.  TT gets Scatter 4.  HQ has her talent, scatter 8.   That, along with the pumpkies, should hopefully be just enough.
Boss3 testing HQ+TT.
I did the run and it worked -- no procs.

Here's the thing partway through:
Boss3 HQ+TT test almost done.
The result?  120m damage exactly: killed the boss, just the 3 of them.  (TT does a lot of damage.)  I knew this would happen, and so was carefully watching the time.  There were 53 seconds left when it ended.

53 seconds left out of 180.  So, 127 seconds spent.  But some of that was spent when PD was ramping up, and we need to account for that.  As above, we assume PD ramps in 3 seconds, others 5 seconds.

So now we can compute what TT got.  Over a run of 127s, PD should have gotten 124s of damage, and HQ 122s.  Thus, they should have totaled 21700000 damage and 23485000 damage respectively.  Total: 45185000.  The remaining damage is TT's: that is 74815000 damage.  This was done by TT in 122s (effectively), so her DPS is 613238.  We divide by 35000 to convert this to HPS: 17.5.

Conclusion: at top speed, Trixie Treat (and her pumpkies) average 17.5 HPS.  Trixie herself gets 5.1 HPS.  So the remaining 12.4HPS are coming from pumpkies.

The Boss3 Test

For most heroes, we can understand what they do fairly well by reading their skill description and thinking about it.  However, sometimes these descriptions are misleading or incomplete, or the function of a hero is very complicated.  It is nice to have an empirical test of a hero's performance.

The Boss3 test is a test designed to test a hero for the effective number of hits he or she generates in conditions of maximum speedup.  This is typical of boss fights of various sorts, where you use a Pumpkin Duke to speed up everyone to maximum speed.

The test uses a PD and one hero to be tested.  The PD has the same configuration every time.  This team faces Boss3, which you can do once per day.  The total damage they do can be compared to that of heroes that have already been tested to compare the tested heroes.  We can also (with some assumptions) use it to estimate heroes' hits/second.

Ingredients:

Here are the heroes I am using for the test, along with their configurations.

Pumpkin Duke: 200ee.  Skill 10/10.  Berserk 8.  Revite 4 crests.  Blitz Scroll.  Angi.

The PD is configured to speed up the "ramp up" period to a minimum.  This makes it easier to compute with than a slower ramp-up.  Angi is there to keep PD alive.  Boss3 does not do huge DPS, but it's plenty to kill your PD in 3 minutes unless there is a bit of healing.

Hero to be tested: any level, any talent other than "extra hit" talents (slowdown, heavy blow, deadly strike).  Scatter 4 crests.  Artifact (if any) does not matter.  Don't assign a damaging pet.  (So, can have Angi, Yule, Doom Balloon, Bubblow; all the others do damage.)

The to-be-tested hero is configured mainly to prevent the boss from proccing.  This is done via the "last hero scatter trick".  Scatter is applied after energy is raised by hits, and truncation to 100 energy max happens after each hero goes.  Thus, if the final hero hitting a boss has scatter 4+, that boss will always end up below 100 energy and can thus never proc.

It should be obvious, but if the to-be-tested hero has an "extra blows" talent, you can still test, you just need to account for that.  Also, if the to-be-tested hero has scatter, then you can use whatever crests you want.

Deployment:

Drop both heroes right on the boss and immediately hit Invigorate.  Drop PD first, so that the boss aggros on him (which speeds the ramp-up), and also so that the hero being tested is the last hero dropped, meaning the boss cannot proc (due to scatter) once you hit max speed.  Also dropping PD first means he tanks, which means that you can test very low-hitpoint heroes.  Just be sure that their damage per hit is maximum once PD is spooled up.

Documentation:

Take a snapshot of the final screen, showing total damage done.  Also take a snapshot during battle, so you record which heroes are being tested.  (On my phone, and probably yours, snaps are stored by date; so these two will be next to each other.  This helps you remember later which hero was being tested that got the total damage.)

If the damage done is 120m, then the battle will end early and you need to carefully note the seconds left.  This requires watching the battle like a hawk.  (This should not happen except for extremely damaging heroes.)  It also requires careful computation afterward.

Tests I have done:

Here's a rundown of the Boss3 tests I've done:
  • Phantom King and Heartbreaker -- showed that PK and HB have the same number of hits,
  • Medusa -- showed that her snakes do in effect get two auto hits.  Also, strangely, shows that snake hits either don't add energy or they hit early enough so that her scatter makes the boss not proc.
  • Harpy Queen -- done to have a baseline to work with for TT.  TT needs special handling due to her pumpkies being summoned, and thus nullifying the "last hero scatter" trick.
  • Trixie Treat -- same post as HQ, since I did HQ to do TT.
  • HQ again with Deadly Strike -- done to test how deadly strike works.  Concluded it works via extra hits, just like Slowdown and Heavy Blow.
  • Vlad -- done to test his proc.  It gets more hits than was previously believed.
  • Immortep -- gets more proc hits than was previously thought.  Unclear why.
  • Beast Tamer -- confirmed he works as predicted.
I plan to update this listing as I add tests.

Friday, May 5, 2017

Personal Record in GW

Since I have been cheesing, my GW scores have shot up quite a bit.  I used to snipe.  I would rarely be able to deal with any base above 200000 might, and usually I'd be down in the 170000 range looking through many bases for my 5th.

These days, I look at many fewer bases.  Usually I can't cheese the really high ones, say, 220000+, because their Ghoulem or DD is too strong, and/or they are aware of cheesing and either leave off Ghoul and DD entirely, or they put them in the middle of the 6 heroes in a way that I cannot get at them without pulling at least one other hero.  (If that hero happens to be really weak, then cheesing is still possible.   But usually it's SK, Grim, or some other hero that my team can't handle safely.)

Sometimes I can cheese a base on the first try, but it's much more typical for it to take multiple tries (and sometimes a rather high number) to get my Ghoulem to path successfully.  But I do find that cheesing is faster overall than sniping, because I am looking at fewer bases and I am not subject to the RNG as much later in the run.

Anyway, here's my latest and greatest GW result.  It's a testament to the power of cheese.  In this war I hit bases mostly in the range 220000-230000.
Pity my guild ain't getting it done.  
2682.

Thursday, May 4, 2017

Medusa Hits Single Targets Twice

Recently Mr__Perfect posted a handy reference post at reddit showing the amount of hits you can expect from each hero at max speed over 10 seconds, against a single target.  (This is an update of an original post by panpiksel.)

While I was discussing it there, I reinvented my own idea on how to empirically test this.  That is: do a run with PD and one other hero of interest.  Put Scatter 4 on the hero being tested, to stop the boss from proccing.  Put Angi on PD so he doesn't die.  Since my PD is basically maxxed (skill 10, Berserk 8, Revite 4), the only factor changing is the second hero.  So we can compare them.

I've already done exactly this to compare Heartbreaker to Phantom King, trying to figure out how HB works.  But because I did that, now I can extend the comparison to other heroes.  One per day!

Here's the first: Medusa.  Here's her result:
Medusa result.
PD and Medusa score 99,165,922.

From the older post, HB and PK got 94,734,436 and 95,073,376 respectively.   According to what I know, both get the same hits.  They should be the same, and (within 0.5%, experimental error) they are.

Obviously Medusa is getting higher.  But how much?  We need to factor out the effect of PD.  But we can do that.  PD is getting 50 hits per 10 seconds over the period where he is max speed.  HB/PK are getting 100 hits over the same period.  So, of the damage done by HB/PK, exactly 1/3 is PD.  The rest is HB/PK.  Taking the average of HB/PK damage as "the" damage expected for 150 hits/10s, we find an expected value of 31,634,635 for PD.  The rest (63,269,271) is HB/PK.

We expect PD's damage the same regardless of which hero he is with.  Thus, we conclude that Medusa did 67,531,287.  That is roughly 6.7% higher than HB/PK.  This concords well with the 5% higher that we expected.

Conclusion: Medusa is certainly auto-hitting twice against a single target.  She is doing 5% more damage than HB/PK in this situation (one target, max speed, low damage cap).