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.
- Entertain yourself, your guild, and your PuGs
- 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
- 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
- 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
- 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.
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
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.
- 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 ...
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).
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.
SpeakinSpell was created by...
- Stonarius of Antonidas
Additional coding by...
Primary Beta Testing, Arena Team Pwnage, Key Grip...
- German: leXin (inactive)
- Korean: troth75 (inactive)
- French: contrebasse, An_Braz
Many of the default speeches were blatantly stolen from...
- Ultimate Warcraft Battlecry Generator
Thanks for the open license guys! I hope you like what I did with it.
Additional Content Packs Written by...
- Dire Lemming
Special thanks to the authors of these addons that I used for copy-paste... *Ahem* I mean example code...
- the WowAce libs
Additional thanks to...
- Blizzard Entertainment for this great game! ... hire me??
- The community on the wowace forums
- Microsoft Visual Studio, SubVersioN, and TortoiseSVN
- Texas Instruments for enabling E.T. to phone home
- The Order of the Stick
- Mom and Dad
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...
Fixed bug with the racial language selection.
Fixed a bug that would crash the SpeakinSpell interface if opened during combat.
Note: Memory usage stats are not available during combat.
Updated the advertisement function to work in instance channel
added "Use Instance Channel if Available" option. Enables the use of the
Instance Channel for a speech if the channel is available. (useful
to automatically announce speeches that are already set for party or
New Feature Spellbook integration - look for a button labeled SS associated
with each spell. it will automatically open the SpeekinSpell editor
with that spell selected as the fiter search.
upgraded to full release to get back into wide circulation
"up to date" for WoW 5.4
fixed code for arena data that was broken when arena teams were removed.
this is the only bug fix in this release as it was a terminal bug.
No other reported non critical bugs have been addressed.
Speakinspell is once again alive.
"Up to date" for WoW 5.1
Added event triggers for fading buffs and debuffs
Added support for the Instance channel (/i)
Blizzard has removed the Battleground channel (/bg).
Your settings will be updated automatically to use the new Instance (/i) channel instead.
Added 2 new substitutions:
<companion> will supply the name of your summoned vanity pet companion
<mount> will supply the name of the mount you're currently riding
Added 4 new event triggers under the category of "Misc. Events"
- Summon Mount
- Dismiss Mount
- Summon Companion Pet
- Dismiss Companion Pet
The default speeches have been updated to use these new events instead of a separate event trigger per related spell
Fixed Lua errors while in a party or raid
Compatibility for WoW patch 5.0.4 (minimal repairs / no new features)
Fixed implementation of slash commands (/in, etc)
Fixed a lua error related to using "/ss macro <substitution>" and [Click Here] links
4.3.0.03 - beta
Added localization support for Simplified Chinese (zhCN)
- The translation is only about 50% complete at this time
Fixed /script speeches for WoW patch 4.3
TOC update for WoW patch 4.3
Fixed <target> substitutions in default speeches for Aimed Shot (all hunters) and Talk to Vendor (Night Elves)
Fixed detection of buffs and debuffs (and possibly additional combat log events)
"/ss messages" GUI should now allow you to scroll down all the way
Removed the last remaining references to "strudel" from the built-in ads and default speeches
Added Cataclysm/Firelands factions to the default <randomfaction> word list (English only)
The default global cooldown is now zero (down from 10 seconds)
Disabled some debug messages that were stuck on
FIXED: "you don't know that language" errors
* This would occur for speeches that were set to use the racial language, combined with sharing speeches between toons, one toon would not know the others' racial language
* It is no longer necessary to set "Always Use Common" to work around this error.
BANDAID: When creating a new character...
* if "share speeches for all toons" is enabled,
* SpeakinSpell will NOT automatically import ANY default starter speeches for the new character.
* You may still use "/ss import" to setup new characters to use these default speeches (and more)
Fixed compatibility with WoW patch 4.2.0
(minimal) Compatibility repairs for WoW patch 4.1
* fixed TOC version for 4.1
* fixed data sharing network
* removed remaining references to strudel from the default speeches (now cake, English only)
* summoning stones
* reported errors with whispers (cross realm?)
* "you don't know that language" errors
* guild achievements
* buffs, debuffs, and procs
Fixed a reported Lua error at load time: attempt to index field 'Networking' (a nil value)
Tol Barad and Wintergrasp now share the same scenario of "World PVP"
Fixed Lua errors from WoW patch 4.0.6
Fixed errors with detecting "ding" in party and guild chat
Fixed a Lua error that could occur during login
Removed the SpellIdCache and the related lag-producing search to match a spell name to its ID
- New in WoW 4.0, spell IDs are now reported by the Blizzard API events like UNIT_SPELLCAST_START, so we don't need to search for an ID that matches the name anymore
Fixed a Lua error in "/ss import"
Fixed a case where <targetclass> was still using the target's name for NPCs instead of "NPC"
Fixed minor inaccuracies in the memory usage report
Fixed a Lua error for French and German game clients
Theoretical repair to a Lua error (couldn't reproduce the problem)
- When one of your SpeakinSpell speeches is a slash command like "/cheer" the invisible chat frame used to run the slash command is now created on-demand, instead of when the addon loads.
The 2-year Anniversary Release! - good enough to stop calling it a beta
If you skipped the beta versions, please save a backup copy of your saved data, and read the release notes below for 4.0.1.01 - BETA.
The interface options now live outside the Blizzard interface options frame
- If you browse in the options for Escape > Interface Options > Addons > SpeakinSpell, you will now find a single button that says [/ss options] and opens the real options windows
- The SpeakinSpell options GUI is now larger, movable, and resizable without the use of LibBetterBlizzOptions
- This also fixes a problem with loading the GUI on-demand
Restored <rank> as a substitution in speeches
- This still shows the Polymorph animal (sheep, pig, etc) and ranks of profession skills (journeyman, master, etc)
- This can be used for redirects to separate speech lists for a specific rank by using "/ss macro <spellname> <rank>"
4.0.3.01 - BETA
* Partially translated into French
* <targetrace> now also works on mobs = Humanoid, Beast, Dragonkin, etc. (on target players, this still returns Human, Tauren, etc)
* <targetclass> now returns "NPC" for NPCs instead of their name
* "/ss macro <substitution>" can now be used as a pointer to conditional speeches that are based on the results of the substition, for example speeches you want to use when casting Heal on a target Dwarf can be directed through "/ss macro <spellname> <targetrace>" and written in "/ss macro heal dwarf" to avoid saying those speeches on non-dwarves.
* When using "expand macros as lists-only" undefined single-line macros will be removed from the expanded list of possible speeches, so that another speech will be selected, instead of prompting you to [Setup New Event] for this undefined macro
* When creating a new event (/ss create) the list of random speeches will now be empty, instead of showing some examples
* Loading is a little faster
* SpeakinSpell_Defaults is now a separate Load-on-Demand module containing a large amount of data that you don't need most of the time, saving memory
* The Yell channel is selectable again
* Achievements you earn are no longer treated as achievements earned by guild members
* Added safety checks for nil value errors
4.0.1.01 - BETA
(Mostly) Compatible with WoW patch 4.01
- Some known issues remain, which is why this is still a beta.
BACKUP AND CHECK YOUR SAVED DATA! (/ss messages)
Make a backup copy of your saved data file as a precaution to avoid losing your custom speeches!
/World of Warcraft/WTF/Account/<your name>/SavedVariables/SpeakinSpell.lua
Any ranked spell announcements in your saved data will be merged automatically to the rankless version of that spell
- ATTENTION MAGES: you may now have Biscuit speeches (from Rank 1) mixed into your Ritual of Refreshment speeches (Rankless Ritual of Refreshment conjures Strudel at level 80). You may also have a problem with Polymorph (see known issues below)
Spell Ranks have been removed from the game, and from SpeakinSpell
- removed substitutions for <rank> and <spellrank>
- removed the "Show All Ranks" search option
- removed "(Any Rank)" from event names
- removed all special logic related to announcing only the ranked or rankless version of an event when both are defined
- updated the default spell triggers for new installs and [/ss reset] to remove obsolete spells
The list of known-good event keys has been reset since we don't trust it
- new keys will be learned as you play and added to future releases
Added SpeakinSpell_Patches: a load-on-demand module containing the data upgrading functions which are needed only once per character after updating SpeakinSpell to a newer version
Repaired Lua error thrown by "/ss eraseall"
Updated embedded libraries
* Something appears to be wrong with saving and restoring your saved variables. If you change your speeches, the changes might not save properly after you logout.
* Blizzard removed several spells from the game. In an effort to avoid deleting your custom speeches, SpeakinSpell will NOT clean up obsolete speeches for spells that no longer exist. You will have to fix that manually if it applies to you (/ss messages). There may be similar problems in the default speeches, which have not yet been reviewed for this issue.
* MAGES: Your Polymorph speeches may be thoroughly broken.
Fixed a Lua error in the nolib distribution: Couldn't find inherited node "SpeakinSpellEditBoxTemplate"
Repaired a packager error that was unexpectedly renaming the guiwrapper.lua file.
-- NEW FEATURES --
Added new combat events: I gained aggro / I lost aggro
- Applies only to your target and focus, and occurs redundantly with entering/exiting combat events.
Added to the network data sharing GUI: show the list of players we have synced with during this session, and what version of SpeakinSpell they're running
Added a new slash command "/speakinspell eraseall" to erase all speeches for all event triggers
- WARNING: there is not yet a confirmation prompt to ask if you're sure. Only do this if you're sure you want to erase everything you wrote!
-- BUG FIXES --
Fixed a bug that was using German default speeches in all versions of the game client (not just the German game client)
Fixed a bug that was blocking some default content from loading with new installs, and during "/speakinspell reset"
- This applies to battlecries, <randomfaction>, <randomtaunt>, summoning stones, hearthstone, mounts and pets, death cries, guild achievements, and some raid boss events
Fixed a Blizzard bug: when /follow breaks, ignore redundant notifications from the API, to announce ending /follow exactly once per beginning /follow (down from 3 times)
Fixed a bug with slash commands such as "/ss sync playername" or "/ss ad playername" which was including the separating space as part of the ' playername' which caused errors that there was no such player
-- BEHIND THE SCENES --
Divided the addon into multiple modules to help with performance
- The GUI will not load until called for.
Improved localization support using GlobalStrings
-- CONTENT --
Added new default speeches for all classes and races (except for Shamans, sorry)
- adds most speeches from RPHelper2
- repairs some spelling and grammar errors in various default speeches
Added support for announcing combat pets' independent actions
Fixed <targetclass> ... again
Data Sharing event: "Found a SpeakinSpell User" now works correctly
Added 34 default speeches for Summoning Stones
- upgrading users may use "/ss import" to import the new macros
Bug Fix: <targetrace>, <targetclass>, and gender forms now work better on targets who are not in your party or raid
- This info only works on players in your party or raid, your selected target, focus, and mouseover. Other targets' race, class, and gender information is unreliable
Bug Fix: When using the setting to "Share Speeches for All Characters" and then logging in to a new character for the first time, your SpeakinSpell settings will no longer be reset to defaults.
- applicable defaults for the new character's race and class will be imported automatically
Bug Fix: Fixed the default event hook for "Resurrection: Start Casting (I'm the caster)" so that it works for new installs.
- saved data will also be corrected by the upgrade if applicable
The diagnostic function to "Show Why Event Triggers Do not Fire" now shows the % chance or cooldown setting that was in effect
Not a beta!
LibBetterBlizzOptions is no longer embedded, since it is not technically required.
- It is still highly recommended for use with SpeakinSpell as a separate install
The packager will now ignore developer files (reduces download size slightly)
- Interested programmers are still encouraged to use SVN to access the SDD.doc and other developer files that aren't needed to run the addon
3.3.5.04 - beta
Trying to make packager use head revisions of Ace
3.3.5.03 - beta
Added some links to the help file
Fixed a typo in default speeches
Fixed some potential nil value errors in the GUI
Changed packaging to use .pkgmeta instead of hard-embedding libraries
3.3.5.02 - beta
- No visible impact is intended in this area (yet), but the following elements have been cleaned up or refactored:
- localization support overhauled for non-English game clients
- cleaned up slash commands implementation and related usage of AceConsole-3.0
Fixed Lua errors from using <targetclass> and <targetrace> without a target
Fixed a bug with "/ss reset" leaving remnant deleted spells in the GUI
Removed default speeches for Blessing of Protection
3.3.5.01 - beta
Added a speech event hook: Data Sharing Events (Received): Found a SpeakinSpell User
- This event is fired once per login session when the data sharing feature handshakes with another SpeakinSpell user for the first time. (unreliable at detecting versions older than 3.3.5.01)
- Supports the following substitutions:
- <caster> and <target> are both the player who was found
- <version> is the version of SS they are running
- and all other standard substitutions apply as usual
- Skip unnecessary data patch functions that you already ran by logging into an alt.
- "/ss import" will not suffer an error if you have multiple alternate characters with the same name on different realms
- Non-English game clients will no longer use the English list of default known event hooks
- Fixed WoW 3.3.5 vs. voice emotes (/cheer) and other slash commands in your SpeakinSpell macros
Data Sharing Network Communications:
- Removed the SilentSendAddonMessage module that silences "you are not in a raid" spam error messages. This will be rereleased as a stand-alone addon because this functionality is out of scope for SpeakinSpell.
- fixed the logic that SpeakinSpell uses for which addon communication channels are valid in different kinds of groups or scenarios.
CONTENT UPDATE - NEW MACROS! (and some dumb ones deleted or reworded)
- Use "/ss import" to browse and import the ones you like
/ss macro pet
/ss macro mount
/ss macro attack or charge
/ss macro battlecry
Traveler's Tundra Mammoth
Combat Event: I Died
Misc. Event: Begin /follow
Achievement earned by someone nearby
Achievement earned by a guild member
Dropped the Flag (i.e. in WSG)
Malleable Goo (Putricide Boss Trick)
Data Sharing Events (Received): Collected an Event Table (Speeches)
Data Sharing Events (Received): Collected Random Substitutions
TODO export: Data Sharing Events (Received): Found a SpeakinSpell User
For all Healers: /ss macro rez
For Paladins: Divine Plea
For Mages: Ritual of Refreshment (Rank 2), Mirror Image, and all Alliance portals
For Death Knights: Army of the Dead
Added an Arena Content Pack
- This is optional and will not be enabled by default
- use "/ss import" to activate these announcements if you're an Arena player.
UPDATES TO THE DEFAULT SETTINGS for new installs
- Upgrading users' settings will not be changed by the update, but you may want to consider reviewing your choices for the following options.
Under General Options (/ss options)...
- The global cooldown is now 10 seconds by default (up from 0).
Reason: catches the occasional glitch where events are triggered twice at a time (i.e. guild achievement spam, and the occasional Blizzard bugs)
- The default setting is for "Share Speeches for All Characters" is now ON.
Reason: I assume that most people want to use the same macros when playing every different toon they have. Roleplayers who want to use different macros on different toons can still turn this off.
Under Network Data Sharing (/ss network)...
- Auto-Sync at Login is now OFF for new installs.
Reason: There's not enough new content out there to retrieve every time you login. I just type "/ss sync" or "/ss sync <target>" manually every once in a while if I notice another SS user to share with.
Fixed a bug for anyone who loaded the buggy 3.3.3.05 version, to remove repeating "macro macro" from converted macro events
Updated default event hook list
- Total known event hooks now: 5262
- New spells, buffs, debuffs, and auras are still learned when SpeakinSpell sees them for the first time
Fixed a bug when using [Click Here] and similar links to edit speeches for an event trigger
- It will no longer open to the wrong event if you had previously selected a different event category
Added a new diagnostic function to "Show Why Event Triggers Do Not Fire"
- see new checkbox under general options (/ss options), under the diagnostics group, near the bottom
- when a /ss macro event is used as a shared speech list, it will no longer be silenced by the global cooldown option
- when you toggle SS on/off using the options GUI, the minimap icon is now updated to show the different icon for on/off status (the battleshout icon is ON, and the white mask is OFF)
- also modified the label and tooltip on that option to clarify that manually typing an /ss macro or clicking a button for it is always enabled
- Another embedded library error to eliminate reliance on other addons: now loading CallbackHandler-1.0 before other libs that depend on it
Fixed an intermittent bug in the data patch function from the previous version, which was blocking SS from loading for some people who used the deprecated white/yellow damage events
The white and yellow damage events have been removed
- The excessive combinations of Crushing/Critical/Resisted/Blocked/Absorbed/Glancing/Killing Blow made these events practically unusable
- If you used these event triggers, your speeches have been preserved by converting them to /ss macro events
Added new event triggers for Combat Event: Critical Strike, and Combat Event: Killing Blow
- These new events are more generalized compared to the deprecated white and yellow damage events
- Note that both of these new events may be triggered simultaneously from the same attack, if you kill someone with a critical strike
- related bug fix: These events now also properly detect ranged attack "white hits" such as from a wand or bow
Fixed a bug with Combat Event: I Died
- suppressed redundant announcements that you died after you're already dead (work-around for Blizzard's bug)
Fixed integration with Titan Panel so that the "off" icon now displays when SS is off
Fixed an error with embedded LDB libraries so that SS will run correctly without relying on other addons to load the LDB libraries
A few performance enhancements
- moved some static tables into global space to avoid recreating them frequently
Added an option to share speeches and event triggers across all your characters
- see "/ss options" for the new checkbox for "Share Speeches for All Characters"
Fixed bugs with the silencer for "you are not in a raid" (SilentSendAddonMessage)
- This resolves a conflict with PallyPower, at the expense of getting more "you are not in a raid group" spam error messages from other addons' comms.
Fixed a bug that could open the wrong event's settings when clicking [Edit Speeches] in chat links
Added a new Global Cooldown option to silence SpeakinSpell for 0 to 600 seconds between announcing any event.
- The default is still 0 to preserve legacy behavior
Added new option to "Expand /ss macros as lists-only"
- The new checkbox is found under "/ss messages" just above the random speech list.
- To preserve legacy behavior, this option has NOT been turned on by default
- If you use the built-in default mount announcements, you may want to edit your settings to enable this new option to even out the random selection from the nested speech lists.
Added "/ss ad /g" for advertising SpeakinSpell in the guild channel (or explaining your spam)
Updated some outdated info in the help (/ss help)
Fixed a bug with missing embedded libraries which could have caused loading errors and/or the minimap button to fail
Fixed bugs with minimap icon
- now loads the OFF icon correctly at load time when applicable
- now correctly saves the position of the icon if you change it
Fixed a bug in the patch function for saved data older than 3.3.3.01
- was causing load errors for some people who skipped from a version of SS older than 184.108.40.206 straight to 3.3.3.01 without installing/running any version in between
At login, now uses ADDON_LOADED instead of VARIABLES_LOADED to check when saved variables are loaded
- this may fix a rare problem of user data becoming erased while logging in (could have occurred randomly during any login attempt)
Updated all 3rd party libraries to the latest versions
- This may fix errors I never saw or knew about, compatibility issues, and so on
Fixed issues with custom-made random word lists
- Applies to "/ss random" for the "New Word List" feature ...
- This will now correct for any errors in the way you type the name of your new word list
- (must be lowercase, and do not include the <brackets> or special characters like | or *)
- Your saved data will also be repaired automatically if you had a custom random word list that was not working
Added new event "Combat Event: I Died" for announcing when you die
The feature to "Show Setup Guides" is now OFF by default for new installs
- fine-tuned this feature to show [/ss guides] as a clickable link in every guide message
Cleaned up /ss ad macros
Added [Click Here] links to the chat, for easier access to SpeakinSpell settings and commands
The option to "Report Detected Speech Events" is now called "Show Setup Guides"
- This option has been enabled for all players updating to this version
- Setup guides allow you to [Click Here] to edit speeches or setup a new event
- you can [Click Here] to disable these guides from a welcome message in the chat frame
- A new slash command "/ss guides" will toggle the setup guides on/off
"/ss recent" is a new slash command to show setup guides for the last 5 events detected, and last 5 speeches announced
"/ss macro something" events are now immune to disabling SpeakinSpell speech announcements
- Manually triggering "/ss macro something" will still announce speeches
- For example, when I turn off SpeakinSpell to stop automatically detecting entering combat events (and everything else), I can still click my battlecry button to spam macros manually via "/ss macro battlecry"
Fixed event "Achievement earned by someone near me" will no longer occur for your own achievements
Fixed operation of <SpellLink> for "/ss macro events" to stop adding incorrect brackets to the display of "/ss [macro events]"
Fixed "ding" so it only works on a whole word match
Fixed a LUA error in the search function of the GUI
Added a hard cap of 200 search results to prevent stack overflows
Fixed potential LUA errors in saved data patch functions (for upgrading from very old versions)
Fixed LUA error in Korean koKR help file
Removed the Raid Warning channel option from 5-man scenarios
Blizzard disabled Raid Warnings in 5-mans in 3.3.0
Your SpeakinSpell data will be updated to use Party chat instead, if applicable
Added a safety check for a nil value (LastPageViewed)
Added a patch function to fix duplicate Enter/Exit combat events
Not a beta! (I hope...)
TOC update for WoW patch 3.3.0
Now comes with 4387 known event hooks out of the box (and still discoverable)
The network system no longer sends built-in data from the event hook list
Added time and date substitutions
<mdyhms> - 12/31/09 24:00:00
<mdy> - 12/31/09
<hms> - 24:00:00
<md> - 12/31
<hm> - 24:00
Added [Reset Event List] button to the Create New GUI to delete all collected event hooks
- Now knows 2230 (randomly) pre-recorded event hooks "out of the box", without having to record them first
- These will be merged into your existing list automatically - you shouldn't have to reset
Refined the addon API to allow addon-created event categories
SpeakinSpell:RegisterAddonEventType( "MYADDON", "My Addon Events", "My Addon Event: " )
Fixed various LUA errors
- split off LibSmartComm sub-component library to encapsulate the network engine core
- Added compression to the data sharing system
- The new compressed data sharing protocol will not talk to older clients (not even for new version alerts, sorry)
- Added a function to repair invalid data left behind by the previous few betas
- Added a list of known event hooks for "/ss create", used on fresh installs or will be added to your existing saved data
- Cleaned up the new Resurrection events
- Cleaned up the Data Sharing GUI
- Fixed minor bugs
- Updated the Help file
220.127.116.11 (beta) HOT FIX
Hot Fix for LUA error in oldversions.lua
- UNTESTED EXPERIMENTAL WORK IN PROGRESS
- This library provides smarter notifications for resurrection spells
- See the new category of "Resurrection Events"
18.104.22.168 (beta) HOT FIX
OOPS! accidentally left automated debugging functions enabled in the last release
ADDED: GUI controls to create and delete <randomword> word lists
ADDED: <randomword> word lists can now be shared through the comm system
ADDED: a search filter under "/ss create" to hide the event hooks that you already use
BUG FIX: Interrupted data transfers will no longer cause error message spam in the chat
i.e. "no such player as 'player' is online" and "you are not in a guild"
- should be more intuitive
- sync system protocol and UI redesigned to match intended usage model
- packet format changed. Older clients will throw LUA errors when they hear from newer clients. Sorry.
- better versioning system for network communications to prevent that in the future
- Comm Traffic diagnostic messages split into separate channels (with separate colors) for Rx/Tx
- Data Sharing Events changed - event hooks created from 22.214.171.124 might not be signalled
IMPORT NEW DATA GUI
- Enhanced to make it more obvious that this works for alts and content collected from other players
- cleanup of slash commands processing
- all slash commands now support <substitutions>
- "/ss ad <target>" simplified to remove the "/w"
- "/ss sync" and "/ss sync <target>" are the only remaining variations of /ss sync (others removed)
SUMMONING TARGET ANNOUNCEMENTS
Repaired <target> info used for spell channeling events
- this info is missing from the API, and will now use the value of <selected> instead of <lasttarget>
Added <lasttarget> substitution to replace the lost automatic function of <target> for channeling events
- This is the target of the last UNIT_SPELLCAST_SENT event
- usually this is the target of a spell-related event such as channeling start, but not always up to date
- <selected> is often more accurate than <lasttarget> unless you are doing something unusual with the way you're targetting your abilities
Added option to Show Comm Traffic under network settings
- this is also a new Comm Traffic channel option with a configurable color
Added event hooks that signal comm traffic events (for your own customized notifications)
- Data Sharing Event: Send Data
- Data Sharing Event: Receive Data
- Data Sharing Event: Auto-Sync With Player
- Data Sharing Event: General Auto-Sync
- Data Sharing Event: No New Events to Send to <target>
- Data Sharing Event: Ignored New Events List data from a newer version
- Data Sharing Event: Ignored Speech List data from a newer version
- Data Sharing Event: Collected Event Table (Speeches)
- Data Sharing Event: My Event Table was Requested
- Data Sharing Event: Each Packet Sent
- Data Sharing Event: Transfer Complete
Fixed various minor bugs
- comm traffic error spam saying: no player named 'player' is online
Fixed LUA error from automatic version checks
Fixed LUA error from automatic version checks
Added "/ss sync <target>" to perform a complete data sync with a specific target name
It's the SpeakinSpell 1-year Anniversary Edition!
Added a framework for network communication and data sharing through invisible chat channels
- "/ss network" opens a new GUI with related options
- "/ss sync" will cause an auto-sync between available SS users, also occurs automatically at login, and will become more automated in the future
- "/ss import" allows you to import shared speeches from other players
- Checks for newer versions of SpeakinSpell
- Synchronizes the list of new events detected for the "/ss create" GUI
The "/ss import" GUI can now be used to import speeches from your alternate characters on the same account
The list of new events detected (/ss create) is now shared account-wide instead of in separate per-character data
- Be warned this means you can now configure your warrior to announce when he casts your mage spells, even though that would be pointless
Random <substitutions> are now shared account-wide
Pronoun forms now support embedded substitutions marked with underscores, as in the following syntax:
Updated the in-game help with some features that had previously gone undocumented.
(features added in the previous release, and some <substitution> keys that snuck in over the past few months)
Renamed the white and yellow damage events to:
Combat Event: I caused White Damage (<damagetype>)
Combat Event: I caused Yellow Damage (<damagetype>)
Added new events:
Combat Event: I received PvP White Damage (<damagetype>)
Combat Event: I received PvP Yellow Damage (<damagetype>)
fixed bug: when creating a new event trigger (/ss create), the new event is now properly added to the event selection list under the message settings (/ss messages)
Dramatically increases the number of events that SpeakinSpell can announce!
(NOTE: the changes in this release are so extensive, I was unable to test some of them as much as I would have liked. I'm pretty sure it's all working, but if you find any problems, PLEASE report them)
Adds 20 new hooks to announce more events, in 4 new categories:
- Interactions with NPCs
- Combat Events
- Chat Events
The "System Event" category has been removed/renamed
- Enter/Exit combat events are now "Combat Events" instead of "System Events"
- "Whispered while in-combat" is now a "Chat Event" instead of a "System Event"
- All other "System Events" are now called "Misc. Events"
The following new speech events have also been added.
Please note that you must experience each event at least once in-game to populate the "/ss create" GUI to use these new events.
Please consult the in-game help (/ss help) chapter 11 for a complete list of all of these "other events" including these new ones and all the older ones in a comprehensive list, with info about additional options and features related to each of these events.
Misc. Event: Begin /follow
Misc. Event: End /follow
Misc. Event: Level Up
Misc. Event: a player sent me a rez
Misc. Event: Open Trade Window
Achievement earned by me
Achievement earned by Someone Nearby
Achievement earned by a guild member
NPC: Open Gossip Window
NPC: Talk to Vendor
NPC: Talk to Trainer
NPC: Talk to Flight Master
NPC: Quest Greeting
NPC: Open Mailbox
NPC: Enter Barber Chair
NPC: Exit Barber Chair
Chat Event: a guild member said "ding"
Chat Event: a party member said "ding"
Combat Event: Yellow Damage (<damagetype>)
Combat Event: White Damage (<damagetype>)
- These are both large groups of events
- <damagetype> is a string composed of all of the following that apply (in this order):
- Crushing, Critical, Resisted, Blocked, Absorbed, Glancing, Killing Blow
- If none of those apply, then it will be a simple "Hit"
- example event name: "Combat Event: Yellow Damage (Critical, Killing Blow)" but many other permutations are also possible
Adds options to change some of the colors used by SS
"/ss colors" will open this new options GUI screen
Adds the ability to announce a new "System Event: Whispered While In-Combat"
- This event will NOT be announced when you send a whisper to yourself
- allows you to auto-reply with a randomized comment, for example "/r sorry can't talk right now, busy fighting with <selected>"
- <target> is the target of the event, meaning you, the player, who was the target of the whisper
- <caster> is the author of the message whispered to you
- <text> is a special substitution supported for this event only, and is the content of the whispered message.
- This can be used to relay the whisper into party chat, for example "/p <caster> whispered me to say: <text>"
Fixed LUA error
The channel drop-down lists in the GUI now correctly show the player's customized chat channel colors
(even the default colors look more accurate)
Removed the Multi-RNG fix from the previous version
- A different solution will be added to address that issue in a future version
Added some buttons for managing /ss macro calls.
- see new buttons under "/ss messages" attached to speeches which call out a single "/ss macro thing"
Fixed interaction of the "Whisper <target>" option with the "Emote (/e)" channel option
- it now whispers an emote-formatted message, for example
Stonarius whispers: * Stonarius takes an action *
(instead of Stonaris whispers: takes an action)
Added speeches and additional support for Mounts and Pets
Added option to show single-line text edit boxes
Multi-RNG Fix: Now expanding macro contents to process recursive calls to "/ss macro subcategory" with a single RNG
- This creates a balanced distribution of random selections when you call out more than one /ss macro subcategory as separate speech lists for a single event
Added "Import New Data" GUI
- Allows you to search the content that comes with SpeakinSpell for any new speeches or <randomsubs> that you aren't using
- VERY flexible about letting you select what new content you want to use, if any
- "/ss import" now opens this window
Added some new content packs from Dire Lemming (Thanks!!)
- hit "/ss import" to see if any of these new speeches work for you (for your race/class and style)
Added new substitutions:
<playerrace> - your race
<playerclass> - your class
<race> - your race
<class> - your class
added tostring() conversions in all string concatenation statements with the ".." operator, as a safety measure against potential LUA errors
Added Racial/Roleplay language options
Messages GUI enhancements
- added option to show/hide groups of options
- added option to set read-only flags on each speech
- added delete and delete-all buttons
Fixed LUA errors
Embedded LibBetterBlizzOptions for a better overall experience with the blizzard options frame
Enhanced data structures to support upcoming features
(replaces DEFAULT_SPEECHES tables with Templates system)
Fixed LUA errors
More GUI touchups
Fixed: Will now ignore blank lines in speeches
Added a patch function to auto-upgrade <newline> to actual line breaks for use in the new multi-line edit boxes
(<newline> may still be used as a substitution)
GUI Overhaul: Better organization, labeling, and overall appearance
Added channel option: Self-Only Raid Warning
Fixed: Rebuffs now count as buff events and will be announced if applicable
Added "/ss toggle"
Changed "/ss" and "/ss toggle" now work the same way as right-clicking the minimap button
Various bug fixes - Removed "beta" designation
Fixed LUA error with spell links
Fixed LUA error with events that do not have any speeches
Enhanced <spelllink> to work on most spells now
(adds spell id cache)
Added "/ss memory" and memory display on the General Settings
Added support for Gender substitutions
- The simple form is: <target*male*female>
- More advanced forms like <mouseover's*his*her> target is <mouseovertarget*a boy*a girl|me>
- See the in-game help chapter 8. Gender for details
Improved Search GUI
- If search options are too limited, will now display "No Matching Search Results Found"
- normally limited to 100 results to get rid of the lag
- Fixed bugs with some of the search results
<scenario> - "The Arena", "A Battleground", "Wintergrasp", "A Raid", etc
<eventtype> - "Spells, Abilities, and Items (Start Casting)", etc
<eventtypeprefix> - "When I Start Casting: " etc.
Overhauled the substitution engine
- Possessive forms now work on all subtitutions
- Third Person |me parsing now works on all subtitutions, and when combined with possessive forms, as in <target's|my>
- Substitution data is now only generated if it is used (performance boost)
- Gender substitutions are now supported
Added a minimap button for easier access to settings
Fixed LUA error with new <playerfulltitle> feature for people who do not have a title.
This error was crashing the addon for all people without a title, even if you didn't try to use the new <playerfulltitle> substitution
Added a search box to the options GUI
- search settings are now shared between Message Settings and Create New
- includes a search option to show/hide all ranks
Added support for new event types:
- (UNIT_SPELLCAST_CHANNEL_START) When I start channeling: ___
- (UNIT_SPELLCAST_CHANNEL_STOP) When I stop channeling: ___
- (UNIT_SPELLCAST_FAILED) When I fail to cast: ___
- (UNIT_SPELLCAST_INTERRUPTED) When I am interrupted when casting: ___
- (UNIT_SPELLCAST_STOP) When I stop casting: ___
- (UNIT_SPELLCAST_SUCCEEDED) When I succeed at casting: ___
Added new substitutions:
<guild> - the name of your guild
<home> - the name of your home inn (hearthstone location)
<selected> - will show your selected target only
<mouseover> - will show the name of the target under your mouse
<arenaN> - Opposing arena member with index N (1,2,3,4,5).
<partyN> - The Nth party member excluding the player (1,2,3 or 4).
<partypetN> - The pet of the Nth party member (N is 1,2,3, or 4) (Added in 1.5.0).
<raidN> - The raid member with raidIndex N (1,2,3,...,40).
<raidpetN> - The pet of the raid member with raidIndex N (1,2,3,...,40) (Added in 1.5.0)
<vehicle> - The current player's vehicle.
<playerfulltitle> - your name with your title included
Also added support for all other UnitId values which may be used with the UnitName() API, including targets of targets:
You can append the suffix target to any UnitId to get a UnitId which refers to that unit's target (e.g. "partypet2target"). This appending can be repeated indefinitely (e.g. "playertargettarget"), though you will observe an attendant performance hit if you overdo it, as the game engine has to jump from target to target.
Random Substutition lists may now be edited (type "/ss random" to access the interface)
<randomtaunt> - a random mean name to call someone
<randomfaction> - a random faction's name
<randomboy> - a random boy's name (new)
<randomgirl> - a random girl's name (new)
<randomsilly> - a random silly word (new)
Added possessive substitutions which use the proper apostrophe for Stonarius' or Meneldill's, including:
...and most others
Added options for 3 new scenarios: Party Leader, Raid Leader, Raid Officer
Enhanced: <target> may now use the target under your mouse (UnitName("mouseover")) if the target is unknown, and <selected> and <focus> also fail
- this may help with the dead player who released
The <target|me> feature now works with ANY substitution, not just <target> and <caster>.
for example <pet|Junior> will say "Junior" if your pet has the same name as you.
If you cast a spell which triggers "/ss macro something", all substitutions like <spellname> and <target> are now passed down from the original spell
Code quality cleanup behind the scenes
Updated Korean translation (thanks troth75!)
Added "@$&*%!" as a <randomtaunt>
Enhanced instructions in the in-game user's manual for chapter 8 "Custom Macros"
Code quality cleanup behind the scenes
Adds guild and self-chat as selectable channels
Adds Wintergrasp Battles as a separate scenario from Raids or BGs
(it was using the raid scenario before)
<randomfaction> now has a chance to show the player's guild or arena team names.
New substitution variables...<realm>, <zone>, <subzone>, <playertitle>
New events for changing zones and sub-zones as you travel
New options to limit chat spam to once per combat and/or once per <target> name.
A couple minor bug fixes
Fixed the <newline> function
Added "Leroy" as a <randomtaunt>
Added 3 new substitution variables:
- will become the name of a random faction such as Horde, Alliance, Sindorei, Light, and over 80 more
- "For the glory of the <randomfaction>!" can become "For the glory of the Zandalar Tribe!" or many other random factions
- will become a random insulting name, such as Meanie, Coward, Punk, N00b, and over 20 more
- "Die <randomtaunt>!" can become "Die Nub!" or "Die Son of a Hamster!" or many more
- This will split a speech into more than one line of text, so you can say two speeches at the same time
- "For the Horde!<newline>/cheer" will say "For the Horde!" in your selected channel, and then make you do "/cheer" at the same time.
- (OOPS: this is not working yet in 3.2.0.02 - will be fixed in 3.2.0.03!)
Added several new default sample speeches for all classes
- includes a new default event for "/ss macro battlecry" with very many battlecries, inspired by the addon, Ultimate Warcraft Battlecry Generator, by NytewolfAU2k7
- includes a new system of race-specific and universal default speeches
- includes some nice suggested speeches by Folji
Adds Feature: [Import New Default Sample Speeches]
- look for the button under General Settings (/ss options)
- Merges your current settings with the default sample settings that come with SpeakinSpell.
- Your saved settings will be preserved, but new speeches will be added.
Updated backend WowAce libraries
- this might fix subtle bugs or things I thought were "not my bug" /shrug.
Fixed compatibility with WoW game client v3.2.0
- just a TOC update
Updated German translation and default speeches
Updated Korean Translation and default speeches
Added a feature to support any slash command in any message that you write for any event
This includes built-in emotes like /cheer, chat channel overrides like /s /y /2 /g etc
and any other non-protected command. /cast and other secure commands are not allowed.
Minor corrections to GUI option labels and tooltips
- expanding on the transition from "spells" to more generally speaking of "events"
It is now possible to announce 2 new events:
System Event: Entering Combat
System Event: Exiting Combat
updates to the Korean translation
when creating message settings for a new event, that event will no longer be removed from the Create New interface.
fixed a bug with "/ss ad /w" when applied to selected target
reorganized source code into separate files for growing room
Added event type filters to the options interface to make it easier to find what you're looking for.
Fixed a bug with missing information in the saved data needed to support the new event type filters.
The list of new events under Create New is now remembered between sessions if you relog or reloadui
Added support for Korean WoW game clients
Fixed a LUA error with the Whisper Target feature
Adds substitution variable <focus>
(I can't think of a good way to use it since <target> is pretty smart, but it might as well be supported)
126.96.36.199 (stable again?)
Fixed ranked vs. rankless spell event detection
- the Create New interface will now allow creating ranked events even if "any rank" events already exist for that spell
- "any rank" events now announce correctly (unless an event with a specific rank takes precedent)
<caster|I> now works
"<caster|I> cast <spelllink> on <target|myself>" works nicely
Fixed errors when upgrading from 3.1.2.03 to 3.1.2.05 data format.
- the EventTable is now created properly
- "_ event: login" is now updated correctly
This should do it for the major bugs in the recent beta versions.
Fixed non-deterministic order of applying patches to old saved data when upgdading to a new version
This should fix the main error encountered by many people when updating from pre 3.1.2.07 versions
Simplifies the data update code for updating to 3.1.2.07. Should be more reliable now.
Attempting to fix reported LUA error on line 1799
|File Name||Release Type||Game Version||Downloads||Date|