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.
I'm a fellow addon author. While Prat is very nice, it seems to do something quite drastic to the default message event handling, to the point that I am unable to use the default WoW API with my addon.
I elaborate: I'm writing an addon that needs to be able to rewrite player names. I use the default API's ChatFrame_AddMessageEventFilter(MyFilter). All I do is follow the default API, and have MyFilter return:
- (true) if want to discard
- (false) if no change desired
- (false, newtext) if desire to replace the text with newtext.
My addon works fine by itself. Prat works fine by itself. However when the two addons are running simultaneously, *all chat text* is swallowed -- the text does not show up. (with the very strange except of /yells... which do show up).
some of my insight:
My filter function is apparently *still being called* with the correct input (i.e. if I tell my filter I described earlier to print(message.text), I can still see the raw unadultered message text), however, something goes horribly wrong after I my function returns and the message is never shown.
more insight:
This problem doesn't go away when disabling-on-load every module under the "Chat Filtering" category.
thus,
I myself use Prat, and would very much like not to abandon this nice addon (nor tell my users to), nor resolve to hacks which might cause incompatibility issues between our two addons -- as such I really would like your opinion as to how to best resolve this incompatibility.
(For example, since my functionality is incompatible with the default playername-coloring module, it would be nice if I could detect if the playername-coloring module is running, and disable it programmaticaly, perhaps after prompting the user. I'd prefer not to write a module, or if I did, it would have to be distributable with this addon. What do you think might be the issue going on?)
Thanks for your help in addressing this incompatibility.
(sidenote:)
(I have looked over the Prat code and I notice that you ace.rawhook ChatFrame_MessageEventHandler and manually call the filters. *ponders what might be going wrong* -- I heard Ace's rawhook might have a sideeffect if you return true or pass in true as an argument or somesuch)
you may want to remove the ability to set invalid custom filters, or add support for multi word filters
the Blizzard icon is shown correctly, but the rest of the text (and the name of the GM) is corrupted and i can barely read it.
when i whisper to that gm, my own text is shown without corruption, but as soon as the GM respons, i cant read what he is saying cuz of "display corruption".
(german client if that matters)
http://wow.curse.com/downloads/wow-addons/details/enhanced-lfg.aspx
Really really missing the auto checking spec ability that EnchanceLFG allowed.
Cheers man. Good job on Prat3, loving it!
BTW, great addon. I just switched about a week ago from another popular chat addon.
Here is my debug error:
Date: 2008-11-30 12:48:23
ID: 72
Error occured in: Global
Count: 1
Message: ..\FrameXML\ChatFrame.lua line 2218:
bad argument #1 to 'strsub' (string expected, got nil)
Debug:
[C]: ?
[C]: strsub()
..\FrameXML\ChatFrame.lua:2218:
..\FrameXML\ChatFrame.lua:2217
(tail call): ?
(tail call): ?
(tail call): ?
(tail call): ?
..\FrameXML\ChatFrame.lua:2070: ChatFrame_OnEvent()
[string "*:OnEvent"]:1:
[string "*:OnEvent"]:1
AddOns:
Swatter, v5.1.3715 (SnaggleTooth)
Ace2, v
Ace3, v
agExtras, v09-19-07
agUnitFrames, v2008-08-06
aUFBanzai, v2.1
aUFBarFader, v1
aUFLayouts, v1.1.18
aUFRangeCheck, v1.7
AutoTurnin, v3.0.6
Bagnon, v1.6.8
BagnonForever, v1.1.1
BagnonTooltips, v
BanzaiAlert, v1
Bartender4, v4.2.1
BigWigs, v2.0
ButtonFacade, v0.1Alpha
ButtonFacadeApathy, v3.0.2
ButtonFacadeCaith, v3.0.2
ButtonFacadeElegance, v1.2
ButtonFacadeEntropy, v3.0.2
ButtonFacadeGears, v3.0.2
ButtonFacadeLayerTest, v3.0.2
ButtonFacadeLiteStep, v3.0.2
ButtonFacadeOnyx, v3.0.2
ButtonFacadeSerenity, v3.0.2
ButtonFacadeSleek, v1.0
ButtonFacadeTones, v2.4.3
ButtonFacadeTrinity, v30000.1
Capping, v3.0.007
Carbonite, v2.01
Clique, vwowi:revision
CooldownCount, v3.0
DeuceCommander, v1.1
EasyMother, v
ElkBuffBars, v2.2.2-135
EnchantList, v0.3
FlightMap, v
FuBar, v
FuBarExpFu, v2.0.7a
FuBarMiniClockFu, v1.0
FuBarMoneyFu, vv1.2
FuBarQuestsFu, v2.0
FuTextures, v2.0
InstantHealth, v1.1
LightHeaded, v270
LittleWigs, v3.0.0
MainAssist, v2.3
Omen, v3.0.4
Outfitter, v4.3.1
Prat30, vRC7
Prat30HighCPUUsageModules, v
Prat30Libraries, v
Quartz, v1.0
QuartzFlight, v1.0
QuartzGCD, v1.0
QuartzInterrupt, v1.0
QuartzLatency, v1.0
QuartzMirror, v1.0
QuartzPet, v1.0
QuartzPlayer, v1.0
QuartzRange, v1.0
QuartzSwing, v1.0
QuartzTradeskill, v1.0
RatingBuster, v
sct, v6.2
simpleMinimap, v30000-3
sRaidFrames, v
SunnArt, v2.23
SurfaceLib, v
Surfaces, v0_o
TipTac, v08.11.10
TipTacTalents, v08.11.05
TomTom, v176
XLoot, v0.9
xptimer, v1.0
Yata, v
(ck=66a)