WIM (WoW Instant Messenger) v3
WIM (WoW Instant Messenger) is a World of Warcraft addon which brings an instant messenger feel to communication in game.
Features
- Whispers in their own windows.
- Chat in their own windows.
- Tabbed windows
- Highly configurable.
- History
- Copy and paste as:
- Raw Text
- BBCode
- Copy and paste as:
- Advanced, intellectual window behaviors & animations.
- Skins
- Emoticons
- Clickable web URLS for easy viewing. No more retyping a long url a friend sends you.
- Customizable sound options.
- Expose - great way to clear your screen of windows when you are in combat.
- Addon Compatibility: (Always make sure you are running the latest versions.
- Prat
- DBM
-
View User Profile
-
Send Message
Posted Mar 30, 2026Can´t answer/whisper in combat
-
View User Profile
-
Send Message
Posted Mar 31, 2026In reply to Anaya: that because Blizzard blocks Chat AddOn's in combat. you have to get out of combat or disable them.
-
View User Profile
-
Send Message
Posted Mar 31, 2026In reply to LilingPanda: unfortunately this is true. In order not to break everything, I had to prevent the default UI from recording who sent last whisper so /r and shortcut r will not work while in chat lockdown. You'll have to click their name in chat to reply unfortunately. I've tried everything I can think of so far. Anything wim touches with a secret breaks. I'll keep brainstorming but so far I'm at an impasse
-
View User Profile
-
Send Message
Posted Mar 29, 2026With the latest Version ui have troubles to Whisper to Battle.net friends when i want to start a chat with them.
-
View User Profile
-
Send Message
Posted Mar 31, 2026In reply to LilingPanda: Newest Version not let me start Chats with Battle.net Friends, even out of Combat.
-
View User Profile
-
Send Message
Posted Mar 29, 2026I did get this error message: 420x WIM/Sources/WindowHandler.lua:692: attempt to perform arithmetic on a nil value
[WIM/Sources/WindowHandler.lua]:692: in function <WIM/Sources/WindowHandler.lua:671>
Locals:
self = WIM3_msgFrame2 {
class = "Jäger"
isNew = false
delayFade = false
delayFadeElapsed = 0
offScreen = 0
classColor = "abd473"
msgSent = false
level = 90
unreadCount = 0
msgWaiting = false
animators = <table> {
}
animation = <table> {
}
isWimWindow = true
age = 6814.937000
lastDate = "29/03/2026"
bn = <table> {
}
helperFrame = WIM_WindowHelperFrame {
}
hasMoved = false
isHistory = true
customSize = false
guild = ""
race = "Nachtelf"
lastActivity = 6814.937000
fadeElapsed = 0.061000
isBN = true
initialized = true
type = "whisper"
isParent = true
widgets = <table> {
}
online = true
theUser = "|Kj19|k"
location = "Silbermond"
fadedIn = true
}
elapsed = 0.010000
animate = <table> {
initTop = 1037.500000
initLeft = 339.062469
time = 0.500000
elapsed = 0.010000
mode = "HIDE"
scaleLimit = 0.001000
to = WIM3MinimapButton {
}
}
prct = 0.020000
scale = 0.980000
to = WIM3MinimapButton {
eqolShowOnMouseover = false
text = FontString {
}
eqolMouseoverHooked = true
backGround = Texture {
}
flash = WIM3MinimapButtonFlash {
}
icon = Texture {
}
}
es = 0.627200
ts = 0.640000
(*temporary) = 212.659983
(*temporary) = 650.720008
(*temporary) = nil
(*temporary) = WIM3MinimapButton {
eqolShowOnMouseover = false
text = FontString {
}
eqolMouseoverHooked = true
backGround = Texture {
}
flash = WIM3MinimapButtonFlash {
}
icon = Texture {
}
}
(*temporary) = WIM3_msgFrame2 {
class = "Jäger"
isNew = false
delayFade = false
delayFadeElapsed = 0
offScreen = 0
classColor = "abd473"
msgSent = false
level = 90
unreadCount = 0
msgWaiting = false
animators = <table> {
}
animation = <table> {
}
isWimWindow = true
age = 6814.937000
lastDate = "29/03/2026"
bn = <table> {
}
helperFrame = WIM_WindowHelperFrame {
}
hasMoved = false
isHistory = true
customSize = false
guild = ""
race = "Nachtelf"
lastActivity = 6814.937000
fadeElapsed = 0.061000
isBN = true
initialized = true
type = "whisper"
isParent = true
widgets = <table> {
}
online = true
theUser = "|Kj19|k"
location = "Silbermond"
fadedIn = true
}
(*temporary) = "TOPLEFT"
(*temporary) = WIM_UIParent {
}
(*temporary) = "BOTTOMLEFT"
(*temporary) = 345.982100
(*temporary) = 1058.673433
(*temporary) = nil
(*temporary) = "attempt to perform arithmetic on a nil value"
helperFrame = WIM_WindowHelperFrame {
isAttached = false
flash = WIM_WindowHelperFrameFlash {
}
}
FadeProps = <table> {
min = 0.500000
interval = 0.250000
delay = 2
max = 1
}
-
View User Profile
-
Send Message
Posted Mar 28, 2026If you recieve /w during m+ key you cant open window to reply to them (you hear sound and see in default chat whisper) when key ends , whisper window pops up and you can reply....really annoying hope for fix soon
-
View User Profile
-
Send Message
Posted Mar 29, 2026In reply to PedjaSenpai: tell blizzard you don't like it.
Chat events can not be handled while chat is locked down in m+. WIM recovers once the lockdown has been lifted.
I'm working on a way for the reply command to work again. I had to override it, otherwise you'd have to reload your UI between lockdowns
-
View User Profile
-
Send Message
Posted Mar 29, 2026In reply to RealPazza: makes sense, hope you find elegant solution since default blizzard chat is working while in instanced combat
-
View User Profile
-
Send Message
Posted Mar 23, 20269x bad argument #1 to '?' (outside of expected range -2147483648 to 2147483647 - Usage: local accountInfo = C_BattleNet.GetAccountInfoByID(id [, wowAccountGUID]))
[WIM/WIM.lua]:151: in function 'GetBNGetFriendInfoByID'
[WIM/Modules/WhisperEngine.lua]:242: in function <WIM/Modules/WhisperEngine.lua:236>
[WIM/Modules/WhisperEngine.lua]:709: in function 'handler'
[WIM/WIM.lua]:321: in function <WIM/WIM.lua:293>
[WIM/WIM.lua]:334: in function <WIM/WIM.lua:332>
Locals:
id = <table> {
1 = 31
2 = "|Kj23|k"
3 = "EarlofHuber#1817"
4 = true
5 = "Iamearl"
6 = 81
7 = "WoW"
8 = true
9 = 1774301829
10 = false
11 = false
12 = ""
13 = ""
14 = true
15 = 0
16 = 1
17 = false
18 = false
19 = false
}
_G = <table> {
ERR_OUT_OF_CHI = "Not enough chi"
DH_HAVOC_CORE_ABILITY_2 = "Strong melee attack that consumes Fury. If it critical strikes, some Fury is refunded."
MultiCastActionButton6Cooldown = MultiCastActionButton6Cooldown {
}
SettingsSliderOptionsMixin = <table> {
}
UNIT_NAMES_COMBATLOG_TOOLTIP = "Color unit names."
AchievementFrameStatsBG = AchievementFrameStatsBG {
}
HUD_EDIT_MODE_SETTING_ACTION_BAR_HIDE_BAR_ART = "Hide Bar Art"
LE_GAME_ERR_CHAT_RAID_RESTRICTED_TRIAL = 799
SPELL_FAILED_CUSTOM_ERROR_71 = "This partygoer wants to dance with you."
LE_GAME_ERR_PET_SPELL_TARGETS_DEAD = 435
ERROR_CLUB_TICKET_COUNT_AT_MAX_COMMUNITY = "Can't create any more invite links for this community."
RecruitAFriendFrame = RecruitAFriendFrame {
}
TutorialFrameLeft19 = TutorialFrameLeft19 {
}
MultiCastActionButton2Cooldown = MultiCastActionButton2Cooldown {
}
ERR_TRADE_EQUIPPED_BAG = "You can't trade equipped bags."
PVP_RANK_6_1 = "Corporal"
MultiBarLeftButton7 = MultiBarLeftButton7 {
}
OPTION_TOOLTIP_SHOW_MULTIBAR4 = "Attached to the left side of Right Action Bar 1 by default"
LE_GAME_ERR_INVALID_FOLLOW_PVP_COMBAT = 389
MerchantItem1AltCurrencyFrameItem1Text = MerchantItem1AltCurrencyFrameItem1Text {
}
PROFESSIONS_COLUMN_REAGENTS_NONE = "None"
OPTION_TOOLTIP_ACTION_BUTTON_USE_KEY_DOWN = "Action button keybinds will respond on key down, rather than on key up."
BINDING_NAME_NAMEPLATES = "Show Enemy Nameplates"
CHAT_HEADER_SUFFIX = ": "
COVENANT_MISSIONS_HEALTH = "Health"
MAIL_LETTER_TOOLTIP = "Click to make a permanent
copy of this letter."
PVPReadyDialogBottomArt = PVPReadyDialogBottomArt {
}
MultiBar6Button4Flash = MultiBar6Button4Flash {
}
MANA = "Mana"
CHAT_CONFIG_OTHER_COMBAT = <table> {
}
ClassNameplateBarPaladinFrameRune5 = ClassNameplateBarPaladinFrameRune5 {
}
TutorialFrameRight19 = TutorialFrameRight19 {
}
BN_UNABLE_TO_RESOLVE_NAME = "Unable to whisper '%s'. Blizzard services may be unavailable."
AddonListClearButton = AddonListClearButton {
}
LE_GAME_ERR_ONLY_ONE_QUIVER = 36
INT_SPELL_DURATION_HOURS = "%d |4hour:hrs;"
SLASH_LibQTip1 = "/qtip"
LOSS_OF_CONTROL_DISPLAY_FEAR = "Feared"
POWERBAR_PREDICTION_COLOR_MAELSTROM_CODE = "|cff003366"
AUCTIONATOR_L_CONFIG_ALTERNATE_SCAN = "Use alternate slower scan mode by default"
AUCTIONATOR_L_DEFAULT_LIST_HEADER = "Default Shopping List"
DMG_LCD = "DMG"
ACTION_SPELL_MISSED_POSSESSIVE = "1"
SLASH_STOPATTACK1 = "/stopattack"
MAP_LEGEND_RARE_TOOLTIP = "A special creature that provides various rewards"
MultiCastActionButton4HotKey = MultiCastActionButton4HotKey {
}
MINIMAP_TRACKING_TRAINER_CLASS = "Class Trainer"
SLASH_DISMOUNT2 = "/dismount"
DUNGEON_FLOOR_DRAGONBLIGHTCHROMIESCENARIO2 = "Andorhal"
NarciSoulbindsActivateButtonMixin = <table> {
}
EMOTE69_CMD1 = "/nosepick"
WowTokenRedemptionFrameBg = WowTokenRedemptionFrameBg {
}
ITEM_REQ_PURCHASE_GUILD_LEVEL = "Requires guild level %d"
AutoFollowStatus = AutoFollowStatus {
}
RCLootCouncil_Tooltip_ParseTextLeft1 = RCLootCouncil_Tooltip_ParseTextLeft1 {
}
ARENA_CASUAL = "Skirmish"
STABLE_PET_ABILITIES_LIST_HEADER = "Special Abilities"
SendStationeryBackgroundRight = SendStationeryBackgroundRight {
}
MultiBarLeftButton11Name = MultiBarLeftButton11Name {
}
KEY_ABBR_PADLSTICK = "|A:Gamepad_Gen_LStickIn_32:14:14|a"
CONQUEST_BAR = "Conquest %d / %d"
MultiBarLeftButton9Border = MultiBarLeftButton9Border {
}
POSTMASTER_PIPE_KALIMDOR = "Kalimdor"
CooldownViewerSettingsEditAlert = CooldownViewerSettingsEditAlert {
}
DetailsBreakdownWindowTabFrameSummary1609SpellScrollContainerSpellScrollSpellBarButton14ExpandButton = DetailsBreakdownWindowTabFrameSummary1609SpellScrollContainerSpellScrollSpellBarButton14ExpandButton {
}
TopIconTexture = TopIconTexture {
}
OPTION_TOOLTIP_SHOW_ACCOUNT_ACHIEVEMENTS = "Turning this option on wil
-
View User Profile
-
Send Message
Posted Mar 23, 202611x WIM/Modules/MinimapIcon.lua:342: attempt to perform arithmetic on a nil value
[WIM/Modules/MinimapIcon.lua]:342: in function 'UpdatePosition'
[WIM/Modules/MinimapIcon.lua]:417: in function 'fun'
[WIM/WIM.lua]:458: in function 'CoreEventHandler'
[WIM/WIM.lua]:55: in function <WIM/WIM.lua:55>
Locals:
self = WIM3MinimapButton {
PixelSnapDisabled = true
original = <table> {
}
isSkinned = true
flash = WIM3MinimapButtonFlash {
}
text = FontString {
}
backdrop = Frame {
}
backGround = Texture {
}
icon = Texture {
}
}
angle = 3.635111
x = -142.999969
y = -91.065744
q = 2
minimapShape = "SQUARE"
quadTable = <table> {
1 = false
2 = false
3 = false
4 = false
}
w = 142.999969
h = 143.000015
free = <table> {
y = -234.065771
x = -250.500221
point = "TOPRIGHT"
}
scale = 0.533333
(*temporary) = nil
(*temporary) = 15
(*temporary) = WIM3MinimapButton {
PixelSnapDisabled = true
original = <table> {
}
isSkinned = true
flash = WIM3MinimapButtonFlash {
}
text = FontString {
}
backdrop = Frame {
}
backGround = Texture {
}
icon = Texture {
}
}
(*temporary) = 30
(*temporary) = "attempt to perform arithmetic on a nil value"
_G = <table> {
ERR_OUT_OF_CHI = "Nicht genügend Chi"
DH_HAVOC_CORE_ABILITY_2 = "Starker Nahkampfangriff. Verbraucht Jähzorn. Kritische Treffer erstatten einen Teil des Jähzorns zurück."
MultiCastActionButton6Cooldown = MultiCastActionButton6Cooldown {
}
SettingsSliderOptionsMixin = <table> {
}
UNIT_NAMES_COMBATLOG_TOOLTIP = "Namen von Einheiten einfärben."
HUD_EDIT_MODE_SETTING_ACTION_BAR_HIDE_BAR_ART = "Leistenverzierung verbergen"
LE_GAME_ERR_CHAT_RAID_RESTRICTED_TRIAL = 799
SPELL_FAILED_CUSTOM_ERROR_71 = "Dieser Partygast möchte mit Euch tanzen."
LE_GAME_ERR_PET_SPELL_TARGETS_DEAD = 435
ERROR_CLUB_TICKET_COUNT_AT_MAX_COMMUNITY = "Für diese Community können keine weiteren Einladungslinks generiert werden."
RecruitAFriendFrame = RecruitAFriendFrame {
}
TutorialFrameLeft19 = TutorialFrameLeft19 {
}
MultiCastActionButton2Cooldown = MultiCastActionButton2Cooldown {
}
ERR_TRADE_EQUIPPED_BAG = "Mit von Euch angelegten Taschen könnt Ihr nicht handeln."
PVP_RANK_6_1 = "Fußknecht"
MultiBarLeftButton7 = MultiBarLeftButton7 {
}
OPTION_TOOLTIP_SHOW_MULTIBAR4 = "Standardmäßig links von der rechten Aktionsleiste 1 platziert"
EQOLMailboxFrameScrollFrameButton1 = EQOLMailboxFrameScrollFrameButton1 {
}
LE_GAME_ERR_INVALID_FOLLOW_PVP_COMBAT = 389
MerchantItem1AltCurrencyFrameItem1Text = MerchantItem1AltCurrencyFrameItem1Text {
}
PROFESSIONS_COLUMN_REAGENTS_NONE = "Keine"
OPTION_TOOLTIP_ACTION_BUTTON_USE_KEY_DOWN = "Vordefinierte Tastaturbelegungen für Aktionen reagieren bei gedrückter statt bei losgelassener Taste."
BINDING_NAME_NAMEPLATES = "Namensplaketten von gegnerischen Einheiten anzeigen"
CHAT_HEADER_SUFFIX = ": "
COVENANT_MISSIONS_HEALTH = "Gesundheit"
MAIL_LETTER_TOOLTIP = "Klicken, um eine dauerhafte
Kopie dieses Briefs anzufertigen."
PVPReadyDialogBottomArt = PVPReadyDialogBottomArt {
}
MultiBar6Button4Flash = MultiBar6Button4Flash {
}
MANA = "Mana"
CHAT_CONFIG_OTHER_COMBAT = <table> {
}
ClassNameplateBarPaladinFrameRune5 = ClassNameplateBarPaladinFrameRune5 {
}
TutorialFrameRight19 = TutorialFrameRight19 {
}
BOOST2_WARRIOR_COLOSSUSSMASH = "Setzt |cFFFFFFFFKolossales Schmettern|r ein.
|cFFFFFFFFKolossales Schmettern|r erhöht den Schaden."
BN_UNABLE_TO_RESOLVE_NAME = "'%s' kann nicht angeflüstert werden. Möglicherweise sind die Blizzard-Dienste nicht verfügbar."
AddonListClearButton = AddonListClearButton {
}
LE_GAME_ERR_ONLY_ONE_QUIVER = 36
INT_SPELL_DURATION_HOURS = "%d |4Stunde:Stunden;"
LOSS_OF_CONTROL_DISPLAY_FEAR = "Verängstigt"
POWERBAR_PREDICTION_COLOR_MAELSTROM_CODE = "|cff003366"
AUCTIONATOR_L_CONFIG_ALTERNATE_SCAN = "Standardmäßig den alternativen langsameren Scanmodus verwenden"
AUCTIONATOR_L_DEFAULT_LIST_HEADER = "Standard Einkaufsliste"
DMG_LCD = "SCHA"
ACTION_SPELL_MISSED_POSSESSIVE = "1"
RaidUtility_CloseButton = RaidUtility_CloseButton {
}
SLASH_STOPATTACK1 = "/angriffstop"
MAP_LEGEND_RARE_TOOLTIP = "Eine besondere Kreatur, die verschiedene Belohnungen bietet"
MultiCastActionButton4HotKey = MultiCastActionButton4HotKey {
}
MINIMAP_TRACKING_TRAINER_CLASS = "Lehrer für eine Klasse"
SLASH_DISMOUNT2 = "/dismount"
DUNGEON_FLOOR_DRAGONBLIGHTCHROMIESCENARIO2 = "Andorhal"
ElvUF_Raid1Group1UnitBu
-
View User Profile
-
Send Message
Posted Mar 21, 2026I get a whisper and when I try to reply nothing happens? I have to right click their name to be able to type in the window.
-
View User Profile
-
Send Message
Posted Mar 22, 2026In reply to wellhyper:
Should be fixed in next version. Tomorrow or Tuesday.
-
View User Profile
-
Send Message
Posted Mar 22, 2026In reply to RealPazza:
Hi, Love this addon and am so glad you contine to maintain it! Will this also fix the issue where when I whisper someone, i get two tabs, one thats just their name, and one that is name-sever, even if same server.
-
View User Profile
-
Send Message
Posted Mar 17, 2026Hi, quick quastion i looked for hours now, ever since Midnight launch u am unabel to click the (Show Message) button if Wim decides that the Messege in potentially Inappropiate. How do i fix that ? ( and yes the mature langue filter in the WoW settigs is turned off ^^ )
-
View User Profile
-
Send Message
Posted Mar 17, 2026In reply to user_jjt7cvkq9ywpouea:
You're correct, I didndisabke it. It has to be revisited because of another wall in it with this expansion. It isn't WIM that's blocking those messages. It is blizzard. I think there is another setting that does it. I'll revisit it once other issues are resolved.
-
View User Profile
-
Send Message
Posted Mar 18, 2026In reply to RealPazza: ok thanks :D
-
View User Profile
-
Send Message
Posted Mar 25, 2026In reply to user_jjt7cvkq9ywpouea: this should be fixed
-
View User Profile
-
Send Message
Posted Mar 15, 2026Hello, appologies if this has been discussed already! Just so you guys know, I get a double wisper window of already existing chat! Like it opens the actual window but my replies are typed in a new window and they are show then in the actual window of the chat! It is a bit anoying if you can guys see to fix this! Thank you
-
View User Profile
-
Send Message
Posted Mar 16, 2026In reply to mr_dishonored:
Thankfully, it looks like RealPazza is testing updates. New alpha builds are coming out fairly quick. I have no idea if those updates are for this, or other things, but! There's at least that.
Just in case mine weren't enough (since I did mention this a weekish, maybe less, ago), might help us if you also grabbed bug throws from something like bugsack, and throw 'em down in a comment somewhere.
Glad to know I'm not the only one seeing this still!