Регистрация Главная Сообщество
Сообщения за день Справка Регистрация

передвижение персонажа

-

Общение разработчиков

- Программирование для Perfect World, общение и обсуждене разработок

Ответ
 
Опции темы
Старый 05.08.2012, 21:32   #1
-= Мастер Света =-
 Рыцарь-капитан
Аватар для Ginrey
 
Ginrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака Норриса
Регистрация: 14.06.2012
Сообщений: 511
Популярность: 7566
Сказал(а) спасибо: 4
Поблагодарили 181 раз(а) в 88 сообщениях
 
По умолчанию передвижение персонажа

Подскажите, как реализовать перемещение персонажа из одной точки в другую. Или перелет из одной в другую
  Ответить с цитированием
Старый 05.08.2012, 23:23   #2
 Старший сержант
Аватар для sumikot
 
sumikot излучает ауруsumikot излучает ауруsumikot излучает ауруsumikot излучает ауруsumikot излучает ауруsumikot излучает ауру
Регистрация: 21.09.2009
Сообщений: 189
Популярность: 578
Сказал(а) спасибо: 27
Поблагодарили 144 раз(а) в 36 сообщениях
 
По умолчанию Re: передвижение персонажа

Хоть бы язык, на котором пишешь, подсказал. Вообще, принцип везде одинаков.

Инжектишь код пример тут
Адреса под руоф можно найти тут
Пиши, если не заработает, выкладывай свой код, поправим.

асм:
Код:
pushad
mov edx, BaseAdress
mov ecx, dword ptr [edx]
mov edx, dword ptr [ecx+0x1C]
mov esi, [edx+0x34]
mov ecx, dword ptr [esi+ActionArrOfs]
mov eax, dword ptr [esi+WalkMode]
push 0x01
mov edx, WalkCall1
call edx
mov edi, eax
push Param_add // адрес координат для движения
push fly// 0- пешком, 1- полет, вплавь
mov ecx, edi
mov edx, WalkCall2
call edx
push 0x00
push 0x01
push edi
push 0x01
mov ecx, dword ptr [esi+ActionArrOfs]
mov edx, WalkCall3
call edx
popad
ret
  Ответить с цитированием
2 пользователя(ей) сказали cпасибо:
pw.lancer (11.03.2013), читтерр (04.01.2013)
Старый 05.08.2012, 23:41   #3
-= Мастер Света =-
 Рыцарь-капитан
Аватар для Ginrey
 
Ginrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака Норриса
Регистрация: 14.06.2012
Сообщений: 511
Популярность: 7566
Сказал(а) спасибо: 4
Поблагодарили 181 раз(а) в 88 сообщениях
 
По умолчанию Re: передвижение персонажа

ой извиняюсь вылетело из головы, язык на котором работаю Delphi.
что то я не совсем понял как задать координаты полета

Последний раз редактировалось Ginrey; 05.08.2012 в 23:56.
  Ответить с цитированием
Старый 06.08.2012, 10:39   #4
 Старший сержант
Аватар для sumikot
 
sumikot излучает ауруsumikot излучает ауруsumikot излучает ауруsumikot излучает ауруsumikot излучает ауруsumikot излучает ауру
Регистрация: 21.09.2009
Сообщений: 189
Популярность: 578
Сказал(а) спасибо: 27
Поблагодарили 144 раз(а) в 36 сообщениях
 
По умолчанию Re: передвижение персонажа

Сохраняешь в выделенной памяти клиента три переменные флоат x.z.y подряд. На первую указываешь в Param_add
Ну раз на делфи, значит, примеры подходят. еще почитай [Ссылки могут видеть только зарегистрированные пользователи. ]. Когда то этот гайд пытались перевести на русский, поищи, если не понятно.

Последний раз редактировалось sumikot; 06.08.2012 в 10:47.
  Ответить с цитированием
Старый 06.08.2012, 21:56   #5
-= Мастер Света =-
 Рыцарь-капитан
Аватар для Ginrey
 
Ginrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака Норриса
Регистрация: 14.06.2012
Сообщений: 511
Популярность: 7566
Сказал(а) спасибо: 4
Поблагодарили 181 раз(а) в 88 сообщениях
 
По умолчанию Re: передвижение персонажа

все сделал. спасибо за помощь

Добавлено через 51 минуту
а как узнать собственные координаты? вот через смещения смотрю
ReadProcessMemory(hProcess,Ptr($A571E0),@buf,4,s);
ReadProcessMemory(hProcess,Ptr(buf+$1c),@buf,4,s);
ReadProcessMemory(hProcess,Ptr(buf+$34),@buf,4,s);
ReadProcessMemory(hProcess,Ptr(buf+$3c),@x,4,s);
ReadProcessMemory(hProcess,Ptr(buf+$44),@y,4,s);
и получаю 10-значные числа, как к нормальным привести

Последний раз редактировалось Ginrey; 06.08.2012 в 22:48. Причина: Добавлено сообщение
  Ответить с цитированием
Старый 07.08.2012, 00:57   #6
Бандеровец
 Лейтенант-командор
Аватар для VeTaL_UA
 
VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(
Регистрация: 12.08.2010
Сообщений: 727
Популярность: 30569
Золото Zhyk.Ru: 1
Сказал(а) спасибо: 57
Поблагодарили 645 раз(а) в 386 сообщениях
Отправить сообщение для VeTaL_UA с помощью ICQ Отправить сообщение для VeTaL_UA с помощью Skype™
 
По умолчанию Re: передвижение персонажа

во первых, координаты читать надо в single. во вторых, для получения координат, которые ты видишь в клиенте надо использовать формулы, внутриигровые координаты другие
________________
Принимаются пожертвования любых размеров в фонд поддержки начинающих программистов
Кошельки: WMZ - Z276844220882; WMR - R231028582939; WMU - U394136909210; ЯД - 410011494605270.

Perfect World: PWDatabaseScanner, Client, PWNickRenamer, PWClientRenamer, База логинов PW, Гайд по варУ, Зарабатываем репутацию.
Delphi: Авторизация на сайте с помощью Indy, Загрузка изображений с интернета в TImage с помощью Indy, Автоматическая смена стандартной версии Indy в Delphi на Indy 10.0.76 / 10.1.5, Основы парсинга с помощью Indy, Делаем Updater до программы с помощью Indy.
Other: ShowIP, FFUUU смайлы в QIP, Как играть в Minecraft (видеокурс), Как мы захватили человечество :D, Энергия в Лицемер/TopFace, PasGen.


  Ответить с цитированием
Старый 07.08.2012, 03:09   #7
 Старший сержант
Аватар для sumikot
 
sumikot излучает ауруsumikot излучает ауруsumikot излучает ауруsumikot излучает ауруsumikot излучает ауруsumikot излучает ауру
Регистрация: 21.09.2009
Сообщений: 189
Популярность: 578
Сказал(а) спасибо: 27
Поблагодарили 144 раз(а) в 36 сообщениях
 
По умолчанию Re: передвижение персонажа

X / 10 + 400
Y / 10 + 550
Z / 10
Это будут координаты, которые клиент показывает пользователю.

Меня вот другое интересует - как кто делает остановку при движении? Ну то есть когда задано движение в какую нибудь точку и нужно быстро остановиться? Я использую инжект движения по текущим координатам. Выглядит некрасиво - от чтения до выполнения функкции проходит время. Хоть его и мало, но сколько-то микросекунд все равно есть. Поэтому перс останавливается вперед спиной.
  Ответить с цитированием
Старый 07.08.2012, 12:28   #8
-= Мастер Света =-
 Рыцарь-капитан
Аватар для Ginrey
 
Ginrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака Норриса
Регистрация: 14.06.2012
Сообщений: 511
Популярность: 7566
Сказал(а) спасибо: 4
Поблагодарили 181 раз(а) в 88 сообщениях
 
По умолчанию Re: передвижение персонажа

Цитата:
Сообщение от sumikotПосмотреть сообщение
Меня вот другое интересует - как кто делает остановку при движении? Ну то есть когда задано движение в какую нибудь точку и нужно быстро остановиться? Я использую инжект движения по текущим координатам. Выглядит некрасиво - от чтения до выполнения функкции проходит время. Хоть его и мало, но сколько-то микросекунд все равно есть. Поэтому перс останавливается вперед спиной.

точно так же делаю, будет интересно услышать ответ
  Ответить с цитированием
Старый 07.08.2012, 12:39   #9
-= Мастер Света =-
 Рыцарь-капитан
Аватар для krukovis
 
krukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нации
Регистрация: 07.10.2009
Сообщений: 496
Популярность: 2687
Сказал(а) спасибо: 64
Поблагодарили 325 раз(а) в 105 сообщениях
 
По умолчанию Re: передвижение персонажа

Цитата:
Сообщение от sumikotПосмотреть сообщение
Меня вот другое интересует - как кто делает остановку при движении?

Конкретного решения нет. И компьютера с игрой под рукой тоже. Есть идея . Попробуйте отловить пакет на остановку с помощью PacketListener'а - во время полета нажмите клавишу Esc.
________________
--------------------------------------------
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 работающий с включенной игрой.
--------------------------------------------
  Ответить с цитированием
Старый 07.08.2012, 13:57   #10
-= Мастер Света =-
 Рыцарь-капитан
Аватар для Ginrey
 
Ginrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака НоррисаGinrey троюродный дядя Чака Норриса
Регистрация: 14.06.2012
Сообщений: 511
Популярность: 7566
Сказал(а) спасибо: 4
Поблагодарили 181 раз(а) в 88 сообщениях
 
По умолчанию Re: передвижение персонажа

Цитата:
Сообщение от krukovisПосмотреть сообщение
Конкретного решения нет. И компьютера с игрой под рукой тоже. Есть идея . Попробуйте отловить пакет на остановку с помощью PacketListener'а - во время полета нажмите клавишу Esc.
______________

проверил. Идея провалилась на каждых новых координатах новый пакет вот смотри летел по прямой 2 раза. и 2 раза отловил пакет.
1) 07 00 3C 8A 2E C5 D2 7B BE 43 69 19 41 45 4D 08 00 61 2A 00 22 01
2) 07 00 25 21 2D C5 D2 7B BE 43 31 3D 41 45 4D 08 81 61 3F 00 B1 00
  Ответить с цитированием
Старый 07.08.2012, 14:19   #11
 Старший сержант
Аватар для sumikot
 
sumikot излучает ауруsumikot излучает ауруsumikot излучает ауруsumikot излучает ауруsumikot излучает ауруsumikot излучает ауру
Регистрация: 21.09.2009
Сообщений: 189
Популярность: 578
Сказал(а) спасибо: 27
Поблагодарили 144 раз(а) в 36 сообщениях
 
По умолчанию Re: передвижение персонажа

Цитата:
Сообщение от GinreyПосмотреть сообщение
проверил. Идея провалилась на каждых новых координатах новый пакет вот смотри летел по прямой 2 раза. и 2 раза отловил пакет.
1) 07 00 3C 8A 2E C5 D2 7B BE 43 69 19 41 45 4D 08 00 61 2A 00 22 01
2) 07 00 25 21 2D C5 D2 7B BE 43 31 3D 41 45 4D 08 81 61 3F 00 B1 00

Естественно, он будет разный - координаты же разные были, скорость, номер пакета
0700 25212DC5 D27BBE43 313D4145 4D08 81 61 3F00 B100
ID X Z Y Speed Direction Mode Seq TimeDelta
Поэтому нужен более простой вариант. Может быть, лежит на поверхности, только пока не вижу.

Последний раз редактировалось sumikot; 07.08.2012 в 14:22.
  Ответить с цитированием
Старый 07.08.2012, 16:22   #12
-= Мастер Света =-
 Рыцарь-капитан
Аватар для krukovis
 
krukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нации
Регистрация: 07.10.2009
Сообщений: 496
Популярность: 2687
Сказал(а) спасибо: 64
Поблагодарили 325 раз(а) в 105 сообщениях
 
По умолчанию Re: передвижение персонажа

Цитата:
Сообщение от sumikotПосмотреть сообщение
Поэтому нужен более простой вариант. Может быть, лежит на поверхности, только пока не вижу.

Отправлять нажатие клавиши Esc в размороженое окно .
________________
--------------------------------------------
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 работающий с включенной игрой.
--------------------------------------------
  Ответить с цитированием
Старый 07.08.2012, 18:33   #13
-= Мастер Света =-
 Капитан
Аватар для FreePVP)))
 
FreePVP))) трижды герой Советского СоюзаFreePVP))) трижды герой Советского СоюзаFreePVP))) трижды герой Советского СоюзаFreePVP))) трижды герой Советского СоюзаFreePVP))) трижды герой Советского СоюзаFreePVP))) трижды герой Советского СоюзаFreePVP))) трижды герой Советского СоюзаFreePVP))) трижды герой Советского СоюзаFreePVP))) трижды герой Советского СоюзаFreePVP))) трижды герой Советского СоюзаFreePVP))) трижды герой Советского Союза
Регистрация: 24.09.2010
Сообщений: 262
Популярность: 6723
Сказал(а) спасибо: 118
Поблагодарили 346 раз(а) в 104 сообщениях
Отправить сообщение для FreePVP))) с помощью ICQ Отправить сообщение для FreePVP))) с помощью Skype™
 
По умолчанию Re: передвижение персонажа

А не проще ли изменить конечную точку?
________________
TwinkDB - твинки любого игрока, их дата создания, последний онлайн, статус удаления и прочее
Skype - freepvps
ICQ - 412705115


[Ссылки могут видеть только зарегистрированные пользователи. ] - ставкобот
[Ссылки могут видеть только зарегистрированные пользователи. ] - общение в КЧ через смартфон
  Ответить с цитированием
Старый 07.08.2012, 21:12   #14
-= Мастер Света =-
 Рыцарь-капитан
Аватар для krukovis
 
krukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нацииkrukovis гордость нации
Регистрация: 07.10.2009
Сообщений: 496
Популярность: 2687
Сказал(а) спасибо: 64
Поблагодарили 325 раз(а) в 105 сообщениях
 
По умолчанию Re: передвижение персонажа

Цитата:
Сообщение от FreePVP)))Посмотреть сообщение
А не проще ли изменить конечную точку?

Проблема вот в чем:
Цитата:
Сообщение от sumikotПосмотреть сообщение
Я использую инжект движения по текущим координатам. Выглядит некрасиво - от чтения до выполнения функкции проходит время. Хоть его и мало, но сколько-то микросекунд все равно есть. Поэтому перс останавливается вперед спиной.


А в общем случае можно попробовать найти инжект функции остановки. Раньше была функция "ручник", возможно она это делала. Я точно не знаю, т.к. не пользовался ей никогда.
________________
--------------------------------------------
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 работающий с включенной игрой.
--------------------------------------------
  Ответить с цитированием
Старый 07.08.2012, 21:31   #15
 Старший сержант
Аватар для sumikot
 
sumikot излучает ауруsumikot излучает ауруsumikot излучает ауруsumikot излучает ауруsumikot излучает ауруsumikot излучает ауру
Регистрация: 21.09.2009
Сообщений: 189
Популярность: 578
Сказал(а) спасибо: 27
Поблагодарили 144 раз(а) в 36 сообщениях
 
По умолчанию Re: передвижение персонажа

Цитата:
Сообщение от krukovisПосмотреть сообщение
Отправлять нажатие клавиши Esc в размороженое окно

Ну это слишком просто. И опять к нажатиям переходить? Я от них уже ушел

Цитата:
Сообщение от FreePVP)))Посмотреть сообщение
А не проще ли изменить конечную точку?

В принципе это и делается. Почти. Просто в связи с тем, что между считыванием координат и их записью проходит время, перс останавливается, но разворачивается на 180. А давать точку немного впереди можно, но не хочется заморачиваться с расчетом. Я просто делал как то расчет для геобота с подьемом и спуском под 45 градусов, больше желания нет.

Цитата:
Сообщение от krukovisПосмотреть сообщение
А в общем случае можно попробовать найти инжект функции остановки. Раньше была функция "ручник", возможно она это делала. Я точно не знаю, т.к. не пользовался ей никогда.

Тоже не хочу. Гораздо больше адресов. Труднее будет обновлять. Да и заморочек больше. У меня в самом первом боте использовался массив Action, в том числе и ручник. На мой взгляд - гемор.
  Ответить с цитированием
Ответ


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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Помогите!] Передвижение камеры pia3333(4) Общение разработчиков 28 29.07.2012 22:51
[Помогите!] передвижение по координатам Meg(0) Общение разработчиков 4 24.05.2012 15:22
[Помогите!] Передвижение вещей с Чара dar0k Общение и обсуждение, архив Lineage 2 2 21.01.2012 09:50
Передвижение ассассинов *ZLOY* Баги и читы для Aion 1 15.10.2010 05:48

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

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

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