Vanity & Server Tag
Reward members who rep your vanity in their status or equip your server tag.
Overview
greed can hand out roles to members who advertise your server, and take those roles back the moment they stop. There are two independent rewards:
- Vanity (
,vanity) — watches custom statuses for text you choose, such as/greedor.gg/greed. - Server Tag (
,badge) — watches for members who have equipped your server's tag as their Discord identity.
Both share the same set of subcommands: award roles, a thank-you channel, a custom thank-you message, and a config view.
These are prefix-only command groups — they are not available as slash commands. ,badge also answers to ,badges and ,servertag; ,vanity answers to ,van.
Requirements
- Your permission: Manage Server.
- greed's permission: Manage Roles, with its highest role above every award role.
- The relay: status and tag detection is done by a separate relay bot. If it isn't in your server yet, greed will hand you an invite link when you run
,vanity setor,badge toggle.
Vanity Rewards
Invite the relay
Run ,vanity set once. If the relay is missing, greed replies with the invite link — add it, then continue.
Choose what to look for
,vanity set /greed
Setting a pattern turns vanity rewards on automatically. The pattern can be up to 100 characters.
Add the award roles
,vanity role add @Repper
You can add as many roles as you like — every one of them is granted together.
Optionally, say thanks
,vanity channel #general
Matching
By default matching is loose, so members don't lose their role over a stray space or a capital letter. greed strips invisible characters, normalizes the text, lowercases it, and drops spaces and punctuation before checking whether the status contains your pattern.
| Pattern | Status | Loose | Strict |
|---|---|---|---|
/greed | /greed | Match | Match |
/greed | /GREED ♡ | Match | No match |
/greed | . g r e e d | Match | No match |
/greed | join greed | Match | No match |
Turn exact matching on when you want the pattern reproduced character for character:
,vanity strict on
,vanity strict off
Running ,vanity strict with no argument flips the current setting.
Loose matching ignores punctuation entirely, so /greed, .gg/greed and greed all match the same statuses. If you need the slash to count, use strict mode.
Turning it off
,vanity set off
off, none, clear and disable all clear the pattern and stop the rewards.
Server Tag Rewards
Discord's server tag is the badge a member equips next to their name to show which server they identify with. There is no pattern to configure — greed only needs to know that you want it rewarded.
,badge toggle
Then add the roles it should grant:
,badge role add @Supporter
,badge channel #general
Discord only reveals a member's equipped tag when they join the server, so tag rewards are evaluated on join. A member who equips your tag while already in the server is picked up the next time they join. Vanity rewards, by contrast, update live as statuses change.
Award Roles
Both groups share the same role management:
,vanity role add (role)/,badge role add (role)— grant this role while the member is repping.,vanity role remove (role)— stop awarding a role. Members holding it lose it on their next update.,vanity role list— show the current award roles.
Roles are granted the moment a member starts repping and removed automatically when they stop, when the role is taken out of the config, or when the configuration is reset.
greed refuses to award a role that carries dangerous permissions — Administrator, Manage Roles, Ban Members and friends. Anyone could claim such a role just by editing their status, so the guardrail cannot be bypassed. greed also refuses roles above its own highest role, and roles above yours.
Thank-You Messages
Set a channel and greed posts a short thank-you the first time a member starts repping:
,vanity channel #general
,badge channel #general
Run the command with no channel to turn thank-you messages off.
Custom message
,vanity message {embed}$v{description: {user.mention} is repping {vanity}!}
,badge message Thanks for wearing our tag, {user.mention}!
The message accepts the full scripting syntax — embeds, Components V2, buttons, everything.
,vanity messagewith no argument prints the current script.,vanity message defaultrestores the built-in message.,vanity variableslists the variables that carry a value here.
Variables
| Variable | Output |
|---|---|
{vanity} | The pattern the member matched (vanity only). |
{badge} | Reserved for the tag name. Discord does not expose it, so it renders empty. |
{user.*} | Every user and member variable. |
{guild.*} | Every server variable. |
Thank-yous are rate limited on purpose. greed waits 15 seconds after a member starts repping before posting — so someone toggling their status back and forth doesn't spam the channel — and sends at most 3 per member per hour. Each member is thanked once per configuration; editing the config makes them eligible again.
Viewing & Resetting
,vanity config
,badge config
The config view shows the status, pattern, thank-you channel, whether the message is custom or default, the award roles, and how many members are repping right now. If rewards are on with no award roles set, it says so.
,vanity reset
,badge reset
Reset asks for confirmation, then clears the configuration, the award roles and the tracked members for that reward. Roles already handed out are not stripped retroactively.