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)
- Machine learning 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.
In reply to sylvanaar:
Main reason I used Prat was for clickable URLs.
But this doesn't work with Communities chat. Are you looking at fixing this?
In reply to Forge_User_92777426:
In reply to Forge_User_92777426:
In reply to Forge_User_92777426:
In reply to sylvanaar:
Hi,
I have an issue of which i'm not sure it's caused by Prat because it's not generating any errors.
I have split the blizzard chat windows in 2, 1 for the rubbish on the left side, 1 for guildchat, whispers etc, the important stuff on the right side.
I wanted to unlock the window on the right side so that i can resize it but it didn't unlock, instead the one on the left side unlocked. I didn't touch the one on the left side but that one was unlocked and not the one on the right side. I had to lock the left side window by right clicking on the left tab.
In reply to Forge_User_17970088:
Getting this error when ever I click on a persons name in my chat box to whisper back etc.
Message: Interface\SharedXML\SecureUIPanelTemplates.lua:38: Attempt to access forbidden object from code tainted by an AddOn
Time: Fri Jul 27 23:30:49 2018
Count: 2
Stack: Interface\SharedXML\SecureUIPanelTemplates.lua:38: Attempt to access forbidden object from code tainted by an AddOn
[C]: in function `HighlightText'
Interface\SharedXML\SecureUIPanelTemplates.lua:38: in function <Interface\SharedXML\SecureUIPanelTemplates.lua:37>
[C]: in function `SetFocus'
Interface\FrameXML\ChatFrame.lua:4024: in function <Interface\FrameXML\ChatFrame.lua:4011>
[C]: in function `ChatEdit_ActivateChat'
Interface\FrameXML\ChatFrame.lua:3654: in function `ChatFrame_OpenChat'
Interface\FrameXML\ChatFrame.lua:3728: in function `ChatFrame_SendTell'
Interface\FrameXML\ItemRef.lua:62: in function <Interface\FrameXML\ItemRef.lua:1>
...ace\AddOns\Blizzard_CombatLog\Blizzard_CombatLog.lua:3510: in function <...ace\AddOns\Blizzard_CombatLog\Blizzard_CombatLog.lua:3452>
[C]: in function `SetItemRef'
Interface\FrameXML\ChatFrame.lua:3620: in function `ChatFrame_OnHyperlinkShow'
[string "*:OnHyperlinkClick"]:1: in function <[string "*:OnHyperlinkClick"]:1>
Locals: (*temporary) = <unnamed> {
0 = <userdata>
Instructions = <unnamed> {
}
Right = <unnamed> {
}
Middle = <unnamed> {
}
Left = <unnamed> {
}
}
(*temporary) = 0
(*temporary) = 0
In reply to jpsgaming:
Message: Interface\AddOns\Prat-3.0\addon\modules.lua:262: Usage: NewModule(name, [prototype, [lib, lib, lib, ...]): 'name' - string expected got 'nil'.
Time: Fri Jul 27 14:38:36 2018
Count: 1
Stack: Interface\AddOns\Prat-3.0\addon\modules.lua:262: Usage: NewModule(name, [prototype, [lib, lib, lib, ...]): 'name' - string expected got 'nil'.
Interface\AddOns\Prat-3.0\addon\modules.lua:336: in function `AddModuleToLoad'
Interface\AddOns\totalRP3\modules\chatframe\prat.lua:31: in function <Interface\AddOns\totalRP3\modules\chatframe\prat.lua:25>
[C]: ?
...erface\AddOns\totalRP3\modules\module_management.lua:118: in function `startModules'
Interface\AddOns\totalRP3\totalRP3.lua:90: in function <Interface\AddOns\totalRP3\totalRP3.lua:46>
[C]: in function `pcall'
Interface\AddOns\totalRP3\totalRP3.lua:114: in function <Interface\AddOns\totalRP3\totalRP3.lua:111>
(tail call): ?
[C]: ?
[string "safecall Dispatcher[1]"]:9: in function <[string "safecall Dispatcher[1]"]:5>
(tail call): ?
...AddOns\AskMrRobot\Libs\AceAddon-3.0\AceAddon-3.0.lua:558: in function `EnableAddon'
...AddOns\AskMrRobot\Libs\AceAddon-3.0\AceAddon-3.0.lua:651: in function <...AddOns\AskMrRobot\Libs\AceAddon-3.0\AceAddon-3.0.lua:636>
[C]: in function `LoadAddOn'
Interface\FrameXML\UIParent.lua:445: in function `UIParentLoadAddOn'
Interface\FrameXML\UIParent.lua:488: in function `CombatLog_LoadUI'
Interface\FrameXML\UIParent.lua:1193: in function <Interface\FrameXML\UIParent.lua:1089>
Locals: <none>
Message: Interface\AddOns\Prat-3.0\modules\Editbox.lua:822: attempt to concatenate local 'chan' (a nil value)
Time: Fri Jul 27 18:11:23 2018
Count: 1
Stack: Interface\AddOns\Prat-3.0\modules\Editbox.lua:822: attempt to concatenate local 'chan' (a nil value)
[C]: ?
Interface\AddOns\Prat-3.0\modules\Editbox.lua:822: in function <Interface\AddOns\Prat-3.0\modules\Editbox.lua:811>
(tail call): ?
Interface\FrameXML\ChatFrame.lua:3984: in function `ChatEdit_ResetChatType'
Interface\FrameXML\ChatFrame.lua:3965: in function `ChatEdit_OnShow'
[string "*:OnShow"]:1: in function <[string "*:OnShow"]:1>
[C]: in function `Show'
Interface\FrameXML\ChatFrame.lua:4023: in function `ChatEdit_ActivateChat'
Interface\FrameXML\ChatFrame.lua:3654: in function `ChatFrame_OpenChat'
[string "OPENCHAT"]:1: in function <[string "OPENCHAT"]:1>
Locals:
In reply to speedit:
In reply to speedit:
In reply to sylvanaar:
This happens when I try to PM someone in game (non real ID) & when I try to PM Real ID friends as well. I've tried reinstalling Prat with no luck in fixing it.
Interface\AddOns\Prat-3.0-r1157 \modules\Editbox.lua:822: in function <Interface\AddOns\Prat-3.0\modules\Editbox.lua:811>
(tail call): ?
Interface\FrameXML\ChatFrame.lua:3984: in function `ChatEdit_ResetChatType'
Interface\FrameXML\ChatFrame.lua:3965: in function `ChatEdit_OnShow'
[string "*:OnShow"]:1: in function <[string "*:OnShow"]:1>
[C]: in function `Show'
Interface\FrameXML\ChatFrame.lua:4023: in function `ChatEdit_ActivateChat'
Interface\FrameXML\ChatFrame.lua:3654: in function `ChatFrame_OpenChat'
[string "OPENCHAT"]:1: in function <[string "OPENCHAT"]:1>
In reply to sylvanaar:
In reply to sylvanaar:
(please disregard, I got it straightened away!)
Lua error at prat 3.0/modules/ChannelNames.lua at line 967
desc = function(info) return (PL["%s settings."]):format(_G[revLookup(info[#info])]) end,
Since Prepatch, Prat 3.0 is interfering with Pet Battles. When I begin a Pet Battle, I get the following error and my Pet Battle frame is devoid of command buttons. When I log out and turn off Prat 3.0, I can log back in and compete in Pet Battles normally.
Date: 2018-07-26 00:49:15
ID: 28
Error occured in: Global
Count: 1
Message: ..\FrameXML\ChatConfigFrame.lua line 1461:
attempt to index local 'info' (a nil value)
Debug:
..\FrameXML\ChatConfigFrame.lua:1461: GetMessageTypeColor()
Prat-3.0\modules\Editbox.lua:822:
Prat-3.0\modules\Editbox.lua:811
(tail call): ?
..\FrameXML\ChatFrame.lua:3984: ChatEdit_ResetChatType()
..\FrameXML\ChatFrame.lua:3965: ChatEdit_OnShow()
[string "*:OnShow"]:1:
[string "*:OnShow"]:1
[C]: Show()
Prat-3.0\modules\Editbox.lua:686: ?()
...ing\Libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:119:
...ing\Libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:119
[C]: ?
...ing\Libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:29:
...ing\Libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:25
...ing\Libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:64: Fire()
Prat-3.0\addon\addon.lua:411:
Prat-3.0\addon\addon.lua:401
(tail call): ?
[C]: FCF_SetTemporaryWindowType()
..\FrameXML\FloatingChatFrame.lua:777: FCF_OpenTemporaryWindow()
...AddOns\Blizzard_PetBattleUI\Blizzard_PetBattleUI.lua:146: PetBattleFrame_Display()
...AddOns\Blizzard_PetBattleUI\Blizzard_PetBattleUI.lua:94:
...AddOns\Blizzard_PetBattleUI\Blizzard_PetBattleUI.lua:91
Locals:
messageType = "CHANNELLookingForGroup"
group = nil
type = "CHANNELLookingForGroup"
info = nil
(*temporary) = "CHANNELLookingForGroup"
(*temporary) = "CHANNELLookingForGroup"
(*temporary) = "CHANNELL"
(*temporary) = "CHANNELLookingForGroup"
(*temporary) = "attempt to index local 'info' (a nil value)"
AddOns:
Swatter, v7.7.6000 (SwimmingSeadragon)
NPCScanOverlay, v7.3.0.1
AckisRecipeList, v7.3.0.1
AckisRecipeListQuickScan, v7.3.0.1
AdvancedInterfaceOptions, v1.2.4
AlreadyKnown, v1.18
AltsMail, v2.07
Archy, v7.3.2.1
Atlas, vv1.43.06
AtlasArena, vv1.07.01
AtlasBattlegrounds, vv1.43.00
AtlasBurningCrusade, vv1.43.00
AtlasCataclysm, vv1.43.00
AtlasClassicWoW, vv1.43.00
AtlasClassOrderHalls, vv1.43.00
AtlasDungeonLocs, vv1.43.00
AtlasLegion, vv1.43.01
AtlasMistsofPandaria, vv1.43.00
AtlasOutdoorRaids, vv1.43.00
AtlasScenarios, vv1.43.01
AtlasTransportation, vv1.43.01
AtlasWarlordsofDraenor, vv1.43.00
AtlasWorldEvents, vv3.23
AtlasWrathoftheLichKing, vv1.43.01
AtlasLoot, vv8.07.13
AtlasLootBurningCrusade, vv8.07.13
AtlasLootCataclysm, vv8.07.13
AtlasLootClasses, vv3.1
AtlasLootClassic, vv8.07.13
AtlasLootLegion, vv8.07.13
AtlasLootMistsofPandaria, vv8.07.13
AtlasLootWarlordsofDraenor, vv8.07.13
AtlasLootWrathoftheLichKing, vv8.07.13
AtlasMajorCitiesEnhanced, vv1.15
AtlasQuest, v4.11.00
AucAdvanced, v7.7.6000 (SwimmingSeadragon)
AucFilterBasic, v7.7.6000 (SwimmingSeadragon)
AucStatHistogram, v7.7.6000 (SwimmingSeadragon)
AucStatiLevel, v7.7.6000 (SwimmingSeadragon)
AucStatPurchased, v7.7.6000 (SwimmingSeadragon)
AucStatSimple, v7.7.6000 (SwimmingSeadragon)
AucStatStdDev, v7.7.6000 (SwimmingSeadragon)
AucUtilFixAH, v7.7.6000 (SwimmingSeadragon)
BagBrother, v
Bagnon, v8.0.0
BeanCounter, v7.7.6000 (SwimmingSeadragon)
Capping, vv8.0.5
Chinchilla, vv2.9-beta1
ClassTimer, v2.3.80000.1
DBMArchaeology, v
DBMCore, v8.0.1
DBMDefaultSkin, v
DBMGarrisonInvasions, v
DBMLDB, v
DBMSpellTimers, v
DBMStatusBarTimers, v
DBMVPEnglishfemale, v7.3.5
DoesMyAltKnowThat, vv4
Dominos, v8.0.6
DominosCast, v
DominosEncounter, v
DontCast, v1.4.4
Enchantrix, v7.7.6000 (SwimmingSeadragon)
EnchantrixBarker, v7.7.6000 (SwimmingSeadragon)
GatherMate2, v1.42.1
GladiatorlosSA2, vB2
Gladius, v6.0.1
Grid, v7.3.5.0
GridStatusRole, v1.8.6
GTFO, v4.46.1
HealersHaveToDie, v2.4.5-deprecated
HHTD, v2.4.8
HideRaidFrame, vv1.7.1
IceHUD, v1.11.2
ImprovedNameplates, v4.0.2.80000
Informant, v7.7.6000 (SwimmingSeadragon)
Masque, v8.0.0
MasqueSleek, v6.2.0
MinimapButtonFrame, v3.1.10f
MinimapButtonFrameSkinPack, v3.0.1b
MinimapTarget, vv1.7
MountJournalEnhanced, v1.8.1
MoveAnything, v17.0.0
NpcHider, v1.22
NPCScan, v8.0.1.2
Omen, v3.2.0
OmniCC, v8.0.1
Overachiever, v1.0.0
OverachieverTabs, v1.0.0
Pawn, v2.2.22
PetJournalEnhanced, v2.9.30
Prat30, vr1157
Prat30Libraries, v
PvPGrid, v0.9.9 r
PVPTooltips, v2018-07-22
RaiderIO, v8.0.1 (v201807250600)
RaiderIODBUSA, v
RangeDisplay, vv4.8.1
Raven, v
Recount, vv8.0.1a
REPorter, v2.1.2
sct, v7.1
sctd, v7.1
SexyCooldown2, v2.0
StealthAlerter, v0.99.25
Stubby, v7.7.6000 (SwimmingSeadragon)
TipTac, v18.07.24
TipTacItemRef, v18.07.22
TipTacTalents, v18.07.19
Titan, v5.14.0.80000
TitanBag, v5.14.0.80000
TitanClock, v5.14.0.80000
TitanEmote, v1.0.21.70000
TitanGold, v5.14.0.80000
TitanLocation, v5.14.0.80000
TitanLootType, v5.14.0.80000
TitanPerformance, v5.14.0.80000
TitanRepair, v5.14.0.80000
TitanSocial, v8.0.1
TitanVector, v1.0.22.70000
TitanVolume, v5.14.0.80000
TitanXP, v5.14.0.80000
ToyBoxEnhanced, v1.9
VanasKoS, v4.49-$Rev: 537 $
BlizRuntimeLib_enUS v8.0.1.80000 <none>
(ck=d8a)