EavesDrop
This is my attempt to keep Grayhoof's addon alive!
The goal is to make this work under latest game version (currently 11.x). Please report any issues or bugs on the project's Github page.

What does it do?
A simple combat log that shows events (such as damage, heal, buff/debuff...), using icons and colors to make it easy to find important information by a quick skim. It separates incoming events (left side) from outgoing events (right side) from misc. events (middle).
What all can it show?
- Your hits, spells, misses, heals, etc...
- Incoming damage, spells, heals, buffs, debuffs, etc...
- Power gain
- Honor, Reputation, Skill, and Experience gain
- Mob/People you have slain
- Combat start/stop
- Timestamps and details in tooltip
- Highest hit stat tracking for both incoming and outgoing skills.
- Combat Summaries
Additionally, it keeps track of each spell's maximum normal and critical hits!
Usage
All events related to player will be shown in 3 columns. After each combat, a summary of incoming and outgoing heals and damage will be displayed.
- Shift+scroll up/down will show the top/bottom of events.
- Ctrl+scroll up/down will take you to the next/previous combat.
- Shift+Click will copy the highlighted event to the chat edit box
- Click the "sun clock" icon, to open history of highest values of all events, divided into healing and damage.
To customize the events (buff, debuffs, colors, values, ...), open the options window by right-click on the EavesDrop tab or entering slash command: /ed.
You can adjust the minimum damage/healing values in the options windows under Misc tab.
You can also completely exclude spells under the same tab. Enter the unwanted spell names or IDs in the Blacklist box, one spell per line. Any of the following lines will exclude Judgment:
Judgment
20271

Installation
Using addon managers
Install wago.iop app or CurseForge and search for EavesDrop in the apps to install the addon.
Manual Installation
Download the EavesDrop.zip file from either wago.io or github.com.
Then follow these instructions:
- Go into your WoW installation folder (e.g.
C:\Program Files (x86)\World of Warcraft\_retail_). - Go into the
Interfacesub-folder. - Go into the
AddOnssub-folder (if you don't have one, create it). - Copy/Extract this addon's folder into the
AddOnsfolder. - Make sure the folder name is
EavesDrop.
Verification
The following folder paths will exist within your WoW Install directory:
Interface\AddOns\EavesDrop\
Interface\AddOns\EavesDrop\libs\
Interface\AddOns\EavesDrop\locals\
Look for the following (wrong) files as evidence of common mistakes:
- If you have
Interface\AddOns\EavesDrop.tocthen you've extracted the zip file's contents without its folder structure, or copied the contents without the parent folder. - If you have
Interface\AddOns\EavesDrop\EavesDrop\EavesDrop.tocthen you've extracted the zip file into a folder an extra level deep. Move the files and any sub-folders up one level and remove the extra folder. - If you have
Interface\AddOns\EavesDrop-2.8\or similar, you need to rename it toEavesDrop.
For more detailed instructions see wowointerfaces's FAQ.
Credits:
Some of the code to update Eavesdrop from 7.x to 8.0 is done by domzae, upon which I added required changes from BFA, SL, DF and TWW. If you feel you have contributed to this code base and you should get credited, please contact me.
-
View User Profile
-
Send Message
Posted Jul 9, 2025I described the fix I made for MoP on the Github issue
-
View User Profile
-
Send Message
Posted Jul 16, 2025In reply to Gymble: Thank you! This one was tough as I didn't any lua errors reported. Your fix works perfectly.
-
View User Profile
-
Send Message
Posted Jul 5, 2025Any chance this could be updated again to work in MoP Classic, please? :)
-
View User Profile
-
Send Message
Posted Feb 10, 2025Please keep this updated! I loved this addon back in 2010 and so happy to have found it again!
-
View User Profile
-
Send Message
Posted Aug 2, 2024Does this work with SoD?
-
View User Profile
-
Send Message
Posted Aug 30, 2023This addon is amazing, the only thing i use to show damage and healing now!
But 1 question/request: would it be possible to have aoe damage/healing shown as an added number?
Just to claritfy: when using Chain Lightning, Thunderstorm or other AoE spells, instad of having it shown like:
1200
1400
1100
Then have it shown like 3700 x 3.
Cheers!
-
View User Profile
-
Send Message
Posted Jan 19, 20233x EavesDrop/EavesDropStats.lua:70: attempt to index upvalue 'db' (a nil value) [string "@EavesDrop/EavesDropStats.lua"]:70: in function `TrackStat' [string "@EavesDrop/EavesDrop.lua"]:773: in function `?' [string "@SharedMedia/libs/CallbackHandler-1.0-8/CallbackHandler-1.0.lua"]:109: in function <...dia/libs/CallbackHandler-1.0/CallbackHandler-1.0.lua:109> [string "=[C]"]: ? [string "@SharedMedia/libs/CallbackHandler-1.0-8/CallbackHandler-1.0.lua"]:19: in function <...dia/libs/CallbackHandler-1.0/CallbackHandler-1.0.lua:15> [string "@SharedMedia/libs/CallbackHandler-1.0-8/CallbackHandler-1.0.lua"]:54: in function `Fire' [string "@ElvUI_Libraries/Core/Ace3/AceEvent-3.0-4/AceEvent-3.0.lua"]:120: in function <...UI_Libraries/Core/Ace3/AceEvent-3.0/AceEvent-3.0.lua:119> Locals: self = <table> { TrackStat = <function> defined @EavesDrop/EavesDropStats.lua:68 SetDefaultModuleLibraries = <function> defined @!KalielsTracker/Libs/AceAddon-3.0/AceAddon-3.0.lua:363 IsRetail = <function> defined @EavesDrop/EavesDrop.lua:206 ScrollUp = <function> defined @EavesDrop/EavesDrop.lua:1320 EnableModule = <function> defined @!KalielsTracker/Libs/AceAddon-3.0/AceAddon-3.0.lua:328 modules = <table> { } CancelTimer = <function> defined @ElvUI_Libraries/Core/Ace3/AceTimer-3.0/AceTimer-3.0.lua:147 IterateEmbeds = <function> defined @!KalielsTracker/Libs/AceAddon-3.0/AceAddon-3.0.lua:438 SetupHistory = <function> defined @EavesDrop/EavesDropStats.lua:161 UpdateRepHonorEvents = <function> defined @EavesDrop/EavesDrop.lua:408 ResetEvents = <function> defined @EavesDrop/EavesDrop.lua:1204 Printf = <function> defined @ElvUI_Libraries/Core/Ace3/AceConsole-3.0/AceConsole-3.0.lua:65 ScrollToBottom = <function> defined @EavesDrop/EavesDrop.lua:1314 SetDefaultModulePrototype = <function> defined @!KalielsTracker/Libs/AceAddon-3.0/AceAddon-3.0.lua:405 defaultModuleState = true IsEnabled = <function> defined @!KalielsTracker/Libs/AceAddon-3.0/AceAddon-3.0.lua:447 ScheduleTimer = <function> defined @ElvUI_Libraries/Core/Ace3/AceTimer-3.0/AceTimer-3.0.lua:94 DisableModule = <function> defined @!KalielsTracker/Libs/AceAddon-3.0/AceAddon-3.0.lua:346 RegisterMessage = <function> defined @SharedMedia/libs/CallbackHandler-1.0/CallbackHandler-1.0.lua:80 GetArgs = <function> defined @ElvUI_Libraries/Core/Ace3/AceConsole-3.0/AceConsole-3.0.lua:140 ShowHistory = <function> defined @EavesDrop/EavesDrop.lua:1431 blacklist = <table> { } SetFonts = <function> defined @EavesDrop/EavesDrop.lua:540 CombatEvent = <function> defined @EavesDrop/EavesDrop.lua:565 ShortenString = <function> defined @EavesDrop/EavesDrop.lua:1402 SetEnabledState = <function> defined @!KalielsTracker/Libs/AceAddon-3.0/AceAddon-3.0.lua:420 ShowFrame = <function> defined @EavesDrop/EavesDrop.lua:559 enabledState = true RegisterEvent = <function> defined @SharedMedia/libs/CallbackHandler-1.0/CallbackHandler-1.0.lua:80 SendToChat = <function> defined @EavesDrop/EavesDrop.lua:1417 IterateModules = <function> defined @!KalielsTracker/Libs/AceAddon-3.0/AceAddon-3.0.lua:433 ScrollDown = <function> defined @EavesDrop/EavesDrop.lua:1327 OnUpdateStarted = <table> { } UpdateExpEvents = <function> defined @EavesDrop/EavesDrop.lua:400 options = <table> { } chardb = <table> { } shortenValue = <function> defined @EavesDrop/EavesDrop.lua:212 SetDisplay = <function> defined @EavesDrop/EavesDropStats.lua:56 showPrints = true db = <table> { } baseName = "EavesDrop" OnInitialize = <function> defined @EavesDrop/EavesDrop.lua:253 NewModule = <function> defined @!KalielsTracker/Libs/AceAddon-3.0/AceAddon-3.0.lua:231 OpenMenu = <function> defined @EavesDrop/options.lua:928 OnUpdate = <function> defined @EavesDrop/EavesDrop.lua:1226 SetupOptions = <function> defined @EavesDrop/options.lua:166 GetModule = <function> defined @!KalielsTracker/Libs/AceAddon-3.0/AceAddon-3.0.lua:206 PLAYER_DEAD = <function> defined @EavesDrop/EavesDrop.lua:1047 IsClassic = <function> defined @EavesDrop/EavesDrop.lua:201 PlaceHistoryFrame = <function> defined @EavesDrop/EavesDropStats.lua:213 UpdateCombatEvents = <function> defined @EavesDrop/EavesDrop.lua:390 TimeLeft = <fun4x [string "*EavesDrop.xml:533_OnEnter"]:3: Usage: GameTooltip:SetText("text" [, color, wrap]) [string "=[C]"]: in function `SetText' [string "*EavesDrop.xml:533_OnEnter"]:3: in function <[string "*EavesDrop.xml:533_OnEnter"]:1> [string "=[C]"]: ? Locals: (*temporary) = GameTooltip { 0 = <userdata> SetQuestLogRewardSpell = <function> defined @Bistooltip/lib/LibExtraTip/LibExtraTip.lua:402 SetVoidWithdrawalItem = <function> defined =[C]:-1 LibExtraTipLeft = <table> { } ZGV_ShowManyLines = <function> defined @ZygorGuidesViewerClassicTBC/Functions.lua:362 layoutType = "TooltipDefaultLayout" LibExtraTipRight = <table> { } GetBackdropColor = <function> defined @SharedXML/SharedTooltipTemplates.lua:191 SetCurrencyToken = <function> defined @Bistooltip/lib/LibExtraTip/LibExtraTip.lua:402 SetGuildBankItem = <function> defined =[C]:-1 SetVoidItem = <function> defined =[C]:-1 SetBackdropBorderColor = <function> defined @SharedXML/SharedTooltipTemplates.lua:195 SetVoidDepositItem = <function> defined =[C]:-1 Hide = <function> defined =[C]:-1 SetExistingSocketGem = <function> defined =[C]:-1 SetHyperlink = <function> defined =[C]:-1 SetQuestRewardSpell = <function> defined @Bistooltip/lib/LibExtraTip/LibExtraTip.lua:402 SetTradeSkillItem = <function> defined @TradeSkillMaster/LibTSM/Service/ItemTooltipClasses/Wrapper.lua:101 hasMoney = 1 comparing = false SetSocketGem = <function> defined =[C]:-1 SetShapeshift = <function> defined @Bistooltip/lib/LibExtraTip/LibExtraTip.lua:402 TopOverlay = Texture { } GetBackdropBorderColor = <function> defined @SharedXML/SharedTooltipTemplates.lua:199 style = Frame { } SetUnitDebuff = <function> defined =[C]:-1 SetItemByID = <function> defined =[C]:-1 SetLootItem = <function> defined =[C]:-1 SetQuestItem = <function> defined =[C]:-1 Show = <function> defined =[C]:-1 SetBorderBlendMode = <function> defined @SharedXML/SharedTooltipTemplates.lua:203 shadow = Frame { } numMoneyFrames = 2 SetPetAction = <function> defined @Bistooltip/lib/LibExtraTip/LibExtraTip.lua:402 SetTrainerService = <function> defined =[C]:-1 SetRecipeReagentItem = <function> defined @TradeSkillMaster/LibTSM/Service/ItemTooltipClasses/Wrapper.lua:101 SetBuybackItem = <function> defined =[C]:-1 shoppingTooltips = <table> { } SetInboxItem = <function> defined =[C]:-1 SetMerchantItem = <function> defined =[C]:-1 SetQuestLogItem = <function> defined =[C]:-1 SetCurrencyTokenByID = <function> defined =[C]:-1 BottomOverlay = Texture { } SetTalent = <function> defined @ZygorGuidesViewerClassicTBC/Code-WOTLK/TalentAdvisor.lua:1969 SetTradePlayerItem = <function> defined =[C]:-1 SetMerchantCostItem = <function> defined @TradeSkillMaster/LibTSM/Service/ItemTooltipClasses/Wrapper.lua:101 StatusBar = GameTooltipStatusBar { } SetUnitBuff = <function> defined =[C]:-1 updateTooltip = 0.097000 SetInventoryItem = <function> defined =[C]:-1 SetTradeTargetItem = <function> defined =[C]:-1 SetSendMailItem = <function> defined =[C]:-1 SetLootRollItem = <function> defined =[C]:-1 SetUnitAura = <function> defined =[C]:-1 NineSlice = Frame { } SetAuctionSellItem = <function> defined =[C]:-1 SetBagItem = <function> defined =[C]:-1 needsReset = true SetRecipeResultItem = <function> defined =[C]:-1 SetBackdropColor = <function> defined @SharedXML/SharedTooltipTemplates.lua:187 TooltipBackdropOnLoad = <function> defined @SharedXML/SharedTooltipTemplates.lua:172 SetAuctionItem = <function> defined =[C]:-1 } (*temporary) = nil (*temporary) = nil (*temporary) = 1-
View User Profile
-
Send Message
Posted Jan 20, 2023In reply to Larsy93:
Should be fixed in latest update.
-
View User Profile
-
Send Message
Posted Jan 18, 2023Hello, love you for keeping this little addon alive.
-
View User Profile
-
Send Message
Posted Jul 31, 2022A new update with color fix and .toc update is now available on https://github.com/spamwax/EavesDrop
Please report all future issues/bug there: https://github.com/spamwax/EavesDrop/issues
-
View User Profile
-
Send Message
Posted Sep 19, 2022In reply to realAhoora:
Hello, I was wondering if it's possible to fix the 3.3.5 version of eavesdrop to make it work on the current 3.4.0 WOTLK Classic. I have used this addon for 15 years and I miss it sorely, there seems to be no reason why the 3.3.5 version shouldn't work on 3.4.0, but it doesn't.
-
View User Profile
-
Send Message
Posted Nov 29, 2022In reply to realAhoora:
The new version of eavesdrop isn't working. I checked the error, you commented wrong code around line 319. Some code that is not for debugging gets commented.
-
View User Profile
-
Send Message
Posted Nov 29, 2022In reply to xiaosteven:
Thanks, should be fix in 3.1
-
View User Profile
-
Send Message
Posted Jan 18, 2023In reply to realAhoora:
Is there an update coming for this after this last patch? Thank you for keeping this updated, we appreciate you.
-
View User Profile
-
Send Message
Posted Jul 2, 2021It looks like realAhoora is once again the hero we all needed, their github link [https://github.com/spamwax/EavesDrop] has an update to the mod.
-
View User Profile
-
Send Message
Posted Aug 3, 2021In reply to linken_88:
thx, man
-
View User Profile
-
Send Message
Posted Jul 2, 2021Im hoping some hero can update it to 9.1...
-
View User Profile
-
Send Message
Posted May 20, 2021hello, can you update it for 2.5.1 pls?
-
View User Profile
-
Send Message
Posted Oct 16, 2020Fixed the backdrop issue, frame alpha, sounds: https://github.com/spamwax/EavesDrop
-
View User Profile
-
Send Message
Posted Nov 9, 2020In reply to realAhoora:
thanks!