Compatibility
Minecraft: Java Edition
Platforms
Links
Creators
Details
DiscordPunishBot v2.0.0
🇹🇷 Türkçe README için aşağı kaydırın | 🇺🇸 English README
🇺🇸 English README
A professional punishment, appeal, and report management system plugin for Minecraft servers with advanced Discord integration.
✨ Key Features
🤖 Advanced Discord Integration
- Interactive Button System: Approve/reject appeals and reports directly from Discord
- Rich Embed Messages: Beautiful, detailed embed messages with status colors
- Slash Commands: Full Discord slash command support for all punishment types
- Role-Based Permissions: Assign specific Discord roles for different operations
- Real-Time Notifications: Instant Discord notifications for new appeals/reports
- Multi-Channel Support: Separate channels for logs, appeals, and reports
⚖️ Complete Appeal System
- Appeal Commands:
/appeal,/appeal list,/appeal status <id> - Interactive Discord Buttons: Approve, reject, or investigate appeals from Discord
- Appeal Status Tracking: Pending, Under Review, Approved, Rejected
- Automatic Notifications: Players get notified of appeal decisions
- Cooldown System: 24-hour cooldown between appeals
- Admin Response System: Admins can add responses to appeal decisions
📋 Advanced Report System
- Report Commands:
/report <player> <reason>,/report anonymous <player> <reason> - Interactive Moderation: Approve, reject, or investigate reports from Discord
- Priority Levels: Low, Medium, High, Urgent, Critical with color coding
- Anonymous Reports: Complete privacy protection for reporters
- Status Tracking: Pending, Under Review, Investigating, Resolved, Dismissed, Duplicate
- Cooldown Management: 5-minute cooldown between reports
🎁 Configurable Reward System
- Console Command Rewards: Execute any console command as reward
- Flexible Configuration: Different rewards for correct reports/appeals
- Automatic Distribution: Rewards given automatically upon approval
- Custom Messages: Configurable reward notification messages
🗄️ Database & Performance
- Dual Database Support: SQLite (default) and MySQL
- Transaction Management: Proper commit/rollback for data integrity
- Connection Pool: Optimized database connection management
- Async Operations: Non-blocking database operations for better performance
- Error Recovery: Automatic error handling and recovery mechanisms
🚀 Installation
1. Requirements
- Java 17+
- Spigot/Paper 1.20+
- Essentials Plugin
- Discord Bot with permissions
2. Plugin Setup
- Download
DiscordPunishBot-2.0.0.jar - Place in your
pluginsfolder - Start server (config files will be generated)
- Stop server and configure
3. Discord Bot Setup
- Go to Discord Developer Portal
- Create new application → Bot tab → Create bot
- Copy bot token
- OAuth2 → URL Generator:
- Scopes:
bot,applications.commands - Permissions:
Send Messages,Use Slash Commands,Read Message History,Manage Messages
- Scopes:
- Add bot to your server using generated URL
4. Configuration
Edit config.yml:
# Discord Configuration
discord:
token: "YOUR_BOT_TOKEN_HERE"
guild-id: "YOUR_GUILD_ID_HERE"
# Channel Configuration
log-channel-id: "LOG_CHANNEL_ID" # General punishment logs
appeal-channel-id: "APPEAL_CHANNEL_ID" # Appeal notifications
report-channel-id: "REPORT_CHANNEL_ID" # Public report notifications
report-log-channel-id: "REPORT_LOG_ID" # Admin report management
# Admin Role Configuration
report-admin-role-id: "REPORT_ADMIN_ROLE" # Role for report management
appeal-admin-role-id: "APPEAL_ADMIN_ROLE" # Role for appeal management
# Punishment Roles
roles:
mute: "MUTE_ROLE_ID"
ban: "BAN_ROLE_ID"
kick: "KICK_ROLE_ID"
tempban: "TEMPBAN_ROLE_ID"
jail: "JAIL_ROLE_ID"
warn: "WARN_ROLE_ID"
other: "OTHER_ROLE_ID"
# Reward System Configuration
reward-system:
enabled: true
# Commands to execute when a report is approved
report-correct-commands:
- "eco give %player% 100"
- "tellraw %player% {\"text\":\"Thanks for the correct report! +100 coins\",\"color\":\"green\"}"
# Commands to execute when an appeal is approved
appeal-approved-commands:
- "eco give %player% 50"
- "tellraw %player% {\"text\":\"Your appeal was approved! +50 coins\",\"color\":\"green\"}"
# Custom messages
report-approved-message: "§a§l[REPORT] §7Your report was correct! You received a reward."
appeal-approved-message: "§a§l[APPEAL] §7Your appeal was approved! You received a reward."
🎮 Commands
Discord Slash Commands
/mute <player> [reason]- Mute a player/ban <player> [reason]- Ban a player/kick <player> [reason]- Kick a player/tempban <player> [reason]- Temporary ban/jail <player> [reason]- Jail a player/warn <player> [reason]- Warn a player/diger <player> [reason]- Other punishments/ceza <player>- View punishment history
Minecraft Commands
General Commands
/ceza <player>- View player's punishment history/dpunish reload- Reload configuration/dpunish info- Plugin information/dpunish test <database/discord>- Test connections/dpunish stats- Server statistics
Appeal Commands
/appeal- Show available punishments to appeal/appeal <punishment_id> <reason>- Create new appeal/appeal list- List your appeals/appeal status <appeal_id>- Check appeal status
Report Commands
/report <player> <reason> [description]- Create report/report anonymous <player> <reason> [description]- Anonymous report/report list- List your reports/report status <report_id>- Check report status
🔧 Discord Interactive Features
Report Management Buttons
When a report is created, admins see these buttons in the report log channel:
- ✅ Approve & Manual Punishment - Approve report, give rewards, requires manual punishment
- ❌ Reject - Reject the report as invalid
- 🔍 Investigate - Mark as under investigation (keeps buttons active)
Appeal Management Buttons
When an appeal is created, admins see these buttons in the appeal channel:
- ✅ Approve Appeal - Approve appeal, remove punishment, give rewards
- ❌ Reject Appeal - Reject the appeal as invalid
- 🔍 Investigate - Mark as under investigation (keeps buttons active)
Interactive Features
- Real-time Updates: Embed messages update automatically when status changes
- Admin Tracking: Shows which admin processed the request
- Status Colors: Different colors for pending, approved, rejected, investigating
- Button States: Buttons are disabled after action or remain active during investigation
- Error Handling: Graceful handling of deleted messages or invalid operations
📊 Permissions
# General Permissions
discordpunish.* # All permissions
discordpunish.admin # Admin permissions
discordpunish.reload # Reload config
discordpunish.test # Test connections
# Punishment Permissions
discordpunish.ceza # View punishment history
# Appeal Permissions
discordpunish.appeal.* # All appeal permissions
discordpunish.appeal.create # Create appeals
discordpunish.appeal.list # List own appeals
discordpunish.appeal.viewall # View all appeals (admin)
# Report Permissions
discordpunish.report.* # All report permissions
discordpunish.report.create # Create reports
discordpunish.report.list # List own reports
discordpunish.report.viewall # View all reports (admin)
discordpunish.report.notify # Receive report notifications
🛠️ Advanced Configuration
Database Settings
database:
type: "sqlite" # or "mysql"
# MySQL Configuration (if using MySQL)
host: "localhost"
port: 3306
database: "punishments"
username: "your_username"
password: "your_password"
Language Settings
language: "tr" # "tr" for Turkish, "en" for English
Customizing Punishments
punishments:
mute:
spam:
command: "essentials:mute %player% 30m Spam"
display: "Spam (30 minutes)"
toxic:
command: "essentials:mute %player% 2h Toxic behavior"
display: "Toxic Behavior (2 hours)"
🔧 Troubleshooting
Common Issues
Bot not responding to slash commands:
- Check bot token in config
- Verify bot has
applications.commandsscope - Check role permissions in Discord
- Use
/dpunish test discordin-game
Database errors:
- Check database type in config
- For MySQL: verify connection details
- For SQLite: check file permissions
- Use
/dpunish test databasein-game
Interactive buttons not working:
- Verify admin role IDs are correct
- Check bot permissions in Discord channels
- Ensure bot can manage messages
- Check server logs for detailed errors
Reports/Appeals not showing:
- Check channel IDs in config
- Verify bot has access to channels
- Check user permissions
- Use
/dpunish test discordto verify setup
📈 Features in Detail
Status System
- Reports: Pending → Under Review → Investigating → Resolved/Dismissed/Duplicate
- Appeals: Pending → Under Review → Approved/Rejected
- Color Coding: Each status has distinct colors in Discord embeds
- Notifications: Automatic player notifications for status changes
Reward System
- Configurable Commands: Execute any console command as reward
- Multiple Rewards: Different rewards for different actions
- Player Notifications: Custom messages when rewards are given
- Flexible Placeholders: Use
%player%in commands and messages
Database Design
- Punishments Table: Core punishment data
- Appeals Table: Linked to punishments with foreign keys
- Reports Table: Independent reporting system
- Indexes: Optimized for performance
- Transactions: ACID compliance for data integrity
📞 Support
- GitHub Issues: Report bugs or request features
- Discord Support: Join our Discord
- Email: gfwilliamtr@gmail.com
🇹🇷 Türkçe README
Minecraft sunucuları için Discord entegrasyonu ile gelişmiş ceza, itiraz ve şikayet yönetim sistemi.
✨ Temel Özellikler
🤖 Gelişmiş Discord Entegrasyonu
- İnteraktif Buton Sistemi: İtiraz ve şikayetleri Discord'dan direkt onayla/reddet
- Zengin Embed Mesajları: Durum renkli güzel ve detaylı embed mesajları
- Slash Komutları: Tüm ceza türleri için Discord slash komut desteği
- Rol Bazlı İzinler: Farklı işlemler için özel Discord rolleri
- Gerçek Zamanlı Bildirimler: Yeni itiraz/şikayet için anında Discord bildirimleri
- Multi-Kanal Desteği: Log, itiraz ve şikayet için ayrı kanallar
⚖️ Komple İtiraz Sistemi
- İtiraz Komutları:
/appeal,/appeal list,/appeal status <id> - İnteraktif Discord Butonları: Discord'dan itirazları onayla, reddet veya incele
- İtiraz Durum Takibi: Beklemede, İnceleniyor, Onaylandı, Reddedildi
- Otomatik Bildirimler: Oyuncular itiraz kararlarından haberdar edilir
- Cooldown Sistemi: İtirazlar arası 24 saat bekleme
- Admin Yanıt Sistemi: Adminler itiraz kararlarına yanıt ekleyebilir
📋 Gelişmiş Şikayet Sistemi
- Şikayet Komutları:
/report <oyuncu> <sebep>,/report anonymous <oyuncu> <sebep> - İnteraktif Moderasyon: Discord'dan şikayetleri onayla, reddet veya incele
- Öncelik Seviyeleri: Düşük, Orta, Yüksek, Acil, Kritik - renk kodlamalı
- Anonim Şikayetler: Şikayetçi için tam gizlilik koruması
- Durum Takibi: Beklemede, İnceleniyor, Araştırılıyor, Çözüldü, Reddedildi, Tekrar
- Cooldown Yönetimi: Şikayetler arası 5 dakika bekleme
🎁 Yapılandırılabilir Ödül Sistemi
- Konsol Komut Ödülleri: Ödül olarak herhangi bir konsol komutu çalıştır
- Esnek Yapılandırma: Doğru şikayet/itiraz için farklı ödüller
- Otomatik Dağıtım: Onay sonrası ödüller otomatik verilir
- Özel Mesajlar: Yapılandırılabilir ödül bildirim mesajları
🗄️ Veritabanı & Performans
- Çift Veritabanı Desteği: SQLite (varsayılan) ve MySQL
- Transaction Yönetimi: Veri bütünlüğü için uygun commit/rollback
- Bağlantı Havuzu: Optimize edilmiş veritabanı bağlantı yönetimi
- Async İşlemler: Daha iyi performans için engelleyici olmayan işlemler
- Hata Kurtarma: Otomatik hata yönetimi ve kurtarma mekanizmaları
🚀 Kurulum
1. Gereksinimler
- Java 17+
- Spigot/Paper 1.20+
- Essentials Plugin
- İzinli Discord Bot
2. Plugin Kurulumu
DiscordPunishBot-2.0.0.jardosyasını indirinpluginsklasörüne yerleştirin- Sunucuyu başlatın (config dosyaları oluşacak)
- Sunucuyu durdurun ve yapılandırın
3. Discord Bot Kurulumu
- Discord Developer Portal'a gidin
- Yeni uygulama oluşturun → Bot sekmesi → Bot oluştur
- Bot token'ı kopyalayın
- OAuth2 → URL Generator:
- Scope'lar:
bot,applications.commands - İzinler:
Send Messages,Use Slash Commands,Read Message History,Manage Messages
- Scope'lar:
- Oluşan URL ile botu sunucunuza ekleyin
4. Yapılandırma
config.yml düzenleyin:
# Discord Yapılandırması
discord:
token: "BOT_TOKEN_BURAYA"
guild-id: "SUNUCU_ID_BURAYA"
# Kanal Yapılandırması
log-channel-id: "LOG_KANAL_ID" # Genel ceza logları
appeal-channel-id: "ITIRAZ_KANAL_ID" # İtiraz bildirimleri
report-channel-id: "SIKAYET_KANAL_ID" # Genel şikayet bildirimleri
report-log-channel-id: "SIKAYET_LOG_ID" # Admin şikayet yönetimi
# Admin Rol Yapılandırması
report-admin-role-id: "SIKAYET_ADMIN_ROL" # Şikayet yönetimi rolü
appeal-admin-role-id: "ITIRAZ_ADMIN_ROL" # İtiraz yönetimi rolü
# Ceza Rolleri
roles:
mute: "MUTE_ROL_ID"
ban: "BAN_ROL_ID"
kick: "KICK_ROL_ID"
tempban: "TEMPBAN_ROL_ID"
jail: "JAIL_ROL_ID"
warn: "WARN_ROL_ID"
other: "OTHER_ROL_ID"
# Ödül Sistemi Yapılandırması
reward-system:
enabled: true
# Şikayet onaylandığında çalışacak komutlar
report-correct-commands:
- "eco give %player% 100"
- "tellraw %player% {\"text\":\"Doğru şikayet için teşekkürler! +100 coin\",\"color\":\"green\"}"
# İtiraz onaylandığında çalışacak komutlar
appeal-approved-commands:
- "eco give %player% 50"
- "tellraw %player% {\"text\":\"İtirazın onaylandı! +50 coin\",\"color\":\"green\"}"
# Özel mesajlar
report-approved-message: "§a§l[ŞİKAYET] §7Şikayetin doğruydu! Ödül aldın."
appeal-approved-message: "§a§l[İTİRAZ] §7İtirazın onaylandı! Ödül aldın."
🎮 Komutlar
Discord Slash Komutları
/mute <oyuncu> [sebep]- Oyuncuyu sustur/ban <oyuncu> [sebep]- Oyuncuyu yasakla/kick <oyuncu> [sebep]- Oyuncuyu at/tempban <oyuncu> [sebep]- Geçici yasakla/jail <oyuncu> [sebep]- Oyuncuyu hapsset/warn <oyuncu> [sebep]- Oyuncuyu uyar/diger <oyuncu> [sebep]- Diğer cezalar/ceza <oyuncu>- Ceza geçmişini görüntüle
Minecraft Komutları
Genel Komutlar
/ceza <oyuncu>- Oyuncunun ceza geçmişini görüntüle/dpunish reload- Yapılandırmayı yeniden yükle/dpunish info- Plugin bilgileri/dpunish test <database/discord>- Bağlantıları test et/dpunish stats- Sunucu istatistikleri
İtiraz Komutları
/appeal- İtiraz edilebilir cezaları göster/appeal <ceza_id> <sebep>- Yeni itiraz oluştur/appeal list- İtirazlarını listele/appeal status <itiraz_id>- İtiraz durumunu kontrol et
Şikayet Komutları
/report <oyuncu> <sebep> [açıklama]- Şikayet oluştur/report anonymous <oyuncu> <sebep> [açıklama]- Anonim şikayet/report list- Şikayetlerini listele/report status <sikayet_id>- Şikayet durumunu kontrol et
🔧 Discord İnteraktif Özellikler
Şikayet Yönetim Butonları
Şikayet oluşturulduğunda adminler şikayet log kanalında bu butonları görür:
- ✅ Onayla & Manuel Ceza - Şikayeti onayla, ödül ver, manuel ceza gerekli
- ❌ Reddet - Şikayeti geçersiz olarak reddet
- 🔍 İncelemeye Al - İnceleme olarak işaretle (butonları aktif tutar)
İtiraz Yönetim Butonları
İtiraz oluşturulduğunda adminler itiraz kanalında bu butonları görür:
- ✅ İtirazı Onayla - İtirazı onayla, cezayı kaldır, ödül ver
- ❌ İtirazı Reddet - İtirazı geçersiz olarak reddet
- 🔍 İncelemeye Al - İnceleme olarak işaretle (butonları aktif tutar)
İnteraktif Özellikler
- Gerçek Zamanlı Güncellemeler: Durum değiştiğinde embed mesajları otomatik güncellenir
- Admin Takibi: Hangi adminin işlemi yaptığını gösterir
- Durum Renkleri: Beklemede, onaylandı, reddedildi, inceleniyor için farklı renkler
- Buton Durumları: İşlem sonrası butonlar deaktive olur veya inceleme sırasında aktif kalır
- Hata Yönetimi: Silinmiş mesajlar veya geçersiz işlemler için zarif hata yönetimi
📊 İzinler
# Genel İzinler
discordpunish.* # Tüm izinler
discordpunish.admin # Admin izinleri
discordpunish.reload # Config yenileme
discordpunish.test # Bağlantı testleri
# Ceza İzinleri
discordpunish.ceza # Ceza geçmişi görüntüleme
# İtiraz İzinleri
discordpunish.appeal.* # Tüm itiraz izinleri
discordpunish.appeal.create # İtiraz oluşturma
discordpunish.appeal.list # Kendi itirazlarını listeleme
discordpunish.appeal.viewall # Tüm itirazları görme (admin)
# Şikayet İzinleri
discordpunish.report.* # Tüm şikayet izinleri
discordpunish.report.create # Şikayet oluşturma
discordpunish.report.list # Kendi şikayetlerini listeleme
discordpunish.report.viewall # Tüm şikayetleri görme (admin)
discordpunish.report.notify # Şikayet bildirimleri alma
📞 Destek
- GitHub Issues: Hata raporu veya özellik isteği
- Discord Destek: Discord'umuza katılın
- E-posta: gfwilliamtr@gmail.com
DiscordPunishBot v2.0.0 - Minecraft sunucunuz için profesyonel ceza, itiraz ve şikayet yönetim sistemi.
Developed by Melut - 2025




