Chat' de yazılanlara göre PID (Player Id) Çekimi


C # Programlama    C # Programlama İle İlgili Paylaşım Kategorisi

Yazar: xonivion    1 Yorum    174 Görüntüleme
  • 0 Oy - 0 Yüzde

Paylaşım Tarihi: 04.07.2016, 13:50:12 #1
xonivion Cezalı Üye
Cezalı Üye
Status: Çevrimdışı Yorum Sayısı:217 Konu Sayısı:74 Üyelik Tarihi:03.07.2016

Bu göstereceğim örnek S4League oyunu içindir.

Gerekenler
- 1 Timer
- 1 listBox

Form Eventine  timer1.Start yazabiliriz ancak isteyenler "Enabled = True" şeklinde de yapabilir.
PHP Kod:
  timer1.Start(); 


Öncelikle oyundaki chat de 2 pointer' a ihtiyacımız olacak 
1. pointer -> en son yazılan mesajdaki pid (player id)
2. pointer -> chat de yazılan en son yazı

bunları bulduktan sonra timer eventine
  
PHP Kod:
 
 IntPtr address1 
memory.GetAddress("\"S4Client.exe\"+01686730+14+­4+30+224+­88");
  IntPtr address2 memory.GetAddress("\"S4Client.exe\"+0171673C+0");

Process[] processes Process.GetProcessesByName("S4Client");
            if (processes.Length 0)
            {
                     if (
memory.ReadInt32(address2) == 1634496558){ //Burada uğraşmayı sevmediğim için string
                                         // olarak ".playerid" yazan kişiyi tespit ediyoruz.
                        memory.WriteInt32(address20);
                        listBox1.Items.Add(memory.ReadUInt32(address1)); //Eğer ki .playerid yazan birisi varsa pid (player id) sini çekip listBox'a aktarıyoruz.
                        Thread.Sleep(500); // yarım saniye bekletelim ve döngüye devam
                        
                                


Memory ve conNect olarak 2 class'ı forumlardan yardım alarak ve kendimce kodladım yani araştırıp mem.Read, mem.Write ve Get_Pointer_Address kullanılan classlar bulmalısınız..
Son Düzenleme: 04.07.2016, 13:51:01, Düzenleyen: xonivion.
Paylaşım Tarihi: 05.07.2016, 17:55:37 #2
Khryseis Yeğen
Kayıtlı Üye
Status: Çevrimdışı Yorum Sayısı:41 Konu Sayısı:4 Üyelik Tarihi:05.07.2016 Rep Puanı: 3

Teşekkür Ederim !









Konuyu görüntüleyenler:
1 Misafir