Elitist Jerks
Register
Blogs
Chat
Forums
New Posts


Go Back   Elitist Jerks > Public Discussion > User Interface and AddOns

Reply
 
LinkBack (192) Thread Tools
Old 06/02/08, 4:26 PM   1 links from elsewhere to this Post. Click to view. #26 (permalink)
Glass Joe
 
Night Elf Druid
 
The Maelstrom (EU)
Several have pointed out that the health bar doesn't update at all sometimes until damage or healing is received. I haven't really had the time to look into it yet, but it's very likely caused by the health going up to full without the addon noticing. After the health reaches full no more HEALTH_UPDATE events will fire so the health will keep showing incorrectly until the health changes. I will try and fix the bug as soon as I have time (hopefully tomorrow) and see if I can fix it.

There where some questions about how the addon handles effects increasing the max health of a unit, such as using last stand for example. The addon listens for the MAXHEALTH_UPDATE event that fires whenever the max health of a unit changes, at the same time as the MAXHEALTH_UPDATE event fires, HEALTH_UPDATE fires, if the unit gained health from the ability or item used the health won't match the calculated health by the addon. When this happens the addon uses the health provided by the server/client instead of whatever it thought the unit would have and does any further calculations based on that health instead.
This is a important important safety net the addon has, every time it receives a HEALTH_UPDATE event it calculates backwards until the last HEALTH_UPDATE event to verify that the calculated health is correct.

As some have wondered and others guessed health is updated the old fashioned way when someone is not in combat log range, a good example that has already been brought up is the Kalecgos fight, those "not in the realm you are in" will simply have their health updated like normal.

Several have pointed out that damage meters doesn't show correct effective healing done. Many (most?) addons uses the method described by giansm I believe and that would explain why they don't work properly with my addon installed. I don't know if all damage meters uses this simple method however (WWS reports is a example of another method used), but it is my hope that they do... because if that is the case all I should have to do is make sure my addon is the very last one to react to combat log events. This would not only fix the problem but increase the accuracy of the damage meters! (since without my addon several hits and heals can land in between every health update)


I will try and fix both the bug and effective healing issue tomorrow, whatever I don't get done with then will have to wait a whole week though I'm afraid (short vacation). A big thanks to all the comments so far, I really appreciate the feedback!
 
User is offline.
Reply With Quote
Old 06/02/08, 7:01 PM   #27 (permalink)
King Hippo
 
Daboran's Avatar
 
Tauren Druid
 
Twisting Nether (EU)
Wouldnt there be a way for the addon to ONLY affect grid and no other addons?

That would be a lot more interesting from my point of view, but I'll give it a try anyway.
 
User is offline.
Reply With Quote
Old 06/02/08, 7:33 PM   #28 (permalink)
Glass Joe
 
Blood Elf Priest
 
Runetotem
Would it be possible to make this addon work for debuffs as well ?

I always noticed the same kind of delay with decursive even with the refresh rate set to the minimum.
 
User is offline.
Reply With Quote
Old 06/02/08, 8:11 PM   #29 (permalink)
Glass Joe
 
Human Paladin
 
Destromath
Damage meter authors could easily remain unaffected by this addon, given one change. If the addon is optionally dependent on known damage meters, those damage meters will load first. They will therefore have a chance to save a local copy of the unmodified UnitHealth function.

This would be a cleaner solution than having all other addon authors look for "Original_UnitHealth" in my opinion.
 
User is offline.
Reply With Quote
Old 06/02/08, 8:14 PM   #30 (permalink)
Divine Protector
 
frmorrison's Avatar
 
Blood Elf Paladin
 
Mal'Ganis
it's absolutely amazing, I didn't realize how much lag affected seeing health bars drop.

Know Thy group function; Thy DPS shall avoid aggro, Thy tank shall not attempt to DPS (Fixed in WotLK!), and Thy Healer shall not go AFK without notifying Thy group.
 
User is offline.
Reply With Quote
Old 06/02/08, 9:24 PM   #31 (permalink)
Glass Joe
 
Troll Hunter
 
Kul Tiras
I'm worried about really busy addons such as damage and threat meters causing an FPS drop in raids. Would this addon contribute significantly to that problem?
 
User is offline.
Reply With Quote
Old 06/02/08, 10:25 PM   #32 (permalink)
Von Kaiser
 
Rudy's Avatar
 
Draenei Shaman
 
Zul'Jin
Originally Posted by Ottoline View Post
I'm worried about really busy addons such as damage and threat meters causing an FPS drop in raids. Would this addon contribute significantly to that problem?
I believe it is stated in the mod's description that the memory useage is very low, like 100kb in a 25 man raid.

One concern I have is in regards to chain heal. I would assume the second and third jumps go off standard server information, would it be possible then to heal too quickly and miss the jumps? For example, on Nalorakk I see the MT and OT have taken a lash as soon as it happens through this mod. If I cast a chain heal on the MT before the server has actually updated that they both took that damage, I assume my second jump will still register the OT as full health and not jump. This could obviously be worked around by holding off the cast a few split seconds and I'll certainly use this mod regardless, but it is a potential concern.
 
User is offline.
Reply With Quote
Old 06/02/08, 11:01 PM   #33 (permalink)
Bald Bull
 
Blood Elf Paladin
 
Echo Isles
Kudos to this add-on's creator, I absolutely love the fast health updates. I was topping people off left and right in BGs and could feel the difference immediately.

I also use MSBT, and while I did notice that nearly all of my heals were showing up as overhealing, I can't argue with results.

 
User is offline.
Reply With Quote
Old 06/03/08, 2:34 AM   #34 (permalink)
Von Kaiser
 
Human Warrior
 
Illidan
Pretty amazing how something this huge, yet so simple, can only be thought of this late in the game. It makes raiding much easier, especially at higher levels where split seconds really count.

Kudos.
 
User is offline.
Reply With Quote
Old 06/03/08, 2:47 AM   #35 (permalink)
Von Kaiser
 
Fulnir's Avatar
 
Blood Elf Priest
 
Tarren Mill (EU)
Tried this addon out in a 5-man dungeon last night and I simply couldn't get used to it as a healer. The reason for this is that my parrot outgoing heals and my custom dogtag for target health still rely on the server update unit_health (I think, my only explanation). So when I healed someone the Parrot and target health text would appear with a delay. I use my Parrot text as conformation on what I'm healing, so my cycle was totally broken when I had to wait for the results showing up, that and the text update being out of sync with my actual healing almost made me seasick, so I had to turn the mod off. I love the idea though, but unless I can fix those two addons to behave synced to my bars I cannot change to this mod. Such a shame.
 
User is offline.
Reply With Quote
Old 06/03/08, 2:49 AM   #36 (permalink)
King Hippo
 
Human Paladin
 
Blackrock
It would probably be fair to say it wasn't possible or at least worthwhile doing something like this pre 2.x combat log rewrite.

Also regarding the performance of this mod... memory use is irrelevant you'd need to turn on cpu profiling and look at the cpu statistics. The affect is probably going to be negligible on say a quad core and significant for people running on old tech with low fps already.

The universe is run by the complex interweaving of three elements. Energy, matter, and enlightened self-interest.

www.retpaladin.com
 
User is offline.
Reply With Quote
Old 06/03/08, 3:37 AM   #37 (permalink)
Glass Joe
 
Gnome Warlock
 
Kazzak (EU)
Originally Posted by giansm View Post
1) Receive an event that says I healed a unit
2) Check how much the heal was for
3) Subtract UnitMaxHealth() - UnitHealth(), use that as the health deficit
4) Compare #2 and #3.
This is in fact the only 'reliable' way to calculate overhealing. But Blizzard has announced we will be getting overhealing information in WotLK.

Author of Ace3, BigWigs, oRA2, Violation, WitchHunt, Necronomicon2, CrowBar, LockSmith, CandyBar and other stuff
 
User is offline.
Reply With Quote
Old 06/03/08, 3:41 AM   #38 (permalink)
Glass Joe
 
Night Elf Priest
 
Scilla
I tried this out during tonights raid, simply amazing. It is surprising how much of a delay we are all used to, after using this I don't want to go back. Once you find a solution to the other addons using your function rather than the original when needed, this will be on many peoples required addons list. I am even surprised something like this is even possible. I would have never thought blizzard would allow you to basically globally override a core ui function.

Keep up the good work!
 
User is offline.
Reply With Quote
Old 06/03/08, 4:26 AM   #39 (permalink)
Glass Joe
 
Human Priest
 
Kilrogg (EU)
This idea really appeals to me (i am a healbot user though) so my question is, will this add on also work with it?
 
User is offline.
Reply With Quote
Old 06/03/08, 4:47 AM   #40 (permalink)
Foobar
 
Polleke's Avatar
 
Troll Priest
 
Azjol-Nerub (EU)
I don't understand why you keep referring to HEALTH_UPDATE when the event is called UNIT_HEALTH. Makes it a bit confusing.

Regarding performance. You shouldn't look at memory usage for this addon, it will be very low. CPU usage will increase, and perhaps not nessecarly by this addon. Every addon that listens for UNIT_HEALTH will perform their calculations a few more times per second. A lot of ace addons will have set UNIT_HEALTH as bucket event tho, limiting the times parsed per second to somethign reasonable like 10 or 20 times.

Yes, it would be very possible to limit the fast updates to your only your unitframes and not screw up your healing meters and other addons. And I would expect such modules to appear for Grid and Pitbull very soon.

There is no possible way this addon can change the jump behaviour of chain heal.

It also does not disable the original UNIT_HEALTH and UnitHealth(). It simply adds additional events and information. If it has nothing extra to add all the original information will still be available.

* Bla
 
User is offline.
Reply With Quote
Old 06/03/08, 7:59 AM   #41 (permalink)
Von Kaiser
 
Draenei Shaman
 
Destromath (EU)
I'm not 100% sure if it's all due to Instant Health but whenever it was busy in AV (initial Iceblood Zerg, Drekthar etc) Performance was horrible. I turned on CPU Profiling and Grid used >10% of the CPU Power. I don't really have the numbers from before (and currently not the time to test again without the addon) but it seems like it can have quite an effect on FPS.

(Tested on a Core2Duo T7250, 2x2ghz)
 
User is offline.
Reply With Quote
Old 06/03/08, 8:40 AM   #42 (permalink)
Glass Joe
 
Undead Warlock
 
Kel'Thuzad (EU)
Well... going by the concept it's pretty obvious that this addon will use a fair amount of CPU time. It will also increase CPU time used by other addons quite heavily. The increased accuracy does have a price. The more addons you have that deal with health, the higher the performance impact will be.

Generally, if you're concerned about FPS, you should avoid addons listening to the combatlog like the plague, as they tend to process a lot of information many times a second.

Other than that, very nice work here. Just a few minor things to iron out but overall it works quite good.
 
User is offline.
Reply With Quote
Old 06/03/08, 9:42 AM   #43 (permalink)
Von Kaiser
 
Tauren Druid
 
Alexstrasza
Love it, didn't notice any performance problems whatsoever on a rather middle of the road PC doing Hyjal last night. The faster health bar updates are VERY noticeable in Grid. Whether it affects my healing ability as a resto druid, I don't know, but I like it!
 
User is offline.
Reply With Quote
Old 06/03/08, 12:55 PM   #44 (permalink)
Glass Joe
 
Night Elf Druid
 
The Maelstrom (EU)
I hosted a new version of the addon on Curse.com, the new version should no longer screw up other addons such as damage meters and SCT. I also fixed some bugs that caused somone at hull health to sometimes show as having less then full health as well as making sure periodic heals and damage shield damage got registered by the addon.
I havn't had time to throughly test these changes so I can't say for sure everything works correctly now but I sure hope so!

@ Daboran
Yes, it would be possible to make the addon affect only specific addons by requiring these addons to register for the faster health updates. This would mean though that any and all addons that wanted to receive faster health updates would need to make changes in their addons. The idea with this design of the addon is to replace the the built-in function with a better version that works exactly the same in every way (which the last version didn't, but the new one hopefully does!).

@ Polleke
Somehow I got it into my head the UNIT_HEALTH event was called HEALTH_UPDATE yesterday afternoon/evening, I'll blame the heat for that!

And yes, you are right about the performance, it's far more important to look at the CPU usage for this addon then at the memory usage. When testing the CPU usage of the addon itself it was low, but I haven't throughly tested the extra CPU usage for other addons which might go up quite a bit depending on what they do when receiving a UNIT_HEALTH event. If performance proves to be a major issue I might have to either add a option to limit the health update speed somewhat or rethink the design of the addon and require other addons to register for the faster health updates to receive them.
 
User is offline.
Reply With Quote
Old 06/03/08, 1:09 PM   #45 (permalink)
King Hippo
 
Daboran's Avatar
 
Tauren Druid
 
Twisting Nether (EU)
Originally Posted by Meloeth View Post

@ Daboran
Yes, it would be possible to make the addon affect only specific addons by requiring these addons to register for the faster health updates. This would mean though that any and all addons that wanted to receive faster health updates would need to make changes in their addons. The idea with this design of the addon is to replace the the built-in function with a better version that works exactly the same in every way (which the last version didn't, but the new one hopefully does!).
I think it's more efficient that way though - it's an easy way to limit cpu usage and surely it wouldnt be too hard to cover the most common addons such as Pitbull, Grid, xperl, sraid, sct, parrot etc? With Ace-compatible addons I assume it would be very easy indeed. The only place where more accurate HP really matters after all is unit frames and suchlike, most of which are modular anyway.
 
User is offline.
Reply With Quote
Old 06/03/08, 2:38 PM   #46 (permalink)
Piston Honda
 
Gnome Rogue
 
Dalaran
As a side note, the updated version on Curse is allegedly tainting the ToT bar, causing it to flicker or disappear when in combat. I'm sure Mel will get it taken care of quickly, but he mentioned something about heading off for a short vacation.
 
User is offline.
Reply With Quote
Old 06/03/08, 2:48 PM   #47 (permalink)
Snapple! (apple + tin)
 
Andrast's Avatar
 
Draenei Shaman
 
Thaurissan
Originally Posted by Daboran View Post
I think it's more efficient that way though - it's an easy way to limit cpu usage and surely it wouldnt be too hard to cover the most common addons such as Pitbull, Grid, xperl, sraid, sct, parrot etc? With Ace-compatible addons I assume it would be very easy indeed. The only place where more accurate HP really matters after all is unit frames and suchlike, most of which are modular anyway.
I think you underestimate the difficulty in getting all these addon developers to agree to receive different events. There is a saying amoung software people that managing software engineers is like herding cats. Might it be possible, instead, to create a branch of this addon which pumps out differently named events to which other addons might be able to subscribe? This way the users can decide which version of Instant_Health they want to use. If the addons they use are Instant_Health "aware" then that user can switch over while still letting people with different addons continue with their current setup.
 
User is offline.
Reply With Quote
Old 06/03/08, 3:12 PM   #48 (permalink)
Bald Bull
 
Docjowles's Avatar
 
Gnome Mage
 
Cenarion Circle
The term "premature optimization" comes to mind here. Has anyone done some real-world benchmarks to see if the CPU usage is even an issue? Creating an elaborate API is not a good use of time if it turns out Instant Health doesn't noticeably impact performance.

Originally Posted by Zyla View Post
We all saw how well Socrates did. He was just a dick to everyone and they killed him.
 
User is offline.
Reply With Quote
Old 06/03/08, 4:33 PM   #49 (permalink)
King Hippo
 
Human Paladin
 
Blackrock
It's pretty safe to say any addon that registers for combat log unfiltered and thus processes every single combat log event is going to have a performance impact. Just like how damage meters and boss warning mods are typically the biggest cpu users.

The universe is run by the complex interweaving of three elements. Energy, matter, and enlightened self-interest.

www.retpaladin.com
 
User is offline.
Reply With Quote
Old 06/03/08, 4:50 PM   #50 (permalink)
Glass Joe
 
Saerjin's Avatar
 
Troll Shaman
 
Khaz Modan
Is there a link for the newest version? or did he just overwrite the old one.

I did a search on curse and only found the 1.0 version.



edit: I fail at scrolling down. Found it below the 1.0
 
User is offline.
Reply With Quote
Reply

Go Back   Elitist Jerks > Public Discussion > User Interface and AddOns

Thread Tools