Grid

342 - LibHealComm disable.

Currently, LibHealComm is included directly from Grid.toc. When it's loaded it automatically begins sending addon messages each time a healing cast begins or ends, or a hot ticks, or a proc procs. This traffic can be very spammy and when several people are playing from the same IP can generate a lot of unnecessary traffic, even if the "Incoming Heals" status (the only one that uses the library) is disabled. An easy fix that I'm using for now is simply commenting out the library and GridStatusHeals.lua in Grid.toc. It would be awesome if there was a better way to disable this library (since my way has to be redone every time there's a Grid update).

Thanks for the great addon!

User When Change
Phanx Aug 12, 2010 at 09:30 UTC Changed status from New to Declined
cbrown11 Aug 12, 2010 at 09:18 UTC Create

You must login to post a comment. Don't have an account? Register to get one!

  • 8 comments
  • Avatar of cbrown11 cbrown11 Sep 23, 2010 at 10:06 UTC - 0 likes

    Because you're the developer here. I prefer to present ideas and possible room for improvement to developers rather than solutions. Heck, I could download the latest revision of Grid right now, modify it and send it to you, but I don't feel like that should be necessary. Stretch your mind out a bit. There are a hundred ways to accomplish a task like this without modifying the LibHealComm files and without splitting up Grid's folder (I still don't have a clue where the notion that you might have to do that came from.).

    Here's one simple way you can effectively enable / disable LibHealComm without making any modifications to it . . .

    Step 1) local healComm = LibStub:GetLibrary("LibHealComm-4.0")

    Step 2) Hook into healComm.COMBAT_LOG_EVENT_UNFILTERED.

    By default the hook would just pass everything straight through to LibHealComm as normal, but there could easily be an option in Grid's configuration to change that. Nothing would be changed for the typical user, but there would just be a little more control with a little less hassle for some people.

    And for the record, I do care about helping out the other healers in my group, but we don't use incoming heals. We can see the relevant shields, defensive cooldowns, and hots on all the raid members and the relatively small amount of direct healing that has to be done to non-tanks is coordinated in a way that eliminates overlapped healing. LibHealComm can be useful in some situations, but in my guild we just don't need it.

    I've also kinda been trying to gradually put an end to this conversation because I feel pretty sure your mind is already shut out to this idea and anything else I could possibly have to say.

    Last edited Sep 23, 2010 by cbrown11
  • Avatar of Phanx Phanx Sep 23, 2010 at 07:48 UTC - 0 likes
    Quote:

    A "fill up your addons folder with tons of module folders" type addon is exactly what Grid already is . . . (at the moment I have 9 Grid modules in my addons folder).

    Third-party plugins are not part of Grid. If you choose to use them, that's up to you, but they're not necessary to run Grid.

    Quote:

    Not that anything I've mentioned would involve changing the number of folders in anyone's addon folder anyways. Nothing I've said should have hinted at changing the default behavior of Grid either.

    So, if you have a solution disabling an embedded library whose author does not want it disabled and intentionally did not include a disable method, that doesn't involve changing Grid's behavior or splitting parts of Grid out into external modules, why don't you describe this solution, instead of beating around the bush with annoyingly vague comments?

  • Avatar of cbrown11 cbrown11 Sep 22, 2010 at 11:52 UTC - 0 likes

    A "fill up your addons folder with tons of module folders" type addon is exactly what Grid already is . . . (at the moment I have 9 Grid modules in my addons folder). Not that anything I've mentioned would involve changing the number of folders in anyone's addon folder anyways. Nothing I've said should have hinted at changing the default behavior of Grid either.

  • Avatar of Phanx Phanx Sep 20, 2010 at 08:14 UTC - 0 likes
    Quote:

    In the distribution that includes LibHealComm, you could make it load on demand with very minimal changes.

    Do tell. As I've already mentioned, the author of LibHealComm-4.0 deliberately wrote the library without a method by which addons might disable/unload it. I'm not interested in distributing a modified version of his library; not only is this obviously against his wishes and his vision for the library, but it would also introduce potential compatibility issues that I don't want to deal with. I'm also not interested in breaking Grid up into the "fill up your addons folder with tons of module folders" type of addon, if that's what you had in mind.

    Deleting the library is extremely simple, and accomplishes your goal (not running the library) while ensuring compatibility with the widest possible audience (running the library by default).

    Finally, I really feel that it's important to emphasize that if you believe the amount of comm traffic generated by LibHealComm-4.0 is excessive, especially to the extent that it's causing actual connectivity issues, you really should raise those concerns with Shadowed, the library's author.

  • Avatar of cbrown11 cbrown11 Sep 20, 2010 at 07:10 UTC - 0 likes

    My original post seemed perfectly civilized and undeserving of the response it got. I detected hostility in your post and responded in the same manner. I can understand the reasons behind the decisions you've made, but next time you respond to a ticket, try not to directly insult the poster's intelligence. In the distribution that includes LibHealComm, you could make it load on demand with very minimal changes. It doesn't really matter to me any more though. I'll just make the changes I want on my own and keep my suggestions to myself. Thanks for your timely replies and your contribution to this very useful add-on.

    Last edited Sep 20, 2010 by cbrown11
  • Avatar of Phanx Phanx Sep 19, 2010 at 12:54 UTC - 0 likes
    Quote:

    Yeah each person casts their own heals, but do you know how that information gets to Blizzard's servers? Surprisingly, it's not magic. It goes through this thing called the Internet.

    If you want the information LibHealComm-4.0 provides, then each person needs to run a copy of the library inside their own client. If you do not want the information LibHealComm-4.0 provides, then you are free to remove the library.

    Quote:

    Trauma plus about 20 HoTs up at a time means a lot of messages being sent.

    If you have a problem with the number of comm messages sent by LibHealComm-4.0, then you should discuss that with the author of the library. I am not the author of the library, and I have no control over how many comm messages it sends.

    Quote:

    If you were smart you would at the very least change it when 4.0 is released along with the UnitGetIncomingHeals API.

    When 4.0 is released, that is obviously something I will consider, along with the author of every other addon that currently uses LibHealComm-4.0. Even the author of LibHealComm-4.0 itself has publicly stated that if the new API is sufficiently robust, he will discontinue the library.

    Quote:

    It's too bad you've decided that "this will not change."

    It's too bad you've decided that the best approach is to be an asshole. I've already told you that there is no way for an addon to disable LibHealComm-4.0, and that this was an intentional design decision by the library's author. Your only option, if you do not want LibHealComm-4.0 running, is to prevent it from ever being loaded, which is also something that addons cannot control (short of not using it at all).

    Again, if you have concerns about the library, discuss them with the library's author. If you've simply decided you do not want to use the library, removing it is as simple as adding a "#" in front of it in Grid's TOC, or physically deleting the file from your hard disk. Being an asshole to me isn't going to accomplish anything.

  • Avatar of cbrown11 cbrown11 Sep 19, 2010 at 12:32 UTC - 0 likes

    Furthermore, it doesn't matter if multiple people are playing from a single IP address, as each person playing casts their own heals. You heal from your character, not from your IP address.

    What does this even mean? Maybe I'm just stupid (I'm not) but I can't decipher anything intelligible from this. Yeah each person casts their own heals, but do you know how that information gets to Blizzard's servers? Surprisingly, it's not magic. It goes through this thing called the Internet. Our local connection (the shared IP address) has limited bandwidth (every Internet connection does) and multiple people shooting out dozens of these messages a second does begin to have an impact (Trauma plus about 20 HoTs up at a time means a lot of messages being sent.).

    I guess me, the other people in my apartment, and the countless other people who have seen a correlation between latency and LibHealComm (see Google) are just victim of a highly unlikely and unfortunate coincidence, but I doubt it. I think you're just being naive.

    It's too bad you've decided that "this will not change." If you were smart you would at the very least change it when 4.0 is released along with the UnitGetIncomingHeals API. ~_~

    Last edited Sep 19, 2010 by cbrown11
  • Avatar of Phanx Phanx Aug 12, 2010 at 09:30 UTC - 0 likes

    The author of LibHealComm-4.0 intentionally did not provide a way for addons to disable the library. The primary purpose of running the library is to share information about your healing spells with other people in your group, so that other healers can make better decisions about who to heal. Likewise, those other people running the library enables you to make better decisions about who to heal.

    If you feel that the traffic generated by this library is excessive, I'd recommend that you share that concern with the library's author, as I (or any other addon author) have no control whatsoever over the comm messages the library sends. In fact, the interaction between Grid and LibHealComm-4.0 is strictly one-way; Grid does not talk to the library at all, but only listens to the callbacks fired by the library.

    Furthermore, it doesn't matter if multiple people are playing from a single IP address, as each person playing casts their own heals. You heal from your character, not from your IP address.

    If you really believe that running LibHealComm-4.0 is degrading your performance (it's not) and/or sending unreasonable amounts of comm traffic (it's not), and you don't care about helping the other healers in your group or about seeing heals being cast by other healers in your group, then commenting out the library in the TOC is the only option available to you. This will not change.

  • 8 comments

Facts

Last updated
Aug 12, 2010
Reported
Aug 12, 2010
Status
Declined - We decided not to take action on this ticket.
Type
Enhancement - A change which is intended to better the project in some way
Priority
Medium - Normal priority.
Votes
0

Reported by

Possible assignees