^ my favorite addon from the original BC was TankPoints but now i cant find it anywhere
if some1 with addon updating skills could bring this addon back from the dead i will love u long time
From the conversation on curseforge,
āThis project is open source; you donāt like it: fix it your damn self.ā
https://www.curseforge.com/wow/addons/tank-points
Looks like it was an interesting addon for calculating the usefulness of gear, but was somewhat abandoned by the original author, then maintained by someone who liked using it for their Paladin, but didnāt want to spend the time or effort required to maintain it for other classes.
i wish i knew how to fix it
Iām sure there are tutorials for writing addons.
i just googled a tutorial and it looks complicated
The things we like often require effort.
Then it looks like you waiting for someone to come along that may put in the effort.
that would be nice
It is complicated. Even if you were already very proficient at coding, itās a lot of work.
There was some interesting discussion in that thread where someone said something like, āStat weights are really easy to calculateā
And it was apparent that that person had no idea how to calculate stat weights. This seems like a very common sort of thing that non-technical people seem to believe, āDoing X is very easy.ā Yet, they have no idea how to do it.
If it is so easy, why donāt they do it?
Anyway the maintainer (at that time), who was maintaining it for his Paladin, gave a really nice reply that explained how one might go about calculating stat weights for a druid, which at the time may have been applicable for 3.x or somethingā¦
"Stat weights are extraordinarily difficult to calculate. Hereās a practical example from two years ago, of me trying to figure out what Druidās Savage Defense was worth:
Savage Defense Passive
Requires Bear Form
Each time you deal a critical strike while in Bear Form, you have a 50% chance to gain Savage Defense, reducing the damage taken from the next physical attack that strikes you by 35% of your attack power.Savage Defender
Requires Bear Form
Increases the damage absorbed by your Savage Defense ability by 32%. Each point of Mastery increases the absorb by an additional 4%.
Well i can see why Whitetoothās LibStatLogic doesnāt include it - itās damn near impossible to define. It has to be modeled as an average % damage reduction.
The variables are:
- your crit chance
- how often you swing
- how often the enemy swings
- your attack power
iāll assume that you and the enemy have the same swing speed, that eliminates two variables.
Assume you have a 30%
melee crit chance: 30 swings in 100 will be crits.
Only 50% of those will trigger Savage Defense.
So 15 swings in 100 will trigger Savage Defense.
The damage reduction of Savage Defense is 35% of attack power.
Savage Defender increases that percentage by 32%. This means that the damage reduction could be either 67% (additive, 35%+32%=67%), or 46.2% (multiplicative, 35%*1.32=46.2%).
iāll assume the absorption increase is additive: 67% of attack power. Each point of mastery increases the absorb by 4%:
AbsorbEffect = 35% + 32% + Mastery*4%
So it now begins to act like the old shield block value, meaning reducing an incoming attack by a fixed amount, rather than a percentage:
SavageDefenderBlockValue = AttackPower * (35% + 32% + Mastery*4%)
Adding in the fact that it only triggers after half your crits:
SavageDefenderBlockValueAvg =
CritRate/2 * AttackPower * (35% + 32% + Mastery*4)
Now this reduces damage taken from a hit by a fixed amount. We want to convert it to a fraction of an attack. This means we need to know a typical mob hit value:
SavageDefenderBlockReduction =
(MobHit - SavageDefenderBlockValueAvg) / MobHit
But Savage Defense only has any value if youāre actually hit. If youāre never hit (i.e. dodge+miss is over 100%), then Savage Defense has zero damage reduction. So we reduce itās effectiveness by your chance to be hit (100% chance to be hit = 100% usefulness; 0% chance to be hit = 0% usefulness; 75% chance to be hit = 75% usefulness):
ChanceToBeHit = 100% - MissChance - DodgeChance
giving
SavageDefenderBlockReduction =
(MobHit - SavageDefenderBlockValueAvg*ChanceToBeHit) / MobHit
Giving the massive formula:
SavageDefenderBlockRedution =
(MobHit -
CritRate/2
* AttackPower
* (35% + 32% + Mastery*4)
* (100% - MissChance - DodgeChance)
)
/ MobHit
Plugging in some numbers from a friend of mine (Deldignore!):
- MissChance: 5% (base for everyone)
- MobHit: 20,000 (TankPoints configurable value)
- DodgeChance: 18.1%
- CritRate: 25.71%
- AttackPower: 650
- Mastery: 11.88
Plugging these sample values into the formula, gives an average reduction due to Savage Defense of:
SavageDefenderBlockReduction
= (20000 - 12.855% * 650 * 144.52% * 76.9%) / 20000
= (20000 - 120.76*76.9%) / 20000
= (20000 - 92.86) / 20000
= (19907) / 20000
= 99.5%
All incoming attacks are reduced to 99.5% of their original value?
This value is obviously way too low: an average damage reduction of 0.5%?
So someone is free to come up with some alternate math; iām not going to spend time coding up logic that is completely wrong.
Unless of course Savage Defense effect is counted after armor reduction:
- ArmorReduction: 29.03%
This means that the average landing attack will be 14,194 rather than 20,000:
SavageDefenderBlockReduction
= (14194 - 12.855% * 650 * 144.52% * 76.9%) / 14194
= (14194 - 120.76*76.9%) / 14194
= (14194 - 92.86) / 14194
= (14101) / 14194
= 99.3%
ā¦which is still a lousy value. So iāll wait for someone else to analyze it.
In other words: i tried and tried, and i still couldnāt get a value.
Calculating stat weights is extraordinarily difficult."
So, long story short, if youāre really interested in helping someone who is able to code it out actually code it out and maintain it, perhaps you could help out with defining the logic for how it works.
My old Wrath/Cata spreadsheet managed all of this, but like the poster you quoted said, it was a lot of work. Probably why I got namesake boots in ZG.
That being said, stat weights for current class mechanics are decidedly NOT as much work. The most complicated thing is going to be DPS rotations and even then weāre only talking things like Feral and Rogue DPS because dual resources make for clunkier coding. For Tanks more specifically, until something like Savage Defense returns, there isnāt much all to calculate aside from raw EH (which was easy even when SD was a thing) and TPS/DPS for whatever you can call our ārotationsā right now.
My current sheet doesnāt have export strings for Pawn, but thatās Soonā¢
Come to think of it, the source-code for the addon above is using Version Control, so ā¦ maybe Iāll download it after work and see if thereās a version in the history that would just work for TBCā¦
I suspect there may be some updates required to work with some changes made to the Client and/or API calls available, so it might not be as simple as having it just work, but if it did work at some point for TBC, and if the commit history shows that, then the logic might not be that hard (maybe only about idkā¦ a few 10s of hours or so of actual work) to sort out.
I never wanted to bother with reducing my spreadsheet down to a formula to be plugged into an addon, largely because gear planning is done primarily outside of raids and other content and you have the luxury of checking/tabbing to things outside of the game.
To be sure, eliminating that would be wonderful, but would take even more work than just performing the underlying iterations on a spreadsheet.
very cool to read.
similar people who say that, also likely are the ones to say, āwhy not add this to the game, it would be so easy to implementā
if u could actually do it that would be the most awesome thing ever!
i would do it myself but this is way over my noob head
Iām a software developer, but that doesnāt mean that itās super easy anyway. For one Iām not familiar with WoW Addons. I can pretty easily pick up LUA, but Iām also unfamiliar with the WoW Addon API, and also how whoever coded it coded itā¦
Itās very unlikely something that I could just figure out in say 5-10 hours. But, given a few days of full-time work, probably. And thatās if itās as simple as finding some commit points in the code history where itās a functional addon that just needs some updating to work on the modern client.
i wanna be a software dev but i have stupid health problems that cause me to randomly pass out or lose focus so i will likely never be able to learn it.
if u could take a look at the mod tho that would be great. but if its way too much work then ill understand.
Thatās unfortunate, but it might not prevent you from becoming a software developer. It might make it difficult to attend scheduled meetings, though!
But I suspect itās something you can work around, if you do decide to focus on learning software development. Itās not a super quick, super easy journey, but there are a lot of resources, and that just seems to be improving more and more. Iād give it a try if youāre really interested.
Iāll try to do some poking around and see what I can learn from the source code. If nothing else, perhaps I can save a little time for the next person. Or, perhaps I can actually get somewhere
THANX!
u r my new god lol
LoL, save the praise for if I actually get anywhereā¦ I could easily spend a couple hours reading through commit history to come back with, āI didnāt find much.ā
well at least u said u would look.
i think ur the 1st person to do that in a long time