This works if you are me or have a fair bit of know-how.
- .NET 10 SDK (Windows, x64)
- A Discord bot account with a valid token
- A Steam account for message bridging
- ffmpeg (for Coqui TTS audio conversion, optional)
- Rename
App.config.exampletoApp.config - Edit the values within:
BotToken— your Discord bot tokenSteamUser/SteamPass— Steam credentials (required for Steam→Discord TTS bridge)- TTS engine settings (optional, for Coqui TTS)
- Build and run:
dotnet build
dotnet run!tts link <steamid> [voice] [rate]- Link Steam account to Discord!tts unlink- Unlink Steam account!tts verify- Check current link status!tts join [channel_id]- Join voice channel (auto-detects if no ID provided)!tts leave- Leave voice channel!tts changevoice <voice>- Change TTS voice!tts changerate <-10 to 10>- Change speech rate (10 is fastest)!tts changeserver- Change server!tts voices- List all available voices!tts say <message>- Speak a message via TTS (Discord-native, no Steam needed)!tts help- Show help
All commands are also available as slash commands (e.g., /link, /join, /changevoice, etc.)
- System Voices: Microsoft David Desktop, Microsoft Zira Desktop, etc.
- Coqui TTS Voices: Any voice starting with "CoQui" prefix (e.g., CoQui_female_1, CoQui_male_1, etc.)