Yeni bir açık çıkmış sanırım çakma lamer-hacker'ların mutluluğu pek uzun sürmeyecek gibi gözüküyor...
34083 Game Core (Singapore) kullananlar için DIFF
Source (2013 YMIR) kullananlar için anlatım
game/src kısmından messenger_manager.cpp dosyası açılır ve aratılır;
2089 Game Core kullananlar için DIFF
33820 Database Core (Singapore) kullananlar için DIFF
Kod:
game_2089M
0010F5C3: 31 EB
0010F5C4: C0 09
33820 Database Core (Singapore) kullananlar için DIFF
Kod:
This difference file is created by The Interactive Disassembler
db_r33820_32_u
000925A5: 01 00
34083 Game Core (Singapore) kullananlar için DIFF
Kod:
This difference file is created by The Interactive Disassembler
game_r34083_32
0040DFE5: 01 00
Source (2013 YMIR) kullananlar için anlatım
game/src kısmından messenger_manager.cpp dosyası açılır ve aratılır;
Kod:
void MessengerManager::RemoveFromList(MessengerManager::keyA account, MessengerManager::keyA companion)
Bu kısım;
Kod:
void MessengerManager::RemoveFromList(MessengerManager::keyA account, MessengerManager::keyA companion)
{
if (companion.size() == 0)
return;
sys_log(1, "Messenger Remove %s %s", account.c_str(), companion.c_str());
DBManager::instance().Query("DELETE FROM messenger_list%s WHERE account='%s' AND companion = '%s'",
get_table_postfix(), account.c_str(), companion.c_str());
__RemoveFromList(account, companion);
TPacketGGMessenger p2ppck;
p2ppck.bHeader = HEADER_GG_MESSENGER_REMOVE;
strlcpy(p2ppck.szAccount, account.c_str(), sizeof(p2ppck.szAccount));
strlcpy(p2ppck.szCompanion, companion.c_str(), sizeof(p2ppck.szCompanion));
P2P_MANAGER::instance().Send(&p2ppck, sizeof(TPacketGGMessenger));
}
Bu kod ile değiştirilir;
Kod:
void MessengerManager::RemoveFromList(MessengerManager::keyA account, MessengerManager::keyA companion)
{
if (companion.empty())
return;
// Second fix
if (m_Relation[account].find(companion) == m_Relation[account].end() || m_InverseRelation[companion].find(account) == m_InverseRelation[companion].end())
{
LPCHARACTER ch = CHARACTER_MANAGER::Instance().FindPC(account.c_str());
if (ch)
{
sys_err("MessengerManager::RemoveFromList: %s tries to use messenger sql injection", ch->GetName());
DBManager::Instance().DirectQuery("UPDATE account.account SET status = 'BAN' WHERE id = %u", ch->GetAID());
if (ch->GetDesc())
ch->GetDesc()->DelayedDisconnect(3);
}
else
sys_err("MessengerManager::RemoveFromList: Omg! The ghost tried to use this function!");
return;
}
sys_log(1, "MessengerManager::RemoveFromList: Remove %s %s", account.c_str(), companion.c_str());
DBManager::instance().Query("DELETE FROM messenger_list%s WHERE account='%s' AND companion = '%s'", get_table_postfix(), account.c_str(), companion.c_str());
__RemoveFromList(account, companion);
TPacketGGMessenger p2ppck;
p2ppck.bHeader = HEADER_GG_MESSENGER_REMOVE;
strlcpy(p2ppck.szAccount, account.c_str(), sizeof(p2ppck.szAccount));
strlcpy(p2ppck.szCompanion, companion.c_str(), sizeof(p2ppck.szCompanion));;
P2P_MANAGER::instance().Send(&p2ppck, sizeof(TPacketGGMessenger));
}
game/src kısmından guild_manager.cpp açılır ve aratılır;
Kod:
DWORD CGuildManager::CreateGuild(TGuildCreateParameter& gcp)
Bu kısım;
Kod:
DWORD CGuildManager::CreateGuild(TGuildCreateParameter& gcp)
{
if (!gcp.master)
return 0;
if (!check_name(gcp.name))
{
gcp.master->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<길ëâÅ> 길ëâÅ ì´ë¦âì´ ì í⢩íâ¢Ëì§â¬ ìâ¢Å ìÅ µëâ¹Ëë⹤."));
return 0;
}
std::auto_ptr<SQLMsg> pmsg(DBManager::instance().DirectQuery("SELECT COUNT(*) FROM guild%s WHERE name = '%s'",
get_table_postfix(), gcp.name));
if (pmsg->Get()->uiNumRows > 0)
{
MYSQL_ROW row = mysql_fetch_row(pmsg->Get()->pSQLResult);
if (!(row[0] && row[0][0] == '0'))
{
gcp.master->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<길ëâÅ> ì´ë¯¸ ê°â¢ì⬠ì´ë¦âìË ê¸¸ëâÅê°â¬ ìËìÅ µëâ¹Ëë⹤."));
return 0;
}
}
else
{
gcp.master->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<길ëâÅ> 길ëâÅ를 ìÆìâ±í⢠ìËË ìââ ìÅ µëâ¹Ëë⹤."));
return 0;
}
// new CGuild(gcp) queries guild tables and tell dbcache to notice other game servers.
// other game server calls CGuildManager::LoadGuild to load guild.
CGuild * pg = M2_NEW CGuild(gcp);
m_mapGuild.insert(std::make_pair(pg->GetID(), pg));
return pg->GetID();
}
Bu kod ile değiştirilir.
Kod:
DWORD CGuildManager::CreateGuild(TGuildCreateParameter& gcp)
{
if (!gcp.master)
return 0;
if (!check_name(gcp.name))
{
gcp.master->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<길ëâÅ> 길ëâÅ ì´ë¦âì´ ì í⢩íâ¢Ëì§â¬ ìâ¢Å ìÅ µëâ¹Ëë⹤."));
return 0;
}
static char __escape_name[GUILD_NAME_MAX_LEN * 2 + 1];
DBManager::instance().EscapeString(__escape_name, sizeof(__escape_name), static_cast<const char *>(gcp.name),
sizeof(gcp.name));
std::auto_ptr<SQLMsg> pmsg(DBManager::instance().DirectQuery("SELECT COUNT(*) FROM guild%s WHERE name = '%s'",
get_table_postfix(), __escape_name));
if (pmsg->Get()->uiNumRows > 0)
{
MYSQL_ROW row = mysql_fetch_row(pmsg->Get()->pSQLResult);
if (!(row[0] && row[0][0] == '0'))
{
gcp.master->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<길ëâÅ> ì´ë¯¸ ê°â¢ì⬠ì´ë¦âìË ê¸¸ëâÅê°â¬ ìËìÅ µëâ¹Ëë⹤."));
return 0;
}
}
else
{
gcp.master->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("<길ëâÅ> 길ëâÅ를 ìÆìâ±í⢠ìËË ìââ ìÅ µëâ¹Ëë⹤."));
return 0;
}
// new CGuild(gcp) queries guild tables and tell dbcache to notice other game servers.
// other game server calls CGuildManager::LoadGuild to load guild.
CGuild * pg = M2_NEW CGuild(gcp);
m_mapGuild.insert(std::make_pair(pg->GetID(), pg));
return pg->GetID();
}
Son düzenleme:
En Çok Reaksiyon Alan Mesajlar
bekirin paylaştıgı farklıdır,34k 2mb singapore core-2089M ve 2013 src fixleridir
benim paylaştıklarım çoğu kişinin kullandıgı 34k game + 40k srcler içindir
@Öğeyi görmek için üye olmalısınız.;
@Öğeyi görmek için üye olmalısınız.;
konuya ekleyip bildirirseniz daha iyi olur diye düşünüyorum çünkü şuan hangi srcyi kullandıgını bile bilmeyenler gidipte 2013 src fixini yapmasın
napak ölek mi qrdş bekle lonca ile yapılanı da ekleyim konuya
Alıntı dışındakiler konuya eklenti yapılmıştır.
Konuya devam edebilirsiniz..
Konuya devam edebilirsiniz..
Son düzenleme:
Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)
Benzer konular
- Cevaplar
- 42
- Görüntüleme
- 5K
- Cevaplar
- 5
- Görüntüleme
- 2K
- Cevaplar
- 1
- Görüntüleme
- 2K
