Kikuchi 307 Konu tarihi: 10 Ekim 2015 Paylaş Konu tarihi: 10 Ekim 2015 Aimbot yapımına geçmeden önce Trainer yapımını göstermek istedim . Peki Trainer nasıl yapılır ve nelere ihtiyacımız var ? >>Brain.EXE Troll :D :D >>Herhangi bir C# IDE'si (Visual Studio , #Develop ...) http://forum.turkanime.tv/topic/14555-acemi-programc%C4%B1lar-i%C3%A7in-basit-derleyiciler/ >>Address Bunlar oyunda levelimizin , adımızın vs ...yazıldığı yerler . Cheat Engine / IDA Pro İle Bulabilirsiniz . Eğer üşeniyorsanız buradan arayabilirsiniz. http://www.mpgh.net/forum/index.php >>Extra Kod yazarken kafa yapıyor ... Öncelikle Windows Formu oluşturuyoruz . Şimdi geldik domatesin faydalarına ... 1 2 3 3.1 #region Memory #region Basic Stuff [DllImport("kernel32.dll")] private static extern Int32 ReadProcessMemory(IntPtr hProcess, IntPtr lpBaseAddress, [In, Out] byte[] buffer, UInt32 size, out IntPtr lpNumberOfBytesWritten); [DllImport("kernel32.dll")] private static extern Int32 WriteProcessMemory(IntPtr hProcess, IntPtr lpBaseAddress, [In, Out] byte[] buffer, UInt32 size, out IntPtr lpNumberOfBytesWritten); IntPtr pHandel; public bool Process_Handle(string ProcessName) { try { Process[] ProcList = Process.GetProcessesByName(ProcessName); if (ProcList.Length == 0) return false; else { pHandel = ProcList[0].Handle; return true; } } catch (Exception ex) { Console.Beep(); Console.WriteLine("Process_Handle - " + ex.Message); return false; } } private byte[] Read(int Address, int Length) { byte[] Buffer = new byte[Length]; IntPtr Zero = IntPtr.Zero; ReadProcessMemory(pHandel, (IntPtr)Address, Buffer, (UInt32)Buffer.Length, out Zero); return Buffer; } private void Write(int Address, int Value) { byte[] Buffer = BitConverter.GetBytes(Value); IntPtr Zero = IntPtr.Zero; WriteProcessMemory(pHandel, (IntPtr)Address, Buffer, (UInt32)Buffer.Length, out Zero); } #endregion //This is the part you want to edit #region Write Functions (Integer & String) public void WriteInteger(int Address, int Value) { Write(Address, Value); } public void WriteString(int Address, string Text) { byte[] Buffer = new ASCIIEncoding().GetBytes(Text); IntPtr Zero = IntPtr.Zero; WriteProcessMemory(pHandel, (IntPtr)Address, Buffer, (UInt32)Buffer.Length, out Zero); } public void WriteBytes(int Address, byte[] Bytes) { IntPtr Zero = IntPtr.Zero; WriteProcessMemory(pHandel, (IntPtr)Address, Bytes, (uint)Bytes.Length, out Zero); } public void WriteNOP(int Address) { byte[] Buffer = new byte[] { 0x90, 0x90, 0x90, 0x90, 0x90 }; IntPtr Zero = IntPtr.Zero; WriteProcessMemory(pHandel, (IntPtr)Address, Buffer, (UInt32)Buffer.Length, out Zero); } #endregion #region Read Functions (Integer & String) public int ReadInteger(int Address, int Length = 4) { return BitConverter.ToInt32(Read(Address, Length), 0); } public string ReadString(int Address, int Length = 4) { return new ASCIIEncoding().GetString(Read(Address, Length)); } public byte[] ReadBytes(int Address, int Length) { return Read(Address, Length); } #endregion #endregion 4 5 6 7 8 9 10 10.1 Kodlar Ve Türkçesi if (Process_Handle("iw5mp")) //Eğer İşlem "iw5mp" Görev Yöneticisinde Bulunursa { MessageBox.Show("İşlem Bulundu."); // İşlem Bulundu Yazan Bir Mesaj Kutusu Oluştur. WriteInteger(0x1dae3e8,int.Parse(textBox1.Text)); //textBox1'de yazan Texti(yazıyı) int'e çevir ve 0x1dae3e8 yerine yaz .0x1dae3e8 benim oyundaki Address'im .Siz "0x1dae3e8" yerine kendi addressinizi yazacaksınız. } else // eğer işlem "iw5mp" Görev Yöneticisinde Bulunamazsa { MessageBox.Show("İşlem Bulunamadı"); // İşlem Bulunmadı Yazan Bir Mesaj Kutusu Oluştur. } 11 12 Elimden geldiğince anlaşılır anlatmaya çalıştım .Soru ve yardım için buradaki forumlara bakabilirsiniz.Umarım faydalı olmuştur. http://www.mpgh.net/http://www.unknowncheats.me/forum/ Projeyi buradan indirebilirsiniz . http://dosya.co/hzvmpen8dhey/Trainer.rar.html Alıntı İletiye bağlantı Sitelerde Paylaş More sharing options...
MetroFM 58 Mesaj tarihi: 10 Ekim 2015 Paylaş Mesaj tarihi: 10 Ekim 2015 çok güzel olmuş indirme tasarlamayı anladım ama kodlar kısmı karışık geldi ? :Demeğe teşekürler :D Alıntı İletiye bağlantı Sitelerde Paylaş More sharing options...
Kikuchi 307 Mesaj tarihi: 11 Ekim 2015 Yazar Paylaş Mesaj tarihi: 11 Ekim 2015 çok güzel olmuş indirme tasarlamayı anladım ama kodlar kısmı karışık geldi ? :Demeğe teşekürler :D Referansları ekledikten sonra işlemi seçip hazırlanmış fonkisyonlarla (WriteInt , WriteString, ReadString ...) Address'i yazıp , değer giriyorsun . if (Process_Handle("iw5mp")) //Eğer "iw5mp" işlemi bulunursa ...{ //buradaki kodları çalıştır.Örneğin ben oyun içindeki levelimi değiştirmek istiyorum. Bunun için WriteInteger fonksiyonu kullanacağım . WriteInteger("oyunda levelimin tutulduğu address",gireceğim değer);Ben gireceğim değeri texbox1.text'de yazılan yazıyı int'e çevirip (sayıya dönüştürüp) kullanıyorum .} Alıntı İletiye bağlantı Sitelerde Paylaş More sharing options...
Önerilen İletiler
Sohbete katıl
Şimdi mesajını gönderebilir ve daha sonra kayıt olabilirsin. Bir hesabın varsa, hesabınla göndermek için şimdi oturum aç.
Note: Your post will require moderator approval before it will be visible.