Yardım Server Taraflı Efsun Botu Sorunu Hk.

  • Konuyu açan Konuyu açan muratgok
  • Açılış Tarihi Açılış Tarihi
  • Yanıt Yanıt 9
  • Gösterim Gösterim 180
Konu sahibi bu konuda soru soruyor. Sorusu ile ilgili bilgisi olanların yanıtlamasını bekliyor.

muratgok

Çaylak Üye
Üye
Mesaj
19
Beğeni
0
Puan
8
Ticaret Puanı
0
Merhaba öncelikle daha önce forumda item koyunca kaybolma gibi sorun yaşayan bir arkadaşın konusunu gördüm ama sorunum o değil, sorunum itemi koyamamak bunun için Gametype ve length nin window kısmının sıralama olarak aynı olması gerekiyormuş bunuda kontrol ettim burdada bir sorun yok. Yinede konuya ekliyorum kodları.

Bir arkadaş aynı benim gibi sorun yaşadığını ClientManagerPlayer.cpp dosyasından kaynaklandığından bahsetmiş ama çözüm nedir anlamadım. ClientManagerPlayer.cpp dosyasında bende sorun yaşadım ekleme yaparken ama farklı bir files dosyasını inceledim ve sorun vermeyip build olduğuna göre sorun yok sanıyorum. Syserr sormayın syserr yok diğer arkadaşın videosunu koyuyorum sorun aynı zaten bu durumda ilk nereyi kontrol etmem gerekiyor. ?




length.h:
Genişlet Daralt Kopyala
enum EWindows
{
    RESERVED_WINDOW,
    INVENTORY,
    EQUIPMENT,
    SAFEBOX,
    MALL,
    DRAGON_SOUL_INVENTORY,
    BELT_INVENTORY,
#ifdef ENABLE_SPLIT_INVENTORY_SYSTEM
    SKILL_BOOK_INVENTORY,
    UPGRADE_ITEMS_INVENTORY,
    STONE_INVENTORY,
    BOX_INVENTORY,
    EFSUN_INVENTORY,
    CICEK_INVENTORY,
#endif
#ifdef ENABLE_SWITCHBOT
    SWITCHBOT,
#endif
    GROUND
};


GameType.h:
Genişlet Daralt Kopyala
enum EWindows
{
    RESERVED_WINDOW,
    INVENTORY,                // 기본 인벤토리. (45칸 짜리가 2페이지 존재 = 90칸)
    EQUIPMENT,
    SAFEBOX,
    MALL,
    DRAGON_SOUL_INVENTORY,
    BELT_INVENTORY,            // NOTE: W2.1 버전에 새로 추가되는 벨트 슬롯 아이템이 제공하는 벨트 인벤토리
#ifdef WJ_SPLIT_INVENTORY_SYSTEM
    SKILL_BOOK_INVENTORY,
    UPGRADE_ITEMS_INVENTORY,
    STONE_INVENTORY,
    BOX_INVENTORY,
    EFSUN_INVENTORY,
    CICEK_INVENTORY,
#endif
#ifdef ENABLE_SWITCHBOT
    SWITCHBOT,
#endif
    GROUND,                    // NOTE: 2013년 2월5일 현재까지 unused.. 왜 있는거지???
    WINDOW_TYPE_MAX,
};
 
ClientManagerPlayer.cpp`ye Ekledikten sonra player tablonada eklemesini yaptınmı ?
 
Efsun botu eklemelerini BELT_INVENTORY'in altına al dene bir aynı şekilde sql de de sıralamayı aynı yap dene
 
Navicatteki player tablosunda window var oraya eklemesini yaptınmı ?
Evet orayada yaptım ama kafam aşırı doldu şunun infosunu tam bi açıklarmısın emin olayım, langth ve gametypeı birebir ayarlıyorum burası tamam bunun yanında ClientManagerPlayer.cpp içinde 3 kısımda "SWITCHBOT" eklemesini yapıyorum, şimdi navicat tarafındada ClientManagerPlayer.cpp'â göre düzenleme yapmamız gerekmiyormu ?
 
Evet orayada yaptım ama kafam aşırı doldu şunun infosunu tam bi açıklarmısın emin olayım, langth ve gametypeı birebir ayarlıyorum burası tamam bunun yanında ClientManagerPlayer.cpp içinde 3 kısımda "SWITCHBOT" eklemesini yapıyorum, şimdi navicat tarafındada ClientManagerPlayer.cpp'â göre düzenleme yapmamız gerekmiyormu ?
Evet oradaki sıralamaya göre, player>player içerisindeki window satırınıda düzenlemen ve aynı sırada olması gerekiyor.
 
Evet oradaki sıralamaya göre, player>player içerisindeki window satırınıda düzenlemen ve aynı sırada olması gerekiyor.
2 Farklı files'dan inceledim ve farklı farklı denedim ama sonuç alamadım mevcut dosya içeriklerini gönderiyorum bi kontrol et 2. bir göz olarak ama sonuç alamıyorum packet hatam yoktu ama şuan packet hatasıda alıyorum packetlerde sorun olduğunu düşünmüyorum ama senin yorumuna göre eğer sıralamalarda sorun yoksa packet kısımlarına bakıcam


ClientManagerPlayer.cpp 1 . Kısım:
Genişlet Daralt Kopyala
            snprintf(szQuery, sizeof(szQuery),
                "SELECT "
                "id,"
                "window+0,"
                "pos,"
                "count,"
                "vnum,"
                "socket0,socket1,socket2,"
                "attrtype0,attrvalue0,"
                "attrtype1,attrvalue1,"
                "attrtype2,attrvalue2,"
                "attrtype3,attrvalue3,"
                "attrtype4,attrvalue4,"
                "attrtype5,attrvalue5,"
                "attrtype6,attrvalue6 "
                "FROM item%s "

#ifdef ENABLE_SWITCHBOT
                "WHERE owner_id=%d AND (`window` in ('INVENTORY','EQUIPMENT','DRAGON_SOUL_INVENTORY','BELT_INVENTORY','SWITCHBOT'))",
#else
                "WHERE owner_id=%d AND (`window` in ('INVENTORY','EQUIPMENT','DRAGON_SOUL_INVENTORY','BELT_INVENTORY'))",
#endif
                GetTablePostfix(), pTab->id);
ClientManagerPlayer.cpp 2 . Kısım:
Genişlet Daralt Kopyala
        snprintf(queryStr, sizeof(queryStr),
                "SELECT "
                "id,"
                "window+0,"
                "pos,"
                "count,"
                "vnum,"
                "socket0,socket1,socket2,"
                "attrtype0,attrvalue0,"
                "attrtype1,attrvalue1,"
                "attrtype2,attrvalue2,"
                "attrtype3,attrvalue3,"
                "attrtype4,attrvalue4,"
                "attrtype5,attrvalue5,"
                "attrtype6,attrvalue6 "
                "FROM item%s "

#ifdef ENABLE_SWITCHBOT
                "WHERE owner_id=%d AND (`window` in ('INVENTORY','EQUIPMENT','DRAGON_SOUL_INVENTORY','BELT_INVENTORY','SWITCHBOT'))",
#else
                "WHERE owner_id=%d AND (`window` in ('INVENTORY','EQUIPMENT','DRAGON_SOUL_INVENTORY','BELT_INVENTORY'))",
#endif
                GetTablePostfix(), packet->player_id);

ClientManagerPlayer.cpp 3 . Kısım:
Genişlet Daralt Kopyala
#ifdef ENABLE_SWITCHBOT
        snprintf(queryStr, sizeof(queryStr), "DELETE FROM item%s WHERE owner_id=%d AND (`window` in ('INVENTORY','EQUIPMENT','DRAGON_SOUL_INVENTORY','BELT_INVENTORY','SWITCHBOT'))", GetTablePostfix(), pi->player_id);
#else
        snprintf(queryStr, sizeof(queryStr), "DELETE FROM item%s WHERE owner_id=%d AND (`window` in ('INVENTORY','EQUIPMENT','DRAGON_SOUL_INVENTORY','BELT_INVENTORY'))", GetTablePostfix(), pi->player_id);
#endif

Burda bir bilgi vereyim daha önce konuda söyledim sql kısmını sıralama olarak birebir ClientManagerPlayer.cpp 'a göre yaptım ama bir sonuç alamadım, ve farklı fileslarda gördüğüm kadarıyla langth ve gametype a göre ayarlmışlar sql tarafını ve sql tarafında sıra fark etmiyor diye biliyorum bir filesda sıralamamın farklı olduğunu gördüm ama length ve gametype birebir aynı

player>item:
Genişlet Daralt Kopyala
window    enum('INVENTORY','EQUIPMENT','SAFEBOX','MALL','DRAGON_SOUL_INVENTORY','BELT_INVENTORY','SWITCHBOT','SKILL_BOOK_INVENTORY','UPGRADE_ITEMS_INVENTORY','STONE_INVENTORY','BOX_INVENTORY','EFSUN_INVENTORY','CICEK_INVENTORY','GROUND')    NO        INVENTORY

HATALAR:
Genişlet Daralt Kopyala
Denediğim bir kombinasyonda bu hatalar gitmişti aslında ama ozamanda konunun açılış açıklamsındaki gibi item koyulmuyordu

0606 16:29:10538 :: Phase Loading does not handle this header (header: 177, last: 21, 177)

0606 16:30:32522 :: Phase Game does not handle this header (header: 177, last: 20, 177)
 
Geri
Üst