Friday, February 29, 2008

Enough abbreviations to make your mind bleed, Part 4: Mo' Numbers, Mo' Problems.

Ok, so we are done with the numbers right? I freaking wish. But at least today, we will do something useful and practical with the numbers and we have some incredibly limited tests to see how this all works out. But first a recap, and no this recap involves no formulas. Just our high and low damage numbers. After all of that math and putting everything together, we know that our sexy Samurai should have this as there damage range:

Damage = 59~100
Now, lets stop for a second. Is that really the damage they should be hitting for? Or is it just another number that acts on something else?

Here is where I fail you, dear reader. I just don't know. That is part of the reason that I am trying all of this out. I need to know. So, what is the best way to see if these numbers work? Well, obviously it is to test them out! So take one sexy Samurai, one Greater Colibri, two WHM that are willing to help test and one bored DRG, and mix it all together. The outcome is not what you expect (luckily the unexpected outcome was not goblin-humping). Let's look at the results. Ugh! Raw data! LOL Anyway, I only tested 3 Greater Colibri. Yes, I know that is nowhere near enough to draw any conclusions, but it can provide insight into the damage formula. The testing conditions were very simple, Samurai/Warrior 75/37, only buff was Seigan and Third Eye, STR as listed before 98, Attack as listed before 422. No other buffs were place on me, and I never used food or job abilities. I did no weapon skills and did not include any critical hits in my results.

Houston, we have a problem. Here is where things break down. The damage formula that I have religiously followed for the last three days doesn't match the results I saw during the test. We should have seen results always land between 59 and 100, but in this test the results land between 63 and 112, and they could go further out as this was just the observed limits. Now, you are probably expecting me to step up at this point and say, "Haha! I know why it is doing this!" but I don't. I am going to blame my own limited understanding of the formula and maybe the fSTR formula. So, since we don't know what is going on, but we have some data to test, lets make a new testing formula. This equation is going to be actually useful (maybe) for figuring out not just this problem but the effect that changes in your set up will have on the range of damage you are doing. For this formula we are going to use the level 81 Greater Colibri because it is nice and simple and we know (or at least, we think we know) the stats for it. Ultimately, I am not looking for my exact damage against each possible mob, but rather, what kind of effects that STR and Attack have on my damage dealing possibilities. So lets look at the huge formula from yesterday and reduce the things we don't need.
Damage = (D + ((STR - VIT) + N)/2)/2 x (fMax(ATT/DEF - 0.050 x (mobLVL - playerLVL) ~ fMin(ATT/DEF - 0.050 x (monLVL - playerLVL))
can become
Damage = (D + ((STR - 67) + 4)/2)/2 x (1.2 x (ATT/322 - 0.3) ~ -0.5 + 1.2(ATT/322 - 0.3)
It may still look like a lot but it's not really. All you have to do is plug in STR and ATT and you should be able to come up with your new range. Just remember that if you change you ATT, you could end up changing you pDIF range equation. If you are increasing STR and ATT, it's not going to matter much because you are already in the highest bracket, but for the lower end it could effect it.

I think the problem with the results is that somehow I am screwing up the fSTR calculation. I just don't know for sure, and that is the area that people don't know that much about either, because it is so hard to test. Well, lets see what happens when we add one point of STR.
Damage = (75 + ((99 - 67) + 4)/2)/2 x (1.2 x (423/322 - 0.3) ~ -0.5 + 1.2(423/322 - 0.3)
(How did I know that 1 STR added one point of ATT? Well, I used this equation:
2 Handed Attack = {( 8 + Combat Skill + 3STR/4 + (+attack from gear) + (+attack trait/ability/minuet)) * berserk effect (if available)} * (1+ percentage increase from food )
I am not totally positive that is the correct adjustment for STR but, I am going to use it for now anyway) So that gives us a new range of 60-102. So we are moving in the right direction. The problem becomes that it is pretty difficult to shift these ranges without adding a whole lot of STR into the equation. And I am left scratching my head. Ahh, well. The best laid plans of mice and men. Either there is something wrong with my equations, or there is something wrong with other people's equations. If you leave the fSTR factor as fSTR2 you come up with results that are much closer to what they should be (with a range of 65 to 111) but it still does not line up. I am going to ask around and see what I can come up with.

After four days of this, my brain is absolute sludge. I currently have open in my Firefox tabs: 2 work tabs, 2 blogger tabs, 1 BG forums tab, 1 e-mail tab, 1 graphing website tab, 1 regular wiki tab and 1 god damn melt my fucking brain graphic calculator tab. This is too much! LOL

Anyway, lets see what my other testing came up with? This is the frequency of the damage per hit during my really short test: Ok, I am going to include some things that you should take into consideration even though they may hurt your brain. The average was 86.5625, the median was 85, and the mode was 84. Now, you should know what an average is, so I am not going to explain that. The median is the number that is exactly in the middle of a set of numbers. The mode is the number that occurs most often. You can use this to help you understand what is happening when you do damage. Here is that same data now graphed out. Again, the distribution is not what I expected. For this though the sample size is too small so I am not sure if this is exact, or if it should be taken with a grain of salt. Also there is another consideration which is the strength of the random number generator that SE uses. I am not sure how good it is, but the results are kind of weird. Normally, I believe in this case, SE is going to basically want to start with an algorithm that is going to makes a bell curve (or a normal distribution) whose outside parameters are defined by what we have seen before. If I am wrong about this, then a lot of the things I think about how damage is done behind the scenes might be wrong. The problem is that if they didn't use some kind of curve shaped algorithm then we would end up with an even distribution of damage across the range and, at least I am sure about this one, that is not the case.

If you haven't been reading for the last three days, this is the place to start. I am going to start making suggestions now about how you should approach STR and Attack in the game.

So operating on what I believe is the sound assumption that SE is using some kind of curve to determine damage, lets look at some of the possibilities. But first a diagram of what an imaginary damage curve would look like: This just shows how a normal distribution would work. It is a representation, not a real depiction of SE's random number generator. Basically the idea is that you are more likely to hit for amount in the middle if no other factors are at work on the damage. Actually, this baseline could be anything because it is just a measure against other tests. Well, I think there could be problems if you do start with too many conditions because it will create a skew in the data before you even begin. But for determining your damage, you can use it as a logical representative starting point.

Now, lets have some fun. This whole discussion was created in my mind to try to understand how STR and Attack interrelate, and what you should do in different cases. Lets look at fSTR first, because that is in the first part of the equation. This one is pretty simple to understand, as fSTR increases the curve increases. Meaning that fSTR increases damage all throughout the range of damage. Now, remember the equation for fSTR is
fSTR = ((dSTR + 4)/2)/2
and since it is divide by two twice, it means that for every point you increase in STR you only get a .25 increase in fSTR. Further, since these numbers are all rounded down, for each point of fSTR you want to gain you will need to get to the next full point, so it can take up to 4 points of STR to increase your fSTR by 1 point. (This is true if the equations for fSTR are correct, if they are not then I have just wasted 4 days on this LOL) So depending on how close you are to your next fSTR point increasing STR over Attack may be a bad idea. But remember! Increasing fSTR by 1 point will have a much larger impact on your damage than increasing Attack by the same amount. Think of it this way, if you can not get to the next fSTR then Attack will always be better, because increasing your STR will literally do nothing besides increase your attack.

Now, lets go over attack. There are basically two scenarios under which Attack can increase your damage. This is the first one, which I believe is incorrect, and I will explain why in just a sec. Now if you look at this graph it would seem reasonable, because all attack does is shift up the amount of damage each swing can do, but it doesn't change your damage range. The problem with this design is two fold. First, it would be hard to do as it would require constantly adjusting the random number generation with information for each character. Let me stop there, because I don't know if that is hard to do at all. Just in my little wee brain it seems harder than the equation we already have. Second, it would really reduce the effect of attack by a lot. Notice that the extreme ends are still there with their massive drop offs and though the area over which damage is shrunken and improved, the frequency with which all occurrences has no changed. This would have a very limited effect on damage over all. That is why I believe that a scenario something like this is what really happens: In this scenario, the effect that Attack has is to increase the number of times that a higher end result will occur. The more Attack the more times you will hit for a higher Attack number. But this scenario is also wrong, because Attack does not have a cap on it, while fSTR does. So it is usually said under the fSTR cap that comparable amounts of Attack and STR favor STR, but after the fSTR cap Attack will have a larger effect on damage than STR because STR will only be increasing damage through Attack. The effect you see pictured above could happen when you are adding Attack below the fSTR cap, but there would still be a curvature that I did not show. Honestly, after days of this it's hard to even wrap my mind around it. LOL

Ultimately, the thing to remember is this, if you can determine how much STR will get you to the next fSTR point, you can better evaluate if you should use more Attack or STR. There is more to discuss here, but I am done for the day and the week on the subject. On Monday, I will talk about more practical applications, and hopefully I will have an answer to the question of what the hell STR and Attack do to the damage curve and what it would look like!

Honestly, I am surprised my brain made it this far.

I have other business that I will cover quickly, but since I skipped it, I should cover it before the weekend. First, I got to tank Armored Chariot, wee! This fight is pretty damn easy, it is just getting to the top that is the hard part. Both Zhayolm and Arrapago have pain in the ass final floors to get to easier bosses. With Versus we did a Zhayolm run which though didn't drop any 35's, but we did get Skur a pair of 15 hands for completing his Morrigan's Cuffs from the first floor frog, then we cleaned out the rest of the frogs up to the 6th floor. Doing the frogs is actually pretty easy, and with practice and good frog selection we should be able to add the boss. Blaize apparently isn't very attached to his THF AF.
See you on Monday, hopefully the bleeding will have stopped.

1 comment:

JESS said...

ok so what I got from this is:

1) Increasing my FSTR will increase my lowest damage hits and my highest damage hits

2) Increasing ATK will
increase my lowest damage hits but not increase my highest damage hits

This is evident when a MNK stacks ATK.

This is why you suggest the use of a Foragers instead of Smilodon+1
However This is also why as DRK/THF
I use the Smilodon+1 in WS macro.
As DRK/THF I get the unnatural Critical on my SpirelHell from SaTa I try to increase my FSTR as high as I can. If those 2 extra STR are not increasing my FSTR then I am waisting the extra ATK I could get from the Forager's. However as DRK I get the most ATK then any other job and I'm not talking about MNK Boost.

Signed....The DRK who puts the ~BAM into the FSTR !