Do you have a discord server that likes to schedule events/games? Do you find organizing these events is akin to herding cats? Here is your solution!
- Overview
- The bot is on my server and I JUST WANT TO KNOW HOW TO JOIN EVENTS
- The bot is on my server and I want to create/host an event
- I want the bot on my server
- Credits and Support This Project
This bot facilitates creating lobbies that other Discord users in your server can join. It lets you specify a date and time, give a title/description, and set a capacity. The bot will keep track of who has joined (as well as in what order) and supports a waitlist (in case the event is a little too popular).
The bot will DM you and let you know if you are confirmed or waitlisted. When the event starts, you will receive another DM. If you are waitlisted and enough people leave that you get added, you will receive another DM. If the event gets cancelled, you guessed it, you'll receive another DM.
To leave an event after joined, de-select the emoji.
If you can't remember what you're signed up for, !list
will DM you what you've joined.
You can get a quick reference of all this if you send
!help
in your server
To create a session, use !create
.
Each discord user may only have 1 event at a time. If you have an active event when you attempt to create a new one, the old one will be closed (all attendees notified) and a new one will be created.
The ability to create sessions with a template (ie something like !create winston_draft
) is being looked at.
There are a variety of fields you can modify. They all start off the same way: !edit <field> <value>
. Replace <field> with one of the following fields and <value> with the value you want.
Fields:
- name
- capacity
- d (or description)
- date
- fire
- url
!edit name Casual Fridays
will set the session's name to "Casual Fridays"
!edit capacity 2
will set the capacity to 2 (and waitlist anybody above)
!edit d This is describing my event
will change the description to "This is describing my event"
!edit date 8 22 17:30
will set the date to Aug 22 at 5:30pm
Note: the bot only understands in the form
mm dd hh:mm
. This is planned to be expanded on
Note: the time chosen will be in the timezone the SERVER is on, NOT YOU. This has less potential to be changed (timezones are really hard in software), so use Google to adjust for you
!edit fire true
will turn off the waitlist and will fire as SOON as capacity is reached. Sessions default to false
which means the creator needs to manually start the event
!edit url <url>
will change the url the bot will send on start. Currently it will autogenerate a mtgadraft.herokuapp.com session.
As it may be necessary to send a quick update to the attendees, you can do so with !broadcast [all] <message>
. The [all]
means you can optionally include "all" to include the waitlist.
Replace <message> with the actual message you want, for example: !broadcast The event is being moved back 30 minutes
Include the waitlist: !broadcast all I'm increasing the capacity to 16 thanks to increased interest
To see session information, including who is currently signed up/waitlisted, use !info
When everything looks ready to go, use !start
If you no longer want to run a session you can choose to transfer ownership to another member.
Use !transfer
or !transferTo
followed by one of the following:
- @mention the new owner
- the user tag (which is the username#0000)
- the user id (you need to enable developer mode in discord) In addition, the new owner must be in the session already and must not already be running their own Session.
!delete
. This notifies everybody who's joined/waitlisted.
Head over to the installation guide (still a work in progress)
This bot was written as a hobby/side project, mainly to learn typescript. The intention is to allow this bot to be used on other servers, whether it's for the original goal of Magic: the Gathering drafting or for any generic session setup.
The software is free to clone/fork. However, if you like what you see and want to support more of it (or just buy me a beer), a donation would be most appreciated!
- This account (ianw11) is a BAT approved publisher. If you use Brave browser (or BAT tokens in general) feel free to leave a tip
- Ethereum/ERC tokens: 0xe2f8fC7bc4D582a8bD963509bB333C4495221636
- Paypal
- Venmo
Licensed under the MIT license.