Çözüldü Proto güncellemesi sonrası mob_drop_item okunamıyor

Bu konu çözüme ulaştırılmıştır. Çözüm için konuya yazılan tüm yorumları okumayı unutmayın. Eğer konudaki yorumlar sorununuzu çözmediyse yeni bir konu açabilirsiniz.
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.

Kaptan Yosun

Moderatör
Moderatör
Geliştirici
Yardımsever Üye
Mesaj
1.025
Çözümler
35
Beğeni
1.077
Puan
1.339
Ticaret Puanı
0
Selamlar, v24 İtem Proto ve PC Dosyaları Güncellemesi'ni yaptım. Bu güncelleme sonrası mob_drop_item okunamadı. mob_drop_item içini boşaltınca CH'ler açılıyor. Ek olarak mob_drop_item dosyasını 2000. satıra kadar ekleyince de çalışıyor, ancak gerisini ekleyince çalışmıyor. CH1 bu şekilde hata loglayıp kapanıyor.

Kod:
Genişlet Daralt Kopyala
SYSERR: Aug  9 19:07:02 :: ITEM_MANAGER::ReadMonsterDropItemGroup: ReadMonsterDropItemGroup : there is no item 진구미호의상자 : node  : vnum 0
SYSERR: Aug  9 19:07:02 :: CInputDB::Boot: cannot load MOBDropItemFile: locale/common/mob_drop_item.txt

İlgili 진구미호의상자 itemi VNUM'u 50090 olan iteme tekabül ediyor.

mob_drop_item içinde bu kısımda ekli:

Lua (Quest):
Genişlet Daralt Kopyala
Group    진구미호
{
    Type    kill
    Mob    1902
    Kill_drop    1
    1    진구미호의상자    2    100    0
    2    50006    15    30    0
    3    50007    20    40    0
    4    50012    10    15    0
    5    50013    15    20    0
    6    50011    5    5    0
}

ve special_item_group içinde;

Lua (Quest):
Genişlet Daralt Kopyala
Group    진구미호의상자          
{              
    Vnum    50090      
    1    170    1    16    20
    2    250    1    16    20
    3    1120    1    16    20
    4    2180    1    16    20
    5    3150    1    16    20
    6    7150    1    16    20
    7    11290    1    31    20
    8    11291    1    15    20
    9    11490    1    31    20
    10    11491    1    15    20
    11    11690    1    31    20
    12    11691    1    15    20
    13    11890    1    31    20
    14    11891    1    15    20
    15    17204    1    60    20
    16    17205    1    40    20
    17    17206    1    20    20
    18    16204    1    60    20
    19    16205    1    40    20
    20    16206    1    20    20
    21    14204    1    60    20
    22    14205    1    40    20
    23    14206    1    20    20
    24    경험치    500000    100
    25    경험치    700000    60
    26    경험치    1000000    20
    27    돈꾸러미    300000    100
    28    돈꾸러미    500000    60
    29    돈꾸러미    1000000    20
}

şeklinde, item_proto'da ise;

Lua (Quest):
Genişlet Daralt Kopyala
50090    진구미호의상자    ITEM_GIFTBOX    UNK23_1    1    NONE    ITEM_STACKABLE    NONE    NONE    0    0    0    0    0    LIMIT_NONE    0    LIMIT_NONE    0    APPLY_NONE    0    APPLY_NONE    0    APPLY_NONE    0    3    0    0    0    0    0    0    0    0

şeklinde ekli. Sorun ne olabilir?
 

Dosya Eklentileri

Son düzenleme:
Aynı sorunu bende yaşamıştım suanlik sildim dosya içeriklerini daha sonra bakarım diye öyle kaldı. @hasanmacit bir çözüm fikrin varmı ?
 
Aynı sorunu bende yaşamıştım suanlik sildim dosya içeriklerini daha sonra bakarım diye öyle kaldı. @hasanmacit bir çözüm fikrin varmı ?
bende dosya içeriklerini sildim :D yosuna da söyledim ama başka çözümü vardır diye ille şey istedi. subtypesini 0 yapsana @Kaptan Yosun
 
there is no item 진구미호의상자 : node : vnum 0
Bu mesajı yazdıran fonksiyonu atar mısın?
 
there is no item 진구미호의상자 : node : vnum 0
Bu mesajı yazdıran fonksiyonu atar mısın?
item_manager_read_tables.cpp:
Genişlet Daralt Kopyala
        TTokenVector* pTok = NULL;

        if (strType == "kill")
        {
            CMobItemGroup* pkGroup = M2_NEW CMobItemGroup (iMobVnum, iKillDrop, stName);

            for (int k = 1; k < 256; ++k)
            {
                char buf[4];
                snprintf (buf, sizeof (buf), "%d", k);

                if (loader.GetTokenVector (buf, &pTok))
                {
                    //sys_log(1, "               %s %s", pTok->at(0).c_str(), pTok->at(1).c_str());
                    std::string& name = pTok->at (0);
                    DWORD dwVnum = 0;

                    if (!GetVnumByOriginalName (name.c_str(), dwVnum))
                    {
                        str_to_number (dwVnum, name.c_str());
                        if (!ITEM_MANAGER::instance().GetTable (dwVnum))
                        {
                            sys_err ("ReadMonsterDropItemGroup : there is no item %s : node %s : vnum %d", name.c_str(), stName.c_str(), dwVnum);
                            return false;
                        }
                    }
 
Şimdi bir de DB ve Auth'u eski item_names ve eski item_proto ile çalıştırdım. Yine CH1 çalışmadı ve aynı hatayı verdi. Sorun server kaynaklı yani, protonun kendinden kaynaklı değil
 
return false'u kaldır hata ile karşılaştığında fonksiyonu sonlandirmasin, döngüyü tamamlasın.
Başka hatalara sebep olmazsa, sorunlu item'larin tamamini loglar. Belki bi ipucu verir.
 
Korece yazan hata encoding kaynaklıymış, dosyayı Unix ve Encoding'i EUC-KR yapınca gitti. Ancak hala

Kod:
Genişlet Daralt Kopyala
CInputDB::Boot: cannot load MOBDropItemFile: locale/common/mob_drop_item.txt

hatası devam ediyor
 
진구미호의상자

item adı bu olan şeyleri droplardan kaldır ya da vnum ile değiştir
 
O sorun sadece encodingle ilgiliymiş, o sorun düzeldi. Artık detay vermeden sadece mob_drop_item okunamadı yazıyor.
Muhtemelen encoding'i EUC_KR yaptığın içindir. Yerinde olsam tüm item isimlerini bulup İngilizceye translate eden bi Python scripti yazardım. Hem bu sorun için hem de gelecek için.

Bulundu: 진구미호의상자
-
Çevrildi: Jingumiho's Chest
Düzeltildi: Jingumihos_Chest


Şehir dışında olmasam ben yazardım, yine de sormak istediğin bi şey olursa mobilden ne kadar olabiliyorsa o kadar yardım etmeye çalışırım.
 
Muhtemelen encoding'i EUC_KR yaptığın içindir. Yerinde olsam tüm item isimlerini bulup İngilizceye translate eden bi Python scripti yazardım. Hem bu sorun için hem de gelecek için.

Bulundu: 진구미호의상자
-
Çevrildi: Jingumiho's Chest
Düzeltildi: Jingumihos_Chest


Şehir dışında olmasam ben yazardım, yine de sormak istediğin bi şey olursa mobilden ne kadar olabiliyorsa o kadar yardım etmeye çalışırım.
Sorunun bu olduğunu zannetmiyorum çünkü eski proto yapısında bu dosya okunabiliyor, yeni proto ile beraber okunamıyor. Sorun sanıyorum yeni proto uyumluluğu eklemelerinin eksik olmasıyla ilgili. Protoda olan bazı apply type'lar server'da yok diye dosyayı yükleyemiyor olabilir
 
Sorunun bu olduğunu zannetmiyorum çünkü eski proto yapısında bu dosya okunabiliyor, yeni proto ile beraber okunamıyor. Sorun sanıyorum yeni proto uyumluluğu eklemelerinin eksik olmasıyla ilgili. Protoda olan bazı apply type'lar server'da yok diye dosyayı yükleyemiyor olabilir
C++:
Genişlet Daralt Kopyala
int get_Item_ApplyType_Value (string inputString)
{
    string arApplyType[] =
{   
    "APPLY_NONE",
    "APPLY_MAX_HP",
    "APPLY_MAX_SP",
    "APPLY_CON",
    "APPLY_INT",
    "APPLY_STR",
    "APPLY_DEX",
    "APPLY_ATT_SPEED",
    "APPLY_MOV_SPEED",
    "APPLY_CAST_SPEED",
    "APPLY_HP_REGEN",
    "APPLY_SP_REGEN",
    "APPLY_POISON_PCT",
    "APPLY_STUN_PCT",
            "APPLY_SLOW_PCT",
            "APPLY_CRITICAL_PCT",
            "APPLY_PENETRATE_PCT",
            "APPLY_ATTBONUS_HUMAN",
            "APPLY_ATTBONUS_ANIMAL",
            "APPLY_ATTBONUS_ORC",
            "APPLY_ATTBONUS_MILGYO",
            "APPLY_ATTBONUS_UNDEAD",
            "APPLY_ATTBONUS_DEVIL",
            "APPLY_STEAL_HP",
            "APPLY_STEAL_SP",
            "APPLY_MANA_BURN_PCT",
            "APPLY_DAMAGE_SP_RECOVER",
            "APPLY_BLOCK",
            "APPLY_DODGE",
            "APPLY_RESIST_SWORD",
            "APPLY_RESIST_TWOHAND",
            "APPLY_RESIST_DAGGER",
            "APPLY_RESIST_BELL",
            "APPLY_RESIST_FAN",
            "APPLY_RESIST_BOW",
            "APPLY_RESIST_FIRE",
            "APPLY_RESIST_ELEC",
            "APPLY_RESIST_MAGIC",
            "APPLY_RESIST_WIND",
            "APPLY_REFLECT_MELEE",
            "APPLY_REFLECT_CURSE",
            "APPLY_POISON_REDUCE",
            "APPLY_KILL_SP_RECOVER",
            "APPLY_EXP_DOUBLE_BONUS",
            "APPLY_GOLD_DOUBLE_BONUS",
            "APPLY_ITEM_DROP_BONUS",
            "APPLY_POTION_BONUS",
            "APPLY_KILL_HP_RECOVER",
            "APPLY_IMMUNE_STUN",
            "APPLY_IMMUNE_SLOW",
            "APPLY_IMMUNE_FALL",
            "APPLY_SKILL",
            "APPLY_BOW_DISTANCE",
            "APPLY_ATT_GRADE_BONUS",
            "APPLY_DEF_GRADE_BONUS",
            "APPLY_MAGIC_ATT_GRADE",
            "APPLY_MAGIC_DEF_GRADE",
            "APPLY_CURSE_PCT",
            "APPLY_MAX_STAMINA",
            "APPLY_ATTBONUS_WARRIOR",
            "APPLY_ATTBONUS_ASSASSIN",
            "APPLY_ATTBONUS_SURA",
            "APPLY_ATTBONUS_SHAMAN",
            "APPLY_ATTBONUS_MONSTER",
            "APPLY_MALL_ATTBONUS",
            "APPLY_MALL_DEFBONUS",
            "APPLY_MALL_EXPBONUS",
            "APPLY_MALL_ITEMBONUS",
            "APPLY_MALL_GOLDBONUS",
            "APPLY_MAX_HP_PCT",
            "APPLY_MAX_SP_PCT",
            "APPLY_SKILL_DAMAGE_BONUS",
            "APPLY_NORMAL_HIT_DAMAGE_BONUS",
            "APPLY_SKILL_DEFEND_BONUS",
            "APPLY_NORMAL_HIT_DEFEND_BONUS",
            "APPLY_EXTRACT_HP_PCT",
            "APPLY_RESIST_WARRIOR",
            "APPLY_RESIST_ASSASSIN",
            "APPLY_RESIST_SURA",
            "APPLY_RESIST_SHAMAN",
            "APPLY_ENERGY",
            "APPLY_DEF_GRADE",
            "APPLY_COSTUME_ATTR_BONUS",
            "APPLY_MAGIC_ATTBONUS_PER",
            "APPLY_MELEE_MAGIC_ATTBONUS_PER",
            "APPLY_RESIST_ICE",
            "APPLY_RESIST_EARTH",
            "APPLY_RESIST_DARK",
            "APPLY_ANTI_CRITICAL_PCT",
            "APPLY_ANTI_PENETRATE_PCT",
            "APPLY_MOUNT",
            "APPLY_ATTBONUS_STONE",
            "APPLY_ATTBONUS_BOSS",
            "APPLY_ACCEDRAIN_RATE",//yeni bonusları burdan sonra ekle çünkü sonrakiler serverde ekli değil.
            ...
            ...
            ...
orjinal applytyp ile proto güncellemesi sonrasındaki appytyp ları eski şekline getirdim ben fakat yine aynı

Linkleri görebilmek için giriş yap veya kayıt ol.
mob_drop_item.txt dosyasını okuyor bir problem yok fakkat dropların hepsi %50 olarak ayarlanmış aşırı derecede drop atıyor oyunda :D
 
C++:
Genişlet Daralt Kopyala
int get_Item_ApplyType_Value (string inputString)
{
    string arApplyType[] =
{ 
    "APPLY_NONE",
    "APPLY_MAX_HP",
    "APPLY_MAX_SP",
    "APPLY_CON",
    "APPLY_INT",
    "APPLY_STR",
    "APPLY_DEX",
    "APPLY_ATT_SPEED",
    "APPLY_MOV_SPEED",
    "APPLY_CAST_SPEED",
    "APPLY_HP_REGEN",
    "APPLY_SP_REGEN",
    "APPLY_POISON_PCT",
    "APPLY_STUN_PCT",
            "APPLY_SLOW_PCT",
            "APPLY_CRITICAL_PCT",
            "APPLY_PENETRATE_PCT",
            "APPLY_ATTBONUS_HUMAN",
            "APPLY_ATTBONUS_ANIMAL",
            "APPLY_ATTBONUS_ORC",
            "APPLY_ATTBONUS_MILGYO",
            "APPLY_ATTBONUS_UNDEAD",
            "APPLY_ATTBONUS_DEVIL",
            "APPLY_STEAL_HP",
            "APPLY_STEAL_SP",
            "APPLY_MANA_BURN_PCT",
            "APPLY_DAMAGE_SP_RECOVER",
            "APPLY_BLOCK",
            "APPLY_DODGE",
            "APPLY_RESIST_SWORD",
            "APPLY_RESIST_TWOHAND",
            "APPLY_RESIST_DAGGER",
            "APPLY_RESIST_BELL",
            "APPLY_RESIST_FAN",
            "APPLY_RESIST_BOW",
            "APPLY_RESIST_FIRE",
            "APPLY_RESIST_ELEC",
            "APPLY_RESIST_MAGIC",
            "APPLY_RESIST_WIND",
            "APPLY_REFLECT_MELEE",
            "APPLY_REFLECT_CURSE",
            "APPLY_POISON_REDUCE",
            "APPLY_KILL_SP_RECOVER",
            "APPLY_EXP_DOUBLE_BONUS",
            "APPLY_GOLD_DOUBLE_BONUS",
            "APPLY_ITEM_DROP_BONUS",
            "APPLY_POTION_BONUS",
            "APPLY_KILL_HP_RECOVER",
            "APPLY_IMMUNE_STUN",
            "APPLY_IMMUNE_SLOW",
            "APPLY_IMMUNE_FALL",
            "APPLY_SKILL",
            "APPLY_BOW_DISTANCE",
            "APPLY_ATT_GRADE_BONUS",
            "APPLY_DEF_GRADE_BONUS",
            "APPLY_MAGIC_ATT_GRADE",
            "APPLY_MAGIC_DEF_GRADE",
            "APPLY_CURSE_PCT",
            "APPLY_MAX_STAMINA",
            "APPLY_ATTBONUS_WARRIOR",
            "APPLY_ATTBONUS_ASSASSIN",
            "APPLY_ATTBONUS_SURA",
            "APPLY_ATTBONUS_SHAMAN",
            "APPLY_ATTBONUS_MONSTER",
            "APPLY_MALL_ATTBONUS",
            "APPLY_MALL_DEFBONUS",
            "APPLY_MALL_EXPBONUS",
            "APPLY_MALL_ITEMBONUS",
            "APPLY_MALL_GOLDBONUS",
            "APPLY_MAX_HP_PCT",
            "APPLY_MAX_SP_PCT",
            "APPLY_SKILL_DAMAGE_BONUS",
            "APPLY_NORMAL_HIT_DAMAGE_BONUS",
            "APPLY_SKILL_DEFEND_BONUS",
            "APPLY_NORMAL_HIT_DEFEND_BONUS",
            "APPLY_EXTRACT_HP_PCT",
            "APPLY_RESIST_WARRIOR",
            "APPLY_RESIST_ASSASSIN",
            "APPLY_RESIST_SURA",
            "APPLY_RESIST_SHAMAN",
            "APPLY_ENERGY",
            "APPLY_DEF_GRADE",
            "APPLY_COSTUME_ATTR_BONUS",
            "APPLY_MAGIC_ATTBONUS_PER",
            "APPLY_MELEE_MAGIC_ATTBONUS_PER",
            "APPLY_RESIST_ICE",
            "APPLY_RESIST_EARTH",
            "APPLY_RESIST_DARK",
            "APPLY_ANTI_CRITICAL_PCT",
            "APPLY_ANTI_PENETRATE_PCT",
            "APPLY_MOUNT",
            "APPLY_ATTBONUS_STONE",
            "APPLY_ATTBONUS_BOSS",
            "APPLY_ACCEDRAIN_RATE",//yeni bonusları burdan sonra ekle çünkü sonrakiler serverde ekli değil.
            ...
            ...
            ...
orjinal applytyp ile proto güncellemesi sonrasındaki appytyp ları eski şekline getirdim ben fakat yine aynı

Linkleri görebilmek için giriş yap veya kayıt ol.
mob_drop_item.txt dosyasını okuyor bir problem yok fakkat dropların hepsi %50 olarak ayarlanmış aşırı derecede drop atıyor oyunda :D
Eski haline getirdiğinizde aynı hatayı alıyorsan sorun serverde değil, mob_drop page endinginde. Windows değil Unix page ending yapmalısın dosyayı. Aynı şey bana da oldu. Mob_drop kaynaklı bir sorun değil
 
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.
Geri
Üst