Paylaşım - FCharacterPluginManager — Karakter Bazlı phBot Plugin Yöneticisi | SroCave - SRO Destek Forumu

Paylaşım FCharacterPluginManager — Karakter Bazlı phBot Plugin Yöneticisi

fascinate

Captain Ivy
Katılım
2 Mar 2023
Mesajlar
35
Tepkime puanı
18
Puanları
8
mrfascinate

FCharacterPluginManager

FCharacterPluginManager, aynı phBot kurulumu ve ortak phBot.exe kullanan karakterlerde hangi pluginlerin çalışacağını ayrı ayrı seçmenizi sağlar. Yönetilen pluginler karakter oyuna girdikten sonra belleğe yüklenir; ana Plugins klasöründeki bütün pluginleri her karakterde çalıştırmak zorunda kalmazsınız.
Öne Çıkan Özellikler
  • Sunucu ve karakter adına göre ayrı plugin seçimi
  • Aynı phBot.exe dosyasını kullanan eşzamanlı botlarda işlem bazında bağımsız yükleme
  • Tek dosyalı plugin ve kendi destek dosyaları bulunan plugin klasörü desteği
  • Kayıtlı karakter profilini oyuna girişte otomatik uygulama
  • Plugin olaylarını, paket hook'larını ve script çağrılarını yönetilen pluginlere aktarma
  • QtBind buton ve checkbox callback adlarını plugin bazında ayırma
  • Listeden çıkarılan plugin için temizleme fonksiyonunu çalıştırma
  • Mevcut get_config_dir() ve server_karakter tabanlı ayar dosyalarıyla uyumluluk
Kurulum
  1. Aşağıdaki indirme bölümünden FCharacterPluginManager.py dosyasını indirin.
  2. Dosyayı phBot'un ana Plugins klasörüne kopyalayın.
  3. Ana Plugins klasörünün içinde FCharacterPluginManager adında bir klasör oluşturun.
  4. Karakter bazında yönetmek istediğiniz pluginleri bu alt klasöre taşıyın.
  5. phBot'u yeniden başlatın veya Plugins bölümünden pluginleri yeniden yükleyin.
Yönetilecek bir pluginin ikinci kopyasını ana Plugins klasöründe bırakmayın. Aksi halde phBot bu kopyayı normal şekilde bütün karakterlerde ayrıca yükler.
Klasör Yapısı
Kod:
phBot/Plugins/
|-- FCharacterPluginManager.py
`-- FCharacterPluginManager/
    |-- PluginA.py
    |-- PluginB.py
    `-- PluginC/
        |-- PluginC.py
        `-- destek dosyalari...
Yalnızca bir Python dosyasından oluşan pluginleri doğrudan Plugins/FCharacterPluginManager/ klasörüne koyabilirsiniz. JSON, ses veya yardımcı dosyaları bulunan bir plugini kendi klasörüyle birlikte taşıyabilirsiniz; her plugin için ayrı klasör oluşturmak zorunlu değildir.
Ana Arayüz
EcIeEkI.png
QEyHA0M.png
s9bLR8D.png
Available Plugins alanı yönetim klasöründe bulunan pluginleri, Enabled for Character alanı ise aktif karakter için seçilmiş pluginleri gösterir. Alt bölümde algılanan server_karakter kimliği ve son yükleme durumu görüntülenir.
İlk Ayarlar
  1. Yapılandırmak istediğiniz karakterle oyuna girin.
  2. Plugins sekmesinden FCharacterPluginManager ekranını açın.
  3. Refresh butonuyla yönetim klasörünü taratın.
  4. Sol listeden bir plugin seçip Add > butonuna basın.
  5. Gerekli bütün pluginleri ekledikten sonra Save & Apply butonuna basın.
Karakter Listesini Değiştirme
Bir plugini karakterden kaldırmak için sağdaki listeden seçin, < Remove butonuna ve ardından Save & Apply butonuna basın. Seçimler birleşik server_karakter kimliğiyle saklandığı için aynı isimli karakterler farklı sunucularda ayrı profile sahip olabilir.
Önerilen Kullanım
  1. Önce bir karakterle oyuna girip onun plugin listesini kaydedin.
  2. Diğer karaktere geçerek aynı işlemi o karakter için tekrarlayın.
  3. Yönetim klasörüne yeni bir plugin eklediğinizde Refresh kullanın.
  4. Pluginin kendi ayarlarını, normal plugin kullanımındaki gibi kendi GUI ekranından yapılandırın.
Yönetilen pluginlere gerçek kaynak dosyası yolu ve normal phBot API fonksiyonları verilir. get_config_dir() kullanan veya ayarlarını server_karakter.json şeklinde kaydeden pluginler mevcut ayar konumlarını kullanmaya devam eder. Kendi dosyasının yanındaki JSON, ses veya benzeri kaynakları kullanan pluginleri destek dosyalarıyla birlikte taşıyın.

Standart dışı yükleme varsayımları bulunan, paket sistemiyle karmaşık yardımcı modüller kullanan veya dinamik QtBind callback üreten bazı pluginlerde özel uyarlama gerekebilir.
  • phBot başlangıçta yalnızca ana FCharacterPluginManager.py dosyasını normal plugin olarak yükler.
  • Karakter verisi hazır olduğunda manager server ve karakter adını algılar.
  • Kaydedilmiş listede bulunan kaynaklar ilgili phBot işleminin belleğine yüklenir.
  • joined_game, teleported, event_loop, chat, event, script ve paket hook'ları aktif pluginlere iletilir.
  • Bir paket hook'ı False döndürürse bu sonuç phBot'a korunarak aktarılır.
  • Her phBot işleminin belleği ayrı olduğu için aynı exe ve aynı dosyalarla çalışan karakterlerin aktif listeleri birbirini değiştirmez.
Plugin Available Plugins listesinde görünmüyor.
Plugin dosyasının Plugins/FCharacterPluginManager/ altında bulunduğunu kontrol edin ve Refresh butonuna basın. Klasörlü bir pluginde ana Python dosyasının tercihen klasörle aynı adı taşıması gerekir.

Plugin bütün karakterlerde yine yükleniyor.
Aynı pluginin bir kopyası ana Plugins klasöründe kalmıştır. Ana klasördeki kopyayı kaldırıp yalnızca FCharacterPluginManager altındaki sürümü bırakın.

Aktif karakter görünmüyor veya ayar kaydedilemiyor.
Önce karakter seçimini tamamlayıp oyun dünyasına girin. Manager karakter ve sunucu bilgisi hazır olmadan profil kaydetmez.

Plugin ayarlarımı bulamıyor.
Pluginin yardımcı JSON, ses veya veri dosyaları kendi dosyasının yanındaysa plugin klasörünü bütün içeriğiyle taşıyın. get_config_dir() altında saklanan karakter ayarları normalde aynı konumdan okunmaya devam eder.

Bir plugin yükleme hatası verdi.
phBot logunda [FCharacterPluginManager] ile başlayan hata satırını kontrol edin. Standart dışı import veya dinamik callback kullanan pluginler manager uyarlaması gerektirebilir.
  • Karakter ve sunucu bazında plugin profilleri eklendi.
  • Tek dosyalı ve klasörlü pluginleri bellekten yükleme desteği eklendi.
  • Event aktarımı, paket dönüş yönetimi, GUI callback ayrımı ve plugin temizleme desteği eklendi.
  • Plugin tarama, seçme, kaydetme ve uygulama arayüzü eklendi.



Destek ve İletişim
Discord: mrfascinate
Geliştirici: ⚜ Made By FascinaTe
 
Etiketler Etiketler
Yok

Geri
Üst Alt