#1 - Feb. 26, 2011, 1:51 p.m.
Blizzard Post
there is a new boolean arg at 5 which pushed everything else over. this will require a lot of mod updates for 4.1.

1 table
2 combat log event unfilt
3 12........ number
4 unit_died string
5 true boolean
6 0x00000....... string
7 nil nil
8 -2147483648 number
9 0xF string
10 small frog string
11 2600 number

the event is called "hideCaster" for the boolean

if ( sourceString == "" and not hideCaster ) then sourceString = UNKNOWN; end
Forum Avatar
Community Manager
#15 - April 26, 2011, 4:01 p.m.
Blizzard Post
Gonna sticky this thread for a bit so authors are aware.

Wowza! Talk about Blizz dropping the ball on this one. System design 101: add new stuff to the END of a parameter list.

No0b programmer mistake? Or part of an evil scheme to purge the land of Add-Ons?

/don TinFoilHat

The "COMBAT_LOG_EVENT_UNFILTERED" event has 2 sets of parameters. One that is passed for every event (frame handle, timestamp, combat log event name, hide caster flag) and one that changes depending on the type of combat log event. Had Blizzard added the flag after both parameter sets, it's offset would not be consistent and finding the flag would incur significant performance penalties.

Lifetime of sub-optimal performance vs. +1% nerd rage on forums for 2 days.

I'm partial to the latter.