Passa al contenuto principale

Color me

Simple module to reward users who have boosted your server with a custom role.

Color me
Simple module to reward users who have boosted your server with a custom role!
This module is open-source.
This module is storing data in your bot's database.
This module has 2 configuration files.
This module is being actively used on over 5600 other servers on SCNX.
This module is included for free in every plan. Learn more about prices.

Features

  • Allow server boosters (or all users) to create a personal role with a custom name, color, and icon.
  • Optionally remove custom roles automatically when a user stops boosting.
  • Optionally recreate a user's previous custom role when they boost again.
  • Configurable cooldown to prevent frequent role edits.
  • Custom roles can optionally be displayed separately in the member list.
  • Supports role icons on servers with Boost Level 2 or higher.

Setup

  1. Make sure the bot has the Manage Roles permission.
  2. Ensure the bot's role is positioned above the position where custom roles will be created in the server's role hierarchy.
  3. Configure a "Role position" in the module configuration to control where custom roles appear in the role hierarchy.
  4. Set up slash command permissions for /color-me to control who can use the command (e.g., restrict to boosters only).

Usage

Users can manage their custom role using the /color-me command:

  • Use /color-me manage to create or update your custom role. Provide a name, and optionally a hex color code and an icon image.
  • Use /color-me remove to delete your custom role.

If a user already has a custom role, using manage will update the existing role. If the role was deleted (e.g., due to unboosting), it will be recreated with the same settings when the user boosts again (if "Recreate roles" is enabled).

A cooldown can be configured to limit how frequently users can edit their role.

Commands

Understand the documentation
In these docs, name:<Type> is an option of a slash-command with name name and the type Type. Options that not required, are described as [name:<Type>]. If the action of a command is vastly different between required and not-required options, we might list them separately.
Examples
  • /moderate ban user:<Member>: This command (/moderate ban) has an required option with the name "user" that only accepts one member as a value.
  • /moderate ban victim:<Member> reason:<Text>: This command (/moderate ban) has an required option with the name "victim" that only accepts one member as a value and another required option with the name "reason" that accepts any text as an value.
  • /moderate ban victim:<Member> reason:<Text> [proof:<Attachment>]: This command (/moderate ban) has an required option with the name "victim" that only accepts one member as a value, another required option with the name "reason" that accepts any text as an value and a not-required option with the name "proof" which allows one attachment as its value.
CommandDescription
/color-me manage name:<Text> [color:<Text>] [icon:<Attachment>]Create or update your custom role. Provide a name for the role. Optionally specify a hex color code (e.g., #FF5733) and upload an icon image (requires Boost Level 2+).
/color-me remove confirm:<Boolean>Delete your custom role. Set confirm to true to confirm the deletion.

Configuration

This module has multiple configuration files. Please review them below.

Module configuration

In this configuration file, you can configure the functionality of this module. Open it in your dashboard.

FieldDescription
Recreate rolesIf enabled, a user's custom role will be automatically recreated with its previous settings when they boost the server again.
Separate roles in member-listIf enabled, custom roles will be displayed separately (hoisted) in the server's member list.
Remove role on unboostIf enabled, a user's custom role will be deleted automatically when they stop boosting the server. Disable this if non-boosters should also be able to use the command.
Role update cooldownThe time (in hours) a user must wait before they can edit their custom role again.
Role positionThe role beneath which custom roles will be created in the role hierarchy.

Module messages

In this configuration file, you can customize the messages sent by this module. Open it in your dashboard.

FieldDescription
Role createdMessage shown when a user successfully creates their custom role.
Role created without iconMessage shown when a custom role is created but the role icon could not be applied because the server is below Boost Level 2.
Role updatedMessage shown when a user successfully updates their custom role.
Role updated without iconMessage shown when a custom role is updated but the role icon could not be applied because the server is below Boost Level 2.
Role removedMessage shown when a user successfully deletes their custom role.
Role-limit reachedMessage shown when a custom role cannot be created because the server has reached Discord's maximum role limit.
CooldownMessage shown when a user tries to edit their role before the cooldown has expired.
Invalid ColorMessage shown when the user provides an invalid hex color code.

Troubleshooting

Custom roles are not being created
  • Make sure the bot has the Manage Roles permission.
  • Ensure the bot's role is positioned above the configured "Role position" in the role hierarchy.
  • Check if your server has reached Discord's maximum role limit (250 roles).
Role icons are not being applied

Role icons require the server to be at Boost Level 2 or higher. If your server does not meet this requirement, the role will be created without an icon.

Stored data

The following data is being stored about every custom role:

  • The Discord User ID of the role owner
  • The Discord Role ID of the custom role
  • The role name and color
  • The timestamp of the last role edit (used for cooldown calculation)
  • Metadata about the entry (date when created and last updated)

To remove all data stored by this module, purge the module database.