Skip to content

Boost Rewards

Ali Arslan edited this page Apr 11, 2026 · 2 revisions

Boost Rewards

The boost reward system lets players who are actively boosting your Discord server claim in-game rewards on a configurable cooldown.


How It Works

  1. A linked player runs /boostprize in Minecraft.
  2. The plugin checks their linked Discord account via the database.
  3. It checks if that Discord user is currently boosting the guild.
  4. It checks whether the cooldown period has elapsed since their last claim.
  5. If all checks pass, the configured reward commands are executed on the server.
  6. The claim is recorded in the database and optionally announced in Discord.

Requirements

  • Player must have a linked account.
  • Player must be an active booster of the Discord server.
  • The bot needs the Server Members Intent enabled to detect boost status.

Configuration

Boost reward settings live in boost-rewards.yml:

boost-rewards:
  enabled: true

  cooldown: 86400          # Seconds between reward claims (86400 = 24 hours)

  # "global"     → one shared cooldown across all servers
  # "per-server" → separate cooldown per server name
  cooldown-mode: global

  # Commands executed as console when a player claims the reward
  # Placeholders: %player_name%, %player_uuid%, %discord_id%
  commands:
    - "give %player_name% diamond 5"
    - "eco give %player_name% 1000"
    - "broadcast %player_name% claimed their booster reward!"

  notify-discord:
    enabled: true
    channel-id: "DISCORD_CHANNEL_ID"
    message: "**%player_name%** claimed their boost reward!"

Cooldown Modes

Mode Description
global The cooldown is shared across all servers. One claim per cooldown period, regardless of server.
per-server Each server tracks its own cooldown. Players can claim once per server per period.

The cooldown is stored in the boost_cooldowns database table.


Reward Commands

Commands run as the console with the player online. Each command in the list is executed in order.

Available placeholders:

Placeholder Description
%player_name% Minecraft username
%player_uuid% Minecraft UUID
%discord_id% Discord user snowflake ID
%discord_name% Discord username
%server_name% Current server name

Player Experience

When a player runs /boostprize:

Situation Message Shown
Not linked "You must link your account first."
Not boosting "You are not currently boosting the Discord server."
On cooldown "You can claim your reward again in X hours."
Success "Reward claimed! Enjoy your goodies."

All messages are fully customisable in the language file (languages/en_US.ymlboost-rewards section).


Audit Log

When audit-log is enabled, each successful boost claim is recorded in the audit webhook with:

  • Player name and UUID
  • Discord ID
  • Timestamp
  • Server name

See Logging for webhook setup.

Clone this wiki locally