LibAbsorbsMonitor-1.0
This project is discontinued
Due to various time constraints on my side and the interface/gameplay changes in Cataclysm regarding absorb effects, I can no longer actively develop or support this library. The healing game has changed considerably, making cumulative absorb tracking a lot less useful than it was in the days of Wrath of the Lich King, and it can be tracked now easily for specific effects just using the Blizzard UI. In generel the code still works, although it would require some small adjustments for the current combat log format. If anyone is interested in continuing this project, please let me know.
AbsorbsMonitor is a library that monitors and exports all ongoing absorb effects in your vicinity. It can handle different effects like Anti-Magic Shell, Power Word: Shield or Divine Aegis at the same time on the same target, as long as there is enough data to calculate the absorb values on creation.
In its core it consists of a framework to easily implement any spell, talent, proc or item that uses an absorb effect and then export this data to display it in a unit/raid frame or similar.
In the future this data can also be used to make precise statistics about the amount absorbed, which attack was absorbed, how much absorb value was wasted and so on.
Among other things, this library is implemented in these addons to actually display the absorb values:
- ShieldFrames: Powerful and customizeable UI to display any absorb effect as a collection of bars.
- GridStatusAbsorbsMonitor: Grid status module to display the remaining absorb value in a Grid status
- AbsorbsViewer: A simple addon used for debugging and to demonstrate how to use the values exported by AbsorbsMonitor. Note that this addon no longer gets packaged, but you can still find it in the repository.
Documentation
see http://www.wowace.com/addons/absorbsmon/pages/public-api/
Status
- All spells that report absorb values in combat log, most others as well as all items supported (see list)
- Mage spells are currently NOT supported. They do not report in combat log and require complete new code to calculate the values
- Multiple effects of the same spells like it can happen now in Cataclysm for Divine Aegis and Illuminated Healing WILL cause wrong numbers. The integrated self-correction will be able to adjust this in realtime thanks to the combat log reporting.
- It is not possible to reasonable support Power Word: Barrier at the moment, since the aura gain is not reported in the combat log.
- Realtime stats sharing: Shares informations like spell power, attack power and talents with other users of AbsorbsMonitor in a party/raid
Upcoming
- Statistics about absorb effects: how much, what broke it, what is wasted, ...
Limits of Accuracy
Given the new combat log reports in Cataclysm, the values for the most common absorb effects like Power Word: Shield, Divine Aegis and Illuminated Healing as well as specialized effects like Savage Defense and Anti-Magic Shell are 100% accurate. Sadly this does not apply to the warlock and mage spells, as well as the Death Knight Blood mastery and many item effects
Special thanks to my guild and friends on EU-Frostmane for countless hours of testing game mechanics.
Getting this error at startup:
It seems that other addon also had some issues with AceComm
Please tell me this still works? No update in a long time :(
Today while doing the new Cataclysm BG , Twin Peaks i received:
Date: 2010-12-18 20:58:45 ID: -1 Error occured in: Global Count: 1 Message: ...Ons\LibAbsorbsMonitor\core\LibAbsorbsMonitor-1.0.lua line 1244: Positive refcount 0 remained for area effect 50461 by trigger 0xF1306E9200000088 Debug: (tail call): ? [C]: error() ...Ons\LibAbsorbsMonitor\core\LibAbsorbsMonitor-1.0.lua:1244: ...Ons\LibAbsorbsMonitor\core\LibAbsorbsMonitor-1.0.lua:1229 (tail call): ? [C]: ? [string "safecall Dispatcher[1]"]:9: [string "safecall Dispatcher[1]"]:5 (tail call): ? Ace3\AceTimer-3.0\AceTimer-3.0.lua:166: Ace3\AceTimer-3.0\AceTimer-3.0.lua:138
@eyogar: Sey gains Sey Guarded by the Light. (5936 Remaining) Unbound Seer's attack was absorbed by Sey.(160 Absorbed) Sey Guarded by the Light is refreshed on Sey. (5776 Remaining)
@Possible:
Could you provide me with the lines in the combat log when you actually gain the shield? My concrete question is whether you see any number in parantheses like this or not:
<char> gains <char>'s Guarded by the Light (XXX remaining)
It will be possible to implement it in both cases, but this one would be more efficient.
Can you add the Prot-Pala Absorb: http://www.wowhead.com/spell=85646 please?
Btw: The link to the effectlist is broken.
Definitely yes to Blood mastery, and this will happen very soon.
The Mage and Warlock spells are a bit more of a problem, since they do not report in combat log and either require "oldschool" calculations with knowledge of spell power, talents etc or tooltip scanning. I will experiment with both methods a bit.
EDIT: I just pushed an alpha with support for Blood Shield. You can either replace the files in ShieldFrames/libs/LibAbsorbsMonitor with the ones in LibAbsorbsMonitor/core from the alpha package or run LibAbsorbsMonitor as a standalone library.
EDIT: Sorry, I forgot to round the result indeed. I fixed this now in ShieldFrames though temporarily by just rounding every result. And it looks like Anti-Magic Shell doesn't report the correct value anymore, 75 sounds more like 75% and not 50% of your hp. Gotta take a look at that tomorrow.
Hi there, great work so far.
Is there a possibility to add the deathknights blood mastery - blood shield and the warlock spell nether ward?
EDIT: thanks for the fast update, blood shield is working fine - 1 comment to make though, it would be a bit nicer to have those numbers rounded up - picture blood shield bar
Sorry, but since I was a bit short on time the last days, I delayed a proper release for ShieldFrames and the Grid plugin until I'm sure everything works, especially regarding the Grid transition to Ace3. The commit I made here was just the work I did on the PTR. I will try to fix up everything by the end of this weekend.
After making the noted changes below & giving this a try with the last ShieldFrames on an 80 Priest in WoW 4.x live, the following error was thrown:
Will need to update both ShieldFrames & GridStatusAbsorbsMonitor to actually find & use this updated library ( LibStub("AbsorbsMonitor-1.0"); & the embeds.xml paths changed to the current library name, etc.).
Also curiously (posting it all here), in the last r1.5.1 release of GridStatusAbsorbsModule.lua is the following line: local L = AceLibrary("AceLocale-2.2"):new("GridStatusAbsorbsMonitor"). Despite those two obsolete libraries not being packaged with it. Use AceLocale-3.0 instead?
As I said in the previous post, I changed AbsorbsMonitor now to be a fully fledged embeddable library. From now on, you will most likely not want to download the library itself and use it standalone, but the addons using it - at the moment ShieldFrames and GridStatusAbsorbsMonitor.
Please direct your feedback to those projects. Keep in mind that ShieldFrames is still experimental, there can be some issues at the moment if you use "byUnit" grouping at the moment.
Hello :D
U haven't forgotten something in the last beta3-11 ? she doesn't work ... :) no frame, if i don't add "shieldframe" of the beta3-7.
My favorite version is ur beta3 for 3.3.5 on 13 Sep 2010
S.
I'm exploring the possibility to change AbsorbsMonitor to a library at the moment. The current daemon-based approach doesn't fit the traditional model for addons people are used to, even though it's a bit more efficient and was also more natural in terms of optional support by other addons like unit frames. In any case, I will create a separate project for ShieldFrames tomorrow with major updates, making it usable on a daily basis. Once it's stable over the next week, I will tweak the core for Cataclysm. After all, my prayers came true and we can get rid of a lot of guessing work and get accurate values all over the place.
Change the new "ShieldFrames" path & name of that mod part to something more related to the mod? Such as "AbsorbsMonitor_ShieldFrames" or similar? Or better, have it embedded with the main mod?
For advanced users running a lot of mods, it currently requires manually changing the name of that so can keep all parts of the mod organized together in the mod list. For average users, its also a more of a hassle than it should be. As in: "What the heck is this ShieldFrames thing? Can I disable it?"
You can, I just missed the slash command to open the options window. Just open it manually with /script ShieldFrames:ShowOptions(); and then unlock frames. Sorry for that, but a waste to push a new package for that. I'm using macros during development and forgot it that way.
Hello,
your last version in alpha is broken on my game ... i cant move the window :)
Sasmira.
I look forward to that. In addendum to my previous post Grid2 support if you can.
I'm actually working on a complete new addon to display shield values, more focused on features and customizations than just a debug tool like AbsorbsViewer was originally.
Please keep any suggestions coming for it, a first version should be ready next week
Great addon. My 2 cents about the bundled viewer.
I look forward to this addon development, it's a great one so far.