Skip to main content
Righteous

Status roles

Give a role to anyone who puts your invite in their custom status, and thank them when it happens.

A status role is a trade. A member puts your invite code in their Discord custom status, and the bot gives them a role for as long as it stays there. When they change or clear their status, the role comes off again on its own.

This is Server Premium, and it needs Manage Roles. You can configure up to four codes per server.

Set up the role

Pick the invite code you want people to advertise and the role they get for it.

Syntax

,statusroles add <invite code> <role>

Example

,statusroles add gg/righteous Supporter

The code is matched anywhere inside the status, so a member whose status reads join gg/righteous, it's great matches gg/righteous and gets the role.

The role is handed out unattended, so dangerous roles are refused

The bot gives this role to anyone whose status matches, with no human in the loop. A role carrying Administrator, Ban Members, Kick Members or any Manage permission is refused when you set it up, and so is a role above the bot in the list. Give out a cosmetic role, not a staff one.

,statusroles list shows what you have set, and ,statusroles remove takes one pair back off.

Thank them for it

By default nothing is posted when somebody earns the role. Point the bot at a channel and it starts announcing.

Syntax

,statusroles channel <channel>

Example

,statusroles channel #general

That is the whole setup. A channel on its own is enough: the bot has a built in message and will use it until you write your own.

Write your own message

Syntax

,statusroles announce set <message>

Example

,statusroles announce set thanks for repping us, {user.mention}

The message takes the full embed code syntax, so you can post a plain sentence or a complete embed with an image and a colour. On slash, set opens a text box rather than a single line option, prefilled with whatever you have now.

The four things announce does:

CommandWhat it does
,statusroles announce viewShows the channel and the message in use right now
,statusroles announce setReplaces the message
,statusroles announce resetGoes back to the built in message and keeps the channel
,statusroles announce offStops announcing, by clearing the channel

reset and off are not the same thing

reset clears your custom wording, so announcements carry on using the built in message. off clears the channel, which is what makes an announcement happen at all, so nothing is posted after it. If you want to stop the posts, you want off.

What it does and does not announce

One post goes out when a member earns the role. Three things keep it quiet:

  • Losing the role is silent. Changing your status back takes the role away with no post.
  • Two codes matched at once is still one post. Somebody whose status carries two of your invite codes gets both roles and one thank you.
  • A role the bot could not actually give is never announced. If the role sits above the bot in the role list, nobody is thanked for something they did not get.

You can also set the announcement channel from the Premium page of ,config.

Common issues

The role is never given. Custom status only. A Spotify listening status or a game does not count, and the member has to be visible rather than offline. Check the code with ,statusroles list, and remember it is matched literally, so gg/righteous does not match discord.gg/righteous written a different way.

The role is given but nothing is posted. No channel is set. Run ,statusroles announce view and it will tell you so directly.

Nothing works at all. Status roles need Server Premium. See premium tiers and the rest of common issues.