So I installed this today and have a few questions. 1. How do I differentiate auto attack damage from other damage? There's the built-in "isSpellDamage" flag but I want to differentiate between the main target and targets damaged by cleave/orb of annihilation/barrage/etc. Do I need to trigger all forms of non-spell damage, and leave auto attack damage as the only "physical" damage? 2. Should I worry about recursive damage events? I noticed there were a lot of global variables. Do I need to worry about them being overwritten when calling a "deal damage to target" function from within a damage event, especially when I might have 4-5 layers of damage events? (an attack might cause a triggered cleave which might cause a proc which might cause a...) Or is just calling "ClearDamageEvent" after every triggered damage event sufficient? 3. Would switching over the unit indexer to hashtables/handle IDs be prohibitively bothersome? I don't like using tables (EDIT: arrays, not tables). However, if it would be far too much of a pain to switch over then I'll make do.