Skip to content

Latest commit

 

History

History
176 lines (133 loc) · 5.66 KB

File metadata and controls

176 lines (133 loc) · 5.66 KB

kRedstoneLimiter

Minecraft sunucuları için yüksek performanslı, pasif redstone limitleme eklentisi. Redstone tabanlı lag makinelerini ve aşırı redstone aktivitesini blok, chunk ve bölge seviyelerinde yapılandırılabilir limitlerle engeller.

English README

Minecraft Java Paper Spigot Folia Lisans

kRedstoneLimiter Önizleme

Özellikler

  • Üç katmanlı limitleme - Blok, chunk ve bölge seviyesinde redstone limitleri
  • Blok bazlı eşikler - Observer, piston, dispenser, hopper, repeater, comparator gibi her blok türü için farklı limitler
  • Dünya bazlı özel ayarlar - Her dünya için özel limitler (örn. nether'da daha sıkı limitler)
  • Devre dışı dünyalar - Lobi veya minigame dünyalarında limitlemeyi tamamen kapatma
  • Piston kontrolü - Maksimum itme bloğu limiti ve geri çekme limitleme seçeneği
  • Görsel ve ses efektleri - Engellendiğinde yapılandırılabilir parçacık efektleri ve sesler
  • Yönetici bildirimleri - Tıklanabilir, throttle'lı bildirimler: blok türü, konum ve en yakın oyuncu bilgisi
  • Kaynağa ışınlanma - Bildirimlerdeki [TP] butonuna tıklayarak doğrudan redstone kaynağına ışınlanma
  • Folia desteği - Folia'nın bölgesel çoklu iş parçacığı yapısıyla tam uyumluluk (reflection)
  • Thread-safe - Eşzamanlı erişim için ConcurrentHashMap + AtomicInteger kullanımı
  • Bypass yetkisi - Belirli oyuncuların tüm limitleri atlaması
  • Hafif - Minimum performans etkisi, pasif çalışır

Gereksinimler

  • Java 17+
  • Paper, Spigot veya Folia 1.17.1+

Kurulum

  1. Releases sayfasından kRedstoneLimiter.jar dosyasını indirin
  2. Sunucunuzun plugins/ klasörüne yerleştirin
  3. Sunucuyu yeniden başlatın
  4. plugins/kRedstoneLimiter/config.yml ve messages.yml dosyalarını düzenleyin
  5. Değişiklikleri uygulamak için /krl reload komutunu çalıştırın

Komutlar

Komut Açıklama Yetki
/krl Genel bakış kredstonelimiter.stats
/krl perblock Detaylı blok bazlı rapor kredstonelimiter.stats
/krl perchunk Detaylı chunk bazlı rapor kredstonelimiter.stats
/krl perregion Detaylı bölge bazlı rapor kredstonelimiter.stats
/krl reload Yapılandırmayı yeniden yükle kredstonelimiter.reload
/krl tp <dünya> <x> <y> <z> Koordinata ışınlan kredstonelimiter.tp

Kısayollar: /kredstonelimiter, /kredstone, /krl

Yetkiler

Yetki Açıklama Varsayılan
kredstonelimiter.stats Limiter istatistiklerini görüntüleme op
kredstonelimiter.reload Yapılandırmayı yeniden yükleme op
kredstonelimiter.tp Engellenen konumlara ışınlanma op
kredstonelimiter.notify Engelleme bildirimlerini alma op
kredstonelimiter.bypass Tüm redstone limitlerini atlama op

Yapılandırma

config.yml
block_period: 3000

debug: false

bypass_permission: "kredstonelimiter.bypass"

disabled_worlds:
  - "world_lobby"

blocks:
  enabled: true
  threshold:
    GLOBAL: 2
    OBSERVER: 3
    DISPENSER: 2
    DROPPER: 2
    PISTON: 1
    STICKY_PISTON: 1
    REDSTONE_LAMP: 4
    NOTE_BLOCK: 3
    HOPPER: 2
    COMPARATOR: 3
    REPEATER: 3

chunks:
  enabled: true
  threshold: 1024

regions:
  enabled: true
  size: 16
  threshold: 24

piston:
  max_push: 3
  limit_retract: true

effects:
  block:
    enabled: true
    type: "SMOKE"
    data: 4
  sound:
    enabled: false
    type: "BLOCK_NOTE_BLOCK_BASS"
    volume: 0.5
    pitch: 0.5

notifications:
  enabled: true
  permission: "kredstonelimiter.notify"
  global_cooldown_seconds: 15
  local_cooldown_seconds: 60
  nearest_player_radius: 16

world_overrides:
  world_nether:
    block_period: 2000
    blocks:
      threshold:
        GLOBAL: 1
    chunks:
      threshold: 512
    regions:
      threshold: 16

Nasıl Çalışır

kRedstoneLimiter, redstone aktivitesini üç seviyede izler:

  1. Blok Seviyesi - Her bir blok pozisyonunun block_period süresi içinde kaç kez aktive olduğunu takip eder. Belirli bir blok (örn. X,Y,Z konumundaki observer) eşiğini aşarsa, sonraki aktivasyonlar engellenir.

  2. Chunk Seviyesi - Chunk başına toplam redstone aktivasyonlarını takip eder. Bir chunk eşiği aşarsa, o chunk'taki tüm redstone engellenir.

  3. Bölge Seviyesi - Yapılandırılabilir bölge başına (varsayılan 16x16x16 blok) redstone aktivasyonlarını takip eder. Blok ve chunk limitleme arasında bir orta yol sağlar.

Bir limite ulaşıldığında:

  • Redstone aktivasyonu iptal edilir
  • Blok konumunda parçacık efekti oynatılır
  • Bildirim yetkisine sahip yöneticiler, blok türü, konum ve en yakın oyuncu bilgisiyle birlikte tıklanabilir bir mesaj alır

Kaynak Koddan Derleme

git clone https://github.com/KEYDAL/kRedstoneLimiter.git
cd kRedstoneLimiter
./mvnw clean package

Derlenen JAR dosyası target/kRedstoneLimiter.jar konumunda olacaktır.

Lisans

Bu proje MIT Lisansı altında lisanslanmıştır - detaylar için LICENSE dosyasına bakın.

Geliştirici

Egemen KEYDAL tarafından KEYDAL bünyesinde geliştirilmiştir.