İçeriğe geç
Platformlar

Folia plugin'leri

Folia'nın bölgesel çoklu iş parçacığı yapısı, plugin'lerin işleri zamanlama biçimini değiştirir. Codexe'in Folia uyumlu plugin'leri nasıl ürettiği ve isteğe neler yazılmalı.

Güncellendi

Bu sayfada
  1. Codexe neyi farklı yapar
  2. İsteğe neler yazılmalı
  3. Derleme ve doğrulama
  4. Sık karşılaşılan sorunlar

Folia, dünyanın farklı bölgelerini farklı iş parçacıklarında işleyen bir Paper çatalıdır. Tek bir "ana iş parçacığı" yoktur, bu yüzden sıradan Bukkit zamanlaması (Bukkit.getScheduler().runTask(...)) geçerli değildir.

#Codexe neyi farklı yapar

Folia türünü seçtiğinde üretilen plugin:

  • işleri Bukkit zamanlayıcısı yerine bölge, varlık, genel bölge ve eşzamansız zamanlayıcılarla planlar,
  • plugin.yml içinde folia-supported: true bildirir,
  • Folia API'sine karşı derlenir (Maven).

#İsteğe neler yazılmalı

Spigot ve Paper rehberindeki her şey, ayrıca zamanlamaya duyarlı ayrıntılar: "3 saniye sonra ışınla", "çevrimiçi her oyuncu için her dakika tekrarla". Folia kodu en çok bu noktalarda farklılaşır.

#Derleme ve doğrulama

Folia plugin'leri Hazır olmadan önce diğer plugin'ler gibi derlenir ve kontrol edilir. Derleme, kodun Folia API'sine karşı derlendiğini kanıtlar. Çalışma zamanındaki iş parçacığı güvenliği yine de mantığa bağlıdır, bu yüzden bir Folia sunucusunda test et.

#Sık karşılaşılan sorunlar

BelirtiOlası neden
Zamanlayıcıyla ilgili UnsupportedOperationExceptionKod (çoğu zaman bir bağımlılıktan gelen) Bukkit zamanlayıcısını kullanıyor. Sohbetten bunu bölge veya varlık zamanlayıcısına taşımasını iste.
Plugin Folia'da yüklenmeyi reddediyorplugin.yml içinde folia-supported: true eksik.
Folia plugin'leri | Codexe Docs