A Guide to Using Discord Bots to Limit Misconduct During Online Tournaments

Old college threads.
Locked
User avatar
nickdai
Wakka
Posts: 113
Joined: Fri Mar 13, 2020 10:36 pm

A Guide to Using Discord Bots to Limit Misconduct During Online Tournaments

Post by nickdai »

With the beginning of the 2020 - 2021 Quizbowl season looking as though it will move online, I decided to make a guide for tournament directors on how to use discord bots for enforcing rules regarding misconduct. This guide can also be used for other discord servers in general, although some of the specifics are only applicable to Quizbowl servers.

Recently, with the numerous misconduct events, I decided to use a discord bot to help maintain rules regarding misconduct in the SoCal Quizbowl server. Although the server was normally safe from misconduct, the measure was taken mostly to be preventative. After discussing in the main Quizbowl server, I was encouraged by others in that server to post a guide here on how to use the bot features.

Setting Up the Server

I'm probably not the specialist you need for setting up a tournament server. Although I am very experienced with Discord commands, I do not have any real personal experience. I heavily recommend reading Ben Weiner's guide, where he links Mike Bentley's post in there.

Alternatively, Karan Gurazada's bot is a different method for creating a tournament server, which works out just as well. See his guide here.

The main difference here is that I am advocating for adding in another different bot to manage the server. While there are many other bots that can do the same function, I am only providing a guide for Dynobot. This is NOT my own bot. I merely found it online. You can add the bot here. Simply press the invite button, and follow the instructions on the link, and then you will be ready for the next step. Others have proposed similar bots, but as I have no experience with them and that I am super busy at the moment, I will not mention them. I can provide a guide for other bots later, or if someone else wants to, feel free!

Additionally, please set up a separate channel that can only be viewed by staff, depending on which ones you trust the most. To do that, click on the "Create Channel" button, which is a "+" sign next to channel categories, select "Text Channel," click on the switch that says "Private Channel," and then only select the roles that you trust (mainly for privacy reasons). In general I would recommend allowing only yourself (the TD) and other staffers. You should name the channel something along the lines of "server-log."

Setting Up the Bot

Once you have added the bot into the server, go to this link to set the bot up. Click on "Login with Discord" on the top right. Then click "Manage servers" in the top right. It will give you a list of servers that you manage. Choose the server that you are currently setting up the bot in (the tournament server). Inside it, it will give you a dashboard an a long list of options. To make this guide simple and clear, I will only address the important functions.

Proceed to click on "Modules" which is on the left. To limit the number of possible functions for now, I recommend turning off every single module other than "Action Log," "Automod" and "Autoresponder," leaving those on. A lot of the other commands are useful too, but I will address them later.

Action Log

After you have turned the other options off, scroll through the modules and find the "Action Log" module. Click on "SETTINGS" right underneath "Action Log." You can ignore most of the functions in the settings, but in the location where it says "LOG CHANNEL", there is a drop down menu where you can select the channel where you want events to be logged. Click on the drop down menu, and then select the channel that I previously told you to create, which we will call "server-log" (at least for these purposes.

Scroll further down to find the "EVENTS" category. Turn off all the events other than "MESSAGE EDITED" and "MESSAGE DELETED," leaving those on. This will allow all message deletions and message edits to be recorded.

Additionally note added later: Please tell your staff and players not to edit or delete their messages unless absolutely neccesary. This way the server log will not be clogged, and it will save the director much more time when reviewing the logs.

Now return to the list of modules.

Automod

Now, go into the "Automod" module. You start off in the "Settings" tab. You can ignore most of the functions, except for "BANNED WORDS," where you should click on the drop down menu, and select "Delete" and "Warn."

Additionally, if you want to, you can enable a "Delete" and "Warn" for functions such as "FAST MESSAGE SPAM," "IMAGE SPAM," and "EMOJI SPAM" to limit spam.

Next, move to the "Banned Words" list to There's a list of default banned words, but I recommend adding a few more words to the "Banned Words" list. You can probably decide for yourself what words to add.

Now return to the list of modules.

Autoresponder

Go into the "Auto Responder" module, and click on a button that says "Add Response." Inside it, there will a text entry location called "Command." Choose a custom command to put there. I used "???resources" (mainly because of overlap with other bots), but you can use whatever command you want. Whatever it is, be sure to let everyone in your server know what the command is, and tell them to type it whenever they want to to access a list of resources.

Leave the "Message Response" checked. Move down, and go into the "Response" text box. Here, you can type the list of resources to put there. This was a sample response. Note: There are a lot of things that can go in here. I am writing this post in a hurry so I can only put in the things that I can think of off the top of my head.
Nick's Sample Response wrote: Hello everyone, here is a list of resources that can be made immediately available to you:

Misconduct Form: https://tinyurl.com/qbmisconduct
PACE Code of Conduct: http://www.pace-nsc.org/nsc-code-of-conduct/
PACE Ruleset: https://www.pace-nsc.org/official-pace-ruleset/
Alex Damisch's Guide Addressing Misconduct: viewtopic.php?p=353686
Discord Misconduct Form: https://support.discord.com/hc/en-us/re ... 0000029731
Discord Guidelines for Community Behavior: https://discord.com/new/guidelines
National Suicide Prevention Lifeline: 1-800-273-8255

Do not be afraid of pinging the moderators and tournament director to inform them of misconduct or any questions! We are here to make this a safe place for everyone!
Move down, and click the "Add Response" button. You are now done!

Additional Functions

The bot has a lot of additional functions that can he helpful for your tournament. DO NOT use these functions if you are unfamiliar with Discord, since the above functions should already be more than enough.

Most of the modules I find unnecessary. The "AFK" function should not be used because if the TD is AFK for long periods of time for a tournament, maybe you should not be directing tournaments. The "Announcements," "Auto Message," "Moderation," and "Welcome" functions can all be accomplished by an active director. The "Fun," "Reminders," and "Tags" functions are not needed. The "Custom Commands" function is super cool and very useful, but I have no idea how to use it. Once I figure it out, this guide will be updated with something probably much more useful, since it will allow all of you do have access to even more cooler functions.

The one module that I want to bring your attention to is "Autoroles." The "Autoroles" function can save the TD a lot of time of figuring out what school a player goes to. Turn "Autoroles" on and click on "SETTINGS" under "Autoroles." Proceed to click on the tab that says "Joinable Ranks." In that tab, there will be a drop down list that says "Select Role." Click on the dropdown list, and then select a school role, such as "Westview," and then click on Add. Do this until you have added every single school role. Then click on the checkbox that says "LIMIT USERS TO ONE RANK." This will ensure that users will not click on a role of a school that is not their's in order to access other games. Go back to the modules list, and find 'Autoroles" again, and click on "COMMANDS" below "Autoroles." Make sure the "rank" and "ranks" functions are turned on, while the other functions are turned off.

To make sure the players know what to do, be sure to leave a message in the channel that they join that informs them of the commands, which are, specifically, "?ranks" (to access the list of joinable school roles) and "?rank [rank name]" (which allows them to join the school role they want to join).

Concluding Thoughts

These functions are only intended as a temporary method to keep online tournaments safe from misconduct. The "Automod" and "Action Log" allow the moderators and admins to know what is going on, so that players cannot delete or edit things they should not be typing, without the consequences. I recommend all moderators to go through the logs at the end of an online tournament to see if any misconduct has been going on. The logs record the deleted or edited messages, where the message was deleted or edited, who deleted or edited the messages, and when the message was deleted or edited. I have heard of tournaments where people send hateful messages, and then quickly delete them so that they will not be punished for their actions. While the mods and admins can be pinged, the actual offenses cannot be proved. This will offer a chance for those abusers to be punished, as evidence can be located.

The resources function just offers players a list of quick resources they can access at all time, without having to swap tabs which would require them to divert their attention from the game.

This however, is not a solution to end misconduct itself. Our community has had a longstanding history of numerous instances of misconduct, which are being addressed in a separate thread. This is merely a post I made to offer a few recommendations on how to limit misconduct in online tournaments, but there are so many other things to address. I will address my own thoughts on Quizbowl's history of misconduct in that thread.

I am unsure how commonly these functions will be used, and how effective they will be, but they will offer at least a preventative measure to many occurrences of online misconduct.

And just, as a parting message, please, please, please, for the love of God - act like decent people online. The fact that I have to make a post addressing preventative measures for misconduct is concerning, because ideally, none of this should happen in the first place.

I will update this post or post below when I have more information that I want to add. I do hope that my recommendations will be of use to many, as there is not much I have been able to contribute to Quizbowl's community, but at least this is something that I can do.

If you have any questions, comments, or things you would like to add, please comment below! This is all for the benefit of the community!

Edit: Added in the Discord misconduct form. I highly recommend informing your players about the Discord misconduct form so they can use it to report offenders as well, which can allow for those accounts to be suspended.
Last edited by nickdai on Tue Jul 14, 2020 5:07 pm, edited 1 time in total.
Nicholas "Nicc" Dai
戴若涵

Westview High School '21
University of California, San Diego '25
User avatar
nickdai
Wakka
Posts: 113
Joined: Fri Mar 13, 2020 10:36 pm

Re: A Guide to Using Discord Bots to Limit Misconduct During Online Tournaments

Post by nickdai »

I was originally intending on writing a follow up guide to this regarding recording all voice audio during tournaments where moderators could mark parts in the audio where they heard inappropriate statements or witnessed misconductive behavior that the TD can revisit later. However before I introduce that idea, I was wondering if this would be an appropriate or necessary measure, since I was told by numerous people that a recording of audio would be a direct violation of privacy. Could someone with a legal background or have strong opinions regarding this issue let me know?

The only incident I have heard of misconduct happening in were occasions that took place in text channels, but it’s always good to have preventative measures in place! Please let me know if this is a necessary implementation!
Nicholas "Nicc" Dai
戴若涵

Westview High School '21
University of California, San Diego '25
matthewspatrick
Lulu
Posts: 76
Joined: Tue Jul 15, 2014 11:30 am
Location: Wilmington, DE

Re: A Guide to Using Discord Bots to Limit Misconduct During Online Tournaments

Post by matthewspatrick »

Not a lawyer, but in brief...

In the US, whether you can record an interaction is mostly governed by state laws, and generally speaking, there are two types of state legal regimes:
  • "Two-Party Consent": despite the "two" in the name, this basically means "everyone about to be recorded must consent to being recorded. It's why when you call a customer service line, you get the "your call may be recorded" disclaimer--by continuing the call, you are implicitly granting consent
  • "One-Party Consent": you can record so long as any single party to the interaction OKs it. In a One-Party state, it is usually legal for me to secretly record a convo I have with you
Naturally in both regimes there are exceptions to these rules, and these exceptions will vary by jurisdiction.

Two things to keep in mind:
  • When you are hosting an event which crosses state lines, be mindful that you now have multiple sets of laws to consider
  • Be super-duper careful if any of your event's participants (including staff) who might get recorded are under 18. Even in a one-party state, recording minors without their guardians' consent might be illegal
Patrick Matthews
University of Pennsylvania 1989-94
NAQT Member Emeritus and co-founder
I do not speak for NAQT in any way, shape, or form.
Locked