• You've discovered RedGuides, an EverQuest multi-boxing and scripting community 🧙‍♀️⚙️. We want you to play several EQ characters at once, come join us and say hello! 👋

  • A TLP without truebox has thawed (Very Vanilla ready)
    Frostreaver
MQ2Discord

Release MQ2Discord

@Knightly thanks for helping with this.
Do you have discord setup for this? Did it work for you?
 
FYI, if you are receiving chats from discord but can't figure out why it's not sending commands back. I had two issues challenging me.

first of all, I had my userid as my name+number from discord. In my case Toadwart70#2416, but the ID needed is the fully numeric value for this. I had to do a google search to enable discord developer, then I could right click on my username and "copy ID" and use that in the /discord user <user id> piece.
secondly, after doing these changes I had to unload and reload the plugin, then it accepted commands from the discord channel.
 
I am also not able to send a command back... loaded and unloaded the plugin. Here's my .json file:

Code:
{
    "allow": [
        "#*#tells you,#*#",
        "[MQ2]#*#",
        "#*#sent a tell#*#",
        "#*#out of character#*#",
        "#*#shouts,#*#",
        "#*#says,#*#"
    ],
    "autoconnect": true,
    "block": [
        "[MQ2Discord]#*#",
        "#tells you, 'Attacking#*#",
        "#*#tells you, 'Attacking#*#"
    ],
    "channel": "XXX",
    "token": "YYY.a4",
    "user": "numeric_12342342"
}

I made sure I use the number in the user value, etc. Any other ideas? Can this be a firewall issue?

JJB
 
Last edited:
The default settings for a new character are:
Code:
{
    "allow": [
        "[MQ2Discord]#*#",
        "[MQ2]#*#"
    ],
    "autoconnect": true,
    "block": [],
    "channel": "",
    "token": "",
    "user": ""
}

So, with your filters, if you're not matching that on the allow, it's probably incorrect (I see above some people changed [MQ2]#*# to #*#[MQ2]#*#). You shouldn't need to block [MQ2Discord] and that may be why commands aren't coming back -- but anything you send from Discord should actually show up in your MQ2 window with a [MQ2Discord] tag in front of it (in white/default colors). If you're not seeing that then chances are your configuration is wrong in some way.

Unfortunately, you don't want to post your full configuration because with your token/user information people can imitate you, so you'll have to troubleshoot on your own. Here are some pointers though:

  1. If you're crashing, you probably have a configuration file completely messed up. JSON can be easy to mess up if you forget (or include where you shouldn't) a comma. The best way to handle this is to rename or delete your character's JSON file and start over.
  2. Your channel and user fields are entirely numeric. You get these by following the steps to enable developer options (under Settings -> Appearance -> Advanced) and then right clicking and copying ID on the thing you're looking for.
  3. MQ2Discord is looking for / in front of any command you send to it. I believe it will display messages that don't have a slash, but it will only run commands that have a slash. (Thus you can't type "Hi" and expect your character to say "Hi" in your default channel. You would have to "/say Hi" in Discord)
  4. I personally don't like JSON. I find it easy to mess up because I'm lazy and arrogant. If you're also not comfortable with JSON (although perhaps not lazy and arrogant) try: https://jsonlint.com. I recommend removing any content that is specific to you but lint the whole file. JooJooBee's example above where he left the fields but changed the content is a good way to do it. This will allow you to paste it in, click "Validate" and make sure you haven't messed up your json config.
  5. If all else fails, start over with a fresh config. Keep your channel, your token, your user, but go down to the most basic config like I have above. Make sure that works before you try anything else. As you add to it, see if you can pinpoint where it breaks. If it breaks out of the gate then that tells us something about your specific config and we can go further from there, if it breaks after you add a specific allow or block then that tells us more info.
The plugin currently works for me bidirectionally with no crashes. I tried a few things to try to make it double up and break without me intentionally breaking the config and I couldn't get it to happen, but admittedly I didn't spend very long testing it. I'd prefer if someone that has the problem start from the beginning and help pinpoint where it breaks with a good config.
 
Im currently getting code 500001 missing access, not sure what I'm doing wrong. I followed https://www.redguides.com/community/resources/mq2discord.80/

That likely means you don't have access to the channel that you're trying to post in. If it's a private channel, make sure the bot has been granted access. If it's a public channel make sure that your settings are correct for the channel ID.

I think this has been broken for a little while now.

It's not broken for me and I just recently changed computers, added new discord channels, and added a whole different group to it which is the same process you would go through when setting it up.
 
That likely means you don't have access to the channel that you're trying to post in. If it's a private channel, make sure the bot has been granted access. If it's a public channel make sure that your settings are correct for the channel ID.



It's not broken for me and I just recently changed computers, added new discord channels, and added a whole different group to it which is the same process you would go through when setting it up.


Nice! That’s good news. I remember @Redbot saying something about the plugin author being kinda scarce when someone else was having issues.
 
Nice! That’s good news. I remember @Redbot saying something about the plugin author being kinda scarce when someone else was having issues.

I’m with Knightly on this one. Plugin works brilliantly. Also, Alynel is very much alive and well and kicking today. Won’t be soon, but watch this space, yuge stuff on the horizon. 😉
 
Ok, I got it connected, the bot is online. But I can't seem to get commands to work either direction. I just get repeating spam [Mq2Discord] [Mq2Discord] [Mq2Discord] [Mq2Discord] [Mq2Discord].
appreciate the help!
 
That sounds like your json file might be off. Try copying and pasting the allow section as I have it above and let us know if that helps.
 
I did so, but on first echo or anything from my character, it just repeats
[MQ2] shit
[MQ2Discord] [MQ2] shit
[MQ2Discord] [MQ2Discord] [MQ2] shit
[MQ2Discord] [MQ2Discord] [MQ2Discord] [MQ2] shit
[MQ2Discord] [MQ2Discord] [MQ2Discord] [MQ2Discord] [MQ2] shit
[MQ2Discord] [MQ2Discord] [MQ2Discord] [MQ2Discord] [MQ2Discord] [MQ2] shit
[MQ2Discord] [MQ2Discord] [MQ2Discord] [MQ2Discord] [MQ2Discord] [MQ2Discord] [MQ2] shit
 
@alynel I love the plugin.
Is it possible for the bot to listen to the channel and accept commands?

like "Reply to a tell"
 
@alynel I love the plugin.
Is it possible for the bot to listen to the channel and accept commands?

like "Reply to a tell"
You can reply now without a bot. I supposed one could work in the ability for another Discord bot to issue commands to your group, but at that point wouldn't you be better off sticking with MQ2 doing that for you?
 
@Knightly OK let me think about that one, I am not that familiar with the abilities of MQ2 :)
 
JSON:
{
    "allow": [
        "You have gained an ability point! You now have #*# ability points.",
        "You have gained the ability#*#",
        "#*#tells you,#*#"
    ],
    "autoconnect": true,
    "block": [
        "#*#pet tells you,#*#",
        "#*#tells you, 'Attacking #*# Master#*#"
    ],
    "channel": "NONEYA",
    "token": "NONEYA",
    "user": "NONEYA"
}

Personally found it to be really spammy with the default settings. One of the ways to quickly setup a group to all go to the same channel etc is to take your existing JSON file for the one you've already setup and copy the contents, followed by pasting it into another toons JSON file overwriting the existing data.

This allowed me to do all the setup stuff on one character in the group, and then transfer it quickly to the rest of the characters in the group.

Removing [MQ2] #*#
Removing [MQ2Discord] #*#
significantly reduced the amount of spam generated to the channels and allows you to start with the basics.
I pretty much above have it set so that only tells go to the discord, while filtering out the tells generated by a pet.
I then tried to add AA for what it was spent on. However, it seems to not be recognizing those inputs, thus isn't relaying them to discord. Feature or bug?
It doesn't accept
"You have gained an ability point! You now have #*# ability points.",
but it does accept
"You have gained an ability point#*#",
 
Last edited:
When you say not recognising, you mean it doesn't accept the config, or doesn't relay the text? If it's the former it's a bug, config looks fine. If the latter, have you tried the event in a macro/mq2events to see if it matches?
 
it was the latter, but no. I also haven't tried it in a macro to see if it matches. Ultimately I did get it to relay the text with "You have gained an ability point#*#", just thought it was odd that it didn't accept it the first way.
 
Is it possible to have this @admin or @myname in my discord so I would see the notification like this

1561180950209.png
 
Alternatively, you could filter out the things you don't want to see and then set that channel to notify you on new messages which would give you that same experience.

Is it possible to have 1 character set to multiple channels?

ExampleChannels:
Code:
group-spam  //allow default [MQ2] / [MQ2Discord]
group-chat //allow chat messages // block pet messages
group-loot // allow #*#looted#*#
 
I tried doing this:
Code:
{
    
    "autoconnect": true,
      "channels": [
        {
            "allow": [
                "tells you,",
                "sent a tell",
                "out of character",
                "shouts,",
                "says,",
                "tells general"
            ],
            "block": [],
            "id": "591686553860964372",
            "users": [
                "117514678434922503"
            ]
        },
        {
            "allow": [
                "[MQ2]"
            ],
            "block": [],
            "id": "591876915053330453",
            "users": [
                "117514678434922503"
            ]
        },
        {
            "allow": [
                "#*#looted#*#"
            ],
            "block": [],
            "id": "591877703305789441",
            "users": [
                "117514678434922503"
            ]
        }
    ],
    "token": "token",
    "user": "12345"
}
 
Right now you can only have 1 channel. I'm working on a version that will let you have multiple, as well as be able to tag you.
 
Has anyone set this up with filters to any /say from a real PC (or GM) is flagged/notified, but all the spam /say bs from mercs and pets and stuff is ignored?

I’d like to use this to respond to /say, /tells, and /ooc ... but I don’t care about anything else.
 
Has anyone set this up with filters to any /say from a real PC (or GM) is flagged/notified, but all the spam /say bs from mercs and pets and stuff is ignored?

I’d like to use this to respond to /say, /tells, and /ooc ... but I don’t care about anything else.
I'm traveling right now, but if no one else gets you remind me tomorrow and I will send mine.
 
JSON:
{
    "allow": [
        "[MQ2Discord]#*#",
        "[MQ2]#*#",
        "#*# tells you,#*#",
        "#*# says,#*#",
        "#*# told you,#*#",
        "#*#tells the group,#*#",
        "#*#|${Me.Name}|#*#"
    ],
    "autoconnect": true,
    "block": [
        "#*#|${Me.CleanName}|`s pet#*#",
        "#*#|${Me.Pet.CleanName}| says,#*#",
        "#*#|${Me.Pet.CleanName}| tells you,#*#",
        "#*#|${Me.Pet.CleanName}| told you,#*#",
        "#*# #*# says,#*#",
        "#*# #*# tells you,#*#",
        "#*# #*# told you,#*#",
        "#*#You will not evade me#*#"
    ],
    "channel": "",
    "token": "",
    "user": ""
}

That's not exactly what I use, but it should get you pretty far along. You can add or remove as you see fit. The only thing it won't filter is NPCs who have only one name and say something (NPCs with spaces in their names will be filtered). So you may need to add those manually.
 
Right now to do a mention you need to send <@userId> to it. So you could add an allow for it, then get your macro to /echo <@12345>
 
JSON:
{
    "allow": [
        "[MQ2Discord]#*#",
        "[MQ2]#*#",
        "#*# tells you,#*#",
        "#*# says,#*#",
        "#*# told you,#*#",
        "#*#tells the group,#*#",
        "#*#|${Me.Name}|#*#"
    ],
    "autoconnect": true,
    "block": [
        "#*#|${Me.CleanName}|`s pet#*#",
        "#*#|${Me.Pet.CleanName}| says,#*#",
        "#*#|${Me.Pet.CleanName}| tells you,#*#",
        "#*#|${Me.Pet.CleanName}| told you,#*#",
        "#*# #*# says,#*#",
        "#*# #*# tells you,#*#",
        "#*# #*# told you,#*#",
        "#*#You will not evade me#*#"
    ],
    "channel": "",
    "token": "",
    "user": ""
}

That's not exactly what I use, but it should get you pretty far along. You can add or remove as you see fit. The only thing it won't filter is NPCs who have only one name and say something (NPCs with spaces in their names will be filtered). So you may need to add those manually.

Thank you.... I need to check this out!
 
Code:
{
    "allow": [
        "#*# tells you,#*#",
        "#*# told you,#*#",
        "#*#tells the group,#*#"
    ],
    "autoconnect": true,
    "block": [
        "#*#|${Me.CleanName}|`s pet#*#",
        "#*#|${Me.Pet.CleanName}| says,#*#",
        "#*#|${Me.Pet.CleanName}| tells you,#*#",
        "#*#|${Me.Pet.CleanName}| told you,#*#",
        "#*# #*# says,#*#",
        "#*# #*# tells you,#*#",
        "#*# #*# told you,#*#",
        "#*#You will not evade me#*#",
        "[MQ2Discord]#*#",
        "[MQ2]#*#",
        "#*#|${Me.Name}|#*#"
    ],
    "channel": "x",
    "token": "x",
    "user": "x"
}

I have set it up like this to reduce spam on discord and to only have tells incoming. I have kept some items in block so i can easily copy move them into allow whenever needed.
 
Release MQ2Discord

Users who are viewing this thread

Back
Top
Cart