πŸ₯‡Leveling

Progression & Rewards


πŸ“‹ Overview

The Leveling module provides a comprehensive progression system where members earn experience points through server activity and level up to earn diamond rewards. The system tracks XP from messages (20 XP per message) and voice channel participation (1 XP per 5 minutes), features 100 total levels with increasing XP requirements, awards diamonds equal to 2x the achieved level, includes milestone level celebrations at levels 5, 10, 15, 25, 50, 75, and 100, displays detailed progress information with visual progress bars, and maintains a server-wide leaderboard showcasing top members. All data is cached for performance with hourly database synchronization.


βš™οΈ How It Works

Experience Gain:

  • Messages: 20 XP per message sent (1-hour cooldown between XP gains in same server)

  • Voice Chat: 1 XP per 5 minutes spent in voice channels

  • Cache updates immediately; database syncs every hour

Level Progression:

  • Starting level: 0

  • Maximum level: 100

  • XP requirement formula: Level Γ— 500

  • Example: Level 1 requires 200 XP, Level 10 requires 5000 XP, Level 50 requires 25,000 XP

Diamond Rewards:

  • Reward formula: New Level Γ— 2

  • Example: Reaching Level 10 awards 20 diamonds, Level 50 awards 100 diamonds

  • Cumulative earnings: Level 100 member has earned 10,100 diamonds from leveling alone

Milestone Levels: Special celebration announcements trigger at levels: 5, 10, 15, 25, 50, 75, 100 These levels receive enhanced announcement messages with celebration emojis

Level-Up System: When XP reaches the required threshold:

  1. Level increments by 1

  2. Excess XP carries over to next level

  3. New XP requirement calculated (new level Γ— 500)

  4. Diamond reward automatically granted

  5. Announcement sent to configured channel (or message channel if not set)

Caching System:

  • All user levels cached per server for instant access

  • Database updates every hour via cooldown mapping

  • Voice chat time tracked in real-time cache

  • Reduces database load while maintaining accuracy

Leaderboard:

  • Displays top 10 members by level and XP

  • Shows current level progress percentage

  • Indicates milestone levels with star marker

  • Updates in real-time from cache and database


πŸ”‘ Key Commands

/level [member]

Description: View level progression for yourself or another member Access: All members Cooldown: 60 seconds Function: Displays comprehensive level information including:

  • Current level and progress to next level

  • Visual progress bar (20 characters)

  • Current XP and required XP for next level

  • Percentage progress display

  • XP needed to reach next level

  • Estimated messages required (based on 20 XP per message)

  • Diamond reward for next level (Level Γ— 2)

  • Milestone indicator if next level is milestone

  • Total diamonds earned from all leveling

  • Color-coded embed (green 75%+, blue 50-74%, gray <50%)

/levelboard

Description: Display the server's top ranked members Access: All members Cooldown: 60 seconds Function: Shows leaderboard with:

  • Top 10 members ranked by level and XP

  • Rank medals (πŸ₯‡ 1st, πŸ₯ˆ 2nd, πŸ₯‰ 3rd, numbered ranks 4-10)

  • Current level for each member

  • Total XP accumulated

  • Mini progress bar (10 characters) showing progress to next level

  • Percentage to next level

  • Milestone star (⭐) indicator for milestone levels

  • Server statistics: Total members tracked, level reward info

  • Gold-colored embed for prestige appearance


πŸ‘₯ Who It's For

All Members: Automatically participate in leveling through normal server activity

Active Chatters: Earn XP through message activity (20 XP per message)

Voice Users: Earn XP through voice channel participation (1 XP per 5 minutes)

Competitive Members: Can track progress and compete on leaderboard

Administrators: Must enable leveling system via /manage features and configure level-up announcement channel


πŸ’‘ Why This Feature

Encourages consistent server engagement through progression rewards. Provides tangible benefits (diamonds) for active participation. Creates competition through visible leaderboard rankings. Recognizes both text and voice activity equally. Milestone system celebrates major achievements. Visual progress indicators maintain motivation. Automatic rewards remove need for manual tracking. Balanced progression prevents too-easy or too-hard advancement. Cached system ensures responsive performance. Integration with economy creates multiple reward paths. Appeals to completionists with 100-level maximum.


βš™οΈ Config Options

Required Setup:

  • System must be enabled via /manage features (toggle on/off)

  • Optional: Configure level-up announcement channel (defaults to message channel)

Experience Points:

Message Activity:

  • Award: 20 XP per message

  • Cooldown: 1 hour per server (prevents spam farming)

  • Applies to: All text channels

  • Excluded: Bot messages

Voice Activity:

  • Award: 1 XP per 5 minutes

  • Tracking: Real-time join/leave monitoring

  • Calculation: Time spent / 5 minutes = XP multiplier Γ— 5

  • Example: 30 minutes in voice = 6 XP (30/5 = 6, 6 Γ— 5 = 30... wait, formula is (minutes/5) * 5 XP base... Actually: 30 minutes = 30/5 = 6 chunks, 6 chunks Γ— 1 XP = 6 XP)

  • Applies to: All voice channels

  • Excluded: Bots

Level Progression:

XP Requirements per Level:

Level 1: 200 XP
Level 2: 1,000 XP  
Level 3: 1,500 XP
Level 5: 2,500 XP
Level 10: 5,000 XP
Level 25: 12,500 XP
Level 50: 25,000 XP
Level 75: 37,500 XP
Level 100: 50,000 XP

Formula: Level Γ— 500 = Required XP for that level

Cumulative XP to reach level:

  • Level 10: ~27,500 total XP (~1,375 messages)

  • Level 50: ~637,500 total XP (~31,875 messages)

  • Level 100: ~2,525,000 total XP (~126,250 messages)

Diamond Rewards:

Reward Structure:

  • Formula: Level Γ— 2 = Diamonds Awarded

  • Level 1: 2 diamonds

  • Level 10: 20 diamonds

  • Level 50: 100 diamonds

  • Level 100: 200 diamonds

Cumulative Diamonds:

  • Level 10: 110 diamonds total

  • Level 50: 2,550 diamonds total

  • Level 100: 10,100 diamonds total

Leaderboard Display:

Ranking System:

  • πŸ₯‡ First place medal

  • πŸ₯ˆ Second place medal

  • πŸ₯‰ Third place medal

  • #4-10 Numbered ranks


Made by DIVINITY β€’ Pleasure Corner

Last updated

Was this helpful?