SpeakinSpell
Funny and/or Useful, SpeakinSpell will use random speeches in chat to announce when you use spells and other abilities, as well as items, procced effects, other events, and user-defined macros. Works with all classes. Configurable for many different situations.
Possible Uses
- Entertain yourself, your guild, and your PuGs
- Roleplay
- Tell your raid that you got an important debuff
- Tell your arena team that you're CC'd
- Whisper your target about a short term buff
- Congratulate your guild members on achievements
- Randomize your battle cries
- More
Main Features
- Can detect over 5000 "Events" and automatically announce them in the chat using a random selection from a list of user-defined speeches, including:
- Spells you cast
- All other abilities for any class (a warrior's Heroic Strike is also technically considered a "spell")
- Anything you can equip in your action bar
- Items
- Procced effects (buffs that you receive from yourself)
- Combat events (enter/exit combat, scored a crit, killing blow, etc)
- Talking to NPCs and other game objects like mailboxes
- Achievements
- Other events (Login, Changed Zone, etc)
- whenever you type "/ss macro something" (create your own event)
- Records more event hooks as it discovers more spells, buffs, and debuffs, etc the longer you use it.
- Each spells' random speeches can be directed to any chat channel you choose
- Supports different channel options (or silent) in different scenarios: solo, party, party leader, raid, raid leader, raid officer, BG, arena, and Wintergrasp.
- Also supports built-in emotes and most other slash commands (/cheer, /script, etc)
- Fully configurable through the interface options panel. (type "/ss" to get started)
- Includes some default example speeches for at least a few spells for all classes.
- These are only meant to serve as examples. In general, very few default speeches are available for most classes, so you may not see it do anything for you right away. You should look at the list of possible event hooks under "/ss create" and write your own speeches.
F.A.Q.
How do I make a backup copy of my SpeakinSpell data?
I recommend making a backup of your SpeakinSpell data frequently. All of your speeches for all characters are stored here: C:\Users\Public\Games\World of Warcraft\WTF\Account\<your name>\SavedVariables\SpeakinSpell.lua
How do I erase all the defaults and start from a clean slate?
Type "/ss eraseall" to erase all your data. This includes any defaults as well as any custom speeches you've written.
How do I find the spell or other event that I want to change in this huge list?
Cast the spell, or trigger the event, then type "/ss recent" then use the click-able links in your chat frame to [Edit Speeches] or [Setup New Event].
How do I stop it from announcing this spell or other event?
Cast the spell, or trigger the event, then type "/ss recent" then use the click-able links in your chat frame to [Edit Speeches] for that event... then click the button that says "Delete this event"
OMG this is so complicated!
Hey! That's not a question! It's a common complaint though, and I'm open to specific suggestions about what you find is too complicated, or confusing, or could be made easier, more intuitive, or more user-friendly. With great power comes great complexity. Everything is labeled with detailed tooltips, and there's a detailed user manual built-in (/ss help) and online to help you out. I also usually answer questions within 24 hours.
Aetharan has also written some nice guides here: http://tinyurl.com/a64sst4
Usage Instructions
How to setup SpeakinSpell in a few easy steps:
- Login and play your toon for a few minutes.
- Activate any abilities, trigger any procced effects, and encounter any other detectable events that you would like SpeakinSpell to announce.
- Type "/ss" to access the interface options panel
- Click on "Create New..." or type "/ss create" to create settings for a new spell or other event
- Select the desired spell or event from the list and click the Create button. You will be taken to the settings page for that spell or event.
- Change the settings to your tastes and write as many speeches as you want. Now whenever you cast that spell or encounter that event, SpeakinSpell will say one of your random messages for that event, using the channels and other rules that you defined.
- Repeat until you run out of ideas for new announcements to write.
Spammy Setup Guides Method
- Type "/ss guides" to enable Setup Guides (there's also a checkbox for it under "/ss options")
- Do stuff with your toon
- Observe that the spammy Setup Guides are reporting all 5k+ of every event that SpeakinSpell detects and could possibly announce
- Click on the clickable links in your chat frame to [Setup New Event] announcements (equivalent to using "/ss create") or [Edit Speeches] for event hooks you already configured (equivalent to using "/ss messages")
- Type "/ss guides" again to turn the Setup Guides back off
- At any time you wish you had the Setup Guides enabled to catch a special proc effect or something, type "/ss recent" to see Setup Guides for the last 5 events detected, and last 5 events announced.
Type "/ss help" for the in-game user's manual for complete, thorough instructions for how to make the most of every feature SpeakinSpell has to offer. It's designed for maximum flexibility.
Additional Features
- Supports over 50 substitutions in your speeches, such as <caster>, <target>, <zone>, <spellname>, <party2pettarget> and many more.
- <spelllink> will create a clickable link to the spell or achievement (for applicable events)
- All of these substitutions also support first person pronoun forms (to say "me" instead of my own name), gender forms, and possessive forms, to make your automated macros sound less like macros and more like natural speech
- Also includes random substitutions like <randomfaction> (like Mad Libs™) and you can create your own random substitution word lists.
- Up to 100 speeches can be entered per spell.
- Never says the same message for a given spell twice in a row (unless you only have 1 message defined for that spell)
- Can be configured to limit your chat spam in several ways
- based on a cooldown between automated speeches in chat
- based on a random chance to speak or not
- optionally limited to once per combat
- optionally limited to once per target name
- based on a global cooldown
- Can whisper messages to the target of your spell (This can be useful for resurrect style spells, innervate, power infusion, etc.)
- When you get compliments on your "macros" use "/ss ad" to tell your friends about SpeakinSpell. Some of the random ads are funny. Yes, it's an addon that spams random text in chat, and it has a feature to spam random text to advertise it's ability to spam random text. "/ss help" in game for more advanced options for using /ss ad.
- Detection of "other events" such as Login, entering combat, changed zone, and more. Type "/ss help" in game for the complete list.
- Custom Defined User Macros. Type "/ss macro something" to make SpeakinSpell detect a pseudo spell event called "When I type: /ss macro something" which you can setup to be announced with random speeches like a spell. This can be used for randomized battlecries (/ss macro battlecry), greetings (/ss macro hi), farewells (/ss macro bye), or anything you want to define (/ss macro _blank_).
- Share your speeches with your friends through the Data Sharing system
- type "/ss import" to browse the shared content you collected from others and add it to your settings (works for copying from your alts too)
- type "/ss network" for options
- type "/ss help" for help.
- Easter Egg ... there's a mildly amusing little story hidden away somewhere in an obvious place where you will never look for it ... yes, I do actually have a lot of time on my hands ...
More Information
SpeakinSpell has many more features than those listed above.
Click here for the Complete User's Manual, or type "/ss help" in-game for the same info. NOTE: If "/ss help" doesn't work, you may have an installation error, or you may have too many addons installed. Try right-clicking the minimap button, or hitting: Escape > Interface > Addons > SpeakinSpell.
Please submit a ticket for any problems, bug reports, or feature requests, or feel free to post in the comments below (but tickets are easier for me to remember to fix).
Submissions Welcome. To submit content including the witty random speeches you wrote, please read this. If you are a translator with better translations, please use this localization tool.
More Technical Information: If you're a programmer interested in understanding more about how SpeakinSpell works, read the SDD.doc in the SpeakinSpell addon folder. It's a software design document in the (compatible) MS Word 97 file format with details about the system architecture.
Aetharan's Tutorials for advanced tips and tricks: http://tinyurl.com/4ptc2xg
Petit tutoriel en Français http://abz.progp.net/wow/Tutoriel_SpeakinSpell.pdf
en Français a Youtube http://www.youtube.com/watch?v=f62eE6rzAFA
The official SpeakinSpell Forum http://www.rismisner.com/forum/viewforum.php?f=3 - Unfortunately, the SpeakinSpell forum is currently disabled because it received an excessive amount of spam advertisements (about 80 per day and only about 1 real post per month for 2 months). I will need help or time to learn how to adequately block advertisers before re-opening it.
Credits
SpeakinSpell was created by...
- Stonarius of Antonidas
Additional coding by...
- Duerma
Primary Beta Testing, Arena Team Pwnage, Key Grip...
- Meneldill
Translators...
- German: leXin (inactive)
- Korean: troth75 (inactive)
- French: contrebasse, An_Braz
Many of the default speeches were blatantly stolen from...
- Cryolysis2
- Necrosis
- LunarSphere
- Ultimate Warcraft Battlecry Generator
- RPHelper2
Thanks for the open license guys! I hope you like what I did with it.
Additional Content Packs Written by...
- Stonarius
- Meneldill
- leXin
- troth75
- Folji
- Dire Lemming
- Duerma
Special thanks to the authors of these addons that I used for copy-paste... *Ahem* I mean example code...
- Titan
- Omen
- Recount
- Healbot
- Mountiful
- WinterTime
- the WowAce libs
- RPHelper2
Additional thanks to...
- Blizzard Entertainment for this great game! ... hire me??
- The community on the wowace forums
- curse.com
- Microsoft Visual Studio, SubVersioN, and TortoiseSVN
- Texas Instruments for enabling E.T. to phone home
- The Order of the Stick
- Mom and Dad
- YOU!!
SpeakinSpell is made from 83% Recycled Materials.
No animals were harmed in the making of this addon.
... Well, the hunter popped a sheep with his aoe, but I resheeped with my /cast [target=focus] macro, and automatically said "Baaah! sheeped again <target>?!" and it was all good...
Any chance we could see support for the mage buff "Arcane Language", which allows your character to speak all the languages of your faction? Currently it only allows "common" and then one other random language of the ones available. Choosing "random" only has it trigged between the two choices, not all 6 or 7 langauges.
That would be a great feature. I created ticket 197 to track this idea.
http://www.wowace.com/addons/speakinspell/tickets/197-mage-buff-arcane-language/
Holy cow, this addon is too complicated. Just click on the SS button of the spell book and setup the phrases already.
I've been trying to setup the monk's Touch of Death and I just can't do it. The addon won't find the spell, even when using the (clever but apparently useless ?) spell book's SS button. And my chat is flooded by the output of the /ss recent command.
Edit: why do I have to cast the spell for the addon to see it ? The "recent events" feature is clever, but don't force it as we can't always cast the spell we want to add an event to. The monk's Touch of Death is a good example.
Part of the complexity of SS comes from the challenges of dealing with the massive number of possible event triggers. There are thousands of spells and items and similar events that can trigger SpeakinSpell, and Blizzard adds new ones to the game all the time, with patches, and holiday events. Rather than maintain a built-in list, it was easier to make SpeakinSpell capable of learning about all the new content for itself while you play, instead of releasing a new version of SpeakinSpell every month (especially since I don't have an active subscription anymore).
If SpeakinSpell has seen you cast Touch of Death at least once, then you should be able to add speeches for it via the spellbook buttons or /ss create. The spellbook buttons are the same as going to "/ss create" and typing the name of the spell. If you press the spellbook SS button or go to "/ss create" but the spell isn't in the list there, then SpeakinSpell hasn't seen you cast it yet, and even though it's in your spellbook, that's not enough for SpeakinSpell to know what kind of spell it is (cast bar, channeled, or instant) which matters for how to detect and announce the spell. SpeakinSpell needs to see you cast it to learn those details, so it knows what kind of triggers in can detect (i.e. start casting vs. start channeling, etc).
There is a built-in list of spells in SpeakinSpell, based on what it learned from my personal game play experience, but it's severely outdated because I don't have an active subscription anymore, so it basically stops at level 80.
Is it possible to add an event for someone saying something in a chat channel? got a guy that always says the same thing in chat when ever he logs on or enters a zone would be great fun to counteract with that.
That feature doesn't exist yet, but it's in the backlog as ticket #142:
http://www.wowace.com/addons/speakinspell/tickets/142-trigger-on-custom-words-other-than-ding/
You can vote for that ticket to boost the priority. I haven't added any new features in a long time, but I still _want_ to, so if the opportunity ever arises, the votes will matter.
Brought me a lot of fun, not just on my RP characters :)
Is there a generic fear event that can be used rather than different fears each having their own event?
No, but you can redirect many events to each trigger a shared speech list by using "/ss macro ___"
I do that with my hearthstone messages.
I create an event called "/ss macro hearth"
Then I put in all the speeches I want to associate with when I use a hearthstone or other item. I even copy some speeches from the given "When I start casting Hearthstone" templates, and I edit some of them to a small degree.
then under any spell that works like a hearthstone, I give it my little /ss macro hearth, and they all work like a charm.
This is useful if you prefer to use The Innkeeper's Daughter from drarven archaeology, or the ruby slippers from the theater event in Karazan, and any other hearthstone equivalents.
As for the garrison hearthstone event, I replace the <home> with "the/my garrison" since it doesn't return you to the inn your hearthstone is set to. One of my speeches is, "I can't believe I came all the way out here to get spider eyes and I have to bring it back to my garrison! I mean, sheesh! That's what my followers are supposed to do!"
Is there a way to adjust the random % for all events?
Not yet but that feature could be added. I created the following ticket to keep track of this idea:
http://www.wowace.com/addons/speakinspell/tickets/195-global-chance/
Is it possible to have default set with no speeches loaded?
How do I erase all the defaults and start from a clean slate?
Type "/ss eraseall" to erase all your data. This includes any defaults as well as any custom speeches you've written.
Hello! I need some help. With the part of the Add-on that was "borrowed" from RPHelper's speeches (specifically Exiting Combat), I only get this one... "The Sin'dorei have prevailed". Now this would be fine if I was playing my Blood Elf Characters (though I still would like varitey)... but I was on my Tauren... which makes it a little weird. I know a just little bit about .lua, and based on this:
name = "RPHelper's Blood Elves",
desc = "Speeches for Blood Elves taken from RPHelper",
Attributes = {
race = "BLOODELF",
selected = true,
},
If I am on my Blood Elf, I should get Blood Elf messages depending on the situation (in this case exiting combat). But if I am on my Tauren, I would expect to get Tauren messages:
{
name = "RPHelper's Tauren",
desc = "Speeches for Tauren taken from RPHelper",
Attributes = {
race = "TAUREN",
selected = true,
},
But in my saved variables folder for SpeakinSpell, all that is there on every character is:
},
["COMBATEXITING_COMBAT"] = {
["DetectedEvent"] = {
["type"] = "COMBAT",
["key"] = "COMBATEXITING_COMBAT",
["spellname"] = "Exiting Combat",
["name"] = "Exiting Combat",
["eventname"] = "Exiting Combat",
},
["Messages"] = {
"The Sin'dorei have prevailed.", -- [1]
},
Is there any way to fix this? There are some really great and funny texts that are available to other races... I would love to see them. Is there any other information you need me to provide for further assistance to you? Please let me know. Thanks!
Julia HB
The data you found in the lua code drives the "/ss import" screen. The race settings there control only what speeches are offered when you import those language packs based on your currently logged-in character. After importing the speech, the race it was intended for is forgotten, and SpeakinSpell doesn't have the best features for handling that.
You can approach this issue in two ways:
1. Go to the general settings "/ss options" and turn off "share speeches between all characters". This will create a separate copy of all your current speeches under all of your different characters. Then login to each of your characters, go into "/ss messages" and edit your current speeches for each character to suit your tastes for that character. This is an intuitive and easy option, but makes it more challenging to maintain all of your speeches as you want to add and remove them over time, because all of your different characters' speeches must be maintained separately after that.
2. Continue to share speeches for all characters, and create a redirection macro that triggers a different event depending which race or toon you're currently logged in as. This is somewhat more powerful, but less intutiive for most people.
A) Go into "/ss messages" for the event "exiting combat" and change the speech list to always say 1 speech "/ss macro exit combat playerrace" Put angle braces around "playerrace" because it's meant to be a substtution. If I put the angle brackets here, it doesn't show up properly, because of some HTML stripping issue with Curse.
B) Set this as the only speech, with 100% chance to fire, and no cooldown. Thus, every time you exit combat, you will automatically trigger this slash command "/ss macro exit combat playerrace" with your current toons' race substituted. (If you want, you can also change the random chance and cooldown at this level, and add additional speeches that work for all races)
C) Create/edit speech events for "when I type: /ss macro exit combat blood elf" and "when I type: /ss macro exit combat tauren" and other races if desired. You can put your race-specific speeches under these events.
There's more on this feature in the user manual "/ss help" chapter 11 "Custom Macros" and in Aetheron's Guide here:
https://docs.google.com/document/d/1wXTHXWNUCTRyiEgCl8AkWUfuuteaXI2VWEdD4d2WqkQ/edit
I have ideas for making a better feature design for handling this more easily and intuitively, and that's discussed in ticket 148 here:
http://www.wowace.com/addons/speakinspell/tickets/148-overlapping-content-packs/
Thank you very much! I appreciate the help! I will see if I can implement it today! ^_^
At long last, some bug fixes... Enjoy!
--------------
6.2.3.01
--------------
Updated TOC for WoW patch 6.2
Fixed the [SpeakinSpell] tag's clickable link
Spellbook buttons now go to "/ss create" instead of "/ss messages"
Fixed "use instance if available" option
Fixed pet and mount event triggers
Yeah!
Best. Add-on. Ever.
Looking at the documentation, there's no way the addon handles Plurarls? Right now i'm playing a blood elf and I've run into the issue where I'm trying to say Blood Elves, but I get Blood Elfs.