MQ2Discord¶
MQ2Discord
Issue commands from discord to EverQuest
Authors: alynel, Knightly • Config: MQ2Discord.yaml
Plugin that does pretty much what the name says, connects MacroQuest to Discord. Chat messages that match a filter get sent to a Discord channel, and any commands you enter in that channel get executed.
Commands¶
/discord {reload|process|debug|stop}
Settings¶
Here's an example MQ2Discord.yaml
# Token is your Bot's Oauth Token, read the docs to see how to get it. Don't share it with anyone.
token: OoughtNotShareYourTokenWithAnyone.ReadTheDocs
# This is your user ID and any other user IDs you want to allow to send commands
user_ids:
- 86753098675309
characters:
# Which character to activate this on
rizlona_Notgonnaknightly:
# This identifier is just a section, it doesn't actually matter. Call it what you like.
- name: rizlona_Notknightly
# Which channel you want your messages to go into
id: 90357689035768
# Messages matching this will be sent
allowed:
- "#*#tells you,#*#"
# Messages that match another filter, but also match this one won't be sent
blocked:
- "#*#s familiar tells you,#*#"
- "#*#corpse tells you,#*#"
# Messages that match this will @ everyone in the channel
notify:
- "[AlertMaster]#*#"
# What do you want to prefix messages to this channel with
prefix: ""
# Send when you connect to the channel?
send_connected: false
# Allow commands from this channel?
allow_commands: true
# How long after you send a response do you want commands echoed back to you?
show_command_response: 1000
# Can have as many characters as you'd like
rizlona_Alsonotknightly:
- name: rizlona_Alsonotknightly
id: 0000086753098675309
allowed:
blocked:
notify:
- "#*#Returning to Bind Location#*#"
prefix: ""
send_connected: false
allow_commands: true
show_command_response: 1000
# Optional sections for more advanced routing
servers: {}
classes: {}
groups:
- name: YourGroup
characters:
- rizlona_Notgonnaknightly
- server_OtherCharInGroup
- server_OneMore
channels:
- name: Deaths
id: '12345678901231351'
allowed:
- You have been slain by
blocked: []
notify: []
prefix: "[${Me.Name}]"
send_connected: true
allow_commands: false
show_command_response: 0
all:
- name: TellsChannel
id: '12345678901231351'
allowed:
- tells you
blocked:
- "|${Me.Pet.DisplayName}| tells you#*#"
notify: []
prefix: "[${EverQuest.Server}_${Me.Name}]"
send_connected: true
allow_commands: false
show_command_response: 0
Setup¶
- Create a server & channel(s) from the Discord client.
- Create a Discord bot & add it to your server: see Create a Discord Bot Account.
- Enable developer mode in the Discord app (Discord client settings -> advanced). See: Enable developer mode.
- Open the
MQ2Discord.yamlin a code editor. We recommend Visual Studio Code. ("notepad" is not recommended for YAML files!) - Enter the token for the bot in your
MQ2Discord.yaml. (The token you made in step 2.) - Enter your user_id (right click your username in Discord, copy id) in
MQ2Discord.yaml. - Enter your
server_Charactername and the channel id inMQ2Discord.yaml. Server name must be the shortname. - In game, load the plugin with
/plugin mq2discord. - If it's already loaded, reload the config with
/discord reload. If there are any errors in your .yaml file, it should tell you the line to look at.
See also¶
- Discord official site
- Create a Discord Bot Account
- Discord Developer Portal – Applications
- Discord Docs – OAuth2 overview
- Discord Docs – Permissions
- Discord Docs – Privileged Gateway Intents