Prat 3.0
In loving memory of Jon Akthar (Sylvanaar)
Hello WoW community, I'm LuciferCatnip, Sylvanaar was my coworker and my mentor. It goes without saying that Jon was an amazingly talented individual. He always seemed to know everything... but he once said to me "It's not about knowing the answers, it's about asking the right questions", he always challenged me to ask me the right questions until I would arrive at the answer on my own terms. Jon was also a champion of the open source movement, and so with special thanks to Gil from Curseforge as well as Sylvanaar's family, there's no better way to honor Sylvanaar's legacy than to keep his project going strong in the community.
If you'd like to help maintain Prat, please reach out to MysticalOS or LuciferCatnip directly. Thank you so much.
About
Prat-3.0 is a chat enhancement addon for World of Warcraft.
It is made up of 30+ smaller "modules" which each provide additional functionality, and can be enabled or disabled individually.
In game, type /prat for a menu. Or use the icon on one of the many data broker hosts.
Prat has just about every feature you can think of, and then some. Really. When I get some more time, I'll try and put together a full list (Even I have lost count)
(Thanks to Dreamsight for this partial list)
- Sync your chat settings across your account (Beta)
- AI powered spam filter (Beta)
- Change arrows, buttons, mouse scroll for chat scroll, scroll speed
- you can add player color per channel, color per level, color per class
- timestamps (styled)
- whether to show timestamp (what format the timestamp should be in)
- whether to show players level
- you can select the option for channel "stickys" (last channel you used you auto use when hitting enter, that sort of thing – or last thing someone said)
- change the looks of the chat's editbox - as well as where it appears (you can even undock it and move it to where you'd like it to be)
- chat fading, fading delay
- You can change the font to a list of fonts, add an outline to it, monochrome it (if you don’t mind messing with files a bit you could probably even add other fonts to that list)
- change the chat frame/chat box appearance
- Keep chat history between game sessions
- Set channel abbreviations
- set brackets and color(or something instead of brackets)round player/lvl
- alt invite option (press keyboard “alt” button and click on the player’s name to auto inv them)
- raid icon
- invite links - click them to invite the person
- URL copying
- Full chat copying + copy button
- Click timestamp to copy line
- Configurable alerts when your name or other word is mentioned
- enables tell target /tt which whispers your target
- Alias options - make macros into short commands
- See names of players Alt characters
- change chat sounds (incoming and outgoing as well as per channel)
- Achievements info and grats
- Full chat search and search box
- Customizable filters for advanced users
- Show item icon next to item links and player class icon next to player names
- Icon-only options for newcomers chat
- Optional flashing or font color change for chat tabs when a new message comes in.
You can enable/disable all Prat modules - don't have to have the ones you don't use running
While trying to reduce resource utilization, it is also important to note that some people prefer the features, and don't care that an addon uses 500k more.
WoW Classic
Getting these errors constantly:
Date: 2020-10-19 14:23:39
ID: 1
Error occured in: Global
Message: ..\AddOns\Prat-3.0\modules\PlayerNames.lua line 1152:
attempt to call field 'GuildRoster' (a nil value)
Debug:
(tail call): ?
Prat-3.0\modules\PlayerNames.lua:1152: OnModuleEnable()
Prat-3.0\addon\modules.lua:189:
Prat-3.0\addon\modules.lua:178
[C]: ?
...\AddOns\BlizzMove\Libs\AceAddon-3.0\AceAddon-3.0.lua:70:
...\AddOns\BlizzMove\Libs\AceAddon-3.0\AceAddon-3.0.lua:65
...\AddOns\BlizzMove\Libs\AceAddon-3.0\AceAddon-3.0.lua:527: EnableAddon()
...\AddOns\BlizzMove\Libs\AceAddon-3.0\AceAddon-3.0.lua:540: EnableAddon()
...\AddOns\BlizzMove\Libs\AceAddon-3.0\AceAddon-3.0.lua:630:
...\AddOns\BlizzMove\Libs\AceAddon-3.0\AceAddon-3.0.lua:615
And
Date: 2020-10-19 14:23:41
ID: 2
Error occured in: Global
Message: ..\AddOns\Prat-3.0\modules\PlayerNames.lua line 1354:
attempt to call field 'GuildRoster' (a nil value)
Debug:
(tail call): ?
Prat-3.0\modules\PlayerNames.lua:1354: updateGuild()
Prat-3.0\modules\PlayerNames.lua:1315: updateAll()
Prat-3.0\modules\PlayerNames.lua:1704: ?()
...ore\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:119:
...ore\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:119
[C]: ?
...ore\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:29:
...ore\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:25
...ore\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:64: Fire()
Prat-3.0\addon\addon.lua:673:
Prat-3.0\addon\addon.lua:613
(tail call): ?
..\FrameXML\ChatFrame.lua:2797: ChatFrame_OnEvent()
[string "*:OnEvent"]:1:
[string "*:OnEvent"]:1
And
Date: 2020-10-19 14:18:13
ID: -3
Error occured in: Global
Count: 9
Message: ..\AddOns\Prat-3.0\modules\PlayerNames.lua line 1354:
attempt to call field 'GuildRoster' (a nil value)
Debug:
(tail call): ?
Prat-3.0\modules\PlayerNames.lua:1354: ?()
...ore\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:119:
...ore\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:119
[C]: ?
...ore\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:29:
...ore\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:25
...ore\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:64: Fire()
...\AddOns\DataStore\libs\AceEvent-3.0\AceEvent-3.0.lua:120:
...\AddOns\DataStore\libs\AceEvent-3.0\AceEvent-3.0.lua:119
Several LUA errors all the time with 3.9.0
1.
31x Prat-3.0-3.9.0\modules\PlayerNames.lua:1354: attempt to call field 'GuildRoster' (a nil value)
Prat-3.0-3.9.0\modules\PlayerNames.lua:1354: in function `?'
...Ons\Ace3\CallbackHandler-1.0\CallbackHandler-1.0-7.lua:119: in function <...Ons\Ace3\CallbackHandler-1.0\CallbackHandler-1.0.lua:119>
[C]: ?
...Ons\Ace3\CallbackHandler-1.0\CallbackHandler-1.0-7.lua:29: in function <...Ons\Ace3\CallbackHandler-1.0\CallbackHandler-1.0.lua:25>
...Ons\Ace3\CallbackHandler-1.0\CallbackHandler-1.0-7.lua:64: in function `Fire'
Ace3\AceEvent-3.0\AceEvent-3.0-4.lua:120: in function <Ace3\AceEvent-3.0\AceEvent-3.0.lua:119>
2.
40x Prat-3.0-3.9.0\modules\PlayerNames.lua:1320: attempt to call field 'GuildRoster' (a nil value)
Prat-3.0-3.9.0\modules\PlayerNames.lua:1320: in function `fx'
Prat-3.0-3.9.0\modules\PlayerNames.lua:1730: in function `?'
3.
1x Prat-3.0-3.9.0\modules\Invites.lua:393: attempt to call field 'CanInvite' (a nil value)
Prat-3.0-3.9.0\modules\Invites.lua:393: in function <Prat-3.0\modules\Invites.lua:386>
(tail call): ?
(tail call): ?
[C]: in function `gsub'
Prat-3.0-3.9.0\services\patterns.lua:197: in function `MatchPatterns'
Prat-3.0-3.9.0\addon\addon.lua:695: in function <Prat-3.0\addon\addon.lua:613>
(tail call): ?
FrameXML\ChatFrame.lua:2797: in function `ChatFrame_OnEvent'
[string "*:OnEvent"]:1: in function <[string "*:OnEvent"]:1>
in the Blizzard interface options check at the social /chat and select both. maybe that will fix your problem. I couldnt recieve whispers at all prior to that change.. hope it help u
Still broken, can't reply to whispers by using 'r.' Also, there's something wrong with Twitch atm showing the wrong update dates, as this addon was updated several times already after the pre-patch. For anyone who wants a somewhat working version, you need version 3.8.25-11-944ac97d. This one lets you atleast reply to people.
when is update coming pls
In reply to rfzm:
There's something wrong with Twitch atm showing the wrong update dates, as this addon was updated several times already after the pre-patch. If you want a somewhat working version, you need version 3.8.25-11-944ac97d. This one lets you atleast reply to people. Anything after this is full of bugs.
In reply to rfzm:
Now :)
I would like the option to separate guild chat from guild achievements for sounds.
Hi.
Does anyone here know how to solve this lua error I get on login? I did turn off wowhead looter to see if anything changed (as it was mentioned in the error), and while it still complain about wowhead looter, nothing changed.
395x Prat-3.0-3.8.26-3-g1f17b47\modules\Timestamps.lua:651: attempt to index local 'entry' (a nil value)
[string "@Prat-3.0-3.8.26-3-g1f17b47\modules\Timestamps.lua"]:651: in function <Prat-3.0\modules\Timestamps.lua:648>
[string "=(tail call)"]: ?
[string "=[C]"]: in function `AddMessage'
[string "@+Wowhead_Looter\Wowhead_Looter.lua"]:4991: in function `wlMessage'
[string "@+Wowhead_Looter\Wowhead_Looter.lua"]:797: in function `?'
[string "@+Wowhead_Looter\Wowhead_Looter.lua"]:4744: in function <+Wowhead_Looter\Wowhead_Looter.lua:4742>
Locals:
self = <table> {
SetDefaultModuleLibraries = <function> defined @Ace3\AceAddon-3.0\AceAddon-3.0.lua:367
Enable = <function> defined @Ace3\AceAddon-3.0\AceAddon-3.0.lua:294
NewModule = <function> defined @Ace3\AceAddon-3.0\AceAddon-3.0.lua:235
EnableModule = <function> defined @Ace3\AceAddon-3.0\AceAddon-3.0.lua:332
modules = <table> {
}
GetModule = <function> defined @Ace3\AceAddon-3.0\AceAddon-3.0.lua:210
IterateEmbeds = <function> defined @Ace3\AceAddon-3.0\AceAddon-3.0.lua:442
SecureHookScript = <function> defined @Ace3\AceHook-3.0\AceHook-3.0.lua:410
defaultModuleLibraries = <table> {
}
GetTime = <function> defined @Ace3\AceHook-3.0\AceHook-3.0.lua:100
pluginopts = <table> {
}
Prat_FramesRemoved = <function> defined @Prat-3.0\modules\Timestamps.lua:639
RawHookScript = <function> defined @Ace3\AceHook-3.0\AceHook-3.0.lua:395
GetName = <function> defined @Ace3\AceAddon-3.0\AceAddon-3.0.lua:279
name = "Prat_Timestamps"
IsEnabled = <function> defined @Ace3\AceAddon-3.0\AceAddon-3.0.lua:451
orderedModules = <table> {
}
AddMessage = <function> defined @Prat-3.0\modules\Timestamps.lua:648
DisableModule = <function> defined @Ace3\AceAddon-3.0\AceAddon-3.0.lua:350
HookScript = <function> defined @Ace3\AceHook-3.0\AceHook-3.0.lua:366
SetDefaultModulePrototype = <function> defined @Ace3\AceAddon-3.0\AceAddon-3.0.lua:409
baseName = "Prat-3.0"
IsHooked = <function> defined @Ace3\AceHook-3.0\AceHook-3.0.lua:493
InsertTimeStamp = <function> defined @Prat-3.0\modules\Timestamps.lua:673
PlainTimestampNotAllowed = <function> defined @Prat-3.0\modules\Timestamps.lua:669
IsModule = <function> defined @Ace3\AceAddon-3.0\AceAddon-3.0.lua:217
db = <table> {
}
SetDefaultModuleState = <function> defined @Ace3\AceAddon-3.0\AceAddon-3.0.lua:387
Prat_FramesUpdated = <function> defined @Prat-3.0\modules\Timestamps.lua:633
GetDescription = <function> defined @Prat-3.0\modules\Timestamps.lua:629
SetEnabledState = <function> defined @Ace3\AceAddon-3.0\AceAddon-3.0.lua:424
Hook = <function> defined @Ace3\AceHook-3.0\AceHook-3.0.lua:274
enabledState = true
OnModuleDisable = <function> defined @Prat-3.0\modules\Timestamps.lua:621
OnModuleEnable = <function> defined @Prat-3.0\modules\Timestamps.lua:611
PL = <table> {
}
hooks = <table> {
}
IsTimestampPlain = <function> defined @Prat-3.0\modules\Timestamps.lua:657
SecureHook = <function> defined @Ace3\AceHook-3.0\AceHook-3.0.lua:336
IterateModules = <function> defined @Ace3\AceAddon-3.0\AceAddon-3.0.lua:437
UnhookAll = <function> defined @Ace3\AceHook-3.0\AceHook-3.0.lua:477
RawHook = <function> defined @Ace3\AceHook-3.0\AceHook-3.0.lua:313
Unhook = <function> defined @Ace3\AceHook-3.0\AceHook-3.0.lua:418
moduleName = "Timestamps"
defaultModuleState = true
Disable = <function> defined @Ace3\AceAddon-3.0\AceAddon-3.0.lua:314
}
frame = ChatFrame1 {
SetJustifyV = <function> defined =[C]:-1
RefreshIfNecessary = <function> defined =[C]:-1
OnPostShow = <function> defined =[C]:-1
CalculateLineAlphaValueFromTimestamp = <function> defined =[C]:-1
isLayoutDirty = true
tellTimer = 47941.203000
isDisplayDirty = false
GetFading = <function> defined =[C]:-1
IsTextCopyable = <function> defined =[C]:-1
shouldFadeAfterInactivity = true
SetIndentedWordWrap = <function> defined =[C]:-1
GetJustifyV = <function> defined =[C]:-1
SetFont = <function> defined =[C]:-1
GetMaxLines = <function> defined =[C]:-1
GetIndentedWordWrap = <function> defined =[C]:-1
buttonSide = "left"
GetFont = <funct
As fireymerlin said you need to change four lines in PlayerNames.lua module. Just open that module with notepad and replace any GuildRoster() with C_GuildInfo.GuildRoster() and save the file
1x Prat-3.0-3.8.26-3-g1f17b47\modules\PlayerNames.lua:1155: attempt to call global 'GuildRoster' (a nil value)
[string "@Prat-3.0-3.8.26-3-g1f17b47\modules\PlayerNames.lua"]:1155: in function `OnModuleEnable'
[string "@Prat-3.0-3.8.26-3-g1f17b47\addon\modules.lua"]:189: in function <Prat-3.0\addon\modules.lua:178>
[string "=[C]"]: ?
[string "@Ace3\AceAddon-3.0\AceAddon-3.0-13.lua"]:70: in function <Ace3\AceAddon-3.0\AceAddon-3.0.lua:65>
[string "@Ace3\AceAddon-3.0\AceAddon-3.0-13.lua"]:527: in function `EnableAddon'
[string "@Ace3\AceAddon-3.0\AceAddon-3.0-13.lua"]:540: in function `EnableAddon'
[string "@Ace3\AceAddon-3.0\AceAddon-3.0-13.lua"]:630: in function <Ace3\AceAddon-3.0\AceAddon-3.0.lua:615>
[string "=[C]"]: in function `LoadAddOn'
[string "@ArkInventory\ArkInventory-30942.lua"]:10232: in function `LoadAddOn'
[string "@ArkInventory\ArkInventory-30942.lua"]:10247: in function `BlizzardAPIHook'
and:
30x Prat-3.0-3.8.26-3-g1f17b47\modules\PlayerNames.lua:1357: attempt to call global 'GuildRoster' (a nil value)
[string "@Prat-3.0-3.8.26-3-g1f17b47\modules\PlayerNames.lua"]:1357: in function `?'
[string "@Ace3\CallbackHandler-1.0\CallbackHandler-1.0-7.lua"]:119: in function <...Ons\Ace3\CallbackHandler-1.0\CallbackHandler-1.0.lua:119>
[string "=[C]"]: ?
[string "@Ace3\CallbackHandler-1.0\CallbackHandler-1.0-7.lua"]:29: in function <...Ons\Ace3\CallbackHandler-1.0\CallbackHandler-1.0.lua:25>
[string "@Ace3\CallbackHandler-1.0\CallbackHandler-1.0-7.lua"]:64: in function `Fire'
[string "@Ace3\AceEvent-3.0\AceEvent-3.0-4.lua"]:120: in function <Ace3\AceEvent-3.0\AceEvent-3.0.lua:119>
(still counting up- so its repeatable)
If you use the Invites modules, and you're getting "attempt to call global 'CanGroupInvite' (a nil value)", here's your fix:
In \modules\Invites.lua:
Line 352:
from:
InviteUnit(name);
to:
C_PartyInfo.InviteUnit(name);
Line 393:
from:
if enabled and CanGroupInvite() then
to:
if enabled and C_PartyInfo.CanInvite() then
Happy inviting!
Message: Interface\AddOns\Prat-3.0\modules\Editbox.lua:825: attempt to call method 'SetBackdrop' (a nil value)
Time: Sat Oct 17 20:39:51 2020
Count: 1
Stack: Interface\AddOns\Prat-3.0\modules\Editbox.lua:825: attempt to call method 'SetBackdrop' (a nil value)
[string "@Interface\AddOns\Prat-3.0\modules\Editbox.lua"]:825: in function `SetBackdrop'
[string "@Interface\AddOns\Prat-3.0\modules\Editbox.lua"]:753: in function `OnModuleEnable'
[string "@Interface\AddOns\Prat-3.0\addon\modules.lua"]:189: in function <Interface\AddOns\Prat-3.0\addon\modules.lua:178>
[string "=[C]"]: ?
[string "@Interface\AddOns\Masque\Libs\AceAddon-3.0\AceAddon-3.0.lua"]:70: in function <...ace\AddOns\Masque\Libs\AceAddon-3.0\AceAddon-3.0.lua:65>
[string "@Interface\AddOns\Masque\Libs\AceAddon-3.0\AceAddon-3.0.lua"]:527: in function `EnableAddon'
[string "@Interface\AddOns\Masque\Libs\AceAddon-3.0\AceAddon-3.0.lua"]:540: in function `EnableAddon'
[string "@Interface\AddOns\Masque\Libs\AceAddon-3.0\AceAddon-3.0.lua"]:630: in function <...ace\AddOns\Masque\Libs\AceAddon-3.0\AceAddon-3.0.lua:615>
Locals: <none>
getting error with with Prat when i have MrRobot enabled. When it comes back up, i'll share that too
PlayerNames.lua:
Need to change GuildRoster() to C_GuildInfo.GuildRoster()
on several lines.
Just do a search. Be sure to include the () at the end since there are other GuildRoster lines that do not need to change.
Addon does not display the Murloc or Flag Icons from the Mentor channel
Completely broken. I cant message in any channel other than /2. I cannot whisper or reply to whisper.
Using the current 3.8.26-3-g1f17b47 these are the lua errors I'm receiving:
69x Prat-3.0-3.8.26-3-g1f17b47\modules\PlayerNames.lua:1357: attempt to call global 'GuildRoster' (a nil value)
[string "@Prat-3.0-3.8.26-3-g1f17b47\modules\PlayerNames.lua"]:1357: in function `?'
[string "@Atlas\Libs\CallbackHandler-1.0\CallbackHandler-1.0-7.lua"]:119: in function <...las\Libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:119>
[string "=[C]"]: ?
[string "@Atlas\Libs\CallbackHandler-1.0\CallbackHandler-1.0-7.lua"]:29: in function <...las\Libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:25>
[string "@Atlas\Libs\CallbackHandler-1.0\CallbackHandler-1.0-7.lua"]:64: in function `Fire'
[string "@AzeriteTooltip\libs\AceEvent-3.0\AceEvent-3.0-4.lua"]:120: in function <...ns\AzeriteTooltip\libs\AceEvent-3.0\AceEvent-3.0.lua:119>
13x Prat-3.0-3.8.26-3-g1f17b47\modules\PlayerNames.lua:1155: attempt to call global 'GuildRoster' (a nil value)
[string "@Prat-3.0-3.8.26-3-g1f17b47\modules\PlayerNames.lua"]:1155: in function `OnModuleEnable'
[string "@Prat-3.0-3.8.26-3-g1f17b47\addon\modules.lua"]:189: in function <Prat-3.0\addon\modules.lua:178>
[string "=[C]"]: ?
[string "@Bartender4\libs\AceAddon-3.0\AceAddon-3.0-13.lua"]:70: in function <Bartender4\libs\AceAddon-3.0\AceAddon-3.0.lua:65>
[string "@Bartender4\libs\AceAddon-3.0\AceAddon-3.0-13.lua"]:527: in function `EnableAddon'
[string "@Bartender4\libs\AceAddon-3.0\AceAddon-3.0-13.lua"]:540: in function `EnableAddon'
[string "@Bartender4\libs\AceAddon-3.0\AceAddon-3.0-13.lua"]:630: in function <Bartender4\libs\AceAddon-3.0\AceAddon-3.0.lua:615>
In reply to KAL2000:
Replace all GuildRoster() with C_GuildInfo.GuildRoster()
In reply to KAL2000:
find modules\PlayerNames.lua:1357
GuildRoster()
replace
C_GuildInfo.GuildRoster()
find modules\PlayerNames.lua:1155
GuildRoster()
replace
C_GuildInfo.GuildRoster()
error 1
1x Prat-3.0-3.8.26\modules\PlayerNames.lua:1155: attempt to call global 'GuildRoster' (a nil value)
[string "@Prat-3.0-3.8.26\modules\PlayerNames.lua"]:1155: in function `OnModuleEnable'
[string "@Prat-3.0-3.8.26\addon\modules.lua"]:189: in function <Prat-3.0\addon\modules.lua:178>
[string "=[C]"]: ?
[string "@Ace3\AceAddon-3.0\AceAddon-3.0-13.lua"]:70: in function <Ace3\AceAddon-3.0\AceAddon-3.0.lua:65>
[string "@Ace3\AceAddon-3.0\AceAddon-3.0-13.lua"]:527: in function `EnableAddon'
[string "@Ace3\AceAddon-3.0\AceAddon-3.0-13.lua"]:540: in function `EnableAddon'
[string "@Ace3\AceAddon-3.0\AceAddon-3.0-13.lua"]:630: in function <Ace3\AceAddon-3.0\AceAddon-3.0.lua:615>
error 2
2x Prat-3.0-3.8.26\modules\PlayerNames.lua:1323: attempt to call global 'GuildRoster' (a nil value)
[string "@Prat-3.0-3.8.26\modules\PlayerNames.lua"]:1323: in function `fx'
[string "@Prat-3.0-3.8.26\modules\PlayerNames.lua"]:1733: in function `?'
[string "@Ace3\CallbackHandler-1.0\CallbackHandler-1.0-7.lua"]:119: in function <...Ons\Ace3\CallbackHandler-1.0\CallbackHandler-1.0.lua:119>
[string "=[C]"]: ?
[string "@Ace3\CallbackHandler-1.0\CallbackHandler-1.0-7.lua"]:29: in function <...Ons\Ace3\CallbackHandler-1.0\CallbackHandler-1.0.lua:25>
[string "@Ace3\CallbackHandler-1.0\CallbackHandler-1.0-7.lua"]:64: in function `Fire'
[string "@Prat-3.0-3.8.26\addon\addon.lua"]:673: in function <Prat-3.0\addon\addon.lua:613>
[string "=(tail call)"]: ?
[string "@FrameXML\ChatFrame.lua"]:3031: in function `ChatFrame_OnEvent'
[string "*:OnEvent"]:1: in function <[string "*:OnEvent"]:1>
error 3
4x Prat-3.0-3.8.26\modules\PlayerNames.lua:1323: attempt to call global 'GuildRoster' (a nil value)
[string "@Prat-3.0-3.8.26\modules\PlayerNames.lua"]:1323: in function `fx'
[string "@Prat-3.0-3.8.26\modules\PlayerNames.lua"]:1733: in function `?'
[string "@Ace3\CallbackHandler-1.0\CallbackHandler-1.0-7.lua"]:119: in function <...Ons\Ace3\CallbackHandler-1.0\CallbackHandler-1.0.lua:119>
[string "=[C]"]: ?
[string "@Ace3\CallbackHandler-1.0\CallbackHandler-1.0-7.lua"]:29: in function <...Ons\Ace3\CallbackHandler-1.0\CallbackHandler-1.0.lua:25>
[string "@Ace3\CallbackHandler-1.0\CallbackHandler-1.0-7.lua"]:64: in function `Fire'
[string "@Prat-3.0-3.8.26\addon\addon.lua"]:673: in function <Prat-3.0\addon\addon.lua:613>
[string "=(tail call)"]: ?
[string "@FrameXML\ChatFrame.lua"]:3031: in function `ChatFrame_OnEvent'
[string "*:OnEvent"]:1: in function <[string "*:OnEvent"]:1>