Not true in 2.4 - the new combat log events will tell you the spell name that failed along with the reason for its failure (line of sight, out of mana, out of range, ...). Though I agree that the code to communicate these events probably doesn't belong in LHC.
My thought was that much of the code for doing this was already in LHC -- ie. LHC is already sending a message for every heal that fails (for what ever reason - canceled, interrupted, error, etc.) and I thought it would be a straight forward and useful extension to add a parameter to the message indicating why the heal was stopped if it was known.
Not true in 2.4 - the new combat log events will tell you the spell name that failed along with the reason for its failure (line of sight, out of mana, out of range, ...). Though I agree that the code to communicate these events probably doesn't belong in LHC.
Revision: 60983
Error: attempt to perform arithmetic on local 'HealMin' (a nil value)
File: ...\libs\LibHealComm-3.0\LibHealComm-3.0.lua
Line: 157
Count: 1
Got this while buffing fort/spirit in AB. Otherwise I haven't had any problems with it, GJ :)
Interface\AddOns\LibHealComm-3.0\LibHealComm-3.0.lua:157:attempt to perform arithmetic on local 'HealMin' (a nil value)
This usually happens the first time I cast prayer of healing during warmup when waiting for the arena to start.
Like several other people here, the above error first reported a week ago occurred last night with me as well. On a priest during a Kara raid. LibHealComm-3.0 r61066 standalone, VisualHeal r62567, PitBull r63124 (with PitBull_VisualHeal separated into a LOD folder), USEng server/client, WoW 2.3.3 live:
LibHealComm-3.0\\LibHealComm-3.0.lua:157: attempt to perform arithmetic on local 'HealMin' (a nil value)\nLibHealComm-3.0\\LibHealComm-3.0.lua:824: in function <Interface\\AddOns\\LibHealComm-3.0\\LibHealComm-3.0.lua:820>\nLibHealComm-3.0\\LibHealComm-3.0.lua:1086: in function `?'\nLibHealComm-3.0\\LibHealComm-3.0.lua:17: in function <Interface\\AddOns\\LibHealComm-3.0\\LibHealComm-3.0.lua:17>
This heal-tracker library isn't much use if it cannot be relied upon to be accurate or work without bugs such as this (never saw such an error with VisualHeal/HealComm-2.0). So hope the problem will be fixed soon.
Hey, just got back from an extended one week vacation in the Dolomites in Italy, so haven't had a chance to react to this line 157 error. I suspect this is a locale issue, so can you please post the locale you're using (i notice that one is German). Also, exactly which spells it happens with, along with the textual decription that appears when you hover the mouse over it, i.e. the localized equivalent of:
"A powerful prayer heals party members within 30 yards for 1246 to 1316."
Currently the following regular expression is used, which supports all known locales and all spells (keep in mind that some spells have more elaborate descriptions than the above examples):
"(%d+) ?[\195\160tobisa到~]+ ?(%d+)"
The box is a Unicode character used by korean and/or chinese locales (can't remember the specifics anymore, this code is back from QuickHeal actually). For German the "bis" part should match "...1246 bis 1316." in the above to extract the two numbers, but for some reason it appears to not work correctly, so if anyone can post the text description in german for Prayer of Healing that would be great (or the locale you're having problems with).
Quote from Phanx »
Also... tabs > spaces. If at some point in the near future I find time to go through and convert all your dirty spaces to nice tabs, do you mind if I commit the change? :P
Why?
Finally, API changes (including the addition for a reason for spell cast failure), I'll consider that, once 2.4 goes live, where a lot of new posiblities are available. However, reliability is the main concern, and i'll not switch LibHealComm-3.0 over to using the combat log events until i'm fully confident that it is feasible.
Anyway, what I actually came to post - an addition for a new healing reduction buff in Sunwell Plateau. Not sure if you're wanting to add stuff for 2.4 yet since it's still subject to change, but if you are, the following can be added to the healingDebuffs table:
The aura scanning will be completely rewritten to use the new combat log events, which will completely remove all the problems inherent in the current design, which is an unsatisfactory trade off between efficiency, completeness, reliability and locale-independence. In the new system, the buffs/debuffs will be identified by SpellID instead of the icon-texture name that cannot be guaranteed to be unique for one kind of aura.
Is there a list of all the addons that currently use, come with LibHealComm-3.0? I am trying to get my guild healers to all grab it and I want to let them know all the addons that already do have it so they can just look to see etc.
Date: 2008-03-03 16:56:23
ID: 51
Error occured in: Global
Count: 1
Message: ..\AddOns\LibHealComm-3.0\LibHealComm-3.0.lua line 157:
attempt to perform arithmetic on local 'HealMin' (a nil value)
I get this error with "Prayer of Healing" on the enGB client.
Text: "A powerful prayer heals party members within 30 yards for 1251 to 1322."
I suspect this is a locale issue, so can you please post the locale you're using (i notice that one is German). Also, exactly which spells it happens with, along with the textual decription that appears when you hover the mouse over it, i.e. the localized equivalent of:
"A powerful prayer heals party members within 30 yards for 1246 to 1316."
enGB, buffed spirit and stam with X-RaidStatus (non-combat macro). Odd that a buff registers as healing? :)
I have made a small adjustment to the code so that ClearLines is called on the tooltip before SetSpell. This doesn't seem to be needed on many clients, but it seems that it is commonly used in many implementations, so it is worth a shot. Can you confirm that the line 157 error (which is now a line 158 error) persists in revision 63488?
Is there a list of all the addons that currently use, come with LibHealComm-3.0? I am trying to get my guild healers to all grab it and I want to let them know all the addons that already do have it so they can just look to see etc.
I believe currently Grid, PitBull, sRaidFrames, and VisualHeal include LibHealComm-3.0. If your guildmates are using one of these addons, make sure they've updated since LHC was added. If they are not using one of these addons, and don't want to use them, they can just install LibHealComm-3.0 as a standalone addon, and it will broadcast their healing data for you and others who are using an addon that displays LHC data.
I still get the line 157 error, now line 158. Using the EnGB client.
I have found a way to reproduce it simply by using inner focus and then prayer of healing.
Basically any time the mana cost is 0, either with inner focus or arena preparation buff, the tooltip scanning fails. Keep in mind that when mana cost is 0 the tooltip is one line shorter. The bug doesn't seem to affect flash heal or greater heal.
Wow, just from this I can see why parsing tooltips makes authors want to kill kittens.
I'd help out with this, but I've got too many projects already on the go, good luck!
I still get the line 157 error, now line 158. Using the EnGB client.
I have found a way to reproduce it simply by using inner focus and then prayer of healing.
Basically any time the mana cost is 0, either with inner focus or arena preparation buff, the tooltip scanning fails. Keep in mind that when mana cost is 0 the tooltip is one line shorter. The bug doesn't seem to affect flash heal or greater heal.
Ahh! i see the problem now - great with those pics! It appears that the range jumps to the left side of the tooltip for most spells (when they are free due to inner focus/BG/Arena), so the description stays on line 4 left, but not for prayer of healing, since it doesn't have a range, so the description moves to line 3 left! I'll post a fix for this tonight (CET). In the meanwhile you can just make sure that you cast Prayer of Healing at least once before using inner focus or entering a battleground or an arena.
Instant casts spell now fire SPELL_CAST_SUCCESS from COMBAT_LOG_EVENT_UNFILTERED, so it's a bit easier to switch to the new combat log stuff. It'd be a big help to get GUIDs because same named pets will mess it up.
oRA2 does this. I suppose it's possible (although it might not be necessary) to create a lib specific to resurrects. I don't think it should be in HealComm though. Let's not bloat libraries. I'm not sure if all the addons that use HealComm need the resurrect info. VisualHeal definately doesn't.
2 mods that could possibly use a resurrect lib is oRA2 and SmartRes off the top of my head.
My thought was that much of the code for doing this was already in LHC -- ie. LHC is already sending a message for every heal that fails (for what ever reason - canceled, interrupted, error, etc.) and I thought it would be a straight forward and useful extension to add a parameter to the message indicating why the heal was stopped if it was known.
-Pach
Got this while buffing fort/spirit in AB. Otherwise I haven't had any problems with it, GJ :)
Like several other people here, the above error first reported a week ago occurred last night with me as well. On a priest during a Kara raid. LibHealComm-3.0 r61066 standalone, VisualHeal r62567, PitBull r63124 (with PitBull_VisualHeal separated into a LOD folder), USEng server/client, WoW 2.3.3 live:
LibHealComm-3.0\\LibHealComm-3.0.lua:157: attempt to perform arithmetic on local 'HealMin' (a nil value)\nLibHealComm-3.0\\LibHealComm-3.0.lua:824: in function <Interface\\AddOns\\LibHealComm-3.0\\LibHealComm-3.0.lua:820>\nLibHealComm-3.0\\LibHealComm-3.0.lua:1086: in function `?'\nLibHealComm-3.0\\LibHealComm-3.0.lua:17: in function <Interface\\AddOns\\LibHealComm-3.0\\LibHealComm-3.0.lua:17>
This heal-tracker library isn't much use if it cannot be relied upon to be accurate or work without bugs such as this (never saw such an error with VisualHeal/HealComm-2.0). So hope the problem will be fixed soon.
"A powerful prayer heals party members within 30 yards for 1246 to 1316."
Currently the following regular expression is used, which supports all known locales and all spells (keep in mind that some spells have more elaborate descriptions than the above examples):
"(%d+) ?[\195\160tobisa到~]+ ?(%d+)"
The box is a Unicode character used by korean and/or chinese locales (can't remember the specifics anymore, this code is back from QuickHeal actually). For German the "bis" part should match "...1246 bis 1316." in the above to extract the two numbers, but for some reason it appears to not work correctly, so if anyone can post the text description in german for Prayer of Healing that would be great (or the locale you're having problems with).
Why?
Finally, API changes (including the addition for a reason for spell cast failure), I'll consider that, once 2.4 goes live, where a lot of new posiblities are available. However, reliability is the main concern, and i'll not switch LibHealComm-3.0 over to using the combat log events until i'm fully confident that it is feasible.
The aura scanning will be completely rewritten to use the new combat log events, which will completely remove all the problems inherent in the current design, which is an unsatisfactory trade off between efficiency, completeness, reliability and locale-independence. In the new system, the buffs/debuffs will be identified by SpellID instead of the icon-texture name that cannot be guaranteed to be unique for one kind of aura.
I get this error with "Prayer of Healing" on the enGB client.
Text: "A powerful prayer heals party members within 30 yards for 1251 to 1322."
enGB, buffed spirit and stam with X-RaidStatus (non-combat macro). Odd that a buff registers as healing? :)
I believe currently Grid, PitBull, sRaidFrames, and VisualHeal include LibHealComm-3.0. If your guildmates are using one of these addons, make sure they've updated since LHC was added. If they are not using one of these addons, and don't want to use them, they can just install LibHealComm-3.0 as a standalone addon, and it will broadcast their healing data for you and others who are using an addon that displays LHC data.
I have found a way to reproduce it simply by using inner focus and then prayer of healing.
Basically any time the mana cost is 0, either with inner focus or arena preparation buff, the tooltip scanning fails. Keep in mind that when mana cost is 0 the tooltip is one line shorter. The bug doesn't seem to affect flash heal or greater heal.
I'd help out with this, but I've got too many projects already on the go, good luck!
Ahh! i see the problem now - great with those pics! It appears that the range jumps to the left side of the tooltip for most spells (when they are free due to inner focus/BG/Arena), so the description stays on line 4 left, but not for prayer of healing, since it doesn't have a range, so the description moves to line 3 left! I'll post a fix for this tonight (CET). In the meanwhile you can just make sure that you cast Prayer of Healing at least once before using inner focus or entering a battleground or an arena.
There's 4 spells that do this:
Priest: Resurrection
Paladin: Redemption
Druid: Rebirth
Shaman: Ancestral Spirit
Or this is out of the scope of LibHealComm?
2 mods that could possibly use a resurrect lib is oRA2 and SmartRes off the top of my head.
Or just use the same protocol to notify who's ressing X.