- 24 Mar 2019
- 172
- 0
Merhabalar;
Arkadaşlar bugün size D3D menü hakkında bilgi vereceğim ama başlamadan önce hile türleri ve uygulama biçimi hakkında kısa bir bilgilendirme tapacağım.
İlk olarak;
Hilelerin genel amacı oyundalar da duvarın arkasını görmek, aim, hız, can, mermi, para gibi değerleri değiştirmek, sabitlemek ve bunlara müdahil olmaktır. Bu noktada iki husus vardır.
- Oyuna bağımsız olarak dışarıdan müdahale etmek (External).
Avantajları:
- Debug ve test işlemleri daha kolay yapılır
- Uygulama üzerinde tam kontrole sahipsinizdir
- Yapımı daha kolaydır
- Tersine mühendislik bilgisi gerektirmiyor
- internala göre daha yavaştır.
- memoryyi okumak daha zordur
- Oyunun kendi fonksiyonlarını kullanarak müdahale (İnternal).
Avantajları:
- Hızlıdır
- Memory okumak kolaydır
- Oyunun fonksiyonlarına ulaşmak daha kolaydır
- Debug sırasında logic hataları ayıklamak zaman alır
- Enjekte etmek zorundasınızdır
İkinci olarak;
Veriler:
Veriler 2 yerde saklanır. Bunlardan ilki sunucular yani serverlar üzerinde saklanır ve bu sunucular yüksek güvenlik ile korunur bu sunucularda şu tarz veriler tutulur; Gerçek para ile alınan oyun paraları, insanların envanter bilgileri gibi önemli veriler tutulur. Diğeri ise işlemci yani client üzerinde tutulan bilgilerdir. Bu bilgilere ulaşmamız kolaydır çünkü bu verileri kendi bilgisayarımızdan çekeriz. Buradaki verilere örnek ise; can değerimiz, mermi sayınız, kalkan değeriniz, güç puanınız gibi verilerdir.
Peki oyunun verilerine nasıl ulaşabiliriz?
Peki oyunun verilerine nasıl ulaşabiliriz?
- Verilere Cheat Engine kullanarak yada benzeri araçlar kullanarak ulaşabiliriz. Verilerin memorydeki yerlerini bulmamızı sağlayacaktır.
- Offset ve pointer kullanımı önemlidir. Offset pointer kullanarak iki veri arasındaki byte uzaklıklarına denir ve bu işlemler Offsetler ile yapılır.
Bu kısımda kısaca hileler türleri ve uygulanma şekillerinden bazılarına değindim. Artık asıl konuya geçebiliriz
D3D Menu Nedir, c++ ile Nasıl Yapılır?
İlk olarak D3D açılımı Direct3Ddir. Microsoft tarafından geliştirilen üçboyutlu nesneleri renderlamak için geliştirilmiş bir programlama ara yüzüdür (API). DirectXin bir altkümesidir.
D3d menü bir hack aracıdır. Oynadığınız oyunun arka planında çalışır ve sizi engellemez. Çalıştırdığınız zaman ekrandaki menüden özellikleri açıp kapatarak farklı üstünlükler kazanırsınız oyunda.
Nasıl yapılır?
İki farklı metodu vardır;D3d menü bir hack aracıdır. Oynadığınız oyunun arka planında çalışır ve sizi engellemez. Çalıştırdığınız zaman ekrandaki menüden özellikleri açıp kapatarak farklı üstünlükler kazanırsınız oyunda.
Nasıl yapılır?
- Overlay
- Windows API ile ara yüz oluşturulur
- Oluşturduğumuz ara yüz çözünürlük boyut v.b ayarları yapılır
- Direct3D ara yüzü kullanılır ve menü & menü içeriği oluşturulur.
- External veri çeker.
- C++menu yapımı
- Oyuna hooks atılır ve DirectX modüllerine erişilir
- Erişimden sonra iki seçenek çıkıyor karşımıza
- DirectX SDKlarından alıp oyunun ara yüzüne eklemek gerekli çizimler yapılır
- DirectX kendi fonksiyonlarından kullanılarak oyun içine gönderilir.
- 2 adet çizdirme yöntemi vardır
- Framework
- ImGUI
Kodlamaya başlamadan önce derleyici ayarları:
İlk olarak microsoft directx 9.0 sdk (summer 2004) dosyasını internetten .rar uzantısını indirip
Program files(x86) içine atıyoruz
Program files(x86) içine atıyoruz
Sonra dosyaya sağ tık yapıp buraya çıkar diyoruz bu dosyanın için de bizim için gerekli olan header filelar ve kütüğhaneler var.
Bu işlemden sonra derleyicimizi açıp yeni bir proje oluşturuyoruz.
Projemizin tipini Windows Desktop Wizard olarak seçip ilerle diyoruz.
Progje ismini ve kaydetmek istediğimiz yeri seçip oluştur diyoruz.
Sonra önümüze gelen bu ekrandan uygulamanın uzantısını Dynamic Link Library(.dll) olarak seçip uygulama seçeneklerinden ise Precompiled header seçiyoruz
Ve projemiz oluşturulmuş oluyor. Oluşturduğumuz projemize sağ tık yapıp özellikler kısmını açıyoruz.
Burada bizim için önemli olan ayarları yapacağız arkadaşlar. Konfigürasyon özelliklerinden genele tıklayıp konfigürasyon türüne bakıyoruz Dynamic Library (.dll) olmalı.
Sonra gelişmiş kısmına tıklayıp Character Seti Use Multi-Byte Character Set olanı seçiyoruz.
Son işlem olan ilk başta indirip program files(86x) çıkardığımız kütüphaneleri ve header fileları tanımlamak. Vc++directories kısmına gelip include directories ve library directories kısmını değiştirmektir. Üstüne tıklayıp en sağ tarafta ok işaretine tıklarsan <Edit..> kısmı gelir ve orayada tıklarız.
Tıkladıktan sonra aşağıdaki pencere açılır. Kırmızı ok işareti ile yere yani dosya açma/ekleme yerine tıklıyoruz ve mavi ok ile gösterdiğim 3 noktaya tıklyoruz.
Include directories için kurduğumuz SDK içindeki Include klasörünü ekliyoruz.
library directories için de aynı işlemi yapıpprogram files(x86) içine kurduğumuz SDK dosyasının içindeki Lib klasörünü ekliyoruz .
Ve bütün ayarlarımız bitmiş oluyor artık kendi hooklarınızı yazıp menünüzü oluşturabilirsiniz. Kodlarken GitHub'tan yararlanabilirsiniz açık kaynak kodlarını görebileceğiniz bir kaç proje mevcuttur.
Kodlamaya Başlamadan önce araştırıp bakmanız gereken linkleri:
Son düzenleme: