Перейти к содержанию

Лидеры

  1. Garik66

    Garik66

    Помогаторы


    • Баллы

      2

    • Постов

      5 750


  2. ivan96222

    ivan96222

    Пользователи


    • Баллы

      1

    • Постов

      57


  3. wiz2vip

    wiz2vip

    Пользователи


    • Баллы

      1

    • Постов

      33


Популярный контент

Показан контент с высокой репутацией 13.12.2014 во всех областях

  1. Тема наверно устарела но все же. AOBом ищется все прекрасно, только фишка у движка есть. Пульки АОВ не найдет пока не стрельнуть хотябы одну пульку, очки действий тоже пока не начнется бой, Атрибуты и Навыки пока не откроется меню персонажа, итд. итп. Т.е. пока не создастся "поток(после статичный для АОВ)". Вообщем я погамал не много, но игруля не понравилась, а делал так, сначала вхожу в бой, стреляю, тратятся и пульки и ходы, далее активирую АОВ скрипт, и ок. Пульки aobscan(address0_aob, 8b 40 34 8b 4d 0c 89 48 18)alloc(newMem, 2048)label(returnHere)label(address0)registersymbol(address0) newMem:mov eax,[eax+34]mov ecx,[ebp+0C]mov ecx,[eax+18]jmp returnHere address0_aob:address0:jmp newMemnopreturnHere: [DISABLE]address0:mov eax,[eax+34]mov ecx,[ebp+0C] dealloc(newMem)unregistersymbol(address0) [ENABLE]aobscan(address1_aob, d9 43 28 8b 45 0c 50)alloc(newMem, 2048)label(returnHere)label(address1)registersymbol(address1)newMem:fld dword ptr [ebx+28]mov eax,#250jmp returnHereaddress1_aob:address1:jmp newMemnopreturnHere:[DISABLE]address1:fld dword ptr [ebx+28]mov eax,[ebp+0C]dealloc(newMem)unregistersymbol(address1) [ENABLE]aobscan(address2_aob, 8B 47 10 8B 4F 48 8B 57 30 2B CA 89 88 AC 00 00 00)alloc(newMem, 2048)label(returnHere)label(address2)registersymbol(address2)newMem:mov [edi+30],0mov eax,[edi+10]mov ecx,#50 //[edi+48]jmp returnHereaddress2_aob:address2:jmp newMemnopreturnHere:[DISABLE]address2:mov eax,[edi+10]mov ecx,[edi+48]dealloc(newMem)unregistersymbol(address2) [ENABLE]aobscan(address3_aob, 83c4108bc88b45e8898898000000c745e400000000e981010000)alloc(newMem, 2048)label(returnHere)label(address3)registersymbol(address3)newMem:add esp,10mov ecx,eaxmov ecx,#999jmp returnHereaddress3_aob:address3:jmp newMemreturnHere:[DISABLE]address3:add esp,10mov ecx,eaxdealloc(newMem)unregistersymbol(address3)[ENABLE]aobscan(address999_aob, 83c41089879c00000033f6e92a0100008da424000000008b4508)alloc(newMem, 2048)label(returnHere)label(address999)registersymbol(address999)newMem:add esp,10mov [edi+0000009C],#999//eaxjmp returnHereaddress999_aob:address999:jmp newMemdb 90 90 90 90returnHere:[DISABLE]address999:add esp,10mov [edi+0000009C],eaxdealloc(newMem)unregistersymbol(address999) [ENABLE]aobscan(address4_aob, 89 11 83 EC 0C 50)alloc(newMem, 2048)label(returnHere)label(address4)registersymbol(address4)newMem:mov edx,[ecx]mov [ecx],edxsub esp,0Cjmp returnHereaddress4_aob:address4:jmp newMemreturnHere:[DISABLE]address4:mov [ecx],edxsub esp,0Cdealloc(newMem)unregistersymbol(address4)
    1 балл
  2. Всем привет сегодня расскажу как делать хуки на C#. Комментировал код из-за всех сил вроде понятно всё получилось. На что следующую статью написать уже не знаю. using System;using System.Windows.Forms;//Подключим пространство имён.using System.Runtime.InteropServices;namespace WindowsFormsApplication2{ public partial class Form1 : Form { //Тут объявим WinApi [DllImport("user32.dll")] private static extern bool RegisterHotKey(IntPtr hWnd, int id, uint fsModifiers, uint vk); [DllImport("user32.dll")] private static extern bool UnregisterHotKey(IntPtr hWnd, int id); public Form1() { InitializeComponent(); //В инициализации компонентов объявим наши горячие клавиши и их айдишники. //Где 0, 0 это то есть ID=0 //Где 2,0 это то есть ID= 2 RegisterHotKey(this.Handle, 0, 0, (int)Keys.D1); //Если надо две горячих клавиши можно сделать так и ID Клавиши будет конечно равен 1 тут легко догадаться. RegisterHotKey(this.Handle, 1, (int)ModiferKeys.Control, (int)Keys.D2); RegisterHotKey(this.Handle, 2, 0, (int)Keys.D3); } //Теперь сделаем обработку наших нажатых клавиш protected override void WndProc(ref Message m) { if (m.Msg == 0x0312) { //if (m.WParam.ToInt32() == 0) это значит что функция обрабатывается при нажатие клавиши 1 и id который равен 0 if (m.WParam.ToInt32() == 0) MessageBox.Show("Click 1"); //if (m.WParam.ToInt32() == 1) это значит что функция обрабатывается при нажатие клавишей ctrl + 2 иid который равен 1 if (m.WParam.ToInt32() == 1) MessageBox.Show("Click 2"); if (m.WParam.ToInt32() == 2) //if (m.WParam.ToInt32() == 2) это значит что функция обрабатывается при нажатие клавиши 3 2 id который равен 2 MessageBox.Show("Click 3"); } base.WndProc(ref m); } private void Form1_FormClosing(object sender, FormClosingEventArgs e) { //Здесь мы пишем снятие регистрации клавиш, вдруг они заняты другой программой. UnregisterHotKey(this.Handle, 0); UnregisterHotKey(this.Handle, 1); UnregisterHotKey(this.Handle, 2); } //[Flags] public enum ModiferKeys : uint нужен только когда вы используете две и более горячих клавиш. //Для хоткеея равным нажатием одной клавиши это можно не прописывать. [Flags] public enum ModiferKeys : uint { Alt = 1, Control = 2, Shift = 4, Win = 8 } }}
    1 балл
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.