 |
05/07/07, 1:41 PM
|
#166
|
|
Great Tiger
Cheeky
Troll Hunter
No WoW Account
|

Originally Posted by Norwest
For each individual shot, iAotH is either on or off, so I tried thinking about the problem shot-by-shot instead of per-second. What I did was calculate the average number of shots a proc lasts, counting reprocs and everything. I also calculated the number a shots a 'no-proc' streak lasts.
If we know the average number of shots in a proc chain and the average number of shots between procs we can easily find the average number of hastened shots.
No-proc Streak:
Pretty simple, Hawk has a 1 / 10 chance to proc, the average length of a 'no-proc' streak is 10 slow shots. The fact that Quick Shots doesn't add haste to the shot it procs off of is accounted for.
Proc-Streak
The length of a chain of procs is a bit harder to model. But it can be done by calculating the number of fast shots inside a proc, and calculating the chance that one of those shots will chain the proc a second/third/fourth time. Each extra chained proc adds (on average) half of the duration of the proc. I modelled up to 15 procs in a row.
One small twist, is that the first shot is not hastened when iAotH procs. That makes 1st time procs and chained procs behave slightly differently depending on the bow speed.
After modelling it, I recalculated the probabilities using a Taylor Series and got the same answer. If you don't know what that is, don't worry, because, I don't really know either I just know it works.
Here's my calculation Spreadsheet:
http://www.mediafire.com/?8dnxqmdqddw
If people like my approach to this, I'll work it into the original spreadsheet. I could get the whole thing down to 2-3 lines easily, but I don't want to do that before I think people agree with my approach. I'm always very bad at explaining my mathematical thinking to people, I apologize I'm sure this is confusing.
I'll be on tomorrow to answer any questions etc.
|
I'd like to come back to this idea. I've thought about it more, and I like it a lot. Has anyone found any flaw in the reasoning or math behind it. I've added it into my spreadsheet (to go along with the new Quick Shots rotation and DPS ratio idea.) It's kind of difficult to describe some of the terms easily, but I don't think that's a big deal. I'm much more interested in accuracy of information.
Norwest, would you have any issue with my using this as part of the next release? I will, of course, give you full credit for the calculations.
|
|
|
|
05/07/07, 2:34 PM
|
#167
|
|
Don Flamenco
|
I understand it conceptually, I haven't gone through the math to check for errors. Conceptually it makes sense to me, but calculating the length of a streak that falls within a proc is a little tricky. The obvious way to do that would be to calculate the chance of NOT getting a proc in a streak for an arbitrarily long string of attacks. However, the time issue makes this tricky. You have to figure out if and by how much the time under effect from procs overlaps.
From the start of the first buff you'll have a 1-0.10^(floor(12/attack speed)) to refresh the buff. As getting a new buff overwrites the old one with a fresh duration, the likelihood of getting a string of new buffs that are contiguous would be [1-0.10^(floor(12/attack speed))]^n, where n would be the nth buff in the string. This can be made into a sequence like
n=1...infinite [1-0.10^(floor(12/attack speed))]^n
This assumes that if you proc on the last shot of the buff the buffs would be overlap enough to be continuous, but this is not TOO unrealistic.
The problem I'm having, and I think Norwest addresses it better than I do, is determining how many shots fall within a string of hasted shots. I'm having a fair amount of difficulty digging through the spreadsheet (norwest's, that is) because things just aren't labeled in a fashion in which I can make sense. There's a column labeled "chance of ending quick shots" in which the probability has a limit of 0 as the number of extra procs gets higher. I assume he means this is the likelihood of getting a second proc during the duration of QS and how this effects the extension of the time under effect, but it's unclear to me from the spreadsheet.
So, here's my request: can you (or someone who understands your work) more clearly articulate what you're doing? I can sort of see the direction, but the spreadsheet really isn't aiding me in understanding your model. The Taylor Series you have (by the by, I'm not sure it's actually a Taylor Series, but rather just a series (correct me if I'm wrong). Purely a terminology thing, but precision in terminology will help in this conversation) looks to be, from cell b18,
chance of reproc / (2* (1-chance of reproc))
which is essentially the same as
chance of reproc / (2 * chance of no proc)
Can you explain from whence this comes? I know it's Monday, but I'm having a hard time figuring out how you derived that equation for the series. Understanding where this is coming from would really aid me in participating in this discussion (maybe I'm the only one who's not following your math, but could you humor me?).
As for the uptime calculation itself, it looks like it's the number of shots from a single proc plus the product of the probability of a second proc and the number of shots from a second proc is being used as the average length of a proc streak. You're dividing this by the sum of the length of a no-proc streak and the average length of a proc streak (that is, you're determining what percentage of the aggregate of your shots are in a proc streak). This stuff all makes sense to me (everything in this paragraph).
Anyway, having someone clearly articulate what the rationale behind each step would be great, I'm just not able to follow it from the spreadsheet.
Also, a nitpick: you use roundup for determining reproc chance rather than rounddown. Either is valid, however I'm inclined to use rounddown as a more conservative estimate. I changed it in my copy of the spreadsheet, but this is incredibly minor.
edited to remove erroneous information (such as to not spread misinformation)
Last edited by The Iron Colonel : 05/07/07 at 3:06 PM.
|
|
|
|
|
05/07/07, 2:49 PM
|
#168
|
|
Great Tiger
Cheeky
Troll Hunter
No WoW Account
|
Originally Posted by The Iron Colonel
(I assumed 1 special between autos, effectively doubling the rate of fire - hence the 2 * attack speed)
|
Only auto shots can trigger Improved Aspect of the Hawk.
Originally Posted by The Iron Colonel
Also, a nitpick: you use roundup for determining reproc chance rather than rounddown. Either is valid, however I'm inclined to use rounddown as a more conservative estimate. I changed it in my copy of the spreadsheet, but this is incredibly minor. You've also got your calculator set up to only count autoshots - I would say you could safely double the rate of fire by assuming 1 special / auto to get a more representative-of-real-use calculation.
|
I believe this is because Norwest subtracts off one shot's worth of time from the 12 seconds. By rounding up he adds this shot back in. (Although it may cause errors where you have an exactly evenly divisible number of shots.)
[is "exactly evenly divisible" poor grammer? ]
|
|
|
|
05/07/07, 2:58 PM
|
#169
|
|
Don Flamenco
|
Originally Posted by Cheeky
Only auto shots can trigger Improved Aspect of the Hawk.
|
I'm a moron who can't read tooltips - I just copied an equation I have in a spreadsheet for determing up time on non-internal cooldown proc-based effects. Thanks for correcting that.
Originally Posted by Cheeky
I believe this is because Norwest subtracts off one shot's worth of time from the 12 seconds. By rounding up he adds this shot back in. (Although it may cause errors where you have an exactly evenly divisible number of shots.)
[is "exactly evenly divisible" poor grammer? ]
|
I see why he subtracted out the first shot (has to do with when the time under effect starts), so that makes sense. However, I'm not really clear on why you'd need to add that shot back in. That shot is the shot that procs iAotH (ergo it can't proc it a second time), so it doesn't need to be included in the calculation. Am I missing something? Do I just have a bad case of the stupids today? There's no reason I can see to add that shot back into the equation for up time calculations.
edit: By the way I just realized I had the duration of iAotH incorrectly listed as 10 seconds instead of 12 seconds in my post. It's just not my day, sorry for lowering the tone of this thread with bad information.
Last edited by The Iron Colonel : 05/07/07 at 3:04 PM.
|
|
|
|
|
05/07/07, 3:05 PM
|
#170
|
|
Great Tiger
Cheeky
Troll Hunter
No WoW Account
|
Originally Posted by The Iron Colonel
I see why he subtracted out the first shot (has to do with when the time under effect starts), so that makes sense. However, I'm not really clear on why you'd need to add that shot back in. That shot is the shot that procs iAotH (ergo it can't proc it a second time), so it doesn't need to be included in the calculation. Am I missing something? Do I just have a bad case of the stupids today? There's no reason I can see to add that shot back into the equation for up time calculations.
|
He subtracts it, because that shot doesn't (for initial proc) get hasted. So it has a different timing to it that the hasted shots (and hence, isn't simply a division operation.) So you have number of shots S = (12 - unhasted shot)/(Hasted Shot Speed) + 1. He just seems to use the Roundup() function to add 1 back in. There may be something else he's looking to account for on the boundary case, but I can't see what that might be. He carrys the same forumla through on the re-proc case, but I don't think he needs to.
You add the one back in because it is still a shot firing, and when it shoots and lands it has the same 10% chance to proc Quick Shots again.
At least, this is my interpretation of the equations he presents in his spreadsheet. I would also like to see a bit more explaination of each term. I'm not too bright either. 
|
|
|
|
05/07/07, 3:10 PM
|
#171
|
|
Don Flamenco
|
Originally Posted by Cheeky
He subtracts it, because that shot doesn't (for initial proc) get hasted. So it has a different timing to it that the hasted shots (and hence, isn't simply a division operation.) So you have number of shots S = (12 - unhasted shot)/(Hasted Shot Speed) + 1. He just seems to use the Roundup() function to add 1 back in. There may be something else he's looking to account for on the boundary case, but I can't see what that might be. He carrys the same formula through on the re-proc case, but I don't think he needs to.
You add the one back in because it is still a shot firing, and when it shoots and lands it has the same 10% chance to proc Quick Shots again.
At least, this is my interpretation of the equations he presents in his spreadsheet. I would also like to see a bit more explanation of each term. I'm not too bright either. 
|
Right, I noticed that when he determines the number of shots in the second effect duration he's still timing the first shot as though it weren't hasted, which, as far as I can tell, is unnecessary. If you're assuming that the two effects overlap, the shot that procs the second effect has to be hasted by necessity.
Again, apparently today is not my day when it comes to math or theory, so I may just be missing the need to account for the shot in boundary cases.
|
|
|
|
|
05/07/07, 3:56 PM
|
#172
|
|
Von Kaiser
|
Cheeky, please feel free to use my calculations, that's why I wrote them. I did notice one thing, the +Haste leg and hand enchants may be in accurate, since it is 10.5 haste rating for 1% I believe. The haste enchants are interesting with iAotH since depending on bow speed you can bump yourself to fitting in an extra shot with an iAotH proc.
|
There's a column labeled "chance of ending quick shots" in which the probability has a limit of 0 as the number of extra procs gets higher. I assume he means this is the likelihood of getting a second proc during the duration of QS and how this effects the extension of the time under effect, but it's unclear to me from the spreadsheet.
|
Ok. What that column is, is the chance of ending the proc streak after 'X' chained procs. The value of 6.10% on 3 procs means there is a 6.10% chance of QS ending after a chain of 3 extra procs.
The reason I add that shot back in, is because when iAotH expires right after a shot, the full shot gets the effect of the QS. The 'extra shot' is the ending shot.
I just realised that I don't like my 'fshots in proc (2nd + proc)' formula. I subtracted 1 shot from the formula because the first shot is technically getting its haste from the previous proc. But when I look at the 'Extra Duration' column I've counted the extra 7 shots starting in the middle of the last proc. Cell E32 is not correct, if you write out the timing the average haste length is 10.5 shots not 9.5.
(It's the damn boundary conditions that are messing me up).
It's a fairly easy fix, but I need to go over my shot timing again and do the timing manually for a few cases.
Thanks all for the feedback and checking my math. feel free to ask me for explanations on fields etc, I know my math is confusing even to me sometimes.
|
|
|
|
|
05/07/07, 5:07 PM
|
#173
|
|
Don Flamenco
|
Originally Posted by Norwest
Ok. What that column is, is the chance of ending the proc streak after 'X' chained procs. The value of 6.10% on 3 procs means there is a 6.10% chance of QS ending after a chain of 3 extra procs.
|
Oh ok, I see what that is now. I wouldn't have thought to approach it like that, but it works. Can you explain the series, though? I still unclear on the derivation of that.
Thanks for the reply, even that little bit made it a whole lot more clear.
|
|
|
|
|
05/08/07, 11:23 AM
|
#174
|
|
Von Kaiser
|
I derived the series when I only had one re-proc chance because I wasn't considering the different timing on the first/second shots. I was just screwing with the old formulae and I found that what I have now seems to work. I wish I could be more helpful than that and produce some genius mathematic proof. I tend to model something, then reverse engineer a formula and test it.
I've been taking another look at my boundary conditions, and I made a few errors. I missed a fast shot every 2nd, 3rd, 4th etc proc so the series calculation is wrong anyways.
Here's my new math, the length of the second proc is:
(First proc length + 1 bonus hastened shot) / 2 + Chain proc length
The / 2 is because the first proc is cut in half by the second, the bonus shot is to account for the 1 shot delay in iAotH. (Now that I look at it again, the bonus shot is needed because the chain procs have 7 chances to refresh Hawk, but last for 8 autoshots. I subtracted the first shot for the purpose of calculating reprocs, but I have to add it back in)
Each additional proc past 2 will cut off an average of 1/2 of the last proc. So each chain proc adds on average half it's length.
Last Chain Length + (Chain proc length + 1 bonus hastened shot) / 2
I've checked these formulae for 2.6,2.7,2.8 speeds and they math the numbers I get when I count every case with individual shots.
Here's my new math:
http://www.mediafire.com/?5dwnn2bndcf
|
|
|
|
|
05/08/07, 12:45 PM
|
#175
|
|
Don Flamenco
|
Originally Posted by Norwest
Here's my new math, the length of the second proc is:
(First proc length + 1 bonus hastened shot) / 2 + Chain proc length
The / 2 is because the first proc is cut in half by the second, the bonus shot is to account for the 1 shot delay in iAotH. (Now that I look at it again, the bonus shot is needed because the chain procs have 7 chances to refresh Hawk, but last for 8 autoshots. I subtracted the first shot for the purpose of calculating reprocs, but I have to add it back in)
Each additional proc past 2 will cut off an average of 1/2 of the last proc. So each chain proc adds on average half it's length.
Last Chain Length + (Chain proc length + 1 bonus hastened shot) / 2
|
Another day, more stupid questions from me. Can you explain why each successive proc cuts the duration in half? Is this indicative of an underlying assumption that a successive proc will come most frequently halfway through the first proc? When you say
Originally Posted by Norwest
Each additional proc past 2 will cut off an average of 1/2 of the last proc. So each chain proc adds on average half it's length.
Last Chain Length + (Chain proc length + 1 bonus hastened shot) / 2
|
that is what I interrupt it to mean. If that's the case, you'll have to persuade me that this is not an instance of misuse of the mean (that is, an assumption that on average a successive proc will occur in the exact middle of the current proc). Sorry if I sound overly aggressive in my questions, but I'm really trying to understand what you're laying down and it's not making sense to me.
|
|
|
|
|
05/08/07, 2:21 PM
|
#176
|
|
Von Kaiser
|
Originally Posted by The Iron Colonel
Sorry if I sound overly aggressive in my questions, but I'm really trying to understand what you're laying down and it's not making sense to me.
|
No no, please continue. I really appreciate when people take the time to go over my work and challenge my assumptions. I want to get this working right, and if no one nitpicks my work I'll never know if I've got it right.
Originally Posted by The Iron Colonel
Can you explain why each successive proc cuts the duration in half? Is this indicative of an underlying assumption that a successive proc will come most frequently halfway through the first proc?
|
Yes, that's what I'm assuming. You may be right on this that I'm 'misusing the mean' as you say. You don't have the same chance to refresh Hawk on the 7th hit as on the 2nd hit. I need to mull this over.
|
|
|
|
|
05/08/07, 2:33 PM
|
#177
|
|
Don Flamenco
|
Originally Posted by Norwest
Yes, that's what I'm assuming. You may be right on this that I'm 'misusing the mean' as you say. You don't have the same chance to refresh Hawk on the 7th hit as on the 2nd hit. I need to mull this over.
|
Strictly speaking, you DO have the same chance to hit on the 7th hit as the 2nd hit. The difference you're referring to is "What is the chance that I will get 7 non-procs consecutively" versus "What is the chance the I will get 2 non-procs consecutively". The probability of each independent event is the same, the probability of consecutive events is different.
I haven't hashed it all out yet, but my feelings are that you'd have to ask "what is the probability that I haven't YET had a proc in a series of shots?" and "what is the probability that this shot will be a proc?". The second question is easy to answer (10% proc chance) whereas the first appears simple, but is actually complex when you consider whether or not you're within the duration of a prior proc. I don't have good answers, but just a little insight.
As for the number of shots in a proc, I think you're on the right track. The first proc will lose time equal to the unmodified attack speed before the first auto shot, which you've accounted for. The subsequent procs, if overlapping such that the effects are contiguous, won't lose the first shot.
|
|
|
|
|
05/08/07, 3:14 PM
|
#178
|
|
King Hippo
|
It is interesting to see you guys thinking out loud, running through some/most of the stuff I did before I decided to just simulate it.
I'm sure there is a way to accurately describe it but I don't have a degree in statistics so it was well beyond my scope.
|
|
|
|
|
05/08/07, 3:15 PM
|
#179
|
|
Von Kaiser
|
Gaul just a question, are your numbers at the start on a per-second basis or are they per shot?
|
|
|
|
|
05/08/07, 3:26 PM
|
#180
|
|
Don Flamenco
|
Originally Posted by Glaurong
It is interesting to see you guys thinking out loud, running through some/most of the stuff I did before I decided to just simulate it.
I'm sure there is a way to accurately describe it but I don't have a degree in statistics so it was well beyond my scope.
|
Yeah Glau, as I said before I think simulating it is probably the easiest method to do this (which you've already done). It is an interesting academic question, though, so if someone is able to decipher things and create a nice little equation or set of equations, I'll happily support that effort.
Getting back to the original question of "how do we model iAotH?", I want to reiterate my support for determining average up time and then weighting a QS and non-QS rotation accordingly. It won't be perfectly accurate, but it'll be more representative of the potential alterations required to the shot rotation while QS is up.
|
|
|
|
|
|