Get an Epic Experience with Premium


Boss Encounters Login to Add Favorites
  • Project Manager: oomp
  • World of Warcraft
  • 2,890 Monthly Downloads
  • Supports: 5.4.7
  • 410,751 Total Downloads
  • Updated 05/10/2014
  • Created 05/25/2009
  • 340 Favorites
  • Project Site
  • Comments
  • Release Type: Inactive
  • License: All Rights Reserved
  • Newest File: v2.4b
Support development! **

About Fatality

What is Fatality?
Fatality is a simple death report addon which announces information about the last hit(s) a person took before they died.

What makes it better than other, similar addons?
It's extremely lightweight and consumes much less CPU and memory than other addons which falsely claim to be better. If you're concerned about your FPS and general performance while raiding and want a simple addon to accurately report deaths without any extra junk or bloat, look no further.

Can I choose where the informaton is announced?
Yes. You can select where reports are sent depending on whether you are in a Raid or Party instance. You can choose to send reports to the following outputs:

Instance Instance chat - party/raid/instance, depending on your group.
Self Just you - no one else will see these announcements.
Guild Guild chat - you must be in a guild.
Officer Officer chat - you must be an officer in a guild.
Party Party chat - you must be in a party with at least one other person.
Raid Raid chat - you must be in a raid with at least one other person.
Raid Warning Raid warning - you must be promoted to Raid Leader/Raid Assistant.
Channel A private channel, e.g. FatalityReports.
Whisper A specific player, e.g. Moop.

Why can't I see any announcements?
By default, announcements will only be sent while inside Raid/Party instances.

What information is included in the reports?
The information included in reports can be configured. The following options are available and can be toggled according to user preference:

Absorbs The amount of damage absorbed; reported as (A: <absorb amount>)
Blocks The amount of damage blocked; reported as (B: <block amount>)
Resists The amount of damage resisted; reported as (R: <resist amount>)
Overkill The amount of excess damage, e.g. if a person has 20000 remaining hitpoints and takes 50000 damage, their overkill would be 30000; reported as (O: <overkill amount>)
School The school of damage the spell belongs to (Fire, Shadow, Physical, etc.)
Source The unit who caused the damage event
Icons The raid icons displayed above a player's head

What other options are available?
Raid Enable inside Raid instances
Party Enable inside Party instances
LFR Enable inside the Raid Finder
Promote Only announce while promoted (Raid Leader/Raid Assistant)
Shorten Display shortened numbers, e.g. 9431 becomes 9.4k

How are Cauterize and Spirit of Redemption "deaths" handled?
• Cauterize does not guarantee death and an announcement is therefore not sent when it procs (unless the Mage actually dies).
• Spirit of Redemption does guarantee death and is reported with an asterisk (*) next to the Priest's name as an indication of their current state.

How are deaths with known/unknown causes handled?
Due to limitations (bugs) within Blizzard's Combat Log, it is sometimes impossible for any addon to conclusively determine how a player died. As a general solution to this problem, Fatality assumes that any damaging hit taken at least 2 seconds before a player died is the cause of their death. Here are some examples of cases where death reports may vary because of these limitations:

Situation: No damage is recorded within the 2-second timeframe. This usually occurs when either (1) The person running Fatality is in another realm and data cannot be recorded (Ultraxion) or (2) A person falls off a platform and there is no recent damage events that can be linked to their death (Warmaster/Spine/Madness).
Output: Fatality: Moop > [Death]

Situation: Damage is recorded within the 2-second timeframe, but no overkill is reported by the combat log.
Output: Fatality: Moop > 45.4k Melee [Warmaster Blackhorn]

Situation: Damage is recorded within the 2-second timeframe, but this time the combat log does report an overkill.
Output: Fatality: Moop > 45.4k Melee (O: 123.4k) [Warmaster Blackhorn]

How do I enable/disable the addon?
Click the small green/red button at the top left of the configuration UI or type /fat on|off.

How are character-specific settings handled?
Configuration settings are saved separately for each character. However, the enabled/disabled status of the addon remains the same for all characters, i.e. if you click the green/red button to turn the addon on/off, it will also affect your other characters' settings.

Fatality still announces when there are other people in my group with it installed. Can you do something about this?
I'm afraid not; Fatality was designed to be an extremely lightweight solution for death reports. In order to implement a "smart disable" option, it would be necessary to make use of the Blizzard AddOn communication channel which can lead to a negative impact on your game's performance and, since I value my FPS, client-to-client communication is currently not something I want to include in any of my addons.

Which locales are supported and how can I help with translations? English (enUS) French (frFR) German (deDE) Spanish (esES) Latin American Spanish (esMX) Italian (itIT) Russian (ruRU) Brazilian Portuguese (ptBR) Korean (koKR) Simplified Chinese (zhCN) Traditional Chinese (zhTW)

If you notice any inaccurate or missing translations, visit the localisation page, leave a comment here, or send me a private message and I'll make sure they're corrected.

v2.4b | moop | Saturday, 10th May, 2014
- Bump TOC to 50400.

v2.4a | moop | Saturday, 9th March, 2013
- Make sure only player deaths are reported.

v2.4 | moop | Friday, 8th March, 2013
- Removed Life Tap detection.
- Use GetInstanceInfo() instead of GetInstanceDifficulty().
- Bump TOC to 50200.

v2.3c | moop | Sunday, 6th January, 2013
- Make sure to update chat settings when a new output has been selected.

v2.3b | moop | Thursday, 13th December, 2012
- Hopefully fix the 'Instance' option...

v2.3a | moop | Thursday, 6nd December, 2012
- Made the 'Instance' option from the Output dropdown menu smarter. Thanks to Sintacks and rotes!

v2.3 | moop | Sunday, 2nd December, 2012
- Added support for Instance Chat. Thanks to Vandesdelca32!
- Bump TOC to 50100.

v2.2c | moop | Sunday, 4th November, 2012
- Fixed a bug which prevented environmental damage from being reported.

v2.2b | moop | Sunday, 9th September, 2012
- Fixed the 'Self' option from the Output dropdown menus.
- Added a check for UnitIsGroupLeader("player") in addition to UnitIsGroupAssistant("player"). Thanks to ywfn!
- Added localisation support for Italian (itIT). Thanks to Adam77!

v2.2 | moop | Saturday, 8th September, 2012
- Fixed a minor UI bug.
- Localisation updates - deDE/esES/esMX/frFR/ruRU.
- Replaced IsRaidOfficer() with UnitIsGroupAssistant("player"). Thanks to Dracula!
- Bump TOC to 50001.

v2.1a | moop | Friday, 24th February, 2012
- Priest: Report Spirit of Redemption deaths with an asterisk (*) next to the player's name.
- Increase the amount of time for deaths to be displayed as Fatality: Player > [Death] from 1 second to 2 seconds in an effort to reduce erroneous reports.
- Added /fat on and /fat off commands as a convenient way to enable/disable the addon without having to open up the configuration UI.
- Localisation updates - ptBR/ruRU/zhCN.

v2.1 | moop | Thursday, 2nd February, 2012
- Lots of minor optimisations to the way data is stored.
- Several bug fixes related to Unknown deaths.
- Unknown deaths are now reported as: Fatality: Player > [Death]
- Increased the default minimum amount of recorded damage from 0 to 5000.
- Added localisation support for Korean (koKR), Brazilian Portuguese (ptBR), Russian (ruRU), Simplified Chinese (zhCN) and Traditional Chinese (zhTW). Visit if you can help out with missing/inaccurate translations.
- Added a new option - Source: Include who caused the damage.
- Hunter: Better Feign Death detection.
- Priest: Tweak Spirit of Redemption handling.
- Warlock: Implemented Life Tap damage recording.

v2.0 | moop | Sunday, 15th January, 2012
- Fatality now has a brand new user interface! To access it, type /fatality or /fat.
- Added localisation support for German (deDE), French (frFR) and Spanish (esES/esMX) - other locales (koKR/ptBR/ruRU/zhCN/zhTW) will be included in future updates. Visit if you can help out with translations.
- Improved Unknown death detection. For example, when a player jumps off the boat at Warmaster Blackhorn or from Deathwing's back on the Spine encounter, their death now should correctly be reported as Unknown.
- Spirit of Redemption deaths should now be fixed once and for all.
- Added several new options:


• Promote: Only announce if promoted.
• LFR: Enable inside LFR.
• Raid: Enable inside Raid Instances.
• Resists: Include resisted damage in reports.
• Absorbs: Include absorbed damage in reports.
• Blocks: Include blocked damage in reports.
• Whispers: Send announcements via whisper.

- Fix a minor bug introduced in v1.2.6 where if the user entered an instance with Fatality disabled, then enabled it, it wouldn't register correctly.

• • • As always, if you experience any problems or have any suggestions, leave a comment! • • •

v1.2.6 | moop | Tuesday, 3rd January, 2012
- Fatality's enabled/disabled option is now stored globally, meaning that if it's changed on one character, it'll be changed for all characters. Other settings remain character-specific.

v1.2.5 | moop | Wednesday, 30th November, 2011
- Report players as "Player" instead of "Player-Realm" inside Raid instances.

v1.2.4 | moop | Tuesday, 29th November, 2011
- Saved variables are now stored per character, which means you'll have to reconfigure your settings on each character you have Fatality enabled on.
- Fix DAMAGE_SHIELD and DAMAGE_SPLIT events. Damage events like Thorns and Hand of Sacrifice should now be recorded.
- Added an option to announce spell schools. This is enabled by default, type /fat school to disable.
- Added better detection for Spirit of Redemption deaths.
- Bump TOC to 40300.

v1.2.3 | moop | Wednesday, 29th June, 2011
- Updated COMBAT_LOG_EVENT_UNFILTERED arguments for 4.2.
- Removed old code which made use of UNIT_HEALTH to determine deaths.
- Bump TOC to 40200.

v1.2.2 | moop | Wednesday, 27th April, 2011
- Updated COMBAT_LOG_EVENT_UNFILTERED arguments for 4.1.
- Fix SPELL_INSTAKILL announcements.
- Bump TOC to 40100.

v1.2.1c | moop | Friday, 18th February, 2011
- Fix invalid "Report cannot be sent because it exceeds the maximum character limit of 255." errors.

v1.2.1b | moop | Friday, 18th February, 2011
- Fix /fat history command.
- Accept "SELF" as a channel regardless of the case when setting the output.

v1.2.0 | moop | Tuesday, 8th February, 2011
- Fatality is now fully configurable in-game! Type /fatality list for more information. Note that, from now on, you will not need to edit Fatality.lua to set the addon up - it's all done in-game, meaning that settings will be saved between updates and you'll only ever need to set it up once. Please report any bugs you may experience!
- Added an option to set different numbers of reports for 10-man and 25-man raids. By default, 10-man is set to 5 and 25-man is set to 10.
- Added an option to set a minimum threshold for recorded damage. By default, this is set to 0, i.e. all damage will be recorded.

v1.1.8b | moop | Sunday, 26th December, 2010
- Fix reporting players as "Player" instead of "Player-Realm" inside Party instances.

v1.1.8a | moop | Monday, 13th December, 2010
- Added an option for reporting to custom channels inside Party instances.
- While in random dungeons, players from other realms will now be reported as "Player" instead of "Player-Realm" since the realm isn't really relevant information.

v1.1.7a | moop | Sunday, 12th December, 2010
- Make sure to re-check instance type when Fatality has been enabled/disabled while already inside an instance.

v1.1.7 | moop | Sunday, 12th December, 2010
- Added an option for reporting inside Party instances as well as Raid instances. This is enabled by default, set PARTY_REPORTS to false to disable.

v1.1.6 | moop | Monday, 8th November, 2010
- Revert back to using UNIT_HEALTH combined with Overkill to hopefully fix some of the erroneous reports; this technique is only used in instances with other phases, i.e. Sartharion/Halion.

v1.1.5 | moop | Sunday, 16th October, 2010
- Use Blizzard's new and improved Overkill argument to determine deaths.
- Remove old UNIT_HEALTH death-detection code.
- Bump TOC to 40000.

v1.1.4 | moop | Thursday, 2nd September, 2010
- Fix reporting to custom channels sometimes not working.

v1.1.3 | moop | Sunday, 22nd August, 2010
- Refactored a lot of the code to (hopefully) be more efficient.
- Potential fix for reporting deaths as Unknown on "other phase" fights, i.e. Sartharion/Halion. Please report any issues.
- Added an option for short numbers, i.e. 9431 = 9.4k. This is enabled by default, set SHORT_NUMBERS to false to disable.
- Added an option to report to self. Set OUTPUT to "SELF" to enable.
- Added an option to report multiple damaging events. This is set to 1 by default, increase EVENT_HISTORY as you wish. Note: Increasing this number beyond 3 will likely result in messages failing to be sent because they exceed the 255 character limit. If OUTPUT is set to "SELF", there is no limit to the number of characters that can be printed.

v1.1.2 | moop | Thursday, 10th December, 2009
- Added an option to include raid icons. This is enabled by default, set RAID_ICONS to false to disable. This feature is particularly useful for Penetrating Cold deaths in Phase 3 of the Anub'arak encounter.
- Changed the default number of reported players to 10.
- Bump TOC.

v1.1.1 | moop | Tuesday, 6th August, 2009
- Added an option to include Overkill. This is enabled by default, set OVERKILL to false to disable.
- Bump TOC.

v1.1.0 | moop | Saturday, 11th July, 2009
- Increase the time check between the last damage event and the time when UNIT_DIED fires from 0.5 to 2 seconds (before reporting the source of a player's death as Unknown). I've tested this locally over the last few days, and it seems to be working perfectly, please report any issues you may experience.

v1.0.9a | moop | Tuesday, 7th July, 2009
- Attempt to fix reporting Spirit of Redemption deaths twice.
- Switch to using a player's GUID as a table key instead of their name.

v1.0.9 | moop | Monday, 6th July, 2009
- Report the source as "Unknown" when there is no combat log event for a player's death.

v1.0.8 | moop | Wednesday, 24th June, 2009
- Possible fix for erroneous reporting when there is no combat log event for a player's death, for example, falling off the tram on the way to Mimiron.

v1.0.7 | moop | Friday, 19th June, 2009
- Check for ENVIRONMENTAL_DAMAGE, i.e. deaths from Falling, Drowning, Fatigue, etc.

v1.0.6 | moop | Saturday, 13th June, 2009
- Now records every hit players take and outputs the very last one before they died, regardless of whether there was overkill or not. This should eliminate the rare cases where a player dies from exactly as much damage as their remaining hit points.
- Check for SPELL_INSTAKILL. Tank deaths from Meltdown on Iron Council hardmode should now be reported correctly, as well as Paladins who died from Divine Intervention.
- Check if a player is feigning death before reporting them as dead.
- Changed the default number of reported players to 5.

v1.0.5 | moop | Sunday, 7th June, 2009
- Added the option to report to custom channels.
- Reset the counter when we enter an instance, as well as when we enter combat.

v1.0.4a | moop | Monday, 1st June, 2009
- Bump TOC.

v1.0.4 | moop | Monday, 1st June, 2009
- Added a slash command to enable/disable the addon: Type /fatality or /fat in-game. This setting persists between sessions. (default: enabled)
- Not sure why I thought criticals/crushings could be either 0 or 1, updated code to reflect values of nil or 1.

v1.0.3 | moop | Sunday, 31st May, 2009
- Bump TOC.
- Add default values to comments.
- Now only checks if we're inside an instance when required.
- Set default delay between announcements to 0 seconds instead of 1 second.

v1.0.2 | moop | Friday, 29th May, 2009
- Added the ability to toggle/format timestamps. Check lines 4 and 5.

v1.0.1 | moop | Monday, 25th May, 2009
- Initial release.


First Previous Page 3 of 12 Next Last
  • #156

    Is this still an issue?

  • #149

    You can add sound to die?

  • #157

    Sorry, there are currently no plans to implement something like this.

    Last edited by oomp on 2/12/2013 5:40:01 PM
  • #145

    output1 = "INSTANCE_CHAT"
    output2 = "INSTANCE_CHAT"
    elseif ( IsInRaid() ) then
    if output1 == "INSTANCE_CHAT" then output1 = "RAID" end
    if output2 == "INSTANCE_CHAT" then output2 = "RAID" end
    elseif ( IsInGroup() ) then
    if output1 == "INSTANCE_CHAT" then output1 = "PARTY" end
    if output2 == "INSTANCE_CHAT" then output2 = "PARTY" end

  • #146

    I'm not sure this works correctly, e.g. how about if you're in an Instance group but you want to output to whisper or something similar?

  • #158

    If the current implementation isn't working, I'd be grateful for a more complete fix, yes, since I'm unable to test any changes I'm making.

  • #147

    I can do a more complete fix if you want that.  Since I didn't want that feature I didn't try to do it that way.  This is just a fix for those who are trying to output to LFD or LFR and getting the 'not in party' or 'not in raid' errors.  If you're not trying to output to those channels, you don't get the errors, and don't need to tweak the code.

    It should also give you, the author, a starting point for doing a more 'complete' fix yourself, although if you'd rather I do it I can.


  • #141

    Updated and it says You are not in a raid group. But I'm in a LFR instance. Not working. :(

  • #142


    —That depressing moment when you spill your cocaine in the snow.

  • #159

    Is this still an issue?

  • #137

    I made a small addon just to announce inturrupts into the appropriate chats (or to self only when solo) and also play a sound on success.  5.1 broke it, as it broke fatality for LFR/LFD/Scenario groups.  This is what I had to change my code to:

    if (enableChatMsg) then
                            if (GetNumGroupMembers(LE_PARTY_CATEGORY_HOME) == 0 and GetNumGroupMembers(LE_PARTY_CATEGORY_INSTANCE) == 0) then
                                print(format("You just %sed - |cFFFFFF00%s|r in the face while casting %s!", GetSpellLink(spellId), destName, GetSpellLink(interruptedSpellId)))
                            elseif (GetNumGroupMembers(LE_PARTY_CATEGORY_INSTANCE) == 0 and GetNumGroupMembers(LE_PARTY_CATEGORY_HOME) ~= 0) then
                                SendChatMessage(format("I just %sed %s right in the face while casting %s!", GetSpellLink(spellId), destName, GetSpellLink(interruptedSpellId)), "PARTY")
                            elseif (GetNumGroupMembers(LE_PARTY_CATEGORY_HOME) == 0 and GetNumGroupMembers(LE_PARTY_CATEGORY_INSTANCE) ~= 0) then
                                SendChatMessage(format("%s - %s (%s)", GetSpellLink(spellId), GetSpellLink(interruptedSpellId), destName), "INSTANCE_CHAT")

    Basically, things like IsInRaid() returns true if you're in LFR.  Using /raid in LFR automatically changes it to /instance if you type it.  However LUA functions like SendChatMessage() using "RAID" as a chatTypeId will toss you the error about not being in a raid group.

    So to solve this, I used the above code, which tells you what KIND of group you're in.  It differentiates between a 'random' group (BGs, LFR, LFD, or Scenarios are this kind) or 'home' groups (Groups you form yourself are this kind).  The 'random' groups require "INSTANCE_CHAT" be the chatTypeId; while real groups you formed yourself are ok to use "PARTY" and "RAID" as chatTypeIds.

    So you can change some code around in Fatality to use the following conditions:

    If GetNumGroupMembers(LE_PARTY_CATEGORY_HOME) ~= 0  -- then you are in a real group, formed by you manually.

    If GetNumGroupMembers(LE_PARTY_CATEGORY_INSTANCE) ~= 0 -- then you are in a random group created by LFR, LFD, Battlegrounds, or Scenarios.  In this case, you would need to send chat to "INSTANCE_CHAT" with a command like SendChatMessage("Text you want to say", "INSTANCE_CHAT");

    Now you can be ~= 1 on BOTH of the above conditions.  This would happen if you formed a group of pals, and then joined LFR/LFD/BG together.  In that situation, using "PARTY" in a SendChatMessage would only be visible to the players you were grouped with while in the queue.  It will not be visible by the random players you got put together with, except possibly in LFD.  Post 5.1, probably not in LFD, but i've not tested this.

    So obviously, if you have ~0 HOME, and =0 INSTANCE, you're not in LFR/LFD/BG/Scen; so you'd want to send chat to RAID or PARTY.

    If you have ~0 INSTANCE and =0 HOME, you would be in LFR/LFD/BG/Scenario solo, so you would just send to INSTANCE_CHAT

    If you were =0 INSTANCE and =0 HOME, you're not in any group; so you can just use print() to print stuff to yourself.

    If you have ~0 INSTANCE and ~0 HOME, you're in both kinds of groups, and could privately chat to your mates with PARTY, and with the other random players in INSTANCE_CHAT

    Hope some of this helps.  I had a lot of great help on the wow forums to figure out just what they did that broke my simple addon.  Turns out this issue affects a good many others; for example Fatality, BGSpy, LUI (hundreds of errors fast, as it uses RAID and such to check for updates from other players, and if you're in LFD/LFR it doesn't work and creates tons of LUA errors constantly)

    Basically any addon that announces stuff to chat/raid/anywhere could still have this issue, but luckily its rather simple to fix with just minor changes to some conditional statements.


  • #138

    Fantastic, just what I needed! I'll get a fix uploaded soon which should hopefully make the Instance option smarter. So, if you choose Instance from the Output menu for both Party/Raid instances:

    • In LFG, it will announce to /instance.
    • In a Party, it will announce to /party.
    • In LFR, it will announce to /instance.
    • In a Raid, it will announce to /raid.
    Let me know if you have any issues!
  • #143

    Still isn't working.  =(

  • #136

    It doesn't seem to announce for outside raids, for Sha & Galleon...

    Any chance on making this announce for them as well? Or am I missing the option for this?

  • #133

    First: I want to say I've been using Fatality for quite a while now, and it's always made me happy to see all of the fail in instances.

    Since 5.1, there's now Instance chat, can you add support for it, or perhaps just try to autoreplace the user's choice with instance chat if the other isn't available (only for party/raid if they chose that, of course!)

    -- Vandesdelca32
    -- Andaendis @ Wyrmrest Accord

  • To post a comment, please login or register a new account.
Login to Curse

Don't have an account? Create One.

Get an epic experience with Curse Premium
  • Faster addon downloads
  • Premium-Only Beta Giveaways
  • Ad-Free Curse experience
  • Premium Curse Client
  • and many More Features
  • Learn More »

VIP trip to SMITE World Championship