ESOUI

ESOUI (https://www.esoui.com/forums/index.php)
-   Wish List (https://www.esoui.com/forums/forumdisplay.php?f=177)
-   -   Add Killing Blow Ability ID to EVENT_PVP_KILL_FEED_DEATH (https://www.esoui.com/forums/showthread.php?t=10677)

Anthonysc 08/25/23 12:48 AM

Add Killing Blow Ability ID to EVENT_PVP_KILL_FEED_DEATH
 
It is already possible (although incomplete, and somewhat imprecise) to associate the killing blow ability with EVENT_PVP_KILL_FEED_DEATH events allowing a custom killfeed with more situationally useful information. However, this requires registering an additional callback to EVENT_COMBAT_EVENT. Including the abilityID of the Killing Blow ability in the events fired for EVENT_PVP_KILL_FEED_DEATH would simplify the construction of custom killfeeds with more detailed information.

Edit: Might also be nice to get ClassIDs in this but KB abilityID is the important ask.

DakJaniels 08/25/23 02:51 AM

You might look into using LibEventHandler.

Baertram 08/25/23 05:16 AM

Quote:

hook to EVENT_COMBAT_EVENT
Hooking into an event is not possible, unless you meant you want to hook into a vanilla code callback function of that event? Which makes no sense as you can register your own callback to get the same information (I guess you meant that by hook).


I don't think that this library would be needed as you can simply register that extra EVENT_COMBAT_EVENT with event filters to get that abilityId -> As you need to check the killing blow of ALL others around you this will be a big performance thing though I believe!
Beside that I doubt it will fire all combat events cyrodiil wide, only near yourself right?
And the library would not help here as it does the same like EVENT_MANAGER does.


In the end it would be better/more performant if ZOs provides the data directly within EVENT_PVP_KILL_FEED_DEATH , right.
But:

That could lead to "too much information" as you could spy class and other info by that help? Which maybe not wanted in PvP areas and leads to APi restrictions in the end again (unless the current EVENT_PVP_KILL_FEED_DEATH already provides that info by the displayName/characterName and you can get that char's data like class etc. by their name already now, without having to build lookup tables of before seen characters etc.).

Calamath 08/25/23 11:19 AM

Quote:

Originally Posted by DakJaniels (Post 48370)
You might look into using LibEventHandler.

Hey, DakJaniels!
How do you think LibEventHandler can be used for the issues raised here?
You shouldn't write irrelevant things based on your imagination. :(

Anthonysc 08/25/23 01:09 PM

Quote:

Originally Posted by Baertram (Post 48371)
Hooking into an event is not possible, unless you meant you want to hook into a vanilla code callback function of that event? Which makes no sense as you can register your own callback to get the same information (I guess you meant that by hook).


I don't think that this library would be needed as you can simply register that extra EVENT_COMBAT_EVENT with event filters to get that abilityId -> As you need to check the killing blow of ALL others around you this will be a big performance thing though I believe!
Beside that I doubt it will fire all combat events cyrodiil wide, only near yourself right?
And the library would not help here as it does the same like EVENT_MANAGER does.


In the end it would be better/more performant if ZOs provides the data directly within EVENT_PVP_KILL_FEED_DEATH , right.
But:

That could lead to "too much information" as you could spy class and other info by that help? Which maybe not wanted in PvP areas and leads to APi restrictions in the end again (unless the current EVENT_PVP_KILL_FEED_DEATH already provides that info by the displayName/characterName and you can get that char's data like class etc. by their name already now, without having to build lookup tables of before seen characters etc.).

Yes as you surmised, I meant register a callback, not "hook". My apologies for the incorrect terminology.

This came up as I was poking around in the code for Miat's PVP alerts to move over the Miat's Kill Feed to the new official Kill Feed system. The existing code already had a callback to EVENT_COMBAT_EVENT, and was using this to construct the kill feed with killing blow information.

I was able to move everything else over to the new system, but because of this missing piece of information, I had to leave the old event handler in place to extract the killing blow information and build an array that can then be read to add it to the event information from the new killfeed event. You are correct that it only fires for events around yourself, and the range is smaller than the range for EVENT_PVP_KILL_FEED_DEATH, but it would still be nice to access this information in a more performant way, that doesn't involve tryign to manage the specific timing of two different EVENT handlers firing.


All times are GMT -6. The time now is 08:42 AM.

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