Discord bot for custom sound effects and soundboards
Go to file
2021-09-16 22:34:45 +01:00
.cargo cargo config. extracted play functionality. volume can be modified hopefully 2020-05-19 16:29:57 +01:00
.idea roles are now stored individually on the guild. 2021-09-03 11:33:55 +01:00
audio added a couple of ambience sounds 2021-03-27 17:56:15 +00:00
migrations roles are now stored individually on the guild. 2021-09-03 11:33:55 +01:00
regex_command_attr updated serenity and songbird versions to latest 2021-08-13 14:20:45 +01:00
src updated slash cmd builder. soundboard command no longer allows multiple of the same button 2021-09-16 22:33:19 +01:00
.gitignore gitignore 2020-09-03 14:56:08 +01:00
Cargo.lock ver bump 2021-09-16 22:34:45 +01:00
Cargo.toml ver bump 2021-09-16 22:34:45 +01:00
LICENSE Create LICENSE 2020-09-21 09:26:55 +00:00
README.md corrected versioning. updated readme. removed client_id field from environment. now sends guild counts by shard. tagged info message with bot version 2020-10-24 11:15:17 +01:00
rustfmt.toml rustfmt. removed gating on creating user rows for join sounds 2021-09-16 22:04:48 +01:00

SoundFX 2

The complete (second) Rust rewrite of SoundFX

SoundFX 2 is the Rust rewrite of SoundFX. SoundFX 2 attempts to retain all functionality of the original bot, in a more efficient and robust package. SoundFX 2 is as asynchronous as it can get, and runs on the Tokio runtime.

Building

Use the Cargo.toml file to build it. Simple as. Don't need anything like MySQL libs and stuff because SQLx includes its own pure Rust one. Needs Rust 1.43+

Running & Config

The bot connects to the MySQL server URL defined in a .env file in the working directory of the program.

Config options:

  • DISCORD_TOKEN- your token (required)
  • DATABASE_URL- your database URL (required)
  • DISCONNECT_CYCLES- specifies the number of inactivity cycles before the bot should disconnect itself from a voice channel
  • DISCONNECT_CYCLE_DELAY- specifies the delay between cleanup cycles
  • MAX_SOUNDS- specifies how many sounds a user should be allowed without Patreon
  • PATREON_GUILD- specifies the ID of the guild being used for Patreon benefits
  • PATREON_ROLE- specifies the role being checked for Patreon benefits
  • CACHING_LOCATION- specifies the location in which to cache the audio files (defaults to /tmp/)