WallHack Engeli

  • Konuyu başlatan Konuyu başlatan metin2008
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 18
  • Görüntüleme Görüntüleme 3K

metin2008

www.HardMt2.com
Katılım
13 Tem 2016
Konular
52
Mesajlar
888
Çözüm
3
Online süresi
1mo 15d
Reaksiyon Skoru
334
Altın Konu
2
Başarım Puanı
171
MmoLira
974
DevLira
45
Ticaret - 0%
0   0   0

ROHAN2 WORLD 1-120 TR TİPİ OFFICIAL YOHARA, BALATHOR VE AMON! 80. GÜNÜNDE! +10.000 ONLİNE! HİLE VE BOT %100 ENGELLİ HEMEN TIKLA!

input_main.cpp arat:
C++:
void CInputMain::Move(LPCHARACTER ch, const char * data)
içinde fonksiyonu bul
C++:
if (pinfo->bFunc >= FUNC_MAX_NUM
fonksiyonun altına ekle;

C++:
    if (ch->IsPC())
    {
        const long lMapIndex = ch->GetMapIndex();
        if (!SECTREE_MANAGER::instance().IsMovablePosition(lMapIndex, pinfo->lX, pinfo->lY))
        {

            if (ch->IsGM())
                ch->ChatPacket(CHAT_TYPE_INFO, "Wallhack dedected!");

            const PIXEL_POSITION& rkPos = ch->GetXYZ();

            PIXEL_POSITION kNewPos;
            if (SECTREE_MANAGER::instance().GetRandomLocation(lMapIndex, kNewPos, rkPos.x, rkPos.y, 300))
            {
                ch->Show(lMapIndex, kNewPos.x, kNewPos.y, rkPos.z);
                ch->Stop();
            }
        }
    }
Henüz test edilmedi, deneyen olursa geri bildirim yaparsa sevinirim.
Not: Sunucu tarafındaki server_attr, pack ile aynı olmasına dikkat ediniz, yoksa herhangi yürünebilen bir yerde sorun yaşayabilirsiniz yada tam tersi olabilir...

 
Son düzenleme:

En Çok Reaksiyon Alan Mesajlar

emeğine sağlık bir reserv eng. olarak koda ilk bakışta gördüğüm hataları yazacağım öncelikle

if (ch->IsPC()) : burada karakter mi npc mi kontrolü eklemişsiniz bu kısım çok rahat atlanabilir karakterler özelinde hareket kısıtlaması kalkar .

if (!SECTREE_MANAGER::instance().IsMovablePosition(lMapIndex, pinfo->lX, pinfo->lY)) bu koşulda karakterin harita dışına çıkmasını engellemeye çalışmışsınız aynı şekilde reserv eng. ile koşul sürekli false döndürülebilir ve koşul otomatikman devre dışı kalır karakter map dışında gezer.

SECTREE_MANAGER::GetRandomLocation() burada ki fonksiyonda karakteri rasgele geri bir konuma ışınlıyorsunuz , fakat memory manipulation ile fonksiyonda belirlediğiniz rasgele koordinatları biz belirleyebiliriz ve karakter geriye değil map'in dışına kendi atadığımız x-y-z koordinatına ışınlanır basitçe anlatalım

karakterin ışınlanacağı koordinatın x = 0x1ac y = 0x4cd olduğunu varsayalım 0x1ac değeri koordinat olarak 10 değerini veriyor 0x4cd değeri koordinat olarak 5 değerini veriyor ve karakteri olması gereken yere map'in içine ışınlıyor güvenlik olması gerektiği gibi çalışıyor fakat 0x1ac ve 0x4cd bellek adresleri map'în içerisine gidecek şekilde map'in dışında ki koordinata =+4 yada +addr komutlarıyla arttırılıp haritada map dışına hareket edilebilir .

SON VE EN ÖNEMLİ HATA : IsMovablePosition() fonksiyonuna basit bir hook atarak fonksiyonun çağırılmasını kökten engelleyerek map dışında fink atabiliriz yazdığım bu uzun yorumu umarım yanlış anlamaz dikkatli ve özenli okuyarak kendinizi geliştirmek amacı ile kullanırsınız herkese iyi forumlar.
"client src tarafından CE direkt engelleyebilirsin" sen engellersin başkası gelir koyduğunu engeli geçer, sunucu tarafında çözmediğiniz sürece clientta yapılan her şey nafile.
Teşekkürler
 
Paylaşım İçin Teşekkürler İyi Forumlar.
 

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