ProBot-a oxşar, tam funksionallıqlı Discord Level Sistemi Botu.
- 💬 Mesaj XP-si — İstifadəçilər hər mesaj göndərdikdə XP qazanır (cooldown ilə)
- 🔊 Səs XP-si — Səs kanallarında qaldıqları müddətə görə XP qazanırlar
- 🏆 Sıralama Sistemi —
/leaderboardilə serverin TOP istifadəçilərini gör - 📊 Rank Kartı —
/rankilə gözəl bir profil kartı göstər - 🎖️ Səviyyə Rolları — Müəyyən səviyyəyə çatanda avtomatik rol ver
- ⚙️ Tam Konfiqurasiya — XP miqdarı, cooldown, çarpan, kanallar, rollar
- 📢 Fərdi Level Up Mesajları — Öz mesajını yaz, istədiyin kanala göndər
- 🚫 XP-siz Kanallar/Rollar — Bəzi kanal/rol üçün XP-ni söndür
- Python 3.10+
- pip
git clone <repo-url>
cd discord-level-botpip install -r requirements.txtcp .env.example .env.env faylını aç və DISCORD_TOKEN-ı öz tokeninlə əvəz et:
DISCORD_TOKEN=MTExxx...
Discord Developer Portal-a girib:
- Bot bölməsindən
MESSAGE CONTENT INTENT,SERVER MEMBERS INTENTaktiv et - OAuth2 → URL Generator ilə botunu serverinə dəvət et
- Scopes:
bot,applications.commands - Bot Permissions:
Send Messages,Embed Links,Manage Roles,View Channels,Connect,Speak
- Scopes:
Bot ilk dəfə işə salındığında slash əmrlərini qeydiyyatdan keçirmək üçün bot.py-nin on_ready hissəsinə aşağıdakı kodu müvəqqəti əlavə edib bir dəfə işlət:
await bot.tree.sync()Sonra bu sətri silə bilərsən (botun yenidən başlamasını yavaşlatır).
python bot.py| Əmr | Açıqlama |
|---|---|
/rank [user] |
Rank kartını göstər |
/leaderboard [page] |
Siralama cədvəli |
!rank [user] |
Prefix ilə rank |
!lb / !top |
Prefix ilə sıralama |
| Əmr | Açıqlama |
|---|---|
/settings view |
Mövcud ayarları göstər |
/settings xp-message <n> |
Mesaj başına XP (default: 15) |
/settings xp-voice <n> |
Dəqiqə başına səs XP (default: 10) |
/settings cooldown <s> |
XP gözləmə (default: 60s) |
/settings multiplier <x> |
XP çarpanı (default: 1.0) |
/settings level-channel [#kanal] |
Level up mesaj kanalı |
/settings level-message <mətn> |
Fərdi level up mesajı |
/settings no-xp-channel <#kanal> |
XP verilməyən kanal |
/settings no-xp-role <@rol> |
XP verilməyən rol |
/levelrole set <level> <@rol> |
Səviyyə rolu əlavə et |
/levelrole remove <level> |
Səviyyə rolunu sil |
/levelrole list |
Bütün səviyyə rolları |
/addxp <@user> <n> |
İstifadəçiyə XP əlavə et |
/removexp <@user> <n> |
İstifadəçidən XP sil |
/resetxp <@user> |
İstifadəçini sıfırla |
{user}→ İstifadəçi mention (@username){username}→ İstifadəçi adı{level}→ Yeni səviyyə
Növbəti Səviyyə XP = 5 × (level²) + 50 × level + 100
| Səviyyə | Lazım olan XP |
|---|---|
| 1 | 155 |
| 5 | 475 |
| 10 | 1.100 |
| 20 | 3.100 |
| 50 | 15.100 |
discord-level-bot/
├── bot.py # Ana bot faylı
├── database.py # SQLite verilənlər bazası
├── utils.py # XP formulaları və köməkçi funksiyalar
├── requirements.txt
├── .env.example
├── data/
│ └── levels.db # SQLite DB (avtomatik yaranır)
└── cogs/
├── levels.py # Mesaj XP sistemi + /rank
├── voice.py # Səs XP sistemi
├── leaderboard.py # Sıralama sistemi
├── settings.py # Admin konfiqurasiya əmrləri
└── help.py # /help əmri