ESOUI

ESOUI (https://www.esoui.com/forums/index.php)
-   Lua/XML Help (https://www.esoui.com/forums/forumdisplay.php?f=175)
-   -   EVENT_COMBAT_EVENT for companion skills - Missing data (https://www.esoui.com/forums/showthread.php?t=9829)

DoonerSeraph 07/09/21 10:16 AM

EVENT_COMBAT_EVENT for companion skills - Missing data
 
So, while trying to add a cooldoown tracking to a companion addon, I stumbled on the following issue.
It seems that the API does not send he full data for a EVENT_COMBAT_EVENT when the source is a companion.

This is a test with my Twilight Matriarch hitting a Betty Netch.

[13:02] abilityId[117321] AbilityName[Twilight Matriarch] sourceName[Twilight Matriarch] TargetName[Betty Netch] result[1] abilityActionSlotType[0]
[13:02] sourceType[2] targetType[0] sourceUnitId[31833] targetUnitId[53562]

This is Mirri Elendis hitting another Betty with Shadow Slash

[13:08] abilityId[156182] AbilityName[Shadow Slash] sourceName[] TargetName[] result[1] abilityActionSlotType[0]
[13:08] sourceType[0] targetType[0] sourceUnitId[0] targetUnitId[52720]

We can see that the sourceUnitId is 0 in this case. Upon doing some research, I can understand the the unitId is only tracked for the player and the pets belonging to that player, to avoid DPS-tracking addons without consent, which is fine by me.

But is it possible at all to capture the source unitId for my own companions like we can do with pets? Even though companions are not pets per se, we manage them kinda like one in combat. Without this data, it is impossible to differentiate a Shadow Slash cast by my Mirri Elendis and some other person's Mirri, since the ability Id is the same and the source unitId would be 0, so when someone casts their Shadow Slash, my addon understands that my Shadow Slash skill is on cooldown, even when it is'nt.

Any ideas on how that can be solved? Thanks!

Baertram 07/09/21 11:36 AM

This cannot be solved via addons if the API is not providing the information.

You can use the WishList subforum here at the forum to request better API or event data for the companions and ZOs will maybe add/enhance them.
But you should make sure it's not any event filter you have added or other addon blocking/filtering it, so test with all other addons disabled at best and give exact informtion how to reproduce this.
You can also ask a question to the ZOs dev supporter over here, before craeting this thread. Maybe he isable to tell you already if this is a bug, intended and will/wont be changed (due to server performance etc.):
https://gitter.im/esoui/esoui

andy.s 07/10/21 02:22 AM

EVENT_EFFECT_CHANGED should provide unit ids for everything that has a tag (but I don't have companions). At least this is how all addon devs have been getting unit ids for group members and bosses all these years.

DoonerSeraph 07/11/21 04:16 AM

Quote:

Originally Posted by Baertram (Post 44361)
This cannot be solved via addons if the API is not providing the information.

You can use the WishList subforum here at the forum to request better API or event data for the companions and ZOs will maybe add/enhance them.
But you should make sure it's not any event filter you have added or other addon blocking/filtering it, so test with all other addons disabled at best and give exact informtion how to reproduce this.
You can also ask a question to the ZOs dev supporter over here, before craeting this thread. Maybe he isable to tell you already if this is a bug, intended and will/wont be changed (due to server performance etc.):
https://gitter.im/esoui/esoui

Thanks for the tip, @Baertram! Yup, just tested without any addons except for that hook, and the result remains the same. I asked a question at Gitter :)

Quote:

Originally Posted by andy.s (Post 44366)
EVENT_EFFECT_CHANGED should provide unit ids for everything that has a tag (but I don't have companions). At least this is how all addon devs have been getting unit ids for group members and bosses all these years.

That does make sense, but it looks like EVENT_EFFECT_CHANGED is more designed to track buff, debuffs, etc on a unit, but does not track straight damage skills like Crag Smash. Without knowing when my companion casts it, it would be impossible to track it's cooldown, right?

andy.s 07/11/21 05:20 AM

Quote:

Originally Posted by DoonerSeraph (Post 44373)
That does make sense, but it looks like EVENT_EFFECT_CHANGED is more designed to track buff, debuffs, etc on a unit, but does not track straight damage skills like Crag Smash. Without knowing when my companion casts it, it would be impossible to track it's cooldown, right?

Check LibUnits (I think it's included in Raid Notifier) or LibUnitTracker. Basically they wait for a unit to cast something and trigger EVENT_EFFECT_CHANGED, then assign unitId to the tag, because that event provides both.

ZOS_DanBatson 07/16/21 02:24 PM

We're fixing this internally. Companions should show all the same info that pets do.


All times are GMT -6. The time now is 09:58 AM.

vBulletin © 2024, Jelsoft Enterprises Ltd
© 2014 - 2022 MMOUI