Skip to main content

Drops & Engagement Events

Create engaging events where users react or click to claim rewards.

Default Events​

When you run /setup connect, the bot creates 3 default events:

EventDescriptionRewardLimit
daily_checkinGM/GN pattern detection2 RSNC1 per 24hrs
news_trackerEmoji reaction drops for announcements5 RSNC1 per user per message
regular_engagementQuality message contributions10 RSNC5 per day

These are fully customizable via /config events or the Partner Portal.


Channel Watch (Auto-Instanced Drops)​

The most powerful way to reward engagement with announcements. Instead of manually creating a reaction drop for every message, bind a template event to a channel and let the bot handle the rest.

How It Works​

  1. You run /watch start channel:#announcements
  2. Every new message in #announcements automatically gets a reaction drop
  3. Users react to earn RSNC — each message is tracked independently
  4. No message IDs to copy, no /drop commands to run

/watch start​

/watch start channel:#announcements
/watch start channel:#announcements event:news_tracker emoji:📰 reward:10
ParameterRequiredDescriptionDefault
channelYesChannel to watch-
eventNoEvent template to usenews_tracker
emojiNoEmoji for reactionsFrom event config
rewardNoOverride reward amountFrom event config

/watch stop​

/watch stop channel:#announcements

Stops creating new drops in the channel. Existing drops on messages remain active.

/watch list​

/watch list

Shows all watched channels with their event type, emoji, and reward.

Example Workflow​

1. /setup connect brand_id:0x... security_key:...
→ 3 default events created (daily_checkin, news_tracker, regular_engagement)

2. /watch start channel:#announcements event:news_tracker emoji:📰
→ #announcements is now watched

3. Post "Big product update!" in #announcements
→ Bot auto-adds 📰 reaction to the message
→ A reaction drop is created for that specific message

4. Users react with 📰 → each earns 5 RSNC
→ 1 claim per user per message (independent tracking)

5. Post "Weekly community news" in #announcements
→ Another independent reaction drop, same process
Best Channel Types

Channel watch works great with:

  • Announcement channels — restricted to admins, each post is meaningful
  • News channels — curated updates your community should engage with
  • Update channels — product releases, patch notes, etc.

The /drop Command​

Create one-off button-based or reaction-based drops linked to your custom events.

Button Drop (Default)​

Posts a message with a claim button:

/drop event_id:announcement_reward label:"Claim Reward" description:"Thanks for being here!"

Reaction Drop​

Attach a drop to an existing message:

/drop event_id:announcement_reward type:reaction message_id:123456789 emoji:🎉 lifespan:2h

Command Options​

ParameterRequiredDescriptionDefault
event_idYesEvent ID from your events-
typeNobutton or reactionbutton
message_idNoMessage to attach reaction to-
emojiNoSingle emoji for reaction drops🎉
emojisNoComma-separated emojis for polls — any one counts (e.g. 1️⃣,2️⃣,3️⃣,4️⃣,5️⃣)-
lifespanNoHow long drop is active24h
labelNoButton text"Claim"
descriptionNoMessage above the drop-

Lifespan Options​

Time-based:

  • 1s - 1 second (testing)
  • 5m - 5 minutes
  • 2h - 2 hours
  • 24h - 24 hours (default)
  • 168h - 1 week (maximum timed)

Permanent:

  • permanent - Never expires
  • 0 - Never expires
  • unlimited - Never expires
  • forever - Never expires

Embedding Drops in Announcements​

For one-off drops (when you don't have channel watch set up):

Step 1: Post Your Announcement​

Write and post your announcement normally:

@everyone 🎉 Big news! We just hit 10,000 members!

Step 2: Get the Message ID​

  1. Right-click the message
  2. Click "Copy Message ID"
  3. (Enable Developer Mode in Discord settings if you don't see this)

Step 3: Create the Reaction Drop​

/drop event_id:celebration type:reaction message_id:PASTE_MESSAGE_ID lifespan:2h emoji:🎉

Step 4: Watch Users React!​

The bot automatically:

  • Adds the emoji to your message
  • Tracks who reacts
  • Sends rewards to claimers
  • DMs users confirmation
Channel Watch vs Manual Drops

Use /watch when you want every message in a channel to be rewarded automatically. Use /drop when you want to reward a specific one-off message.


Event Integration​

Drops pull settings from your event configuration:

  1. Create event in Partner Portal:

    • Name: Announcement Celebration
    • Reward: 25 RSNC
    • Max Claims Per User: 100 (first 100 users can claim)
  2. Use in Discord:

    /drop event_id:announcement_celebration type:reaction message_id:123456
  3. Event settings apply:

    • Reward amount from event config
    • Max claims respected
    • Cooldowns honored
    • Analytics tracked
Event Name Normalization

Event names with spaces are automatically normalized:

  • "Announcement Celebration" → announcement_celebration
  • Both formats work in the command

Multi-Emoji Drops​

Reaction drops can accept multiple emojis — any emoji in the set counts as a valid claim. This is useful for polls, sentiment checks, or letting users express preference while still earning rewards.

How Multi-Emoji Works​

The drop stores an emojis[] array. When a user reacts with any emoji in that list, their claim is processed. The first emoji in the list is also seeded by the bot automatically.

emojis: ['1️⃣', '2️⃣', '3️⃣']
→ User reacts with 2️⃣ → reward granted
→ User reacts with 1️⃣ → also valid

Using Multi-Emoji in /drop​

Pass a comma-separated list to the emojis parameter:

/drop event_id:poll_reward type:reaction message_id:123456789 emojis:1️⃣,2️⃣,3️⃣,4️⃣,5️⃣ lifespan:24h

The bot seeds all 5 reactions on the message automatically. Any one earns the reward.

Use emoji (single) for standard drops, emojis (comma-separated) for polls. If both are provided, emojis wins.

Atomic Drop Creation​

Drops are written to KV before the bot seeds emoji reactions on the message. This eliminates the race window where a fast user could react before the drop was ready to accept claims.

Old flow: KV write → seed reactions → (brief gap) → user could miss claim New flow: KV write → seed reactions (any reaction during this step is already valid)


How Reaction Drops Work​

  1. Admin creates drop (or channel watch auto-creates) → Bot writes drop to KV → Bot adds emoji to message
  2. Users react with the correct emoji (or any emoji in the set for multi-emoji drops)
  3. Bot validates:
    • Active drop exists
    • Correct emoji used (checked against emojis[] array — any match is valid)
    • User hasn't claimed yet
    • Max claims not reached
    • Drop hasn't expired
    • Event is enabled
  4. Reward sent → User receives RSNC
  5. Confirmation → Reaction added + DM sent

Manual Rewards​

Reward users directly for valuable contributions.

Basic Usage​

/reward user:@Username event_id:helpful_contribution

Common Event IDs​

EventSuggested UseExample Reward
helpful_answerHelping community members25 RSNC
bug_reportReporting bugs50 RSNC
content_creationCreating guides100 RSNC
event_participationAttending events20 RSNC

Configuration​

Configure which roles can use /reward in Partner Portal:

  • Integrations → Discord → Manual Rewards
  • Set allowed roles
  • Restrict event types
  • Set cooldowns

Channel-Based Event Triggers​

Configure events to only trigger in specific channels:

In Partner Portal:​

  1. Go to Events → Select your event
  2. Under Detection Methods, select Discord
  3. Enter allowed channels: feedback, support, tech-talk

Behavior:​

  • Channels specified: Event only triggers in those channels
  • Channels empty: Event triggers anywhere
  • Channel names are case-insensitive
  • Don't include # prefix

Use Cases​

EventChannelsPurpose
Bug Reportreport-bugsFocus reports
Tech Discussiontech-talk, dev-chatQuality tech content
GM Check-ingm-gnPrevent GM spam
Feedbackfeedback, suggestionsDirect input

Best Practices​

Channel Watch Strategy​

  • Watch announcement-type channels where admin posts are meaningful
  • Use specific emojis per channel (📰 for news, 🎉 for celebrations)
  • Keep rewards modest (5-10 RSNC) since every post triggers a drop
  • Review /watch list periodically to ensure watches are still relevant

Timing Your Drops​

  • Flash drops: Short lifespan (5-30 min) creates urgency
  • Announcement drops: 2-24h gives everyone a chance
  • Permanent drops: Use for evergreen content

Claim Limits​

  • First-come: Set max-claims to limit total claimers
  • Unlimited: Use for celebration events everyone should get

Engagement Tips​

  1. Announce drops in your announcement channel
  2. Use relevant emojis that match the event
  3. Set appropriate rewards - not too high, not too low
  4. Track with /stats to see engagement