Ok for some reason you’re transfixed on the armor thing. lets forget that I mentioned armor ok and get back to the meat and potatoes. The Macro, can it be fixed , removing Defense and showing Block / avoidance
Your macro and the math in it does. Your MATH is wrong.
"In anything, if you want to go from just a beginner to a pro, you need a montage." /w TankSpot WTB Montage for Raiders.
Ok for some reason you’re transfixed on the armor thing. lets forget that I mentioned armor ok and get back to the meat and potatoes. The Macro, can it be fixed , removing Defense and showing Block / avoidance
Original flawed macro:
Corrected Macro:Code:/run local b,d,p,r,a=GetBlockChance(),GetDodgeChance(),GetParryChance(),GetCombatRating(CR_DEFENSE_SKILL) a=1/(.0625+.956/(r/122.9625)) ChatFrame1:AddMessage(format("Unhittable: %.2f%% Avoidance: %.2f%% Defense %+.0f rating",b+d+p+5+a,d+p+5+a,r-689))
Assuming you want it to calculate Unhittable, Avoidance, and Defense.Code:/run local b,d,p,l=GetBlockChance(),GetDodgeChance(),GetParryChance(),UnitLevel("player");DEFAULT_CHAT_FRAME:AddMessage(format("Unhittable: %.2f%% Avoidance: %.2f%% Defense %+.0f Skill",b+d+p+5,d+p+5,l*5))
Defense Skill is always player level times 5 now, there is no Defense Rating to alter it anymore. Unhittable is Dodge, Parry, Block and Miss. Avoidance is Dodge, Parry, and Miss.
Armor does not factor into any of those three calculations at all. Armor doesn't factor in until you're talking about damage that actually hits.
Last edited by Quinafoi; 01-11-2011 at 09:23 AM. Reason: changed defense "rating" to "skill"
"In anything, if you want to go from just a beginner to a pro, you need a montage." /w TankSpot WTB Montage for Raiders.
NOW we are talking, ill check this out after the shutdown and get right back to you. i think we are somehow getting to the right page you and i. thank you
Not in game to verify my syntax but here is an Unhittable calculation that adjusts to target level (i.e. shifts the 102.4% for a level + 3 raid boss down to 100% to make it easier to understand). Depending on the level of what you are targeting. It doesn't do end case checking though (a level 1 targeting a level 85 player would probably get some negative avoidance which isn't actually possible, not that these calculations apply to players the same way anyway since they could have hit and expertise).
Code:/run u,t=UnitLevel("player"),UnitLevel("target") if t==-1 then t=u+3 end ld,d,p,b,m=0.8*(u-t),GetDodgeChance(),GetParryChance(),GetBlockChance(),5 DEFAULT_CHAT_FRAME:AddMessage(format("Lvl: "..t.." Unhit: %.2f%% Avoid: %.2f%%",d+p+b+m+ld,d+p+m+ld))
Last edited by Quinafoi; 01-11-2011 at 10:48 AM. Reason: fixed a syntax error, undefined variable
"In anything, if you want to go from just a beginner to a pro, you need a montage." /w TankSpot WTB Montage for Raiders.
That macro will work on any mob that is not a raid boss.
"Skulled" mobs (raid bosses) don't technically have a level. Their mechanics always function as though they are +3 levels above the player - regardless of the player's level. The GetLevel API returns -1 for "skull" mobs.
Failure is not an option. It comes bundled with the software.
I have it account for that too. See the test for -1 and then it adds 3 to player level. It assumes that it is a raid boss and in order to enter a raid instance you have to be at least of the appropriate level, i.e. you shouldn't enter Baradin Hold if you are only level 84. What it can't account for is things you simply can't tell the level of cause they are much higher than yourself.
"In anything, if you want to go from just a beginner to a pro, you need a montage." /w TankSpot WTB Montage for Raiders.
Ah... I did find a flaw. Damn. In my simplification of using 0.8 for the level delta factor, I didn't compensate for the fact that avoidance only has 3 of the 4 factors, block is excluded. In Avoidance's case it should be 0.6.
Here is a macro with that fixed.
I'm at 254 characters so I was trying to reduce space and that led to my prior mistake.Code:/run u,t=UnitLevel("player"),UnitLevel("target") if t==-1 then t=u+3 end ld,d,p,b,m=0.2*(u-t),GetDodgeChance(),GetParryChance(),GetBlockChance(),5 DEFAULT_CHAT_FRAME:AddMessage(format("Lvl: "..t.." Unhit: %.2f%% Avoid: %.2f%%",d+p+b+m+ld*4,d+p+m+ld*3))
"In anything, if you want to go from just a beginner to a pro, you need a montage." /w TankSpot WTB Montage for Raiders.
[QUOTE=Quinafoi;484809]I have it account for that too. See the test for -1 and then it adds 3 to player level.[/QUOTE
Ah, I see that now, must've glazed over it before.
Failure is not an option. It comes bundled with the software.
I know this thread is quite a few months old but I haven't been able to find any other macro threads that were breaking down the Unhittable into black and avoidance. I am just curious of there was a final macro that worked for the OP. I know one is posted above for when you target a boss but I don't always have a boss around to target when I am swapping gear in and out trying to see what my numbers are. I am also not smart enough to dive into the above macro and try to re-work it to work without targeting something for the level. Thought I would take a shot and post. tyvm
PS Always impressed with/envious of math guys. I just don't have that type of mind.
You could always have a boss target dummy targeted.
The macro I wrote was designed to be automatically adaptable regardless of level (so in expansion 4 and 5 it would likely still work if the core mechanics don't change). However if you want a more rigid version that only uses level 88 for its calculation, here you go.
Again, this macro does level difference calculations to shift numbers to a 100% scale, to make it easier to understand than the 102.4% (actual numbers in practice, i.e. what approximate percentages you'd expect in a combat log).Code:/run u,t=UnitLevel("player"),88 ld,d,p,b,m=0.2*(u-t),GetDodgeChance(),GetParryChance(),GetBlockChance(),5 DEFAULT_CHAT_FRAME:AddMessage(format("Lvl: "..t.." Unhit: %.2f%% Avoid: %.2f%%",d+p+b+m+ld*4,d+p+m+ld*3))
Last edited by Quinafoi; 04-15-2011 at 07:53 AM.
"In anything, if you want to go from just a beginner to a pro, you need a montage." /w TankSpot WTB Montage for Raiders.
As a slightly easier alternative, one could always load up their character in Rawr as well, as the character sheet there will break down your chance to avoid, avoid+block, and avoid+block with Shield Block active against a boss without having to really do anything.![]()
Maintainer of Rawr.ProtWarr theorycrafting tool. Feel free to PM suggestions or feature requests!
Tyvm for both responses. never even thought of using the raid level target dummy and I never thought of rawr. Thanks.
Bookmarks