LinsaneFC / RasenBot

3 stars 0 forks source link

EPIC - Ability to move users based on the following parameters #1

Open LinsaneFC opened 2 years ago

LinsaneFC commented 2 years ago

This feature is to add a command that can auto-move users that are in incorrect voice channels. We will be utilizing the activity status' of server members to determine their destination voice channel (VC).

This list is currently in order of priority. Please discuss/comment if there are any conflicting issues.

  1. X players playing a game Y people not - Outcome: Move whole group to the proper game channel
  2. Split groups in a VC (>1 in each group). IE: 3 players playing 1 game, 2 players playing another - Outcome: Move 2 separate groups into proper game channels
  3. 1 player playing game and all others not - Outcome: Move entire group to proper game channel
  4. 8+ people playing the same game - Outcome: If possible, split group in half into two separate channels (IE: Val 1 and Val 2) or all in one VC
  5. 1 group in wrong VC but destination already has people (IE: Both groups playing Val. One in Val 1 and one in RL) - Outcome: If possible, move group in wrong VC to a second game channel (IE: Val 2)
  6. 1 Person Streaming VS Code and no one else playing anything (Spotify counts as nothing) - Outcome: Move everyone to Work/Study Lounge.
  7. 1 Person Streaming and everyone else not playing anything (Spotify counts as nothing) - Outcome: Move everyone to Cinema. If Cinema is occupied, move to Ichiraku.
  8. No one playing anything but Rythm/Rythm 2/Chip in channel (Spotify counts as nothing) - Outcome: Everyone move to Music
  9. No one playing anything (Spotify counts as nothing) - Outcome: Everyone move to Ichiraku

Some things to consider/potential obstacles...

  1. Interesting voice channel names (such as those with emojis)
  2. Efficiency and cleanliness of code
  3. Being able to specify exceptions or only applying the algorithm to one group and not the entire server.
  4. What to do in the case where the server doesn't have enough VCs. (IE: Having 3 groups playing Valorant but only 3 Valorant VCs)
LinsaneFC commented 2 years ago

We can also eventually expand this to include ML and AI (just a little bit) so that we can find some good parameters and constants (as weight) for determining when the state of the VCs is past a "bad enough threshold" such that the bot will be triggered to automove everyone in the VCs according to the algorithm. This feature should also be able to be turned on/off.