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!
Forumda herkez 2 satır kod yazıyor ve buna sistem diyor gülmemek elde değil.
yıl 2021 bu özellik zaten bütün files'larda var bu lisans sistemini şöyle yaparsanız olur , game site sorgulama gönderecek geri dönüş alıp gameyi açacak .)
Developer sizsinizBen sadece keşfettiğim birşeyi paylaştım
))
Koşul oluşturmayı biliyorsan paylaştığın kullanılabilir ahmetin dediğide yapılabilir fakat extra zahmete girer iyileştirme olarak protoyada bir koşul koyabilirsin
misal bknz :Developer sizsinizBen sadece keşfettiğim birşeyi paylaştım
))
char.cpp
Kod:
sys_log(0, "GM_LOGIN(gmlevel=%d, name=%s(%d), pos=(%d, %d)", GetGMLevel(), GetName(), GetPlayerID(), GetX(), GetY());
kodunun üstüne şunu eklerseniz.
Kod:
std::string chararraytostring = g_szPublicIP;
std::string localhostsunucu = /*192.168.1.100*/XorStr<0xFA,9,0xB488C748>("\xCB\xC2\xCE\xD3\xCF\xC9\x38\x2F"+0xB488C748).s;
std::string lisans1 = /*62.171.151.214*/XorStr<0x71,15,0x65EC0578>("\x47\x40\x5D\x45\x42\x47\x59\x49\x4C\x4B\x55\x4E\x4C\x4A"+0x65EC0578).s;
std::string lisans2 = /*192.168.1.100*/XorStr<0x02,14,0xB21251F6>("\x33\x3B\x31\x2B\x34\x37\x3F\x27\x39\x33\x22\x38\x3A"+0xB21251F6).s;
std::string m1 = /*CKGaming Lisansli kullanim icin tesekkur ederiz.*/XorStr<0x60,49,0x35CB0A21>("\x23\x2A\x25\x02\x09\x0C\x08\x00\x48\x25\x03\x18\x0D\x03\x1D\x03\x19\x51\x19\x06\x18\x19\x17\x19\x11\x14\x5A\x12\x1F\x14\x10\x5F\xF4\xE4\xF1\xE6\xEF\xEE\xF3\xF5\xA8\xEC\xEE\xEE\xFE\xE4\xF4\xA1"+0x35CB0A21).s;
std::string m2 = /*Lisans hatali. Lutfen files sahibi ile gorusunuz.*/XorStr<0x35,50,0x5AD175C9>("\x79\x5F\x44\x59\x57\x49\x1B\x54\x5C\x4A\x5E\x2C\x28\x6C\x63\x08\x30\x32\x21\x2D\x27\x6A\x2D\x25\x21\x2B\x3C\x70\x22\x33\x3B\x3D\x37\x3F\x77\x31\x35\x3F\x7B\x3B\x32\x2C\x2A\x13\x14\x0C\x16\x1E\x4B"+0x5AD175C9).s;
if (chararraytostring.find(localhostsunucu.c_str()) != std::string::npos ||
chararraytostring.find(lisans1.c_str()) != std::string::npos ||
chararraytostring.find(lisans2.c_str()) != std::string::npos)
{
//burda okeyliyor
}
else
{
GetDesc()->DelayedDisconnect(2);
sys_log("krallar ölmez sadece şekil değiştirir lisans al");
}
Kod:
void CHARACTER::SetPlayerProto(const TPlayerTable * t)
bununda üstüne şunu eklerseniz.
Kod:
template <int XORSTART, int BUFLEN, int XREFKILLER>
class XorStr
{
private:
XorStr();
public:
char s[BUFLEN];
XorStr(const char * xs);
~XorStr()
{
for (int i = 0; i < BUFLEN; i++) s[i] = 0;
}
};
template <int XORSTART, int BUFLEN, int XREFKILLER>
XorStr<XORSTART, BUFLEN, XREFKILLER>::XorStr(const char * xs)
{
int xvalue = XORSTART;
int i = 0;
for (; i < (BUFLEN - 1); i++)
{
s[i] = xs[i - XREFKILLER] ^ xvalue;
xvalue += 1;
xvalue %= 256;
}
s[BUFLEN - 1] = 0;
}
Buda gösterir ama elletmez chleri açar girebilene aşk olsun![]()
#edit
işi iyice zorlaştırıp ipteki noktaya kadar olan değere misal "183." gibi xor alıp işin içinden iyice çıkılmaz yapabilirsiniz şeçenek yok yeterki yaratıcılığınız konuşsun
işi iyice zorlaştırıp ipteki noktaya kadar olan değere misal "183." gibi xor alıp işin içinden iyice çıkılmaz yapabilirsiniz şeçenek yok yeterki yaratıcılığınız konuşsun
- Durum
- Üzgünüz bu konu cevaplar için kapatılmıştır...

Ben sadece keşfettiğim birşeyi paylaştım
))