- Mesaj
- 35
- Çözümler
- 1
- Beğeni
- 16
- Puan
- 459
- Ticaret Puanı
- 0
Merhaba, hilecilerin pack değişim işlemlerini önlemek için yazılmış bir sistemdir. Özellikle 'pc' packini güvenceye alıyoruz ki, animasyonlar vs değiştirilip kullanılamasın. Sistem key mantığı ile çalışmaktadır. İstenilen pack içerisine bir key oluşturulup client'ten okunması sağlanır. Versiyon sisteminiz de mevcutsa eğer packleriniz tamamen güvende olacaktır.
Client SRC girelim.
Locale_inc.h
Ekle:
PyhtonApplication.cpp
Ara:
Altına ekle:
Client srcde işlemimiz sona erdi. Pack tarafına geçelim. pc packi açılır. pc içerisine tetra.txt isimli bir dosya oluşturulur. Dosya içerisine
Yapıştırın ve packi kapatın. Bu işlemi diğer packleriniz için de yapabilirsiniz.
İyi forumlar dilerim.
Kanıt:
Client SRC girelim.
Locale_inc.h
Ekle:
Kod:
#define TETRA_PACK_SIFRE
PyhtonApplication.cpp
Ara:
Kod:
bool CPythonApplication::Create (PyObject* poSelf, const char* c_szName, int width, int height, int Windowed)
{
Altına ekle:
Kod:
#ifdef TETRA_PACK_SIFRE
{
const char* szKeyPath = "d:/ymir work/pc/tetra.txt";
const std::string strExpectedKey = "A9f$Q2mZ!7Lk#R8@wC4D%H6pSxT^yJ0B*EaN5?uG1="; //Buradaki key ve pack içerisindeki key aynı olmak zorundadır. Kafanıza göre değiştirebilirsiniz.
CMappedFile file;
LPCVOID pvData;
if (CEterPackManager::Instance().Get(file, szKeyPath, &pvData))
{
std::string strFileContent((const char*)pvData, file.Size());
strFileContent.erase(strFileContent.find_last_not_of(" \n\r\t") + 1);
if (strFileContent != strExpectedKey)
{
MessageBox(NULL, "Sistem dosyalari bozulmus (Hata: 0xP1).", "Kritik Hata", MB_OK | MB_ICONERROR);
return false;
}
}
else
{
MessageBox(NULL, "Sistem dosyalari eksik (Hata: 0xP2).", "Kritik Hata", MB_OK | MB_ICONERROR);
return false;
}
}
#endif
Client srcde işlemimiz sona erdi. Pack tarafına geçelim. pc packi açılır. pc içerisine tetra.txt isimli bir dosya oluşturulur. Dosya içerisine
Kod:
A9f$Q2mZ!7Lk#R8@wC4D%H6pSxT^yJ0B*EaN5?uG1=
İyi forumlar dilerim.
Kanıt:

