Merhaba arkadaşlar çok öncesinden oyuna profil ekleme sistemi yapmıştım şu kaynaktan yapmıştım
https://forum.turkmmo.com/konu/3899261-c-python-profil-goruntuleme-sistemi/ karşıdaki oyuncuya profil isteği atınca örnek veriyorum Ahmet profilinizi görüntülemek istiyor şeklinde istek geliyordu isteği kabul edince karşıdaki kişi profili görebiliyordu. geçenlerde oyuna raidcall rütbe sistemi ekledim sorunsuz ekledim çalışıyor ama bu sefer profil sisteminde bir sorun yarattı şimdi karşıdaki kişi istek atınca None profilinizi görüntülemek istiyor diye istek geliyor bir anda oyuncu ismi yazan yer noneye döndü ayrıca isteği alan kişi kabul etse bile artık istek atan oyuncuda profil inceleme penceresi açılmıyor , lütfen bu konuda yardımcı olabilir misiniz.
oyundan falan atmıyor ama syser bunu veriyor
1221 20:50:12892 :: CInstanceBase::AttachTextTail - VID [78142] ALREADY EXIST
Ekli dosyayı görüntüle 162146
Selam,
“None profilinizi görüntülemek istiyor” olayı genelde tek bir şeye işaret ediyor: profil isteği paketi gidiyor ama karşı taraf, isteği atan kişinin adını artık doğru okuyamıyor. Raidcall rütbe sistemini ekleyince bu tarz şeyler olmasının sebebi de çoğu zaman rütbe sisteminin chat/whisper tarafındaki paketlere veya isim bilgisinin taşındığı kısımlara dokunması.
Şöyle düşün: eskiden profil sistemi isteği atanın adını alıp ekrana yazıyordu. Şimdi o isim yerine None geliyorsa ya isim alanı bozuldu ya da istemci tarafı gelen veriyi yanlış yerden okumaya başladı. Özellikle rütbe sistemleri bazen chat paketlerine ekstra byte/int ekliyor, bazen de ismin başına rütbe ekleyip direkt name string’ini değiştiriyor. Bu iki durumda da paket yapısı kaydığı için isim düzgün gelmez ve python tarafı None görür.
İsteği kabul edince profil penceresinin açılmaması da aynı yerden patlar. Kabul paketi gidiyor gibi görünür ama karşı tarafta profili açacak olan kısım, isteği atan kişiyi doğru bulamıyor. Çünkü adı/vid’i doğru alamadığı için eşleştirme yapamıyor.
Benim önerim şu şekilde ilerlemen:
Önce raidcall rütbe sisteminde hangi dosyalara müdahale ettiysen orada “chat”, “whisper”, “packet” tarafına bak. Özellikle chat/whisper paketlerinin içine ekstra alan eklediysen server ve client aynı yapıyı kullanmuyor olabilir. Server yeni formatla gönderip client eski formatla okuyorsa bu None olayı tam bunun sonucu.
Eğer rütbeyi ismin başına yazdırdıysan (örnek “[Yetkili]Ahmet” gibi), burada da isim uzunluğu ya da null sonlandırma sorun çıkarabiliyor. Bazı yerlerde isim alanının limiti var, rütbe eklenince taşınca isim bozuluyor.
Kısaca toparlayayım: sorun büyük ihtimalle profil sisteminden değil, raidcall rütbe sisteminin isim/paket tarafında yaptığı değişiklikten kaynaklanıyor.
Syserr satırını da yazmıştın ama burada paylaşmamışsın. Onu buraya koyarsan direkt hangi fonksiyonda patladığını söyleyebilirim. Ayrıca rütbeyi nerede gösteriyorsun, chat içinde mi yoksa isme direkt mi ekledin, bunu da yazarsan daha net yönlendiririm.