mavzermete 1
mavzermete
Psych0SoociaL 1
Psych0SoociaL
noisiv 1
noisiv
Manwe Work 1
Manwe Work
Agora Metin2 1
Agora Metin2
Bvural41 1
Bvural41
Mt2Hizmet 1
Mt2Hizmet
Hikaye Ekle

Offline Shop İsim game.core Fix

  • Konuyu başlatan Konuyu başlatan LethalStrikeR
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 47
  • Görüntüleme Görüntüleme 7K

HERAKLES Otomatik Avlı kalıcı sunucu. 19 Haziran'da açılıyor. Atius & Wizard güvencesiyle hemen kayıt ol, ön kayıt ödülleri aktif. HEMEN TIKLA!

Merhaba Turkmmo Halkı;

Arkadaşlar konu önceden paylaşıldıysa kusura bakmayın detaylı bir araştırma yapamadım ama bende bugu dev'de buldum ve fixini araştırıp buldum paylaşmak istedim.

Pazar ismini böyle açınca game.core veriyor. %s%S(bunu yazın sonra ctrl+a ya basın) ondan sonra pazarı kurun game.core verecek.

kX7Ozr.png


Anlatıma geçelim:

Char.cpp açılır

ARATILIR
Kod:
void CHARACTER::OpenMyOfflineShop(const char * c_pszSign, TShopItemTable * pTable, BYTE bItemCount, BYTE bTime)

Kod bloğunun içinde aratılır;
Kod:
    char szSign[SHOP_SIGN_MAX_LEN+1];

    strlcpy(szSign, c_pszSign, sizeof(szSign));

Altına boşluk bırak ekle;
Kod:
    if (strlen(szSign) == 0)
    {
        ChatPacket(CHAT_TYPE_INFO, "Geçersiz çevrimdışı pazar ismi girdiniz!");
        return;
    }
   
    if (strstr(szSign, "%") || strstr(szSign, "'"))
    {
        ChatPacket(CHAT_TYPE_INFO, "Geçersiz çevrimdışı pazar ismi girdiniz!");
        return;      
    }

KANIT:
yzJ0ZM.png


İsim bozukluğunu kodlarda güncelleme yaparak giderdim attığım kanıttaki gibi gözükmeyecektir.

Herkese iyi forumlar.


bu blok altındaki engellemelerin altına herhangi bir yere yapsam olur mu
 
normal pazar bloğuna baktım dediğin kod var ara dediğin kod içindeki BYTE'lar da da char szSign var bende ara dediğin bloğun biraz altlarına

char szSign[SHOP_SIGN_MAX_LEN+1];

strlcpy(szSign, c_pszSign, sizeof(szSign));


bunu ekledim altınada fixini ekledim sorunsuz build oldu az önce bu kodlar olmadan yaptığımda "szSign" bu isim error'a yol açtı. build olsun bakalım fix olacak mı :)
 
char szSign[SHOP_SIGN_MAX_LEN * 2 + 1];
DBManager::instance().EscapeString(szSign, sizeof(szSign), c_pszSign, strlen(c_pszSign));
if (strlen(szSign) == 0)
{
ChatPacket(CHAT_TYPE_INFO, "You cannot open an offline-shop without title!");
return;
}
m_stOfflineShopSign = szSign;
if (m_stOfflineShopSign.length() == 0)
return;
if (CBanwordManager::instance().CheckString(m_stOfflineShopSign.c_str(), m_stOfflineShopSign.length()))
{
ChatPacket(CHAT_TYPE_INFO, LC_TEXT("؛ٌ¼س¾î³ھ ہ؛¾î°، ئ÷اشµب »َء، ہج¸§ہ¸·خ »َء،ہ» ؟ ¼ِ ¾ّ½ہ´د´ظ."));
return;
}
std::string szSpecialCharName = m_stOfflineShopSign.c_str();
std::size_t szSpecialCheck = szSpecialCharName.find("%");
if (szSpecialCheck != std::string::npos)
{
ChatPacket(CHAT_TYPE_INFO, LC_TEXT("The name inserted is invalid, please don't use special characters!"));
return;
}
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst