Регистрация Главная Пользователи Все разделы прочитаны
Сообщения за день Справка Регистрация
Навигация
Zhyk.org LIVE! Реклама на Zhyk.org Правила Форума Награды и достижения Доска "почета"

PW FrameWork 2.0 - новый взгляд на инструмент для ботостроения

-

Разработка ПО для Perfect World

- Бюро разработчиков Zhyk.Ru: создание ботов, снифферов и прочих программ для Perfect World

Ответ
 
Опции темы
Старый 27.09.2014, 18:49   #61
 Разведчик
Аватар для bestbeer
 
bestbeer никому не известный тип
Регистрация: 06.10.2013
Сообщений: 27
Популярность: 10
Сказал(а) спасибо: 24
Поблагодарили 12 раз(а) в 8 сообщениях
 
По умолчанию Re: PW FrameWork 2.0 - новый взгляд на инструмент для ботостроения

Пытаюсь юзать инжект скила исспользуя переписанный фрейм.

Delphi:
Код:
CallAddress:=Pointer($0047CBF0);
P1:=aPParams^.Param1;//DWord скил
Po1:=Pointer(P1);//pointer
 asm
 pushad

MOV ECX,DWORD PTR DS:[$0C9DFAC]
MOV EDX,DWORD PTR DS:[ECX+$1C]
MOV ESI,DWORD PTR DS:[EDX+$30]

push -1 // -1
push 0
push 0

mov ecx,Po1  // указатель на скил
push ecx

mov ecx,esi

CALL CallAddress

 popad
end;

Vb:
Код:
        Injector.Clear()

        Injector.Pushad()

        Injector.Mov_ECX_DWORD_Ptr(&HC9DFAC)
        Injector.Mov_EDX_DWORD_Ptr_ECX_Add(&H1C)
        Injector.Mov_ESI_DWORD_Ptr(&H1C + &H30)

        Injector.Push68(-1)
        Injector.Push6A(0)
        Injector.Push6A(0)

        Injector.Mov_ECX_DWORD_Ptr(113)

        Injector.Push_ECX()

        Injector.Mov_ECX_ESI()

        Injector.Call_DWORD_Ptr(&H47CBF0)

        Injector.Popad()
        Injector.Ret()

        Injector.RunAsm()
Дыбы выявить проблему тестил инжект на ассист - проблем нет. Инжект на скил крашит клиент, реализация в дельфи рабочая. Что может быть не так?
  Ответить с цитированием
Старый 27.09.2014, 21:47   #62
 Пехотинец
Аватар для Desmond Hume
 
Desmond Hume лучик света в грозовом небеDesmond Hume лучик света в грозовом небеDesmond Hume лучик света в грозовом небеDesmond Hume лучик света в грозовом небеDesmond Hume лучик света в грозовом небеDesmond Hume лучик света в грозовом небеDesmond Hume лучик света в грозовом небе
Регистрация: 13.08.2013
Сообщений: 68
Популярность: 829
Золото Zhyk.Ru: 100
Сказал(а) спасибо: 25
Поблагодарили 13 раз(а) в 6 сообщениях
 
По умолчанию Re: PW FrameWork 2.0 - новый взгляд на инструмент для ботостроения

Цитата:
Сообщение от bestbeerПосмотреть сообщение
Пытаюсь юзать инжект скила исспользуя переписанный фрейм.

Delphi:
Код:
CallAddress:=Pointer($0047CBF0);
P1:=aPParams^.Param1;//DWord скил
Po1:=Pointer(P1);//pointer
 asm
 pushad

MOV ECX,DWORD PTR DS:[$0C9DFAC]
MOV EDX,DWORD PTR DS:[ECX+$1C]
MOV ESI,DWORD PTR DS:[EDX+$30]

push -1 // -1
push 0
push 0

mov ecx,Po1  // указатель на скил
push ecx

mov ecx,esi

CALL CallAddress

 popad
end;

Vb:
Код:
        Injector.Clear()

        Injector.Pushad()

        Injector.Mov_ECX_DWORD_Ptr(&HC9DFAC)
        Injector.Mov_EDX_DWORD_Ptr_ECX_Add(&H1C)
        Injector.Mov_ESI_DWORD_Ptr(&H1C + &H30)

        Injector.Push68(-1)
        Injector.Push6A(0)
        Injector.Push6A(0)

        Injector.Mov_ECX_DWORD_Ptr(113)

        Injector.Push_ECX()

        Injector.Mov_ECX_ESI()

        Injector.Call_DWORD_Ptr(&H47CBF0)

        Injector.Popad()
        Injector.Ret()

        Injector.RunAsm()
Дыбы выявить проблему тестил инжект на ассист - проблем нет. Инжект на скил крашит клиент, реализация в дельфи рабочая. Что может быть не так?

Не юзал это фреймворк, но попробую тыкнуть пальцем в небо.
Код:
Injector.Mov_ESI_DWORD_Ptr(&H1C + &H30)
Код:
Injector.Mov_ESI_DWORD_Ptr_EDX_Add(&H30)
________________
[Ссылки могут видеть только зарегистрированные пользователи. ]
[Программа] PWLuaOOG 0.1b
  Ответить с цитированием
Старый 27.09.2014, 22:08   #63
 Разведчик
Аватар для bestbeer
 
bestbeer никому не известный тип
Регистрация: 06.10.2013
Сообщений: 27
Популярность: 10
Сказал(а) спасибо: 24
Поблагодарили 12 раз(а) в 8 сообщениях
 
По умолчанию Re: PW FrameWork 2.0 - новый взгляд на инструмент для ботостроения

Цитата:
Сообщение от Desmond HumeПосмотреть сообщение
Не юзал это фреймворк, но попробую тыкнуть пальцем в небо.
Код:
Injector.Mov_ESI_DWORD_Ptr_EDX_Add(&H30)

Такого в фрейме нет.
  Ответить с цитированием
Старый 28.09.2014, 00:06   #64
-= Мастер Света =-
 Рыцарь-лейтенант
Аватар для Smertig
 
Smertig сломал счётчик популярности :(Smertig сломал счётчик популярности :(Smertig сломал счётчик популярности :(Smertig сломал счётчик популярности :(Smertig сломал счётчик популярности :(Smertig сломал счётчик популярности :(Smertig сломал счётчик популярности :(Smertig сломал счётчик популярности :(Smertig сломал счётчик популярности :(Smertig сломал счётчик популярности :(Smertig сломал счётчик популярности :(
Регистрация: 31.01.2011
Сообщений: 413
Популярность: 14489
Золото Zhyk.Ru: 300
Сказал(а) спасибо: 77
Поблагодарили 361 раз(а) в 145 сообщениях
Отправить сообщение для Smertig с помощью ICQ Отправить сообщение для Smertig с помощью Skype™
 
По умолчанию Re: PW FrameWork 2.0 - новый взгляд на инструмент для ботостроения

Цитата:
Injector.Mov_ECX_DWORD_Ptr(113)

?!
Это что? Аналог строки:
Цитата:
mov ecx,Po1 // указатель на скил

?

Если там указатель, то 113 - явно не то значение. Если именно ID скилла, то ладно.

Код:
Injector.Push68(-1)
Injector.Push6A(0)
Injector.Push6A(0)

Injector.Mov_ECX_DWORD_Ptr(?!?!) // советую точно понять, что туда передаётся

Injector.Push_ECX()

Injector.Mov_ECX_DWORD_Ptr(&HC9DFAC)
Injector.Mov_ECX_DWORD_Ptr_ECX_Add(&H1C)
Injector.Mov_ECX_DWORD_Ptr_ECX_Add(&H30)

Injector.Mov_EAX_DWORD(&H47CBF0) // можно использовать вариант и как у вас, но я сомневаюсь, что инжектор просчитывает относительную адресацию в памяти
Injector.Call_EAX()
________________
Больше не занимаюсь читами, ушёл в серверную часть. Новый ник - int 3.
P.S. Но я всё такой же добрый модератор раздела PW.
  Ответить с цитированием
Пользователь сказал cпасибо:
bestbeer (29.09.2014)
Старый 28.09.2014, 02:57   #65
 Разведчик
Аватар для bestbeer
 
bestbeer никому не известный тип
Регистрация: 06.10.2013
Сообщений: 27
Популярность: 10
Сказал(а) спасибо: 24
Поблагодарили 12 раз(а) в 8 сообщениях
 
По умолчанию Re: PW FrameWork 2.0 - новый взгляд на инструмент для ботостроения

Цитата:
?!
Это что? Аналог строки:
mov ecx,Po1 // указатель на скил

Цитата:
Injector.Mov_ECX_DWORD_Ptr(113)

"B971000000" (строка из фрейма)

Также я не совсем понимаю как в клиенте генерируется такие байты "683CF9FF" , они всегда одинаковы и не меняются.

Код из олидебагера:
Код:
004E8F83  |.  E8 683CF9FF   CALL 0047CBF0                            ; \elementclient.0047CBF0
Тоже но из фрейма:
Injector.Call_Adr(&H47CBF0)

"E8F0CB4700"

Остальное сходится. (Pushad(), Injector.Popad(), Injector.Ret() я не сверял.)

Также я добавил в фрейм недостающую операцию"Mov_ESI_DWORD_Ptr_EDX_Add" думаю она необходима.

vb:
Код:
    Public Sub Mov_ESI_DWORD_Ptr_EDX_Add(addre As Integer)
        If (addre <= 127) AndAlso (addre >= -128) Then
            Me.Asmcode = Me.Asmcode & "8B72" & intTohex(addre, 2)
        Else
            Me.Asmcode = Me.Asmcode & "8BB2" & intTohex(addre, 8)
        End If
    End Sub

Последний раз редактировалось bestbeer; 28.09.2014 в 03:02.
  Ответить с цитированием
Старый 28.09.2014, 10:30   #66
-= Мастер Света =-
 Рыцарь-капитан
Аватар для krukovis
 
krukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нации
Регистрация: 07.10.2009
Сообщений: 496
Популярность: 2687
Сказал(а) спасибо: 64
Поблагодарили 324 раз(а) в 104 сообщениях
 
По умолчанию Re: PW FrameWork 2.0 - новый взгляд на инструмент для ботостроения

Основная цель класса ASM - генерировать опкод - массив байт, который потом инжектится. В Delphi класс ASM не нужен, т.к. там Делфи умеет воспрнимать Ассемблер и сам переводит его в опкод, который потом и инжектится. Этот опкод должен точно совпадать с функцией из клиента, меняться могут только параметры функции. Например номер скилла или координаты или еще что. Вы можете открыть OllyDbg и вписать туда функцию на Delphi - они пишутся на Ассемблере и их написать не сложно. Олька переведет эту функцию в опкод и вы сможете сравнить этот опкод с тем, что генерирует ваш класс ASM. Если все совпадает - значит функция написана правильно. Если не совпадает, значит у вас где то ошибка. И ее лекго можно обнаружить просто глазами.
________________
--------------------------------------------
PerfectAutoLogin v 7.4 - Совершенный автологин для Perfect World [RUOFF, PWI, Фришек 1.4.4 - 1.4.5]
--------------------------------------------
[for 1.4.6] PW Patcher 12.0 - Патч на Горны, Красный (да и любой) чат, Анфриз, Бесконечный зум, Моментальный разгон на полете для RUOFF, PWI и прочих 1.4.6 и фришек 1.4.4, 1.4.5.
--------------------------------------------
InGamePatcher 1.2 - патчер для серверов 1.4.5 и 1.4.4 работающий с включенной игрой.
--------------------------------------------
  Ответить с цитированием
Пользователь сказал cпасибо:
bestbeer (29.09.2014)
Старый 29.09.2014, 03:19   #67
 Разведчик
Аватар для bestbeer
 
bestbeer никому не известный тип
Регистрация: 06.10.2013
Сообщений: 27
Популярность: 10
Сказал(а) спасибо: 24
Поблагодарили 12 раз(а) в 8 сообщениях
 
По умолчанию Re: PW FrameWork 2.0 - новый взгляд на инструмент для ботостроения

Вобщем я сумел понять свои ошибки.(а может и не сумел и мне повезло.)

Вобщем нужно добавить в фрейм функцию "Mov_ESI_DWORD_Ptr_EDX_Add" и немного изменить сам инжект.

vb:
Код:
        Injector.Clear()

        Injector.Pushad()

        Injector.Mov_ECX_DWORD_Ptr(&HC9DFAC)

        Injector.Mov_EDX_DWORD_Ptr_ECX_Add(&H1C)

        Injector.Mov_ESI_DWORD_Ptr_EDX_Add(&H30)

        Injector.Push6A(&HFF) '-1

        Injector.Push6A(0)

        Injector.Push6A(0)

        Injector.Mov_ECX(113)

        Injector.Push_ECX()

        Injector.Mov_ECX_ESI()

        Injector.Mov_EDI(&H47CBF0)

        Injector.Call_EDI()

        Injector.Popad()
        Injector.Ret()

        Injector.RunAsm()
Вот так работает.
  Ответить с цитированием
Старый 09.01.2015, 13:27   #68
 Разведчик
Аватар для Hilling
 
Hilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личность
Регистрация: 05.09.2010
Сообщений: 32
Популярность: 1182
Сказал(а) спасибо: 38
Поблагодарили 12 раз(а) в 10 сообщениях
 
По умолчанию Re: PW FrameWork 2.0 - новый взгляд на инструмент для ботостроения

Подскажите пожалуйста как в АСМ классе значения с типом uint использовать? Там все MOV-функции в качестве параметров тип int принимают. А мне, например, надо wid моба затолкать, который в int не поместится. Я, конечно, поменял его на uint, но сдается мне это некорректно. Мне неизвестно как в этом случае следующие функции нужно поменять (и нужно ли вообще):

Код:
private string hex(int address)
        {
            string str = address.ToString("X");
            return str;
        }

        public string intTohex(int value, int num)
        {
            string str1 = null;
            string str2 = "";
            str1 = "0000000" + this.hex(value);
            str1 = str1.Substring(str1.Length - num, num);
            for (int i = 0; i <= str1.Length / 2 - 1; i++)
            {
                str2 = str2 + str1.Substring(str1.Length - 2 - 2 * i, 2);
            }
            return str2;
        }
Кто сталкивался - не оставайтесь безучастны
  Ответить с цитированием
Старый 09.01.2015, 16:24   #69
-= Мастер Света =-
 Рыцарь-лейтенант
Аватар для Smertig
 
Smertig сломал счётчик популярности :(Smertig сломал счётчик популярности :(Smertig сломал счётчик популярности :(Smertig сломал счётчик популярности :(Smertig сломал счётчик популярности :(Smertig сломал счётчик популярности :(Smertig сломал счётчик популярности :(Smertig сломал счётчик популярности :(Smertig сломал счётчик популярности :(Smertig сломал счётчик популярности :(Smertig сломал счётчик популярности :(
Регистрация: 31.01.2011
Сообщений: 413
Популярность: 14489
Золото Zhyk.Ru: 300
Сказал(а) спасибо: 77
Поблагодарили 361 раз(а) в 145 сообщениях
Отправить сообщение для Smertig с помощью ICQ Отправить сообщение для Smertig с помощью Skype™
 
По умолчанию Re: PW FrameWork 2.0 - новый взгляд на инструмент для ботостроения

Цитата:
Сообщение от HillingПосмотреть сообщение
Подскажите пожалуйста как в АСМ классе значения с типом uint использовать? Там все MOV-функции в качестве параметров тип int принимают.

Перевести это число в int (может стать отрицательным, ничего страшного) и послать в MOV. В памяти числа отличаются только размером (1, 2, 4 байта), но выглядят совершенно одинаково.
К примеру, 0xFFFFFFFF - это -1, если int, или 2^32-1, если uint. Но в памяти это один и тот же 0xFFFFFFFF
________________
Больше не занимаюсь читами, ушёл в серверную часть. Новый ник - int 3.
P.S. Но я всё такой же добрый модератор раздела PW.
  Ответить с цитированием
Пользователь сказал cпасибо:
Hilling (09.01.2015)
Старый 30.04.2016, 23:03   #70
 Разведчик
Аватар для Arsen0208
 
Arsen0208 никому не известный тип
Регистрация: 24.10.2011
Сообщений: 8
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 1 раз в 1 сообщении
 
По умолчанию Re: PW FrameWork 2.0 - новый взгляд на инструмент для ботостроения

Вопрос по поводу Packet. Если ввести правильный IDшник то все работает но у мобов (даже у мобов на одной поляне) разные IDшники. Не подскажете как прочитать именно имя моба?
  Ответить с цитированием
Старый 01.05.2016, 01:33   #71
 Разведчик
Аватар для Hilling
 
Hilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личность
Регистрация: 05.09.2010
Сообщений: 32
Популярность: 1182
Сказал(а) спасибо: 38
Поблагодарили 12 раз(а) в 10 сообщениях
 
По умолчанию Re: PW FrameWork 2.0 - новый взгляд на инструмент для ботостроения

Так же как и ID, только считываешь строку. Так же считываешь д оструктуры моба, только вместо смещения ID подставляешь смещение имени. Раньше было +288 +0. Проверяешь по имени нужный это тебе моб или нет. Если да, то считываешь у этого же моба WID и подставляешь в пакет.
  Ответить с цитированием
Старый 01.05.2016, 02:42   #72
 Разведчик
Аватар для Arsen0208
 
Arsen0208 никому не известный тип
Регистрация: 24.10.2011
Сообщений: 8
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 1 раз в 1 сообщении
 
По умолчанию Re: PW FrameWork 2.0 - новый взгляд на инструмент для ботостроения

Фигня в том что ID я получаю вот так:
Цитата:
return memory.ReadInt32(this.Structure + PWOffssAndAddrss.host_player_target_wid_offset);

Но не вкурсе существует ли оффсет Имени Таргета. Искать через СЕ тоже не варик я так понял.
Думал может сделать отдельный класс под монстра с его структурой и использовать его как и класс ХостПлэера но не понял что там со структурой Мобов.

P.S. ботовод-самоучка, могу нести бред не понимая этого.

Последний раз редактировалось Arsen0208; 01.05.2016 в 02:46.
  Ответить с цитированием
Старый 21.05.2016, 20:37   #73
 Пехотинец
Аватар для sabbaot01
 
sabbaot01 знает себе ценуsabbaot01 знает себе ценуsabbaot01 знает себе ценуsabbaot01 знает себе ценуsabbaot01 знает себе ценуsabbaot01 знает себе ценуsabbaot01 знает себе ценуsabbaot01 знает себе ценуsabbaot01 знает себе ценуsabbaot01 знает себе ценуsabbaot01 знает себе цену
Регистрация: 27.03.2012
Сообщений: 70
Популярность: 4766
Сказал(а) спасибо: 82
Поблагодарили 37 раз(а) в 20 сообщениях
Отправить сообщение для sabbaot01 с помощью Skype™
 
По умолчанию Re: PW FrameWork 2.0 - новый взгляд на инструмент для ботостроения

простите за нубский вопрос. это на каком языке? c++ или c#
не понимаю с чего начать, если ни разу не программер, но что-нибудь создать хочется, в виде джинокача или геобота
  Ответить с цитированием
Старый 22.05.2016, 09:14   #74
-= Мастер Света =-
 Рыцарь-капитан
Аватар для krukovis
 
krukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нации
Регистрация: 07.10.2009
Сообщений: 496
Популярность: 2687
Сказал(а) спасибо: 64
Поблагодарили 324 раз(а) в 104 сообщениях
 
По умолчанию Re: PW FrameWork 2.0 - новый взгляд на инструмент для ботостроения

Это на C#. Это утилита для среднего уровня программирования. Там возможно уже все устарело, т.к. писалось несколько лет назад. А может и нет. Я давно отошел от разработок под PW. Вообще удивлен, что это кому-то еще интересно. А не проще воспользоваться уже написанным готовым софтом. Ребята же постоянно что-то выкладывают. Были раньше и платные программы достаточно хорошего уровня.
________________
--------------------------------------------
PerfectAutoLogin v 7.4 - Совершенный автологин для Perfect World [RUOFF, PWI, Фришек 1.4.4 - 1.4.5]
--------------------------------------------
[for 1.4.6] PW Patcher 12.0 - Патч на Горны, Красный (да и любой) чат, Анфриз, Бесконечный зум, Моментальный разгон на полете для RUOFF, PWI и прочих 1.4.6 и фришек 1.4.4, 1.4.5.
--------------------------------------------
InGamePatcher 1.2 - патчер для серверов 1.4.5 и 1.4.4 работающий с включенной игрой.
--------------------------------------------
  Ответить с цитированием
Старый 22.05.2016, 12:54   #75
 Разведчик
Аватар для Hilling
 
Hilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личностьHilling определенно авторитетная личность
Регистрация: 05.09.2010
Сообщений: 32
Популярность: 1182
Сказал(а) спасибо: 38
Поблагодарили 12 раз(а) в 10 сообщениях
 
По умолчанию Re: PW FrameWork 2.0 - новый взгляд на инструмент для ботостроения

Фрейморк хороший, понравилась структура и вообще работа с ним в целом. За что огромное спасибо автору. Однако пришлось практически отказаться от работы с ним, так как запущенные программы, после пары часов работы, крашили клиент игры. Либо я рукожоп, либо с памятью что-то. Скорее первое. Как-то так.

В целом он не устарел, оффсеты/адреса поменять и вперед.

Последний раз редактировалось Hilling; 22.05.2016 в 13:57.
  Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Программа] Профессиональный инструмент помошника ANDREY.YAHIN Dark Orbit 17 03.04.2011 19:29
[Баг] Старые вещи (новый взгляд) 4epur Rising Force Online 9 23.03.2011 18:35
Новый взгляд на старый баг KeshSacura Баги и читы Lineage 2 6 10.08.2009 16:53

Заявление об ответственности / Список мошенников

Часовой пояс GMT +4, время: 22:20.

Пишите нам: [email protected]
Copyright © 2024 vBulletin Solutions, Inc.
Translate: zCarot. Webdesign by DevArt (Fox)
G-gaMe! Team production | Since 2008
Hosted by GShost.net