1. #1

    Determining how many targets are hit by beast cleave?

    Been messing around on dummies trying to determine how many targets are being hit by my hunter's beast cleave, and I can't seem to get it right -

    The only guid's that show up in the log are my target, not the surrounding targets that are being hit by the spell.. There is also an additional event in the log, "SWING_DAMAGE_LANDED" which I assume is part of the extra-detailed combat logging, and isn't available in game? In any case, it never shows up as far I can see in my addon.

    Any suggestions on how to actually track #targets hit by beast cleave?

    Snippet from my /combatlog.

    Code:
    3/31 00:10:08.379  SWING_DAMAGE,Pet-0-3766-1159-4459-11673-01025D2A56,"Core Hound",0x1111,0x0,Creature-0-3766-1159-4459-87318-0000194AD4,"Dungeoneer's Training Dummy",0x10a28,0x0,Pet-0-3766-1159-4459-11673-01025D2A56,Player-3725-09D79223,332506,332506,3397,3397,0,2,120,120,1934.38,69.27,685,3553,-1,1,0,0,0,nil,nil,nil,nil
    3/31 00:10:08.379  SWING_DAMAGE,Pet-0-3766-1159-4459-11673-01025D2A56,"Core Hound",0x1111,0x0,Creature-0-3766-1159-4459-87318-0000194AD4,"Dungeoneer's Training Dummy",0x10a28,0x0,Pet-0-3766-1159-4459-11673-01025D2A56,Player-3725-09D79223,332506,332506,3397,3397,0,2,120,120,1934.38,69.27,685,1066,-1,1,0,0,0,nil,nil,nil,1
    3/31 00:10:08.379  SPELL_CAST_SUCCESS,Pet-0-3766-1159-4459-11673-01025D2A56,"Core Hound",0x1111,0x0,Creature-0-3766-1159-4459-87318-0000194AD4,"Dungeoneer's Training Dummy",0x10a28,0x0,17253,"Bite",0x1,Pet-0-3766-1159-4459-11673-01025D2A56,Player-3725-09D79223,332506,332506,3397,3397,0,2,95,120,1934.38,69.27,685
    3/31 00:10:08.379  SWING_DAMAGE_LANDED,Pet-0-3766-1159-4459-11673-01025D2A56,"Core Hound",0x1111,0x0,Creature-0-3766-1159-4459-87318-0000194AD4,"Dungeoneer's Training Dummy",0x10a28,0x0,Creature-0-3766-1159-4459-87318-0000194AD4,0000000000000000,10462798,10471800,0,0,0,1,0,0,1930.72,69.45,102,3553,-1,1,0,0,0,nil,nil,nil,nil
    3/31 00:10:08.379  SWING_DAMAGE_LANDED,Pet-0-3766-1159-4459-11673-01025D2A56,"Core Hound",0x1111,0x0,Creature-0-3766-1159-4459-87318-0000194AD4,"Dungeoneer's Training Dummy",0x10a28,0x0,Creature-0-3766-1159-4459-87318-0000194AD4,0000000000000000,10461732,10471800,0,0,0,1,0,0,1930.72,69.45,102,1066,-1,1,0,0,0,nil,nil,nil,1
    3/31 00:10:08.379  SPELL_DAMAGE,Pet-0-3766-1159-4459-11673-01025D2A56,"Core Hound",0x1111,0x0,Creature-0-3766-1159-4459-87318-0000194AD4,"Dungeoneer's Training Dummy",0x10a28,0x0,17253,"Bite",0x1,Creature-0-3766-1159-4459-87318-0000194AD4,0000000000000000,10452976,10471800,0,0,0,1,0,0,1930.72,69.45,102,8756,-1,1,0,0,0,nil,nil,nil,nil
    3/31 00:10:08.379  SPELL_HEAL,Player-3725-09D79223,"Clicker-Frostmourne",0x511,0x0,Player-3725-09D79223,"Clicker-Frostmourne",0x511,0x0,143924,"Leech",0x1,Player-3725-09D79223,0000000000000000,296880,296880,5661,919,0,2,80,120,1943.12,67.62,685,82,82,0,nil,nil
    3/31 00:10:08.401  SPELL_DAMAGE,Pet-0-3766-1159-4459-11673-01025D2A56,"Core Hound",0x1111,0x0,Creature-0-3766-1159-4459-88314-0000194AD4,"Dungeoneer's Training Dummy",0xa28,0x0,118459,"Beast Cleave",0x1,Creature-0-3766-1159-4459-88314-0000194AD4,0000000000000000,10468247,10471800,0,0,0,1,0,0,1933.23,60.98,102,3553,-1,1,0,0,0,nil,nil,nil,nil
    3/31 00:10:08.401  SPELL_DAMAGE,Pet-0-3766-1159-4459-11673-01025D2A56,"Core Hound",0x1111,0x0,Creature-0-3766-1159-4459-88314-0000194AD4,"Dungeoneer's Training Dummy",0xa28,0x0,118459,"Beast Cleave",0x1,Creature-0-3766-1159-4459-88314-0000194AD4,0000000000000000,10467181,10471800,0,0,0,1,0,0,1933.23,60.98,102,1066,-1,1,0,0,0,nil,nil,nil,nil
    3/31 00:10:08.401  SPELL_DAMAGE,Pet-0-3766-1159-4459-11673-01025D2A56,"Core Hound",0x1111,0x0,Creature-0-3766-1159-4459-88314-0000194AD4,"Dungeoneer's Training Dummy",0xa28,0x0,118459,"Beast Cleave",0x1,Creature-0-3766-1159-4459-88314-0000194AD4,0000000000000000,10458425,10471800,0,0,0,1,0,0,1933.23,60.98,102,8756,-1,1,0,0,0,nil,nil,nil,nil
    Last edited by rijn dael; 2015-03-30 at 02:53 PM.

  2. #2
    One way to track number of targets hit is that the combat log event will *generally* have the same server-side timestamp for a single AoE event. (As in, there are some spells designed to annoy you ^W^W^W that don't behave like that, but almost all do.)

    So you can simply store the timestamp of the "current" hit, and either increment your counter, or reset it, based on that. (Don't forget to filter out multistrike events, though, which also have the same timestamp, and will otherwise artificially inflate your count.)

  3. #3
    From what I can see, the "Beast Cleave" events don't ever set the crit or multistrike flags, they just mirror the damage done by another event - meaning say I am cleaving on two targets and a single multistrike occurs, I would end up with four events - two swings and two spell_damages, but only the swing multistrike event sets the multistrike flag.

    So I would need to look for the count of "SPELL_DAMAGE" events with the same timestamp where spell == "Beast Cleave", and divide that by 1 + the number of simultaneous "SWING_DAMAGE" events where multistrike flag == 1?

    Isn't it really strange that you can cause damage to a unit without an event identifying the victim?

    - - - Updated - - -

    I guess the matchup needs to be a bit fuzzy too - the timestamps are frequently +/- 200ms
    Last edited by rijn dael; 2015-03-30 at 06:05 PM.

  4. #4
    Quote Originally Posted by rijn dael View Post
    From what I can see, the "Beast Cleave" events don't ever set the crit or multistrike flags, they just mirror the damage done by another event - meaning say I am cleaving on two targets and a single multistrike occurs, I would end up with four events - two swings and two spell_damages, but only the swing multistrike event sets the multistrike flag.

    So I would need to look for the count of "SPELL_DAMAGE" events with the same timestamp where spell == "Beast Cleave", and divide that by 1 + the number of simultaneous "SWING_DAMAGE" events where multistrike flag == 1?

    Isn't it really strange that you can cause damage to a unit without an event identifying the victim?

    - - - Updated - - -

    I guess the matchup needs to be a bit fuzzy too - the timestamps are frequently +/- 200ms
    Aw, dang. I used that timestamp on my own AoE things for various classes and, with very few exceptions, they were "instant" hits on everything in range. Sorry that doesn't work here -- it was suggested with the best of intentions. In that case I would probably look for the basic attack cast, and reset the hit counter for cleave when that happened. That way you don't need to worry about timestamp matching, because you have a single event to reset for you.

  5. #5
    Quote Originally Posted by SlippyCheeze View Post
    Aw, dang. I used that timestamp on my own AoE things for various classes and, with very few exceptions, they were "instant" hits on everything in range. Sorry that doesn't work here -- it was suggested with the best of intentions. In that case I would probably look for the basic attack cast, and reset the hit counter for cleave when that happened. That way you don't need to worry about timestamp matching, because you have a single event to reset for you.
    Yeah, once I account for multistrike by dividing out how many events 'should' be triggered, I think that will be correct... its horribly hackish though, I can't understand why the cleave event has the pets target guid, rather than the actual destination guid on it.

    Thanks for the confirmation that I wasn't missing something!

    Wonder how skada handles it, I assume it doesn't attribute everything to the wrong unit (otherwise when you cleave adds on a boss, it would claim you have impossibly high boss dps), but there is no other event to tell what got hit :S
    Last edited by rijn dael; 2015-03-31 at 05:13 AM.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •