I think that full frame copychat + the experimental module = not going to work. If you disable the experimental module it should be ok.
Er... On live I don't even have an experimental mod to disable on my bank alt.
Attached is my mod control tab of my bank alt.
EDIT: Figured out why I don't have the experimental mod... I don't have debug or HighCPU enabled on her. *goes to turn them on to see if that actually helps*
EDIT2: Whether experimental is enabled or disabled, the copychat still messes up.
Er... On live I don't even have an experimental mod to disable on my bank alt.
Attached is my mod control tab of my bank alt.
EDIT: Figured out why I don't have the experimental mod... I don't have debug or HighCPU enabled on her. *goes to turn them on to see if that actually helps*
EDIT2: Whether experimental is enabled or disabled, the copychat still messes up.
Ok. I'll see if I can add in an option to fix this. It's probably related to the new code which gets all the text from the entire frame.
Sylvanaar, the PlayerNames module doesn't seem to tab complete on live. Is that a feature that has not been implemented or is it a bug?
NYI - well, its implemented, but it causes the game to crash to the desktop, something different about AceTab-3.0. So its disabled at the moment until I have time to look at it.
Right now I'm just testing stability of what's implemented. I think I'll be making another pass through the modules next weekend, so it'll probabaly get added then. I miss it too.
All the other threads concerning Prat are locked, so I hope I've chosen the correct thread to post this in.
Anyway, to the point, another addon called ChatMOD had a feature which coloured the text names of a person in any chat/channel. For example:
[Guild] <Olofoll> my name's Olofoll and I'm a druid! [Guild] <Ollofol> my name's Ollofol and I'm a warrior, Olofoll is a druid! [Guild] <Oloffol> my name's Oloffol and I'm a shaman!
...and so on. As a feature request: Would it be possible to implement something like this into Prat?
Sorry if I am out of line with this post, and thank you for taking the time to read this. :)
Yes, this has been asked for many times, so I will add it.
ANy chance to have a prat module that looked at item links?
I.e. If someone says "WTB [PRIMAL MOONCLOTH]x1 40g", and you can make primal mooncloth, that you can then have prat do something? I.e. Make a noise, etc.
or possibly, "LFG FOR [QUEST LINK X]", etc.
I wrote up some ideas for this along time ago over here in this thread.
Overall, right now the relevancy of item/quest links, isn't shown until you actively mouseover the tooltip... I.e. you have to see the link, then perform an action to find out if it is relevant to you.. ("Nope, don't have that recipe", or "Nope, don't have that quest"). It would be really nice to have the relevancy somehow be attached to the link, and be visible/audible without needing user action..
I.e. I used the example of having a new mail system tray icon, and new mail sound... When you have new mail, it tells you you have new mail, and makes a noise, saying "hey notice me".
It would be really cool, if chat could be seen in this same fashion, if someone speaksup about something that you are interested in (i.e. I can craft it, or I have that quest, etc). Then it would be nice to have a noise/visible notice that something is happening you may want to pay attention to.
Some IRC programs have something like this already, if you're username is mentioned in chat, an audible noise is heard/something visible happens.
I don't want to put words into sylvanaar's mouth, but this seems like it would be out of the scope of Prat (but I can see your point, because it's related to chat). I don't think it would be that difficult to create a different addon (or even a Prat module) to handle this though.
I've been following this thread as well as the previous development thread, and haven't found this mentioned; is there a plan to include tab completion for player names in Prat-3.0?
I've been following this thread as well as the previous development thread, and haven't found this mentioned; is there a plan to include tab completion for player names in Prat-3.0?
Yes, I mentioned it and sylvanaar replied about nine posts back.
ANy chance to have a prat module that looked at item links?
I.e. If someone says "WTB [PRIMAL MOONCLOTH]x1 40g", and you can make primal mooncloth, that you can then have prat do something? I.e. Make a noise, etc.
a 3rd party module, maybe. But this would be better off as a separate addon altogether. I think i might do it myself considering WotLK is coming out soon and this would help greatly with leveling
ANy chance to have a prat module that looked at item links?
I.e. If someone says "WTB [PRIMAL MOONCLOTH]x1 40g", and you can make primal mooncloth, that you can then have prat do something? I.e. Make a noise, etc.
or possibly, "LFG FOR [QUEST LINK X]", etc.
I wrote up some ideas for this along time ago over here in this thread.
Overall, right now the relevancy of item/quest links, isn't shown until you actively mouseover the tooltip... I.e. you have to see the link, then perform an action to find out if it is relevant to you.. ("Nope, don't have that recipe", or "Nope, don't have that quest"). It would be really nice to have the relevancy somehow be attached to the link, and be visible/audible without needing user action..
I.e. I used the example of having a new mail system tray icon, and new mail sound... When you have new mail, it tells you you have new mail, and makes a noise, saying "hey notice me".
It would be really cool, if chat could be seen in this same fashion, if someone speaksup about something that you are interested in (i.e. I can craft it, or I have that quest, etc). Then it would be nice to have a noise/visible notice that something is happening you may want to pay attention to.
Some IRC programs have something like this already, if you're username is mentioned in chat, an audible noise is heard/something visible happens.
Well, What do you think?
Well, there's popupmessage which deals with showing a popup and beeping etc when your name is said in chat. This functionality is registered with the sink library, so any addon can use it.
There is also customfilters, which allows you to build your own mini-addon to search for things recolor text, replace text, autorespond (limited), and more. Its partially working in prat3, and fully working in prat2.
There are invite links (in the playernames module) which make words like "invite" clickable links that will invite the person who said it, or if they say "invite <someone>" it can to that as well.
Some of the other more specific features are beyond Prat's scope - prat is really just a framework for chat addons, it provides some basic services which make writing chatmods easier, at least that's what i intended it to be. It does come with alot of modules - simply because its easier for people to get 1 zip with everything than 30+ zips with 1 module each.
This may be TMI/TLDNR, its part explaination, part evangalism...
I guess I should mention what Prat does exactly:
Prat provides a "link registry" for modules to register the types of links they create, and handle clicking of the link, a "pattern registry" for modules to register search patterns, and callback functions to handle matches from those patterns. It provides a structured options system backed by the framework it uses (currently Ace3), as well as control over module load behavior which is stored in the current profile rather than the blizzard addon screen. This allows for the equivalent of deleting the module file without having to actually physically delete it, and changing the load behavior of all the modules is as easy as changing the current profile.
Most importantly Prat provides and an event based chat processing system, with complete sectioning of the chat text, and the ability for modules to add thier own sections that they can use without conflicting with other modules. This means that you can reference for example the player link without having to know if it has [] or <> or no brackets, its just a predefined named field in a table, as are the brackets too, so changing them is as easy as changing 2 fields, and does not require complex gsub's which can be very fragile, and difficult to maintain and add new features to. For example a module could add a new field after the left bracket of the player link which showed an icon or some special text like * if the person was the leader of the current group. This would have no effect on the other modules.
[*SomeLeader]: I will invite them
[SomePlayer]: Ok
and it works just the same when the text looks like
[RAID] <*80:SomeLeader:1>: I will invite them
[RAID] <80:SomePlayer:2>: Ok
This idea of keeping the individual sections of the chat separate for easier processing was the entire basis for prat-2, and it has worked very well and proved to be much easier to maintain over the long term.
In truth, someone could write a prat module to do just about anything - but it should be distributed independently from the main collection (which is rather large already, and I am trying to keep from growing too much more now)
In prat 3 i have tried to break apart these various services so if some other addon developer wanted to he could reuse the code without having to use prat itself. This concept is sort of like the chat sectioning was in prat2, its an idea whose value won't be known until its used.
I have always encouraged people to write their own modules - a few have, but largely it wasn't accepted because it does require doing things a bit differently, and often authors want to make a small mod that does a specific thing and doesnt depend on a framework. My opinion has always been, if you use 15-20+ small mods, then you can achieve some efficiency and order by having them work together in a structured manner.
...I don't know why I just wrote all that - but maybe it will be of interest to someone.
Er... On live I don't even have an experimental mod to disable on my bank alt.
Attached is my mod control tab of my bank alt.
EDIT: Figured out why I don't have the experimental mod... I don't have debug or HighCPU enabled on her. *goes to turn them on to see if that actually helps*
EDIT2: Whether experimental is enabled or disabled, the copychat still messes up.
[color=#fefefe][color=#979797][23:11:28][/color] [color=#9f9f9f]<table: 32427DF8>[/color][/color]
[color=#fefefe][color=#979797][23:11:28][/color] } [color=#9f9f9f]-- table: 32423618,[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#9f9f9f] [color=#7fd5ff]Localizations[/color] = [color=#9f9f9f]<Timeout table: 32421958>[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]MatchPatterns[/color] = [color=#ffea00]function: 2D2AD208[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]Media[/color] = [color=#9f9f9f]<Timeout table: 32238C08>[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]MemoryUse[/color] = [color=#ffea00]function: 324A40E8[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]Modules[/color] = [color=#9f9f9f]<Timeout table: 32422F60>[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]NewModule[/color] = [color=#ffea00]function: 324A4EC8[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]Options[/color] = [color=#9f9f9f]<Timeout table: 32422290>[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]PlaySound[/color] = [color=#ffea00]function: 32421E08[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]Print[/color] = [color=#ffea00]function: 193BF048[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]PrintLiteral[/color] = [color=#ffea00]function: 22040698[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]RegisterChatCommand[/color] = [color=#ffea00]function: 324A4388[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]RegisterChatEvent[/color] = [color=#ffea00]function: 323B6B88[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]RegisterLinkType[/color] = [color=#ffea00]function: 32423668[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]RegisterMatch[/color] = [color=#ffea00]function: 32423AA0[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]RegisterMessageItem[/color] = [color=#ffea00]function: 32423FF0[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]RegisterPattern[/color] = [color=#ffea00]function: 2D2AD008[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]ReplaceMatches[/color] = [color=#ffea00]function: 32423AC8[/color],[/color][color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]RegisterPattern[/color] = [color=#ffea00]function: 2D2AD008[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]ReplaceMatches[/color] = [color=#ffea00]function: 32423AC8[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]RequestModuleName[/color] = [color=#ffea00]function: 32422F88[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]SetItemRef[/color] = [color=#ffea00]function: 324A53C8[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]SetItemRefHook[/color] = [color=#ffea00]function: 324236B8[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]SetModuleDefaults[/color] = [color=#ffea00]function: 32422FD8[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]SetModuleInit[/color] = [color=#ffea00]function: 32423028[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]SetModuleOptions[/color] = [color=#ffea00]function: 32423190[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]SetModulePatterns[/color] = [color=#ffea00]function: 32423208[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]SplitChatMessage[/color] = [color=#ffea00]function: 323FE388[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]SplitMessage[/color] = [color=#9f9f9f]<Timeout table: 32423E60>[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]SplitMessageIdx[/color] = [color=#9f9f9f]<Timeout table: 32423E38>[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]SplitMessageOrg[/color] = [color=#9f9f9f]<Timeout table: 32423E88>[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]SplitMessageOut[/color] = [color=#9f9f9f]<Recursion table: 32423EB0>[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]SplitMessageSrc[/color] = [color=#9f9f9f]<Timeout table: 32423E10>[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]UnregisterAllChatEvents[/color] = [color=#ffea00]function: 323B6C08[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]UnregisterAllLinkTypes[/color] = [color=#ffea00]function: 32423690[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]UnregisterAllPatterns[/color] = [color=#ffea00]function: 324239B0[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]UnregisterChatEvent[/color] = [color=#ffea00]function: 323B6BC8[/color],[/color][color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]GetReloadUILink[/color] = [color=#ffea00]function: 324A4288[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]UnregisterAllPatterns[/color] = [color=#ffea00]function: 324239B0[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]UnregisterChatEvent[/color] = [color=#ffea00]function: 323B6BC8[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]UnregisterLinkType[/color] = [color=#ffea00]function: 324A5368[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]UnregisterPattern[/color] = [color=#ffea00]function: 324239D8[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]WOTLK[/color] = [color=#ff9100]true[/color][/color]
[color=#fefefe][color=#979797][23:11:28][/color] } [color=#9f9f9f]-- _G["Prat"][/color][/color]
[color=#68a8fe][color=#979797][23:11:38][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Gamesta[/color][color=#d8d8d8]][/color]: eldaris, i got seargent i feel ur pain :([/color]
[color=#68a8fe][color=#979797][23:11:53][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Hitss[/color][color=#d8d8d8]][/color]: <Zomgkittenzmeowmeowmeow>[/color]
[color=#68a8fe][color=#979797][23:11:55][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Icewind[/color][color=#d8d8d8]][/color]: Check that it's I'm a monster Rawr[/color]
[color=#68a8fe][color=#979797][23:11:57][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Gamesta[/color][color=#d8d8d8]][/color]: hey mini[/color]
[color=#68a8fe][color=#979797][23:12:03][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Gamesta[/color][color=#d8d8d8]][/color]: did you get explorer?[/color]
[color=#68a8fe][color=#979797][23:12:03][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Minitalis[/color][color=#d8d8d8]][/color]: ya[/color]
[color=#68a8fe][color=#979797][23:12:10][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Amorality[/color][color=#d8d8d8]][/color]: <SappedGirlsCantSayNo>[/color]
[color=#3ffe3f][color=#979797][23:12:30][/color] [G] [color=#d8d8d8][[/color][color=#a5a5a5]Deathnerd[/color][color=#d8d8d8]][/color]: lol[/color]
[color=#3ffe3f][color=#979797][23:12:43][/color] [G] [color=#d8d8d8][[/color][color=#d8d83f]80[/color]:[color=#c41e3a]Deathnerd[/color][color=#d8d8d8]][/color]: you can use [color=#71d5ff][Winged Steed of the Ebon Blade][/color] in combat [/color]
[color=#3ffe3f][color=#979797][23:13:00][/color] [G] [color=#d8d8d8][[/color][color=#8b8b8b]69[/color]:[color=#c41e3a]Vaxel[/color][color=#d8d8d8]][/color]: yep[/color]
[color=#3ffe3f][color=#979797][23:13:01][/color] [G] [color=#d8d8d8][[/color][color=#8b8b8b]69[/color]:[color=#c41e3a]Vaxel[/color][color=#d8d8d8]][/color]: bugged[/color]
[color=#68a8fe][color=#979797][23:13:03][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Eldaris[/color][color=#d8d8d8]][/color]: <Naga stole my bike>[/color][color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]GetReloadUILink[/color] = [color=#ffea00]function: 324A4288[/color],[/color]
[color=#3ffe3f][color=#979797][23:13:01][/color] [G] [color=#d8d8d8][[/color][color=#8b8b8b]69[/color]:[color=#c41e3a]Vaxel[/color][color=#d8d8d8]][/color]: bugged[/color]
[color=#68a8fe][color=#979797][23:13:03][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Eldaris[/color][color=#d8d8d8]][/color]: <Naga stole my bike>[/color]
[color=#3ffe3f][color=#979797][23:13:06][/color] [G] [color=#d8d8d8][[/color][color=#65b265]70[/color]:[color=#aad372]Threadz[/color][color=#d8d8d8]][/color]: where do you get that?[/color]
[color=#3ffe3f][color=#979797][23:13:11][/color] [G] [color=#d8d8d8][[/color][color=#d8d83f]76[/color]:[color=#aad372]Cronix[/color][color=#d8d8d8]][/color]: dk only[/color]
[color=#68a8fe][color=#979797][23:13:16][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Icewind[/color][color=#d8d8d8]][/color]: <At least we got stables>[/color]
[color=#3ffe3f][color=#979797][23:13:21][/color] [G] [color=#d8d8d8][[/color][color=#65b265]70[/color]:[color=#aad372]Threadz[/color][color=#d8d8d8]][/color]: oh[/color]
[color=#3ffe3f][color=#979797][23:13:24][/color] [G] [color=#d8d8d8][[/color][color=#65b265]70[/color]:[color=#aad372]Threadz[/color][color=#d8d8d8]][/color]: damn the op dks[/color]
[color=#68a8fe][color=#979797][23:13:31][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Icewind[/color][color=#d8d8d8]][/color]: <Stocks on Farm>[/color]
[color=#3ffe3f][color=#979797][23:13:31][/color] [G] [color=#d8d8d8][[/color][color=#d8d83f]80[/color]:[color=#c41e3a]Deathnerd[/color][color=#d8d8d8]][/color]: teehee[/color]
[color=#68a8fe][color=#979797][23:13:36][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Necronicus[/color][color=#d8d8d8]][/color]: <Has No Pants>[/color]
[color=#68a8fe][color=#979797][23:14:12][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Eldaris[/color][color=#d8d8d8]][/color]: Someone named their toon "Mashed" and their guild <Potatoes>[/color]
[color=#68a8fe][color=#979797][23:14:38][/color] [Gen] [color=#d8d8d8][[/color][color=#65b265]70[/color]:[color=#c41e3a]Amorality[/color][color=#d8d8d8]][/color]: <If found plz Rez>[/color]
[color=#febfbf][color=#979797][23:14:41][/color] [L Def] : [color=#ffff00]Fizzcrank Airstrip is under attack![/color][/color]
[color=#68a8fe][color=#979797][23:14:42][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Eldaris[/color][color=#d8d8d8]][/color]: Someone else in their guild was Baked Potatoes[/color]
[color=#febfbf][color=#979797][23:14:57][/color] [L Def] : [color=#ffff00]Fizzcrank Airstrip is under attack![/color][/color]
[color=#febfbf][color=#979797][23:15:10][/color] [L Def] : [color=#ffff00]Fizzcrank Airstrip is under attack![/color][/color]
[color=#68a8fe][color=#979797][23:15:23][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Minitalis[/color][color=#d8d8d8]][/color]: who keeps attacking my airstrip.[/color]
[color=#febfbf][color=#979797][23:15:25][/color] [L Def] : [color=#ffff00]Fizzcrank Airstrip is under attack![/color][/color][color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]GetReloadUILink[/color] = [color=#ffea00]function: 324A4288[/color],[/color]
[color=#68a8fe][color=#979797][23:16:15][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Busdriver[/color][color=#d8d8d8]][/color]: On a scale of 1-10 how cute of a gnome would you say you are, Minitalis?[/color]
[color=#febfbf][color=#979797][23:14:57][/color] [L Def] : [color=#ffff00]Fizzcrank Airstrip is under attack![/color][/color]
[color=#68a8fe][color=#979797][23:15:23][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Minitalis[/color][color=#d8d8d8]][/color]: who keeps attacking my airstrip.[/color]
[color=#febfbf][color=#979797][23:15:25][/color] [L Def] : [color=#ffff00]Fizzcrank Airstrip is under attack![/color][/color]
[color=#ee1ffe][color=#979797][23:15:33][/color] Bloodspore Roaster yells: Protect the lifegiver![/color]
[color=#68a8fe][color=#979797][23:16:09][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Eldaris[/color][color=#d8d8d8]][/color]: I remember when the sunwell opened, people kept aggroing Kazzak during the daily[/color]
[color=#68a8fe][color=#979797][23:16:15][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Busdriver[/color][color=#d8d8d8]][/color]: On a scale of 1-10 how cute of a gnome would you say you are, Minitalis?[/color]
[color=#68a8fe][color=#979797][23:16:31][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Eldaris[/color][color=#d8d8d8]][/color]: there was nothing but kazzak spam for 3 hours[/color]
[color=#68a8fe][color=#979797][23:16:32][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Necronicus[/color][color=#d8d8d8]][/color]: people still aggro him on my server =([/color]
[color=#68a8fe][color=#979797][23:16:47][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Mallow[/color][color=#d8d8d8]][/color]: its taht damned dreaming glory[/color]
[color=#fefe00][color=#979797][23:16:50][/color] Vargo has gone offline.[/color]
[color=#3ffe3f][color=#979797][23:16:51][/color] Deathsong has earned the achievement [color=#ffff00][The Blood Furnace][/color]![/color]
[color=#68a8fe][color=#979797][23:17:09][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Minitalis[/color][color=#d8d8d8]][/color]: cute? DK's worry not about such things[/color]
[color=#68a8fe][color=#979797][23:17:14][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Busdriver[/color][color=#d8d8d8]][/color]: So a 1?[/color]
[color=#68a8fe][color=#979797][23:17:15][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Minitalis[/color][color=#d8d8d8]][/color]: my axe is cute.[/color]
[color=#68a8fe][color=#979797][23:17:32][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Icewind[/color][color=#d8d8d8]][/color]: DK's are Jedi, swweeeettttt[/color]
[color=#3ffe3f][color=#979797][23:17:43][/color] [G] [color=#d8d8d8][[/color][color=#a5a5a5]Galiathen[/color][color=#d8d8d8]][/color]: so anyone just watch the news?[/color]
[color=#68a8fe][color=#979797][23:17:45][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Eldaris[/color][color=#d8d8d8]][/color]: raise your hand if you have more than 1000GB of hard drive space *raises hand*[/color][color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]GetReloadUILink[/color] = [color=#ffea00]function: 324A4288[/color],[/color]
[color=#3ffe3f][color=#979797][23:17:43][/color] [G] [color=#d8d8d8][[/color][color=#a5a5a5]Galiathen[/color][color=#d8d8d8]][/color]: so anyone just watch the news?[/color]
[color=#68a8fe][color=#979797][23:17:45][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Eldaris[/color][color=#d8d8d8]][/color]: raise your hand if you have more than 1000GB of hard drive space *raises hand*[/color]
[color=#68a8fe][color=#979797][23:17:53][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Lolwhat[/color][color=#d8d8d8]][/color]: nerd[/color]
[color=#68a8fe][color=#979797][23:17:54][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Busdriver[/color][color=#d8d8d8]][/color]: ^[/color]
[color=#3ffe3f][color=#979797][23:17:55][/color] [G] [color=#d8d8d8][[/color][color=#65b265]72[/color]:[color=#c69b6d]Galiathen[/color][color=#d8d8d8]][/color]: at the republic conven?[/color]
[color=#3ffe3f][color=#979797][23:17:56][/color] [G] [color=#d8d8d8][[/color][color=#8b8b8b]69[/color]:[color=#c41e3a]Vaxel[/color][color=#d8d8d8]][/color]: regarding?[/color]
[color=#68a8fe][color=#979797][23:17:57][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Eldaris[/color][color=#d8d8d8]][/color]: lol[/color]
[color=#68a8fe][color=#979797][23:18:07][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Minitalis[/color][color=#d8d8d8]][/color]: only 1 tb?[/color]
[color=#68a8fe][color=#979797][23:18:12][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Mallow[/color][color=#d8d8d8]][/color]: more like only 1tb, nerd[/color]
[color=#68a8fe][color=#979797][23:18:14][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Eldaris[/color][color=#d8d8d8]][/color]: I remember back in 97 I would've sold my soul for 1000GB[/color]
[color=#68a8fe][color=#979797][23:18:17][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Hacks[/color][color=#d8d8d8]][/color]: Raise your hand if you have a girlfriend[/color]
[color=#68a8fe][color=#979797][23:18:19][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Mallow[/color][color=#d8d8d8]][/color]: pros have at least 2[/color]
[color=#68a8fe][color=#979797][23:18:29][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Lolwhat[/color][color=#d8d8d8]][/color]: notice how no one raised thier hand[/color]
[color=#68a8fe][color=#979797][23:18:34][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Icewind[/color][color=#d8d8d8]][/color]: Raises hand[/color]
[color=#68a8fe][color=#979797][23:18:34][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Lolwhat[/color][color=#d8d8d8]][/color]: LOLGG BETA[/color]
[color=#68a8fe][color=#979797][23:18:44][/color] [Gen] [color=#d8d8d8][[/color][color=#65b265]72[/color]:[color=#ff7c0a]Liquidia[/color][color=#d8d8d8]][/color]: not even you[/color]
[color=#68a8fe][color=#979797][23:18:48][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Busdriver[/color][color=#d8d8d8]][/color]: you didnt say type it :D[/color]
[color=#68a8fe][color=#979797][23:19:02][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Lolwhat[/color][color=#d8d8d8]][/color]: Icewind, ugly *!@#$es dont count.[/color][color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]GetReloadUILink[/color] = [color=#ffea00]function: 324A4288[/color],[/color]
[color=#fefefe][color=#979797][23:11:28][/color] [color=#7fd5ff]GetReloadUILink[/color] = [color=#ffea00]function: 324A4288[/color],[/color]
[color=#68a8fe][color=#979797][23:18:48][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Busdriver[/color][color=#d8d8d8]][/color]: you didnt say type it :D[/color]
[color=#68a8fe][color=#979797][23:19:02][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Lolwhat[/color][color=#d8d8d8]][/color]: Icewind, ugly *!@#$es dont count.[/color]
[color=#68a8fe][color=#979797][23:19:06][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Lolwhat[/color][color=#d8d8d8]][/color]: Put your hand down[/color]
[color=#68a8fe][color=#979797][23:19:12][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Busdriver[/color][color=#d8d8d8]][/color]: I KNOW RIGHT UGLIEST GNOME HAIR ON THAT MAGE EVER[/color]
[color=#febfbf][color=#979797][23:19:21][/color] [L Def] : [color=#ffff00]Scalding Pools is under attack![/color][/color]
[color=#3ffe3f][color=#979797][23:19:45][/color] Perkant has earned the achievement [color=#ffff00][A Simple Re-Quest][/color]![/color]
[color=#ee1ffe][color=#979797][23:19:47][/color] Bloodspore Firestarter yells: Protect the lifegiver![/color]
[color=#68a8fe][color=#979797][23:19:55][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Icewind[/color][color=#d8d8d8]][/color]: I wish she were an ugly %^&*! it would keep all the other geeks from hitting on her, or at least trying to hit on her[/color]
[color=#3ffe3f][color=#979797][23:20:01][/color] Vaxel has earned the achievement [color=#ffff00][Got My Mind On My Money][/color]![/color]
[color=#68a8fe][color=#979797][23:20:12][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Lolwhat[/color][color=#d8d8d8]][/color]: lol[/color]
[color=#68a8fe][color=#979797][23:20:16][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Lolwhat[/color][color=#d8d8d8]][/color]: werd brotha[/color]
[color=#68a8fe][color=#979797][23:20:22][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Lolwhat[/color][color=#d8d8d8]][/color]: send me some pics ^^[/color]
[color=#68a8fe][color=#979797][23:20:27][/color] [Gen] [color=#d8d8d8][[/color][color=#65b265]72[/color]:[color=#ff7c0a]Liquidia[/color][color=#d8d8d8]][/color]: "all the other geeks"[/color]
[color=#68a8fe][color=#979797][23:20:35][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Lolwhat[/color][color=#d8d8d8]][/color]: lolwut?[/color]
[color=#68a8fe][color=#979797][23:20:39][/color] [Gen] [color=#d8d8d8][[/color][color=#65b265]72[/color]:[color=#ff7c0a]Liquidia[/color][color=#d8d8d8]][/color]: counting yourself among them?[/color]
[color=#68a8fe][color=#979797][23:20:47][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Icewind[/color][color=#d8d8d8]][/color]: I'm a geek[/color]
[color=#68a8fe][color=#979797][23:20:52][/color] [Gen] [color=#d8d8d8][[/color][color=#a5a5a5]Lolwhat[/color][color=#d8d8d8]][/color]: Im a geek[/color]
Wow, thanks for bringing this feature to my attention, I wasn't aware of it, and as a raid leader, it's really handy, however, I have a small request: I often get spammed with the word "inv" as opposed to "invite," and Prat doesn't seem to register "inv" as a valid invite request. Would it be possible to add this as another word? Or perhaps allow the user to specify which words trigger links.
If there's a way for me to alter the LUA myself for a quick way to add "inv" as a keyword, just let me know and I'll do that instead. :)
This will make a link for the person saying inv, though its also going to match inventory invest, etc. you could say (inv)$ but that wont match "inv ok?" similarly (inv ) wont match "please inv".
Check out the section on pattern matching in the Lua docs for more info:
I've been following this thread as well as the previous development thread, and haven't found this mentioned; is there a plan to include tab completion for player names in Prat-3.0?
I just re-enabled it. I found the bug in AceTab-3.0 which was causing the game to lock up. But please report any stability issues you encounter.
...I don't know why I just wrote all that - but maybe it will be of interest to someone.
It's of great use to me, and anyone who might want to get into addon development... It outlines what prat is, and how in general things within it operate....
you mentioned that the chat parsing is already part of prat.. and the invite thing makes me wonder...
I understand that you are registering pattern contstants, and then attaching actions to those... I.e you register inv, and then attach "invite the person who said it" to it.
i.e. parse the chat message looking for a quest or item link.
if quest link, check quest log. if in quest log, audible
if item link check profession recipe list craft outputs (?), if matched, audible.
if recipe link, check profession recipe list, if NOT matched, audible.
This sort of parsing and checking above is different than the invite constant method...
I know very little lua (enough to be dangerous, or to fix obvious errors),and it's different than how prat does things, So I may just wait or orionshock to figure this all out :)
Rollback Post to RevisionRollBack
To post a comment, please login or register a new account.
Er... On live I don't even have an experimental mod to disable on my bank alt.
Attached is my mod control tab of my bank alt.
EDIT: Figured out why I don't have the experimental mod... I don't have debug or HighCPU enabled on her. *goes to turn them on to see if that actually helps*
EDIT2: Whether experimental is enabled or disabled, the copychat still messes up.
Ok. I'll see if I can add in an option to fix this. It's probably related to the new code which gets all the text from the entire frame.
NYI - well, its implemented, but it causes the game to crash to the desktop, something different about AceTab-3.0. So its disabled at the moment until I have time to look at it.
Right now I'm just testing stability of what's implemented. I think I'll be making another pass through the modules next weekend, so it'll probabaly get added then. I miss it too.
In which repertory on the svn it is necessary to go to have the version on which you currently work?
Because I have find only the r80960 and not the r80962
Thanks
Its on the trunk. You can just use WAU to update it now.
http://files.wowace.com/Prat-3.0/
Yes, this has been asked for many times, so I will add it.
I.e. If someone says "WTB [PRIMAL MOONCLOTH]x1 40g", and you can make primal mooncloth, that you can then have prat do something? I.e. Make a noise, etc.
or possibly, "LFG FOR [QUEST LINK X]", etc.
I wrote up some ideas for this along time ago over here in this thread.
http://www.wowace.com/forums/index.php?topic=13195.msg210827#msg210827
Overall, right now the relevancy of item/quest links, isn't shown until you actively mouseover the tooltip... I.e. you have to see the link, then perform an action to find out if it is relevant to you.. ("Nope, don't have that recipe", or "Nope, don't have that quest"). It would be really nice to have the relevancy somehow be attached to the link, and be visible/audible without needing user action..
I.e. I used the example of having a new mail system tray icon, and new mail sound... When you have new mail, it tells you you have new mail, and makes a noise, saying "hey notice me".
It would be really cool, if chat could be seen in this same fashion, if someone speaksup about something that you are interested in (i.e. I can craft it, or I have that quest, etc). Then it would be nice to have a noise/visible notice that something is happening you may want to pay attention to.
Some IRC programs have something like this already, if you're username is mentioned in chat, an audible noise is heard/something visible happens.
Well, What do you think?
Yes, I mentioned it and sylvanaar replied about nine posts back.
a 3rd party module, maybe. But this would be better off as a separate addon altogether. I think i might do it myself considering WotLK is coming out soon and this would help greatly with leveling
Well, there's popupmessage which deals with showing a popup and beeping etc when your name is said in chat. This functionality is registered with the sink library, so any addon can use it.
There is also customfilters, which allows you to build your own mini-addon to search for things recolor text, replace text, autorespond (limited), and more. Its partially working in prat3, and fully working in prat2.
There are invite links (in the playernames module) which make words like "invite" clickable links that will invite the person who said it, or if they say "invite <someone>" it can to that as well.
Some of the other more specific features are beyond Prat's scope - prat is really just a framework for chat addons, it provides some basic services which make writing chatmods easier, at least that's what i intended it to be. It does come with alot of modules - simply because its easier for people to get 1 zip with everything than 30+ zips with 1 module each.
This may be TMI/TLDNR, its part explaination, part evangalism...
I guess I should mention what Prat does exactly:
Prat provides a "link registry" for modules to register the types of links they create, and handle clicking of the link, a "pattern registry" for modules to register search patterns, and callback functions to handle matches from those patterns. It provides a structured options system backed by the framework it uses (currently Ace3), as well as control over module load behavior which is stored in the current profile rather than the blizzard addon screen. This allows for the equivalent of deleting the module file without having to actually physically delete it, and changing the load behavior of all the modules is as easy as changing the current profile.
Most importantly Prat provides and an event based chat processing system, with complete sectioning of the chat text, and the ability for modules to add thier own sections that they can use without conflicting with other modules. This means that you can reference for example the player link without having to know if it has [] or <> or no brackets, its just a predefined named field in a table, as are the brackets too, so changing them is as easy as changing 2 fields, and does not require complex gsub's which can be very fragile, and difficult to maintain and add new features to. For example a module could add a new field after the left bracket of the player link which showed an icon or some special text like * if the person was the leader of the current group. This would have no effect on the other modules.
[*SomeLeader]: I will invite them
[SomePlayer]: Ok
and it works just the same when the text looks like
[RAID] <*80:SomeLeader:1>: I will invite them
[RAID] <80:SomePlayer:2>: Ok
This idea of keeping the individual sections of the chat separate for easier processing was the entire basis for prat-2, and it has worked very well and proved to be much easier to maintain over the long term.
In truth, someone could write a prat module to do just about anything - but it should be distributed independently from the main collection (which is rather large already, and I am trying to keep from growing too much more now)
In prat 3 i have tried to break apart these various services so if some other addon developer wanted to he could reuse the code without having to use prat itself. This concept is sort of like the chat sectioning was in prat2, its an idea whose value won't be known until its used.
I have always encouraged people to write their own modules - a few have, but largely it wasn't accepted because it does require doing things a bit differently, and often authors want to make a small mod that does a specific thing and doesnt depend on a framework. My opinion has always been, if you use 15-20+ small mods, then you can achieve some efficiency and order by having them work together in a structured manner.
...I don't know why I just wrote all that - but maybe it will be of interest to someone.
It does looks like it has a bug of some sort.
The code is in playername.lua line 1135
you could do add a line:
{ pattern = "(inv)", matchfunc=Invite },
This will make a link for the person saying inv, though its also going to match inventory invest, etc. you could say (inv)$ but that wont match "inv ok?" similarly (inv ) wont match "please inv".
Check out the section on pattern matching in the Lua docs for more info:
http://www.lua.org/manual/5.1/manual.html#5.4.1
I just re-enabled it. I found the bug in AceTab-3.0 which was causing the game to lock up. But please report any stability issues you encounter.
It's of great use to me, and anyone who might want to get into addon development... It outlines what prat is, and how in general things within it operate....
you mentioned that the chat parsing is already part of prat.. and the invite thing makes me wonder...
I understand that you are registering pattern contstants, and then attaching actions to those... I.e you register inv, and then attach "invite the person who said it" to it.
i.e. parse the chat message looking for a quest or item link.
if quest link, check quest log. if in quest log, audible
if item link check profession recipe list craft outputs (?), if matched, audible.
if recipe link, check profession recipe list, if NOT matched, audible.
This sort of parsing and checking above is different than the invite constant method...
I know very little lua (enough to be dangerous, or to fix obvious errors),and it's different than how prat does things, So I may just wait or orionshock to figure this all out :)