Skip to content

MQ2Discord¶

MQ2Discord

Issue commands from discord to EverQuest

Authors: alynel, Knightly • Config: MQ2Discord.yaml

Resource Download Support Repo Quick Start

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}
Sends commands to be processed by the config file, reloads the config file, and controls debugging.

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¶

  1. Create a server & channel(s) from the Discord client.
  2. Create a Discord bot & add it to your server: see Create a Discord Bot Account.
  3. Enable developer mode in the Discord app (Discord client settings -> advanced). See: Enable developer mode.
  4. Open the MQ2Discord.yaml in a code editor. We recommend Visual Studio Code. ("notepad" is not recommended for YAML files!)
  5. Enter the token for the bot in your MQ2Discord.yaml. (The token you made in step 2.)
  6. Enter your user_id (right click your username in Discord, copy id) in MQ2Discord.yaml.
  7. Enter your server_Character name and the channel id in MQ2Discord.yaml. Server name must be the shortname.
  8. In game, load the plugin with /plugin mq2discord.
  9. 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¶

Discussions that link here