Whistle

Ruhsuz Filozof
Kurucu
Kurumsal Üye
Geliştirici
Yardımsever Üye
Mesaj
11.494
Çözümler
546
Beğeni
12.049
Puan
5.864
Merhaba arkadaşlar,
Birkaç gün önce başıma gelen bir sorunu sizinle paylaşacağım ve tabikide bugün sorunu çözdüğüm için sizlerle de çözümü de paylaşacağım. :)
Eğer oyuna giriş yaptığınızda karakter seçme ekranında karakterlerinizin üzerinde eşya gözükmüyorsa ve oyuna girmeye çalıştığınızda şuna benzer bir syserr hatası alıyorsanız;
Kod:
0511 20:23:26865 :: Traceback (most recent call last):

0511 20:23:26866 ::   File "networkModule.py", line 239, in SetGamePhase

0511 20:23:26866 ::   File "game.py", line 112, in __init__

0511 20:23:26867 ::   File "interfaceModule.py", line 339, in MakeInterface

0511 20:23:26867 ::   File "interfaceModule.py", line 146, in __MakeTaskBar

0511 20:23:26868 ::   File "uiTaskBar.py", line 555, in LoadWindow

0511 20:23:26868 ::   File "uiTaskBar.py", line 769, in RefreshQuickSlot

0511 20:23:26870 :: RuntimeError
0511 20:23:26870 :: :
0511 20:23:26870 :: skill.GetSkillType - Failed to find skill by 93
0511 20:23:26871 ::
biliniz ki locale_tr içinde bulunan item_proto dosyasının client tarafından okunamamasından kaynaklıdır. Kısacası item_proto dosyamız client ile uyumsuzdur.

Not: Oyunda karakterin üstünde zırh gözükmemesi sorunu başka sorunlardan dolayı da olabilir lakin syserr kayıtlarına baktığımız zaman eğer sizde aynı syserr hatasını alıyorsanız biliniz ki sizde bu sorunu yaşıyorsunuz. Eğer oyuna girdiğinizde karakter yere gömülü oluyorsa model dosyalarında sorun vardır. Oda syserre kayıt eder zaten.

Hata ile ilgili ekran görüntüleri;
Metin2 Karakter Zırhları Gözükmeme.jpg
Metin2 Karakter Zırhları Gözükmeme 2.jpg


Resimdeki yer alan sorunun syserr kaydı şuna benzerdir;
Kod:
0511 20:23:26865 :: Traceback (most recent call last):

0511 20:23:26866 ::   File "networkModule.py", line 239, in SetGamePhase

0511 20:23:26866 ::   File "game.py", line 112, in __init__

0511 20:23:26867 ::   File "interfaceModule.py", line 339, in MakeInterface

0511 20:23:26867 ::   File "interfaceModule.py", line 146, in __MakeTaskBar

0511 20:23:26868 ::   File "uiTaskBar.py", line 555, in LoadWindow

0511 20:23:26868 ::   File "uiTaskBar.py", line 769, in RefreshQuickSlot

0511 20:23:26870 :: RuntimeError
0511 20:23:26870 :: :
0511 20:23:26870 :: skill.GetSkillType - Failed to find skill by 93
0511 20:23:26871 ::
Not: Filesten filese skill by 93 yazan yerdeki sayı değişebilir ama sorun aynı sorundur.
Hata kaydına baktığımızda ise yetenekleri alırken hata aldığını gösteriyor ama asıl sorun dediğim gibi protolardan kaynaklanmaktadır.

Tabi başta bende düşündüm acaba yeteneklerde mi sorun var diye ama bir türlü çözememiştim. İnternette araştırma yaptım, bu sorunu yaşayan bir sürü kişi gerek yabancı forumlarda gerekse Türk forumlarında da konu açmış ama çözümü bir türlü bulamamış. Bende kendim bulduğum çözümü sizlerle paylaşacağım. :)

Arkadaşlar bunu çözmek için clientinize uygun proto dosyaları edinmeniz. Eğer bulamıyorsanız şöyle yapın.
Server/db/src/ProtoReader.cpp içinde değerler var. O değerlerin dump proto ile aynı olduğuna dikkat. Daha sonra Client/UserInterface/ItemData.h ve ItemData.cpp dosyalarını inceleyin. Özellikle "SItemTable" değerinin dump_proto/dump_proto.cpp dosyasında "TClientItemTable" değeri ile aynı olmasına dikkat edin.

Çünkü client proto bilgilerini localdeki dosyalardan kullanır.
Eğer değerler aynı ise işiniz kolay olacaktır. server filesin içinde yer alan item_proto.txt ve item_names.txt dosyalarını dump_proto'dan geçirip locale_tr dosyasına atmanız.

Dump proto yapmayı bilmeyenler için eğitim serimizdeki videoyu izleyebilirler;


Videonun devamı;



Proto dosyalarını excel ile düzenlemek için şu rehbere bakabilirsiniz
Burayı görüntülemek için üye girişi yapmalı veya kayıt olmalısınız.



Önemli olan hatanın kaynağını bulabilmek. Hatanın kaynağını bulduğum anda çözmesi kolay oldu. Lakin bu işlere yeni başlayan arkadaşlar ne yazık ki çözerken zorlanabilir. Bu yüzden clientinize uygun proto dosyalarını bulabilirsiniz.
Çözümü filesten filese farklılık göstereceği için kesin kaynağı belirtemiyorum. Sadece sorunun neden olduğunu ve çözüm yollarını anlatıyorum. Umarım sizde aldığınız hataları çözebilirsiniz. :)
 
Son düzenleme:
Konu için teşekkürler, Eray kaptan <3
Yine mükemmel bir konu daha. :p
Benimkinde de item gözükmüyordu fakat ben uiscriptte equipment yerini 180 yaparak bu hatayı çözdüm. Karakterlerin üstündeki zırhın envanterde gözükmeme hatasını.
 
En son bir moderatör tarafından düzenlenmiş:
Konu için teşekkürler, Eray kaptan. <3
Yine mükemmel bir konu daha. :p
Yorumunuz için teşekkür ederim. Az konu açıyorum zaten. Başıma gelen sorunların çözümünü anlatıyorum. Arada da normal paylaşımlar işte. :D
Çünkü bu tür sorunları yaşayan çok kişi var.
Hem paylaşım hemde sorun çözme, dayanışma açısından sağlam temelleri atmalıyız.
Metin2 Pvp Soru-Cevap kısmı mesela. Bir sürü üyeler sonradan o konuları ziyaret ediyor. Belkide sorununu çözüyor.

Benim amacım bildiğim her şeyi paylaşmak. Çünkü bu bilgileri paylaşmadığım zaman bir değeri olmayacak. Benle beraber toprağa gidecek. En azından aktarabildiğimi aktarayım da benim çektiğim sıkıntıları bu işlerle uğraşan diğer arkadaşlar çekmesin. Bir kaynağı olsun. :)

Benimkinde de item gözükmüyordu fakat ben uiscriptte equipment yerini 180 yaparak bu hatayı çözdüm. Karakterlerin üstündeki zırhın envanterde gözükmeme hatasını.
Konu içinde de belirttim. Zırhların gözükmeme sorunu birden fazla sorundan kaynaklı olabilir diye. Sorunun türünü tam olarak öğrenmek için syserr kayıtlarına bakıyoruz.
 
Son düzenleme:
zırh görünmüyor aynı hata degil demi
Yardım - dump proto sorunu zırh görünmüyor
syser
1203 07:35:14616 :: CMapOutdoor::Load - LoadMonsterAreaInfo ERROR
1203 07:35:26543 :: Unknown Server Command RefreshDragonCoin 0 | RefreshDragonCoin
1203 07:35:26543 :: Unknown Server Command RefreshDragonMark 0 | RefreshDragonMark
1203 07:36:26320 :: Traceback (most recent call last):

1203 07:36:26320 :: File "uiCharacter.py", line 2000, in OnUpdate

1203 07:36:26321 :: File "ui.py", line 160, in __call__

1203 07:36:26321 :: File "ui.py", line 142, in __call__

1203 07:36:26321 :: File "uiCharacter.py", line 931, in Refreshing

1203 07:36:26321 :: File "ui.py", line 6473, in GetChild

1203 07:36:26321 :: KeyError
1203 07:36:26321 :: :
1203 07:36:26321 :: 'PercentExp'
1203 07:36:26321 ::
 
Konu için teşekkürler, Eray kaptan <3
Yine mükemmel bir konu daha. :p
Benimkinde de item gözükmüyordu fakat ben uiscriptte equipment yerini 180 yaparak bu hatayı çözdüm. Karakterlerin üstündeki zırhın envanterde gözükmeme hatasını.
Slm benim karekterimin üzerindeki itemler kayboluyor bu nedenden dolayı olabilirmi
 
Geri
Üst