Am conceput ceva care nu stiu pentru cati dintre voi apreciaza efortul dar ramane de vazut.
Aceasta verificare pe Lancher/Starter se face atunci cand pe parte de sursa game exista pus un nume iar atunci cand cineva schimba numele din client va primi ban!
sursa-game:
cauta fisierul: input.cpp
dupa cauta:
void CInputProcessor::Version(LPCHARACTER ch, const char* c_pData)
inlocuiesti toata functia cu asta:
void CInputProcessor::Version(LPCHARACTER ch, const char* c_pData)
{
if (!ch)
{
return;
}
TPacketCGClientVersion * p = (TPacketCGClientVersion *) c_pData;
// If the file name is not metin2client.exe and the GM level is not equal with GM_IMPLEMENTOR kick the player
if (strcmp(p->filename, "NUME_LANCHER_SERVER.exe") && ch->GetGMLevel() != GM_IMPLEMENTOR)
{
std::auto_ptr<SQLMsg> msg(DBManager::instance().DirectQuery("UPDATE account.account SET status= 'BLOCK' WHERE id = %d", ch->GetDesc()->GetAccountTable().id));
DBManager::instance().Query("INSERT INTO log.wait_hack SET login='%s', nickname='%s', ip='%s', time=NOW(), map_index=%d, server='%s';",
ch->GetDesc()->GetAccountTable().login, ch->GetName(), ch->GetDesc()->GetHostName(), ch->GetMapIndex(), g_stHostname.c_str());
ch->GetDesc()->DelayedDisconnect(3);
}
sys_log(0, "VERSION: %s %s %s", ch->GetName(), p->timestamp, p->filename);
ch->GetDesc()->SetClientVersion(p->timestamp);
}
ce face mai exact??>
poi face avertizare prin log corecta cu specificatiile urmatoare:
nume cont,nume caracter,ip jucator,ora cand sa efectuat modificarea ,map_index, si serverul(canal1_core2)
ofera ban automat daca schimbi numele de la lancher imediat.
NUME_LANCHER_SERVER.exe >Inlocuiti cu numele de la serverul vostru.
SQL pentru navicat:
intrati in tabelul LOG
executati acest sql:
/*
Navicat MySQL Data Transfer
Source Server : test
Source Server Version : 50613
Source Host :
Source Database : log
Target Server Type : MYSQL
Target Server Version : 50613
File Encoding : 65001
Date: 2018-08-12 12:54:57
*/
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for wait_hack
-- ----------------------------
DROP TABLE IF EXISTS `wait_hack`;
CREATE TABLE `wait_hack` (
`login` varchar(50) COLLATE big5_bin DEFAULT NULL,
`nickname` varchar(50) COLLATE big5_bin DEFAULT NULL,
`ip` varchar(50) COLLATE big5_bin DEFAULT NULL,
`time` time DEFAULT NULL,
`map_index` varchar(30) COLLATE big5_bin DEFAULT NULL,
`server` varchar(30) COLLATE big5_bin DEFAULT NULL,
`playtime` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=big5 COLLATE=big5_bin;
+DOVADA
Infomanii - Din pasiune pentru jocuri !
Aceasta verificare pe Lancher/Starter se face atunci cand pe parte de sursa game exista pus un nume iar atunci cand cineva schimba numele din client va primi ban!
sursa-game:
cauta fisierul: input.cpp
dupa cauta:
void CInputProcessor::Version(LPCHARACTER ch, const char* c_pData)
inlocuiesti toata functia cu asta:
void CInputProcessor::Version(LPCHARACTER ch, const char* c_pData)
{
if (!ch)
{
return;
}
TPacketCGClientVersion * p = (TPacketCGClientVersion *) c_pData;
// If the file name is not metin2client.exe and the GM level is not equal with GM_IMPLEMENTOR kick the player
if (strcmp(p->filename, "NUME_LANCHER_SERVER.exe") && ch->GetGMLevel() != GM_IMPLEMENTOR)
{
std::auto_ptr<SQLMsg> msg(DBManager::instance().DirectQuery("UPDATE account.account SET status= 'BLOCK' WHERE id = %d", ch->GetDesc()->GetAccountTable().id));
DBManager::instance().Query("INSERT INTO log.wait_hack SET login='%s', nickname='%s', ip='%s', time=NOW(), map_index=%d, server='%s';",
ch->GetDesc()->GetAccountTable().login, ch->GetName(), ch->GetDesc()->GetHostName(), ch->GetMapIndex(), g_stHostname.c_str());
ch->GetDesc()->DelayedDisconnect(3);
}
sys_log(0, "VERSION: %s %s %s", ch->GetName(), p->timestamp, p->filename);
ch->GetDesc()->SetClientVersion(p->timestamp);
}
ce face mai exact??>
poi face avertizare prin log corecta cu specificatiile urmatoare:
nume cont,nume caracter,ip jucator,ora cand sa efectuat modificarea ,map_index, si serverul(canal1_core2)
ofera ban automat daca schimbi numele de la lancher imediat.
NUME_LANCHER_SERVER.exe >Inlocuiti cu numele de la serverul vostru.
SQL pentru navicat:
intrati in tabelul LOG
executati acest sql:
/*
Navicat MySQL Data Transfer
Source Server : test
Source Server Version : 50613
Source Host :
Source Database : log
Target Server Type : MYSQL
Target Server Version : 50613
File Encoding : 65001
Date: 2018-08-12 12:54:57
*/
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for wait_hack
-- ----------------------------
DROP TABLE IF EXISTS `wait_hack`;
CREATE TABLE `wait_hack` (
`login` varchar(50) COLLATE big5_bin DEFAULT NULL,
`nickname` varchar(50) COLLATE big5_bin DEFAULT NULL,
`ip` varchar(50) COLLATE big5_bin DEFAULT NULL,
`time` time DEFAULT NULL,
`map_index` varchar(30) COLLATE big5_bin DEFAULT NULL,
`server` varchar(30) COLLATE big5_bin DEFAULT NULL,
`playtime` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=big5 COLLATE=big5_bin;
+DOVADA
Infomanii - Din pasiune pentru jocuri !