Download
(13Kb)
Download
Updated: 10-02-09 03:29 PM
Pictures
File Info
Updated:10-02-09 03:29 PM
Created:unknown
Downloads:16,967
Favorites:129
MD5:

Spelltips  Popular! (More than 5000 hits)

Version: SpellTips 3.2.0
by: phizi0n [More]

SpellTips is an addon that will modify your tooltips to show approximately how much damage or healing a spell will really do with Spell Power gear equipped. All tooltips are affected now even pets (only water elemental's currently) and the trainer window are supported so you must disable it from the UI screen to see base values anywhere. It is simplistic by design and coded to be very efficient.

Plans:
- Find appropriate modifiers for the spells currently supported. - ongoing effort
- Clean up code - ongoing effort
- Translation - need people to report errors and try to fix them
- Hope for Blizzard to realize what a mistake it is for them to not be doing this in the default UI and then get it done themselves so that the values will be truly accurate. - expected 9 months after I quit the game ;p

Known Bugs:
- Several spells have slightly inaccurate values due to lack of information, please test and give feedback.
- Localization is up to users to help fix, if you notice something not working then look in the locale file for your language and fix the patterns to match the text for the spell correctly. If you really can't figure it out then post your language and classes of your characters and I'll update them.
- Glyphs are not supported and I have no plans to support them because although some glyphs are very straight forward in the effect they give, others drastically change spells and would be a nightmare to accommodate so I'm discriminating against them all.

3.2.0 Update.

I've updated it to correct many spell coefficients and a few talents, especially for elemental shamans and affliction warlocks which are my newest alts. I don't have wotlk (ezmode content isn't worth buying) so I can't test >70 spells.

This addon hasn't needed any major changes to the code, all it needs is for people to point out errors with coefficients so that they can be updated. You can edit the coefficients and talents in SpellTable.en.lua relatively easily.

Post bugs to the curseforge bug tracker and include a link to your talent build, what the tooltip says, and what the spell actually does. http://wow.curseforge.com/addons/project-3271/tickets/
Optional Files (0)


Post A Reply Comment Options
Unread 11-29-06, 05:28 AM  
phizi0n
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 19
Uploads: 2
@sadris
That's not the format I asked for but I think I'll adopt something closer to that... I'm going to just store the trained level for every rank except the first, look up what level the next is learned, then add 5 rather than 6 which will be mathematically the same. The beginning of this work is in 0.95

There's one problem with your code, you assume that it's getting downscaled when it may not be. You're actually raising the coefficient for any spell learned in the last 6 levels so you ought to check if it's over 1 and if it is then set it to 1.
Report comment to moderator  
Reply With Quote
Unread 11-28-06, 02:18 AM  
Greywind
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 1
File comments: 11
Uploads: 1
Yeah I'm getting that in TBC also the error is on
line 42 of SpellTable.en.lua should be changed from

Code:
	{ school = 1,	bonus = 1.5/14	talents = {5},		name = "Holy Nova",		pattern = "for ... to (%d+)",	pattern2 = "for (%d+) to" },
to
Code:
	{ school = 1,	bonus = 1.5/14,	talents = {5},		name = "Holy Nova",		pattern = "for ... to (%d+)",	pattern2 = "for (%d+) to" },
there is a missing "," after the "bonus = 1.5/14"
Report comment to moderator  
Reply With Quote
Unread 11-28-06, 01:19 AM  
vbrokop
A Defias Bandit

Forum posts: 2
File comments: 20
Uploads: 0
receiving an error in .94 on PTR on every action button mouseover.

spelltips.lua:69: bad argument #1 to 'pairs' (table expected, got nil)
Report comment to moderator  
Reply With Quote
Unread 11-27-06, 08:40 PM  
sadris
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 16
Uploads: 3
Here are the levels at which each Druid spell is learned:
Code:
Wrath - levels = {1,6,14,22,30,38,46,54,61,69}
Moonfire - levels = {4,10,16,22,28,34,40,46,52,58,63,70}
Rejuvenation - levels = {4,10,16,22,28,34,40,46,52,58,60,63,69}
Entangling Roots - levels = {8,18,28,38,48,58,68}
Regrowth - levels = {12,18,24,30,36,42,48,54,60,65}
Starfire - levels = {20,26,34,42,50,58,60,67}
Insect Swarm - levels = {20,30,40,50,60,70}
Hurricane - levels = {40,50,60,70}
Tranquility - levels = {30,40,50,60,70}
Report comment to moderator  
Reply With Quote
Unread 11-27-06, 08:31 PM  
sadris
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 16
Uploads: 3
nt

Here is a function + the data structure of what I had thought up:

Code:
spells = {}
spells.Druid = {}
spells.Druid["Healing Touch"] = {}
spells.Druid["Healing Touch"].levels   = {1,   8,  14, 20, 26,  32,  38,  44,  50,  56,  60,  62,  69}
spells.Druid["Healing Touch"].casttime = {1.5, 2, 2.5, 3, 3.5, 3.5, 3.5, 3.5, 3.5, 3.5, 3.5, 3.5, 3.5}
-- Empowered Healing Touch, Gift of Nature
spells.Druid["Healing Touch"].talents  = { { GetTalentInfo(3,14), 0.1 }, { GetTalentInfo(3,12), 0.02 } }

function CalculateCoeff(name, rank)
    local level    = spells.Druid[name].levels[rank]
    -- casttime is casting time or duration of the DoT/HoT
    local casttime = spells.Druid[name].casttime[rank]
    local talentcoeff = 1;
    for i=1,table.getn(spells.Druid[name].talents) do
        talentcoeff = talentcoeff * (spells.Druid[name].talents[i][1] * spells.Druid[name].talents[i][2] + 1)
    end
    
    local finalcoeff = ((level+6) / UnitLevel("player")) * (casttime/3.5) * talentcoeff
    return finalcoeff
end
And yes, the "empowered" talents are multiplied by the base coefficient, not added (I tested this with Emp Rejuv)

Now granted, this will be a bit more complicated for things like Regrowth, Immolate...
Last edited by sadris : 11-27-06 at 08:36 PM.
Report comment to moderator  
Reply With Quote
Unread 11-27-06, 05:50 PM  
Dagma
A Defias Bandit
AddOn Author - Click to view AddOns

Forum posts: 2
File comments: 201
Uploads: 8
Re: Re: downranking

Here are the effective cast levels I've been assuming for major priest healing spells:
Code:
{ spell = "Heal" , basecoeff = 0.857 , castlevelbyrank = { 21 , 27 , 33, 39 } },
{ spell = "Greater Heal" , basecoeff = 0.857 , castlevelbyrank = { 45 , 51 , 57, 59, 62, 67, 70 } },
{ spell = "Flash Heal" , basecoeff = 0.42857 , castlevelbyrank = { 25 , 31 , 37, 43,49,55,60,66,70 } },
{ spell = "Renew" , basecoeff = 1 , castlevelbyrank = { 13,19,25,31,37,43,49,54,59,64,70 } }
Hopefully you can copy out the castlevelbyrank portion easily enough to be of help to you!
Report comment to moderator  
Reply With Quote
Unread 11-27-06, 04:57 PM  
phizi0n
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 19
Uploads: 2
Re: downranking

Originally posted by sadris
Will the new release account for the heal downranking nerf?

If you want me to make the code for Druids' levels at which each heal rank was trained, I could do that; just give an example of how you would format it for Priests.
Downranking code will come slowly for any class that I have to make the rank-level tables for myself because although it's simple, it's very tedious and time consuming. I'm more interested in devoting my time to classes that still need it which is the majority of them.

It'd be very helpful if you could do that and also give me info about lifebloom. The format I'd like is best explained by example:
Wrath - levels = {5,13,21,29,37,45,53,60,68}
Note that the first entry will be for rank 1 and is one less than the level that rank 2 is trained as per Dagma's suggestion. There's also only 9 entries although there's 10 ranks of Wrath because the highest rank is obviously unaffected and there's no telling when it would top out either.
Report comment to moderator  
Reply With Quote
Unread 11-26-06, 01:58 PM  
sadris
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 16
Uploads: 3
downranking

Will the new release account for the heal downranking nerf?

If you want me to make the code for Druids' levels at which each heal rank was trained, I could do that; just give an example of how you would format it for Priests.
Report comment to moderator  
Reply With Quote
Unread 11-25-06, 04:12 AM  
phizi0n
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 19
Uploads: 2
Originally posted by Heathen
Thanks for the Update! I've not yet tested the new one, but do talent bonuses from Spiritual Healing, Improved Renew, and Empowered Healing effect the tooltip?
Spiritual Healing was actually the first talent supported but now the blizzard function call (and default ui display) includes it on it's own so I removed my special code for it. The other healing talents used to get applied before gear and just now started applying after gear with BC. When I first wrote the talent code began writing it with a faulty assumption that talents would affect entire school but quickly saw that many talents affected only a few spells rather than an entire school yet I released the premature code to support those it could... So to end the story, I have yet to implement the code to support talents affecting limited spells of a school like the renew talent and while I could quickly support Empowered Healing I'd rather not waste any time and instead do it with the new talent code. I'm going to ty to get a big release done this weekend...
Report comment to moderator  
Reply With Quote
Unread 11-23-06, 06:01 PM  
Heathen
A Kobold Labourer

Forum posts: 0
File comments: 3
Uploads: 0
Thanks for the Update! I've not yet tested the new one, but do talent bonuses from Spiritual Healing, Improved Renew, and Empowered Healing effect the tooltip?

The reason I ask is in the last build I had, it would say Gheal at about 3500, but it was roughly 4k with talents.

And also is Prayer of Mending in? I don't know it's coefficient. I'd guess at 1.5/3.5 (42%) due to it being instant, but it may have some wierd co-ef due to its irregular style.

With ~1k Healing, mine usually hits between 1.1k and 1.2k. with a base of 800, +420, it sounds about right. but that doesn't factor in Spi Healing

Anyway, Great addon non-the less.

The -only- thing that will make me switch to TC when it comes for BC is the Heal/Dmg amounts on buttons feature. Quick glances to see how much you want to heal for is much easier than thinking right so spell 1 heals for 3k, spell 2, 4k etc.

Keep up the good work!
Last edited by Heathen : 11-23-06 at 06:03 PM.
Report comment to moderator  
Reply With Quote
Unread 11-23-06, 01:47 PM  
Dagma
A Defias Bandit
AddOn Author - Click to view AddOns

Forum posts: 2
File comments: 201
Uploads: 8
Originally posted by phizi0n
Currently not enough information is known about downranking to implement anything. A formula was given but one of the variables is what level a spell "tops out at" which seemed to imply that spells would keep improving for a few levels after they're trained, information about what level each rank of each spell tops out at needs to be found to implement this.
What I have been assuming is that the "tops out" spell level is the level before the next rank is learned. Using that assumption, and the formula they gave us, I get very close to the empirical average of my spell casts.

Here's some incomplete code that works, but only for a few spells, as you'll see. It gives the formula I'm assuming, though, and that might be useful for you. Note that the function assumes player is a priest.

Code:
function HealingEstimator_CalcAvgBonusHeal(aSpellName,aSpellRank,AvgHealAmount)

    -- this function applies math to plain average heal amount
    --   to get average non-crit heal after all healing bonuses
    -- works for priest right now, only

    local castlevel = 60;
    local casttime = 3;
    if (aSpellName == "Heal" and aSpellRank == "2") then
       castlevel = 27;
       casttime = 3;
    end
    if (aSpellName == "Greater Heal" and aSpellRank == "1") then
       castlevel = 45;
       casttime = 3;
    end
    if (aSpellName == "Flash Heal") then
       castlevel = 60;
       casttime = 1.5;
    end
    
    -- get empowered healing rank
    local _, _, _, _, currRankEH, _ = GetTalentInfo(2,20);
    if ( aSpellName == "Greater Heal" ) then
       currRankEH = currRankEH * 0.04;
    elseif ( aSpellName == "Flash Heal" ) then
       currRankEH = currRankEH * 0.02;
    else
       currRankEH = 0;
    end
    
    -- get spiritual healing rank
    local _, _, _, _, currRankSH, _ = GetTalentInfo(2,16);
    
    -- compute effective coefficient
    local effbonuscoeff = 0;
    effbonuscoeff = min( (castlevel + 6)/UnitLevel("player") , 1 );
    effbonuscoeff = ( casttime/3.5 + currRankEH ) * effbonuscoeff ;
    
    -- compute applied +healing
    local appbonushealing = effbonuscoeff * GetSpellBonusHealing() ;
    
    -- compute average non-crit heal
    local avgnoncrit = AvgHealAmount;
    
    avgnoncrit = ( avgnoncrit + appbonushealing ) * (1 + currRankSH*0.02);
    
    return avgnoncrit;

end
Last edited by Dagma : 11-23-06 at 01:49 PM.
Report comment to moderator  
Reply With Quote
Unread 11-22-06, 09:17 PM  
synack
A Kobold Labourer

Forum posts: 0
File comments: 3
Uploads: 0
Originally posted by phizi0n
[b]Thanks for the update synack. Have you tested Binding Heal and SW to make sure the coefficients are correct (can't assume anything with blizzard...)? I tested Vampiric Touch myself but don't have it in me to level my priest to 70, just leveling my mage.
I did test both of these based on feedback I got about the spells on the Beta forums. It was confirmed that Binding Heal & SW shared the same 1.5/3.5 coefficient and that Mind Flay was increased to 57%. Huzzah!

Thanks for this addon. It's nifty.
Report comment to moderator  
Reply With Quote
Unread 11-22-06, 05:44 PM  
phizi0n
A Kobold Labourer
AddOn Author - Click to view AddOns

Forum posts: 0
File comments: 19
Uploads: 2
Thanks for the update synack. Have you tested Binding Heal and SW to make sure the coefficients are correct (can't assume anything with blizzard...)? I tested Vampiric Touch myself but don't have it in me to level my priest to 70, just leveling my mage.

Fixed the renew bug in 0.92 but I'm lazy and don't always submit updates to every site :-/ Curse Gaming is the one I find easiest to use so that's the first to get updates.

SpellTips existed before TC but has less fame. SpellTips only tries to correct the tooltips, not add to them.

Currently not enough information is known about downranking to implement anything. A formula was given but one of the variables is what level a spell "tops out at" which seemed to imply that spells would keep improving for a few levels after they're trained, information about what level each rank of each spell tops out at needs to be found to implement this.

Blizzard likes to screw around with the tooltip text occasionally and it just so happens that when I took that shot renew did indeed have a range; this is also why every single spell in the localization files has a pattern match for a 2nd value whether there is one currently or not.
Last edited by phizi0n : 11-22-06 at 05:46 PM.
Report comment to moderator  
Reply With Quote
Unread 11-16-06, 12:18 AM  
synack
A Kobold Labourer

Forum posts: 0
File comments: 3
Uploads: 0
For you priests in BC open up SpellTable.en.lua and add these lines after Touch of Weakness:

PHP Code:
        --New BC spells
        
school 1,   bonus 0.428,  name "Binding Heal",          pattern "to (%d+)",           pattern2 "for (%d+)" },
        { 
school 6,   bonus 0.428,  name "Shadow Word: Death",            pattern "to (%d+)",           pattern2 "inflicts (%d+)" },
        { 
school 6,   bonus 1,      name "Vampiric Touch",                pattern "",           pattern2 "Causes (%d+)" }, 
Also to fix the display bug with Renew replace it's line with this:

PHP Code:
        school 1,   bonus 1,              name "Renew",                 pattern "",           pattern2 "for (%d+)" }, 
Rockpants. This is an awesome addon. This took me like 5 minutes to change so I have no doubts that the next release will have the minor class/talent tweaks included.

/clap
Last edited by synack : 11-16-06 at 12:20 AM.
Report comment to moderator  
Reply With Quote
Unread 11-11-06, 07:23 PM  
Heathen
A Kobold Labourer

Forum posts: 0
File comments: 3
Uploads: 0
1st Bug ^.^ my Renew Rank 11, lists the heal as 148410 Wish it were true

Perhaps this is as you have tested it with rank 10?
Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump:

Support AddOn Development!

You have just downloaded by the author . If you like this AddOn why not consider supporting the author? This author has set up a donation account. Donations ensure that authors can continue to develop useful tools for everyone.