Skip to main content

One post tagged with "setup"

View All Tags

Setting up your Discord Server with RoWifi


Manager @ RoWifi
Important Note: This is just a guide on how to set up your Discord Server using RoWifi. Your scenarios might be different from the scenarios this guide is built up on, however this guide can help you understand the basics of using the bot.

ยป I will be using RoWifi's Roblox Group as an example for setting up my bot, the concept of setting up the bot however remains the same. I will also be assuming that the bot's prefix is !.

Inviting the Bot and the Very First Steps

  1. Firstly, to invite the bot, you can either run the invite command, i.e. !invite (if the prefix is !) in a server RoWifi is in; or you can invite the bot through the link found here. You can invite the bot by clicking Invite on our website.

  2. Now, before moving forward, we will be creating two new roles (you can delete these after step 3 if you want). To create a role, go to your server settings > roles > create new role. I'll be naming mine unverified and verified respectively. You need not worry about role permissions since it is by default handled by Discord, you may however add more permissions if you want.

  3. a) After creating the roles, go back to a channel and say !setup (by default the bot's prefix upon joining is !. We will learn more about changing prefixes later).

    b) The bot will now ask for an unverified role (this role is given to users who are not verified with RoWifi. This is only given to them if they are updated.), simply ping the unverified role we created in Step 2.

    c) Now, the bot will ask for the verified role (this role is given to the users who are verified with RoWifi. This is also given when a user is updated), simply ping the verified role we created in Step 2.

  4. Now you have successfully setup the bot and now you can configure it however you want.

  5. To learn more about the setup process, click here.

Important Note: To make sure the bot will work properly, go to server settings > roles > RoWifi Role and make sure it has the following basic permissions:
  • Add Reactions
  • Read Messages
  • Send Messages
  • Embed Links
  • Read Message History
  • Manage Nicknames
  • Manage Roles

If you don't want the hassle to go through all of these, you can straight away give the bot Administrator permissions (not recommended unless you know quite a bit about how the bot works).

Setting up a Logging Channel for RoWifi#

Important Note: This step is purely optional and is based upon whether you want to log the actions of the bot.
  1. To start logging all actions of RoWifi (including bind creation/deletion and updating users), you will have to create a channel named #rowifi-logs and the bot will start logging in there. Make sure to give the bot access to send messages in that server.

Creating Your First Bind#

ยป Now you are all set to make your very first bind. You can start by making any bind that you like, but I will be starting with Groupbinds since they are the easiest binds to make and take less amount of your time.

Creating a Groupbind#

ยป The basic command to create a Groupbind is: !groupbinds new GroupID Template Priority Role(s)

ยป Read about Groupbinds here.

ยป Now, I want to give people in the RoWifi Group the Customer role. To do that, I will create the following bind:

  • !groupbinds new 5581309 {roblox-username} 1 @Customer

ยป Few things to note:

  • I have replaced GroupID with 5581309 since that is the GroupID of RoWifi's Roblox Group. You will have to replace it with your GroupID

  • I have replaced Template with {roblox-username}, this will change their discord name to their Roblox Username. Instead of {roblox-username}, you can also put N/A which automatically gets converted to {roblox-username}. More about templates can be found here.

  • I have replaced Priority with 1. Now about priority:

    • Priority is a number which helps the bot decide a prefix if two or more binds are clashing.

    • Most of the time you can set all of them as the same, most people set it as 1.

    • If two binds are clashing, the nickname is chosen from the bind with higher priority.

    • Q. How should I know if I need to change priority in a bind?

      A. If the bot is not nicknaming based on what you wanted, this is an indication that you will need to update priority on the bind of whose prefix you want.

    • I have replaced Role(s) with @Customer. Now you can ping as many roles you want to give to people in the group. Note that, Groupbinds give the binded roles to everyone in the group with ID as the GroupID, i.e. all users in RoWifi Group will get Customer role.

ยป You can create as many Groupbinds as you want.

ยป Now we will be creating rankbinds.

Creating a Rankbind#

ยป The basic command to create a Rankbind is: !rankbinds new GroupID RankID Template Priority Role(s)

ยป Read about Rankbinds here.

ยป Now I want to add a postfix " | Staff" to the names of our staff members in the group (you can also make it a prefix based on what you want, this is where templates come in handy). To make this in a successful bind, I do:

  • !rankbinds new 5581309 80 "{roblox-username} | Staff" 1

ยป Few things to note:

  • I have replaced RankID with 80 which is the Staff Member Rank ID in the Roblox Group. To get a Rank ID, go to your group > configure > roles > select a role and locate Rank (0-255), under this you will find yourself an ID which is the RankID.
  • I have replaced Template with "{roblox-username} | Staff". This will make the name go like: ItsArtemiz | Staff for example. I have used quotation marks (i.e. "", or '') since my Template had spaces in between it. This is done due to how programming languages take in input.
  • I have not given any roles to the bind. This is because giving the roles is purely optional and I do want to give roles manually (you may however add roles if you want)

ยป Making binds using multiple/range of RankIDs: (This section is repeated in Creating a Custombind)

  • Now I want that for the users who are Management+ to have their Discord Names. To do this, I will write:
    • !rankbinds new 5581309 250-255 {discord-name} 1
  • Few things to note here:
    • I have replaced RankID with 250-255 which takes all the existing ranks between the given range and creates separate Rankbinds with all the data given in the command we executed.
    • I have replaced Template with {discord-name} which tells the bot to just leave the user's name as their Discord Name. You can also replace this by the keyword disable

Creating a Custombind#

ยป The basic command to create a Custombind is: !custombinds new Code

ยป The bot will then prompt and ask for all the other necessary parameters.

ยป Read about Custombinds here.

ยป Before moving forward, it's important to note that Custombinds are the most complex binds to make out of all. They use logics to help you make complex binds.

ยป Custombinds have the following functions (about the functions can be found in the documentation linked above):

  • HasRank(GroupID, RankID)
  • IsInGroup (GroupID)
  • HasRole(RoleID)
  • WithString ("String")
  • GetRank(GroupID)

ยป All the functions are based on what you find in Roblox lua.

ยป Custombinds use the following operators make use of logics in a bind:

  • >, >=, <, <=, ==, !=
  • and, not, or

ยป Now I want that for the users who are Management+ to have their Discord Names. To do this, I will write:

  • !custombinds new GetRank(5581309) >= 250
  • The bot will then prompt and ask for all the other info, namely the Template, Priority and Roles. You will have to fill them the same way you have been filling for other binds

Using Custombinds to Make a Divisionless Role#

ยป This section is for anyone who is familiar with the concept of a "Divisionless Role" or a "Regiment-less Role".

ยป We mainly use the IsInGroup(GroupID) function for this.

ยป Command: !custombinds new IsInGroup(Main GroupId) and not IsInGroup(Division GroupId) and not IsInGroup(Division GroupId)

  • You can add and not IsInGroup(Division GroupId) as much as you want as is stackable.

Creating an Assetbind#

ยป The basic command to create a Assetbind is: !assetbinds new Type AssetID Template Priority Role(s)

ยป Read about Assetbinds here

ยป The Type argument takes the following options:

  • Asset
  • Badge
  • Gamepass

ยป These binds are based on the ownership of certain Assets.

ยป Few examples are:

  • !assetbinds new Asset 1000000 {discord-name} 1 @Role
  • !assetbinds new Gamepass 1000001 {roblox-username} 1 @Role

Modifying a Bind#

ยป If you have made any errors while making a bind, you can always edit them. Just use their modify subcommand.

ยป There is not a lot to explain about modifying binds since they take pretty much the same parameters as we have seen earlier.

ยป The documentation given below explain them quite good.

ยป However, here are the links to modifying binds:

Deleting a Bind#

ยป If you don't want a bind and want to get rid of it, you can always delete them. Just use the delete subcommand.

ยป Deleting a Rankbind: !rankbinds delete GroupID RankID(s)

  • You can provide multiple RankIDs, like 1 2 5 9.

ยป Deleting a Groupbind: !groupbinds delete GroupID(s)

  • You can provide multiple GroupIDs, like 5581309 5534567

ยป Deleting a Custombind: !custombinds delete BindID

  • Here you can only provide a single BindID. To get the BindID, run the !custombinds command.

ยป Deleting an Assetbind: !assetbinds delete AssetID

  • Here you can only provide a single AssetID.

Also Give a Reading#