Boundless Bot - Hunts and more!

I’d like to introduce my version of a Boundless bot -

OortAdonai - A Boundless bot for hunting and other activities :

  • Production mode : Fully Released
  • Release version : 1.0.0
  • Language : Node.JS
  • API Framework : Discord.js
  • Command Prefix : Uses Slash Commands - /bb

Initial Notes :

Thank you to everyone that has been using the bot, recommending it to others, and supporting it.

I’ve rewritten the bot from the ground up and brought in a database so I can support many more features. As mentioned this one uses “/bb” to execute commands and I have moved away from using message commands starting with ‘.’ to make it inline with Discord standards. Also you don’t directly message the bot via DM with the new commands. The commands are done via text channels in discord. I’ve adjusted many commands and grouped them together for better organization. Also many commands are consolidate with options that you can select after you start typing it.

Most commands are done in a way that is only seen by the user requesting the command. This is done to cut down considerably on bot message spam and allows you to run the command anywhere on the server. The only command at this point that is sent to a “text channel” is the global post hunt notification command (if you have the permissions set right and the hunt channel enabled).

The bot is available to whoever wants to use it and I’ll do what I can to keep it online. I want it to become the main Boundless bot everyone uses with many features. So if you have suggestions send them to me - there is a “reporttodev” command. :slight_smile:

### Migration from old bot version :

Like any migration there might be an issue or something missed. If there is let me know.

  1. All existing “.” commands will not work beyond “.testhunt” and “.posthunt” which I’ve allowed to stay for a week or two as backup incase there are issues. Note that all users should be able to start using the “/bb” slash commands immediately except for the “Harbingers of Death” discord because it seems they don’t allow slash commands for this bot. If you know the owner or someone in that server please let them know to update their permissions.

  2. If you used the previous bot version I’ve imported your discord server details. You will not need to readd the bot. I do suggest you check your configuration to make sure it is setup like you want for your Discord server. Use these two commands to make sure you are ok : “/bb config listconfig” and “/bb config checkperms”

  3. If you want to change your hunt channel use : /bb config huntchannel

  4. The bot supports “mention” notifications which will ping a certain role if you want that feature. This only works if you have given the bot the “mention_all_users” or have the hunt ping role you want to use as being set to allow “mentions.” Use this command to set that role : /bb config huntrole

NOTE : The bot now supports a feature where it can add or remove people to that role if you have given it the “manage_role” permissions. Once configured, hunters can add/remove the hunt ping role themselves with this command : /bb hunter huntping

  1. I’ve moved hunt test and post commands for notifications to a form modal solution to improve the posting experience. The form still supports markdown language but please test things out thoroughly before using it. I plan to have a lot more feature improvement in this area soon, but the first step was just to get it in place. Use this command for the form : /bb hunter posthunt

NOTE : At this point any person that has the ability to run slash commands for this bot will have the ability to post hunts to all discord servers that is using this bot and have “hunt channels” enabled. I do plan to change this next and limit the ability to post hunts to a specific “hunt leader” role on each discord server so that the administrators of that server have more control. I’ll still have the global hunt post but at least people will have to be approved on a discord server to initially run the command.

  1. I suggest you look through all the new commands. If you have ANY questions or concerns or problems please contact me here on the forum, in discord, or by using my new report command in the bot : /bb reporttodev

  2. One other thing to note is there are 34 servers that have the bot installed but only 27 that seem to be active. If you aren’t seeing the bot work, then remove the integration and reinstall it like it was new. I’d like to have those with possible messed up installs fixed.

New Installation :

The below instruction are given by the bot if you type : /bb config botsetup

  1. If you wish to install OortAdonai (the Boundless bot) go to this link [ https://discord.com/api/oauth2/authorize?client_id=961118308395008030&permissions=2416069633&scope=bot ] and follow the steps to install it into your Discord server.

  2. Once installed you will see that there is a role called “Boundlessbot” in your Discord Server Roles. I strongly suggest you use this role instead of trying to create a new one for the bot. Ensure that you have no other role or channel permissions that conflict or overwrite the main permissions this bot needs. The most common issue is people turning off permissions in the Everyone role or some other role the bot is assigned to that has a higher position than the bot role but less permissions. Use the config commands that help list and check your perms and bot configuration. These are “/bb config listconfig” and “/bb config checkperms”.

At this point the bot must have these top level server permissions : use application commands, create invite, view channel, send messages, embed links, manage roles, and mention everyone.

  1. Hunt Notification Channel:
    a) Create a channel called whatever you want that you want to be the “main bot channel” the bot uses for global hunt notifications. Take that “Boundlessbot” role and assign it to any channel you want the hunt bot to be able to post into - at least this hunt notification channel. Double check permissions to make sure the bot has the ability to access that channel and has at least these permissions : view channel, send messages, embed links.
    b) Type “/bb config huntchannel”, click “set”, and select the channel you just set up so the bot knows about this channel and can send notifications to it.

  2. Hunt Role Ping:
    a) If you want to use this feature then create a role that will receive the hunt notifications for pings. Make sure to set the role to be able to receive “mentions”.
    b) Type “/bb config huntrole”, click “set”, and select the role you just set up so the bot knows which role to ping when a hunt notification comes in.
    c) NOTE: Make sure that the Boundlessbot role is in a higher position than your hunt notification role so that the bot has permission to add people to that role.

  3. Do one more validation that the bot is configured correctly in your server by using these commands : “/bb config listconfig” and “/bb config checkperms”.

  4. Try a test command in the channel to ensure that the bot is working : “/bb ping” or “/bb uptime”.

  5. If you have ANY questions or concerns or problems please contact me here on the forum, in discord, or by using my new report command in the bot : /bb reporttodev

Post Global Hunt Notification

  • Please read notes:
    • Currently this is a global command that will notify every server that is registered. So please respect this feature and don’t spam people.
    • The bot sends an embeded message for hunt posts. This means you will need to work a bit on formatting your hunt message if you want it to look a certain way. Also note there might be some issues with formatting because of what an embeded message allows and does not. Test and retest before using.
  1. First test your hunt message so you can make sure it looks nice. Use this command “/bb hunter posthunt” and make sure you select the “Send Test” option. You will be presented with a form - fill it out (the form support basic markdown) and hit send. The bot will post a message to you only showing you what your hunt test message looks like. Make sure you have a copy of your message incase you need to change it.
  2. Once you have a message you like then use the following command to send an official hunt notification to all servers registered to see it using “/bb hunter posthunt” and selection the option “Post to ALL”. Fill out the form (or paste in the copy from your test messages) and hit send.
  3. The bot will send a post to whatever channels are registered to see it on each discord server.
  4. If you want “role notifications” pings you need to set up the role (use the “/bb config huntrole” commands).

Supported Commands :

  • Slash Command Prefix : /bb

  • Command List :
    /bb botinfo = Gives some server info and details regarding the bot.
    /bb ping = Replies with “Pong!” to show if bot is acceping commands.
    /bb uptime = How long the bot has been online in days/hours/minutes/seconds.
    /bb config botsetup = Instructions on how to setup the Boundless bot.
    /bb config checkperms = Validate bot permissions are correct.
    /bb config listconfig = List your Discord Server’s current Boundless bot configuration.
    /bb config huntchannel = Configure the channel where hunt notifications are posted. Options are : set/update, disable, delete
    /bb config huntrole = Configure the role that recieves hunt notification pings. Options are : set/update, disable, delete
    /bb hunter posthunt = Send global Hunt Notification to all Discord servers the Boundless bot is in. Options are : Send TEST Post To You, Post To ALL Hunt Channels
    /bb hunter huntping = Configure if you receive a Discord ping when a hunt notification is posted. Options are : Yes, No
    /bb reporttodev = Send report [feedback/problem] to the Boundless bot developer. Options are : Send Feedback / Suggestion, Report Problem / Issue

  • If you have some ideas on commands or features let me know.

Support

  • If you have ANY questions or concerns or problems please contact me here on the forum, in discord, or by using my new report command in the bot : /bb reporttodev

Uninstall

  • If you wish to remove/uninstall the bot on your server then go into your discord server settings, select integrations, then click the “boundlessbot” entry to manage it and at the bottom of the page click “remove integration.” The bot will leave your server and mark your guild entry in the db as disabled.

Upcoming Improvements over next few months

  • Help me petition to have this bot added to the Official Boundless Discord Server. It still isn’t in there and many people are missing out on hunts. :pray:
  • More commands and features in the hunt leader and hunt poster area.
  • I want to improve the bot with more features based on feedback, so send some in.

I hope you all find the bot useful and thank you for using it. Let me know your thoughts or feedback…

16 Likes

Honestly, Node does just fine holding the amount of data you’re talking about in memory, and just save to file as backup. I wouldn’t personally bother with a db unless you start messing with a whole lot more data, tbh. It’s not like you’re doing all that many write operations anyway, since new servers don’t register often, and you should only have to read on server start if you set it up right.

Just a reminder to verify permissions before doing a .ping test. My code isn’t checking to make sure I have permissions in a way that doesn’t crash out the bot if there is an error. So I need to fix that asap lol… I should have tested that scenario more first.

1 Like

Feature request:

1 Like

In regard to this feature request, it would also be nice if we could do something about tracking when a sov was last scanned. For example, if there was a way to tell your bot a list of planet names that we scanned so that scanner people can submit the list after we’re done.
Note that I believe the Boundlexx API does have a “last updated” timestamp, but it is my understanding that it only tracks when an entry was updated, so re-scans don’t act as a confirmation of recently validated information.

Then, your bot could optionally grab only “recently scanned” planets. It would be nice if the report included frequency and/or tier of occurrence in addition to just “not available” so that if someone is picking colors for a T1 planet, they could potentially choose to use colors only available on someone’s T6 sov.

Of course, this would probably require an actual database… :sweat_smile:

3 Likes

I think I can freely speak for the GTG family… THANK YOU, somebody get this guy a friggin medal!

4 Likes

I didn’t even notice the other bot was down, Thanks for the hard work!

1 Like

Thanks… well I know there are a few weird bugs that might cause it to go up and down for a few days. but I will get it ironed out.

1 Like

There are a few guilds signed up now and the bot is functional for actual posts… so people can start using it. I want to make sure people understand it is up and ready for use.

At this point the perms issue is likely the only thing causing a hiccup but I should have that fixed in a few days. Until then everyone is safe and welcome to use it like it is fully ready.

Also if you know any other less active guild leaders, maybe let them know they can set it up.

1 Like

Hello thank you for working with the bot
I would be very happy if you could make a video on how to install the bot because I have small difficulties in getting the bot to work. I would like a video that is very helpful LG Hugo

Where to find the Mod and how to use ? I ll lead so many hunts IT would be great to have a hunt notification again . Dies IT works over discord AS the Other did?
Greetings Turrican2006

1 Like

Why are you using the old style commands instead of slash commands?

Turrican, check the Hunt HQ channel in our discord. We have it already set up, with the list of commands in there as well!

3 Likes

There are instructions on the original posting of this thread. I can make a more detailed one this weekend. As for a video, I will have to look into some options on that since I don’t really do those lately and a text step by step is always easier if things change.

1 Like

Since this was my first attempt at a discord both, I admit I took a safer route because I saw in their API details that there are limits on slash commands. Additionally, I didn’t fully understand the nuances of global vs local server commands and the different types and how many we can have of each. Due to this I didn’t want to go down a path that might result in a dead end later on and require a decent code change especially since this was my first attempt. So it seemed safer and easier right now to just have a switch/case list to manage the commands for gen 1.

Most of their documentation is written in a way that it is assume the person understand everything very well. It isn’t for those still trying to grasp the intricacies. Once I can better grasp the command types with sub commands, the limits per type, and other things like if we can have a variety of “registered” commands with “non registered” commands I will likely change things up. The good news is switching over would just be a matter of remapping how a command executes. Of course then letting people know the new commands.

Once I get the perms issue and a few other possible bug or crash situations fixed then I plan to start looking into that as I do the other things I liked in the todo section. If you have Discord bot tips just let me know… :slight_smile:

Yes it is basically the same. There is a bit of a change in the commands and how they execute. Some of that will be adjusted but I just did something that worked for the first version. Obviously, if you have tips or ideas or features you’d like to see to help you, just let me know or add them here.

The “role” notification added to the channel notification should come in this weekend I hope. Real work has sucked up more time this week than expected and I’m out most of the day Saturday for family stuff.

But like Nickk said you all are good and have perms right for messages from what I saw.

Do have a question tho, as I might have missed it somewhere.

Are there plans. or thoughts on adding the ability for the user to set themselves a role to be pinged?

Similar to how the previous one was !hunter and it would set the user to the list to be notified?

Simple answer: Yes

More detailed plan: I plan to have a role that the server owner or admin can set up on their server (and update if you want to change) that will get a ping. I know I can just add that role name to the message but I was wanting to see if there are any other options in how to do it. This should happen soon because I know “channel posts” are not as helpful for notifying people.

Right now the bot has basic send/read rights. I do want to add the !hunter type command where a member of the server can run that and get added to that role. Since that will (I’m pretty sure) require more server rights, I want to do safely and see what makes sense in how I grow the bots rights inside each groups server. In my day to day job I do a lot of IT security architecture so I’m careful with this stuff. So this option will likely be after the first role ping.

I also will add that people can update the channel that gets pinged and also allow people to “remove” themselves from that role ping. I like opt in and opt out features. At the bottom of the original post is kind of a todo list…

Yeah, makes sense.

We were discussing setting up an automated role set bot, so people could just click a button and apply the @GTGHunter role that we had been currently using, and just testing adding the @mention to the hunt ping with your current bot.

But when it comes to all that stuff, I’m a novice lol

Yeah… I will definitely be adding that. If you all can wait a bit longer.

2 Likes