Group Chat TTS

Gives every party and raid member a random text-to-speech voice and reads chat aloud.

File Details

GroupChatTTS-0.1.0.zip

  • R
  • Jun 22, 2026
  • 17.45 KB
  • 6
  • 12.0.7
  • Retail

File Name

GroupChatTTS-0.1.0.zip

Supported Versions

  • 12.0.7

Changelog

Unreleased

  • Replaced the name-prefix pitch overrides with leader pitch: whatever the party or raid leader says is read at max pitch, and it follows the role so it moves with leadership instead of matching a fixed name.
  • Settings panel under Interface > AddOns > Group Chat TTS for the on/off toggles and sliders, so you don't have to remember the slash commands. Open it with /gct options. The commands still work and stay in sync with the panel.
  • Split the single GroupChatTTS.lua into Core/, Chat/, and UI/ files. No behaviour change; the addon table moved from file-locals onto the shared GCT table.

0.1.0

  • Initial release
  • Reads party/raid/leader/raid-warning chat aloud via C_VoiceChat TTS
  • Assigns each group member a random, preferably-unique voice on join
  • Announces the assigned voice in chat + spoken sample
  • Queued playback, chat-escape cleanup, /gct settings command
  • /gct config — movable window to view/change each member's voice (with preview)
  • "Yell" mode: raid warnings + ALL-CAPS/!! messages read with raised pitch & max volume via SAPI XML prosody (/gct yell, /gct yellpitch)
  • /yell channel support: reads nearby players' yells (incl. your own), each with a random voice from a separate non-pruned pool (/gct readyell)
  • Language filter for random assignment (/gct langs; default English + Finnish); manual /gct config picks still allow any voice. Languages with no offline voice (Finnish) keep their Online voices despite excludeOnline.
  • Pitch-offset fallback: when distinct voices run out, reused voices get a distinct pitch so people still sound different (uniqueness over the voice+pitch pair)
  • Name-prefix pitch overrides (namePitchOverrides; default "Ale" -> max pitch)
  • Configure your own voice in /gct config (persists; used when readSelf/readYell on)
  • Mute while in combat, resume after (/gct combat, default on); also resets the speech queue on combat start/end so it can't get stuck silent
  • Markup test lab (/gct lab): try each markup feature per voice with sliders/dropdowns, record works/fails per voice (persisted), and /gct dumptests to print results