ArYetkili

Bu eklenti, Minecraft Paper 1.21.x sunucularında yetkili yönetimi ve takibi için geliştirilmiş LuckPerms entegrasyonlu bir yönetim aracıdır. Sunucu personelinin faaliyetlerini düzenlemek ve denetlemek amacıyla tasarlanmıştır. 1.0.0 sürümüyle sunuculara profesyonel bir yetkili takip sistemi sunar.

schedule
01

Genel Bakis

ArYetkili, staff ekibinizi tek bir yerden yönetmenizi sağlar. Yetki verme/alma, aktiflik takibi, performans puanlama, başarım rozeti, rapor sistemi, staff modu ve toplu işlemler gibi özellikleri kapsamlı bir GUI sistemiyle sunar. Tüm komutlar tek bir /yetkili komutu üzerinden çalışır.


02

Ozellikler

  • Yetki Yönetimi -- LuckPerms üzerinden doğrudan rank verme/alma, hiyerarşi kontrolü, onay mekanizması
  • Aktiflik Takibi -- Oturum bazlı süre ölçümü, haftalık/aylık dönemler, rank bazlı eşik değerleri
  • AFK Tespiti -- Hareket, blok etkileşimi, chat ve komut bazlı AFK algılama
  • Staff Modu -- Fly, god mode, vanish; envanter otomatik kaydetme/geri yükleme
  • Rapor Sistemi -- Oyuncuların staff üyelerini raporlaması, cooldown, durum takibi (Açık/Çözüldü/Reddedildi)
  • Görev Durumu -- Görevde / Meşgul / İzinli durumları, staff listesinde görünür
  • Başarım Rozetleri -- 9 farklı başarım (ceza sayısı, aktiflik saati, seri, kıdem), otomatik kazanım
  • Performans Puanlama -- 0-100 arası ağırlıklı skor (aktiflik, ceza, tutarlılık, başarım)
  • Toplu İşlemler -- Birden fazla staff üzerinde aynı anda rank değişikliği
  • GUI Paneli -- 19 ekranlı envanter tabanlı yönetim arayüzü
  • Log Geçmişi -- Tüm yetki işlemlerinin kayıt altına alınması
  • Discord Webhook -- Yetki değişikliklerinde Discord kanalına bildirim
  • ArBan Entegrasyonu -- Ceza istatistiklerini performans skoruna dahil etme (opsiyonel)
  • Çift Veritabanı -- SQLite (varsayılan) veya MySQL (HikariCP bağlantı havuzu)
  • MiniMessage -- Tüm mesajlar MiniMessage formatında, tamamen özelleştirilebilir

03

Gereksinimler

Gereksinim Versiyon
Paper (veya fork) 1.21.x
Java 17+
LuckPerms 5.4+
ArBan (opsiyonel) 3.8+

04

Kurulum

  1. ArYetkili-1.0.0.jar dosyasını sunucunuzun plugins/ klasörüne koyun.
  2. Sunucuyu başlatın. Plugin plugins/ArYetkili/config.yml dosyasını oluşturacaktır.
  3. config.yml dosyasını ihtiyacınıza göre düzenleyin.
  4. /yetkili reload ile ayarları yeniden yükleyin.

Kaynaktan Derleme

# JDK 21 gereklidir (hedef Java 17)
cd ArYetkili
mvn clean package
# Çıktı: target/ArYetkili-1.0.0.jar

05

Komutlar

Tüm komutlar /yetkili ana komutu üzerinden çalışır. Aliaslar: /staff, /y

Komut Açıklama İzin
/yetkili GUI panelini açar (oyuncu) / Yardım gösterir (konsol) aryetkili.gui
/yetkili ver <oyuncu> [rank] Oyuncuya staff yetkisi verir aryetkili.yetkiver
/yetkili al <oyuncu> [-sebep <sebep>] Staff üyesinin yetkisini alır aryetkili.yetkial
/yetkili liste [rank] Staff listesini gösterir aryetkili.list
/yetkili bilgi <oyuncu> Staff üyesinin detaylı bilgisini gösterir aryetkili.info
/yetkili gecmis [oyuncu] [sayi] Yetki işlem loglarını görüntüler aryetkili.log
/yetkili mod Staff modunu açar/kapatır aryetkili.staffmod
/yetkili rapor <oyuncu> <sebep> Bir staff üyesini raporlar aryetkili.report
/yetkili gorev [gorevde|mesgul|izinli] Görev durumunu değiştirir aryetkili.duty
/yetkili gui GUI panelini açar aryetkili.gui
/yetkili reload Plugin ayarlarını yeniden yükler aryetkili.reload
/yetkili onayla Bekleyen işlemi onaylar aryetkili.gui
/yetkili iptal Bekleyen işlemi iptal eder aryetkili.gui
/yetkili senk LuckPerms'ten staff verisi senkronize eder aryetkili.sync
/yetkili yardim Komut yardımını gösterir aryetkili.gui

06

İzinler

İzin Açıklama Varsayılan
aryetkili.* Tüm izinler op
aryetkili.yetkiver Yetki verme op
aryetkili.yetkial Yetki alma op
aryetkili.list Staff listesi op
aryetkili.info Staff bilgisi op
aryetkili.log Log görüntüleme op
aryetkili.gui GUI erişimi op
aryetkili.config Config yönetimi op
aryetkili.reload Plugin reload op
aryetkili.sync LuckPerms senkronizasyonu op
aryetkili.staffmod Staff modu op
aryetkili.report Rapor gönderme true
aryetkili.report.manage Rapor yönetimi (çözme/reddetme) op
aryetkili.duty Görev durumu değiştirme op
aryetkili.bulk Toplu işlemler op
aryetkili.bypass Hiyerarşi kontrolünü atlama false

07

Yapılandırma

plugins/ArYetkili/config.yml dosyasından tüm ayarlar yönetilir.

Temel Ayarlar

general:
  staff-permission: "aryetkili.staff"   # Staff olarak kabul edilecek permission
  default-group: "default"              # Yetki alındığında atanacak grup
  allow-self-remove: false              # Kendi yetkisini kaldırabilir mi
  confirmation-enabled: true            # İki adımlı onay mekanizması
  confirmation-timeout: 15              # Onay süresi (saniye)

Veritabanı

database:
  type: "sqlite"            # "sqlite" veya "mysql"
  sqlite-file: "aryetkili.db"
  mysql:
    host: "localhost"
    port: 3306
    database: "aryetkili"
    username: "root"
    password: ""
    pool:
      maximum-pool-size: 10
      minimum-idle: 2

Aktiflik Sistemi

activity:
  afk-detection: true
  afk-timeout: 300                    # Saniye
  period-type: "weekly"               # "weekly" veya "monthly"
  threshold-mode: "per-rank"          # "global" veya "per-rank"
  global-threshold: 5                 # Saat
  rank-thresholds:
    helper: 3
    moderator: 7
    admin: 10

Discord Webhook

discord:
  enabled: true
  webhook-url: "https://discord.com/api/webhooks/..."
  events:
    staff-promote: true
    staff-demote: true
    luckperms-change: true
    config-change: false

Diğer Modüller

Her modül enabled: true/false ile açılıp kapatılabilir:

Modül Config Anahtarı Açıklama
Staff Modu staff-mode.enabled Fly, god, vanish, envanter kaydetme
Rapor Sistemi reports.enabled Cooldown süresi, staff bildirimi
Görev Durumu duty.enabled Varsayılan durum, listede gösterme
Başarım Rozetleri achievements.enabled Chat duyurusu
Performans Skoru performance.enabled Ağırlık oranları (toplam 1.0)
Toplu İşlemler bulk.enabled Maksimum seçim sayısı
Duyurular announcements.enabled Promote/demote mesajları

08

GUI Ekranları

Plugin 19 farklı GUI ekranı sunar:

Ekran Açıklama
Ana Menü Staff listesi, aktiflik, loglar, config, raporlar, başarımlar
Staff Listesi Sayfalı staff listesi, durum göstergeleri
Staff Detay Bireysel staff profili, tüm istatistikler
Aktiflik Staff aktiflik verileri
Log Geçmişi Sayfalı yetki işlem kayıtları
Rapor Listesi Durum filtreli rapor listesi
Rapor Detay Rapor çözümleme/reddetme arayüzü
Başarımlar 9 başarım rozeti görüntüleme
Top Staff En aktif staff sıralaması
Dashboard Genel istatistik paneli
Toplu İşlemler Çoklu staff seçimi ve toplu rank değiştirme
Rank Seçimi Yetki verme/toplu işlem için rank seçici
Ceza İstatistikleri ArBan entegrasyonlu ceza verileri
Config Oyun içi config yönetimi
Yardım Komut ve kullanım bilgileri
Onay Ekranı İşlem onay/iptal diyalogu

09

Başarım Rozetleri

Rozet Koşul Simge
İlk Ceza 1 ceza verme Tahta Kılıç
50 Ceza 50 ceza verme Taş Kılıç
100 Ceza 100 ceza verme Elmas Kılıç
100 Saat 100 saat aktiflik Saat
500 Saat 500 saat aktiflik Altın Elma
1000 Saat 1000 saat aktiflik Büyülü Altın Elma
7 Gün Seri 7 gün üst üste giriş Blaze Tozu
30 Gün Seri 30 gün üst üste giriş Blaze Çubuğu
Kıdemli 6 ay staff üyeliği Nether Yıldızı

10

Veritabanı Tabloları

Tablo Açıklama
aryetkili_staff Staff üye bilgileri, rank, ilk yetki tarihi
aryetkili_activity Aktiflik verileri (toplam, dönemsel)
aryetkili_activity_history Dönemsel aktiflik arşivi
aryetkili_logs Yetki işlem logları
aryetkili_staff_reports Staff raporları
aryetkili_achievements Kazanılan başarımlar

11

Sorun Giderme (Troubleshooting)

Plugin ile ilgili bir sorun yaşıyorsanız öncelikle Java 17+ ve Paper 1.21.x sürümünde olduğunuzdan emin olun. LuckPerms (5.4+) eklentisinin yüklü ve çalışır durumda olduğunu kontrol edin. Veritabanı bağlantı hataları için config.yml dosyasındaki SQLite veya MySQL ayarlarını gözden geçirin; MySQL kullanıyorsanız bağlantı bilgilerinin doğruluğunu teyit edin. Komutlar çalışmıyorsa /yetkili komutu için gerekli yetkilere sahip olduğunuzdan emin olun. Hatalı davranışlar veya performans sorunları için plugins/ArYetkili/logs dizinindeki kayıtları inceleyebilir, sorun devam ederse konsol çıktısını hata raporu olarak iletebilirsiniz.

12

API Kullanımı

ArYetkili, geliştiricilerin eklenti verilerine erişebilmesi ve entegrasyon sağlayabilmesi için kapsamlı bir API sunar. Eklentiyi projenize dahil etmek için pom.xml dosyanıza bağımlılık olarak eklemeniz yeterlidir. API üzerinden; staff üyelerinin aktiflik sürelerini sorgulayabilir, performans puanlarına erişebilir, mevcut görev durumlarını (Görevde/Meşgul/İzinli) kontrol edebilir ve başarım rozeti verilerini çekebilirsiniz. Ayrıca, LuckPerms entegrasyonu sayesinde yetki değişikliklerini dinleyebilir ve rapor sistemi verilerine programatik olarak müdahale edebilirsiniz. Tüm işlemler ArYetkiliAPI sınıfı üzerinden yönetilmekte olup, veritabanı işlemlerinde HikariCP bağlantı havuzu ile yüksek performanslı veri alışverişi desteklenmektedir.

auto_awesome Benzer Projeler