Register for your free account! | Forgot your password?

Go Back   elitepvpers > MMORPGs > Perfect World
You last visited: Today at 18:09

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Rus. server

Discussion on Rus. server within the Perfect World forum part of the MMORPGs category.

Reply
 
Old 11/18/2009, 15:51   #631
 
elite*gold: 0
Join Date: Nov 2009
Posts: 11
Received Thanks: 2
Верно, заморочка с float, только сегодня добился нормального полета по точкам. По началу как раз затупил со значениями и получал полет в координаты 440,550,0. Потом для теста вывел чистые координаты (без пересчета по формуле) и записал по адресам:

20+C10+30+04+20 write x
20+C10+30+04+28 write y
20+C10+30+04+24 write z

примерно так:
Quote:
_MemoryPointerWrite($APP_BASE_ADDRESS, $PROCESS_INFORMATION, $OFFSET_MOVETOX, -322.543792724609, "float")
_MemoryPointerWrite($APP_BASE_ADDRESS, $PROCESS_INFORMATION, $OFFSET_MOVETOY, -379.948486328125, "float")
_MemoryPointerWrite($APP_BASE_ADDRESS, $PROCESS_INFORMATION, $OFFSET_MOVETOZ, 463.389099121094, "float")
И все встало на свои места.
dokmlm is offline  
Old 11/19/2009, 01:34   #632
 
sumikot's Avatar
 
elite*gold: 0
Join Date: Aug 2009
Posts: 70
Received Thanks: 18
Нашел зум - но только странно как то получилось - отдалять камеру от перса могу хоть за облака, а вот приближение - осталась та же граница. Существует еще одна ячейка памяти на приближение или больше с ним ничего не сделаешь?
sumikot is offline  
Old 11/19/2009, 09:26   #633
 
elite*gold: 0
Join Date: Aug 2009
Posts: 9
Received Thanks: 0
Это ппц, товарищи! Полгода назад я активно следил за интернет ресурсами, в которых обсуждались умные боты. Потом стало вообще не до игры, недавно вернулся в игру, с Таразеда на Пегас пересел. Решил поставить старого доброго MHS и что же? на стартовых локациях все места фарма просто заполонены этими умными ботами!!!!!!! >_< Своего даже приткнуть некуда>_<. Их там просто десятки! Я лично такого никогда не видел.
И что самое интересное, на всех инет ресурсах никто ничего не знает о этих ботах(
ФАААААААААК!!!!!!!! Да где они их берут!!!!!!!!!!! >_<?????????????
zachelovek is offline  
Old 11/19/2009, 10:20   #634
 
begemot's Avatar
 
elite*gold: 0
Join Date: Mar 2009
Posts: 25
Received Thanks: 6
Потестил видеохак =) Отличная штука, теперь меньше лагов при разворачивании окна. Работает. Процессор, правда, нагружает в разы сильнее =) И памяти вроде больше выделяется (хз, тк у меня файл подкачки 16гб))
begemot is offline  
Old 11/19/2009, 10:20   #635
 
sumikot's Avatar
 
elite*gold: 0
Join Date: Aug 2009
Posts: 70
Received Thanks: 18
Что то мне надоело бота развивать. Предлагаю проект - антибот. Полет по точкам реализован - ставим бота - летает по карте и собирает информацию о других ботах - отличительные признаки тоже есть. Автоматом сливает информацию в суппорт нивала + к ним же на форум - это тоже сделать нетрудно. Локации освобождаются - ставим своих ботов. Главное - не слить своих!
sumikot is offline  
Old 11/19/2009, 12:59   #636
 
elite*gold: 0
Join Date: Nov 2009
Posts: 69
Received Thanks: 5
Novohyd is offline  
Old 11/19/2009, 13:02   #637
 
elite*gold: 0
Join Date: Nov 2009
Posts: 69
Received Thanks: 5

Кстати, про облет. Кто-нибудь пробовал без мауса активировать диалог с НПС?
Novohyd is offline  
Old 11/19/2009, 13:24   #638
 
elite*gold: 0
Join Date: Oct 2009
Posts: 18
Received Thanks: 0
Quote:
Вообще то я считал, что i при респе моба даже в одной локации может быть разным - все зависит от выделения памяти клиентом для конкретно этого куска данных - поэтому таргет моба веду несколько иначе - произвожу перебор всех мобов с проверкой на дистанцию, тип и занятость. Т. е. Если тип 6 и не занято, сравнение дистанции - если меньше предидущего - сохраняем ID для возможного таргета. Следующий то же самое... И так все мобы. А если ты сначала прицеливаешься, то перебор ведешь, сравнивая ID с тем, что в цели. А чтобы бот не тупил, стоя на месте и считывая данные для сравнения, делаешь это, допустим, когда он бежит за лутом - все равно это время делать нечего... Ну почти нечего... А с i работаю только при одной жизни одного конкретного моба. Моб умер - i бесполезно, так как оно при респе может быть таким же, а может и измениться. Специально не сравнивал - для этого нужно вести статистику, а мне что то лень.
Спасибо за ответ, но к сожалению так и понял основного что хотел узнать
За основу я взял уже готового бота MHS и просто занимаюсь его доработкой, а этот бот, как ты знаешь, не сканируе всех мобов вокруг, а ведёт перебор исходя из задоного списка. Мне кажеться так даже быстрее получаеться, хоть иногда тупит с дистанцией, и движется не к самому близкому мобу.
Так вот, в при выборе моба не идёт проверка на занятось, а у меня никак не получаеться "вытянуть" достоверную инфу про занятость, потому как ты правильно заметил, значение "і" меняеться и результат соответствующий
Если не тяжело напиши как ты проверяешь "занятость" моба в момент их перебора.
Плиз
vies1812 is offline  
Old 11/19/2009, 14:22   #639
 
elite*gold: 0
Join Date: Apr 2009
Posts: 237
Received Thanks: 403
Quote:
Originally Posted by Novohyd View Post
Кстати, про облет. Кто-нибудь пробовал без мауса активировать диалог с НПС?
Это спокойно делается через инжект кода. Так же можно, после долгих плясок, активировать разговор посредством замены определенных значений в определенных адресах памяти. Но последний вариант уж больно не продуктивен, ибо получилось лишь начать диалог, а продолжить – нет.
dwar is offline  
Thanks
1 User
Old 11/19/2009, 16:46   #640
 
sumikot's Avatar
 
elite*gold: 0
Join Date: Aug 2009
Posts: 70
Received Thanks: 18
vies1812 Я бы написал, но получается, что так будет еще запутаннее - я не пользуюсь меморипоинтреад, как в мхс, и посему мне прийдется коментировать каждую свою переменную. Просто исходи из того, что у тебя в массиве 768 мест для хранения характеристик мобов. Ты считываешь ячейку ИД с каждого места, и если она равна значению в цели - это как раз и есть искомый моб. Следующим действием считываешь ячейку с этого места, в котором хранится занятость моба (его таргет), да и другие интересующие характеристики тоже - допустим, можешь координаты посмотреть и подойти ближе - но это уже усовершенствования. А цикл можешь сделать любой - у меня do-until. В каждом круге цикла прибавляешь i на 1 (инкрементируешь) и считываешь, потом сравниваешь.
sumikot is offline  
Old 11/19/2009, 17:04   #641
 
elite*gold: 0
Join Date: Nov 2009
Posts: 11
Received Thanks: 2
Кстати о перелете по точкам, все можно сделать гораздо проще и при этом не ловить глюков с анимацией по достижении нужных координат и при ручном изменении маршрута:

Взлетаем:
ControlSend($APP_TITLE, "", "", "{F6}", 0)

Поднимаемся по Z:
Send("{SPACE DOWN}")
Sleep(2000)
Send("{SPACE UP}")

Дальше снимаем с ручника, записываем координаты и летим в указанную точку.
1. Write int 0 to done flag: [[[[[base] + 0x20] + 0xc10] + 0x30] + 0x4] + 0x8
2. Write float value 1 to X: [[[[[base] + 0x20] + 0xc10] + 0x30] + 0x4] + 0x20
3. Write float value 2 to Y: [[[[[base] + 0x20] + 0xc10] + 0x30] + 0x4] + 0x28
4. Write float value 3 to Z: [[[[[base] + 0x20] + 0xc10] + 0x30] + 0x4] + 0x24
5. Write int 0 to type: [[[[[base] + 0x20] + 0xc10] + 0x30] + 0x4] + 0x2c

Вопрос по автосбору ресов, нашел тут концепцию:

Quote:
2) walk to and forage mines/ressources/herbs:
[[[[[[Base Adress]+0x20]+0xBFC]0x30]+0x8]+0x20] (kind of "move to" id offset)
- freeze that to ur ressource ID (can be found here: [[[[[[[Base Adress]+0x8]+0x28]0x18]+i*0x4]0x4]0x10C])
- insert random (but valid) mop-id here [[Base Adress]+0x20]+0xA54
- do normal attack
--> char will go to mine/herb and forage it automatically
Но что-то сомнительный способ, отлавливать моменты когда рес на пути к каком либо мобу, ловить этого моба в таргет, посылать нормальную атаку, подменять ид моба на ид реса и только после этого, чар должен по пути к атакуемому мобу собрать рес.

Жесть вобщем то, пните в нужную сторону кто уже сделал автосбор, благодарность моя не будет иметь границ
dokmlm is offline  
Old 11/19/2009, 17:30   #642
 
elite*gold: 0
Join Date: Nov 2009
Posts: 96
Received Thanks: 31
Привет .. кто-то может подсказать - по координатам Бота что-то никак не вкурю ..

Global $OFS_X[3]
$OFS_X[1] = 0x20
$OFS_X[2] = 0x3C

$X = _MemoryPointerRead($BASE, $PROCESS, $OFS_X)
$LAB_X = GUICtrlCreateLabel("X = " & $X[1], 15, 605, 100, 20)

==>> получаю координату - например такого вида Х = 3302035011

заркнее благодарен ..
origmas is offline  
Old 11/19/2009, 17:41   #643
 
elite*gold: 0
Join Date: Nov 2009
Posts: 11
Received Thanks: 2
Quote:
Originally Posted by origmas View Post
Привет .. кто-то может подсказать - по координатам Бота что-то никак не вкурю ..

Global $OFS_X[3]
$OFS_X[1] = 0x20
$OFS_X[2] = 0x3C

$X = _MemoryPointerRead($BASE, $PROCESS, $OFS_X)
$LAB_X = GUICtrlCreateLabel("X = " & $X[1], 15, 605, 100, 20)

==>> получаю координату - например такого вида Х = 3302035011

заркнее благодарен ..
Вот так будет правильно:

Global $OFS_X[3]
$OFS_X[1] = 0x20
$OFS_X[2] = 0x3C

$X = _MemoryPointerRead($BASE, $PROCESS, $OFS_X, "float")
$X = 400 + $OFS_X[1] / 10

$LAB_X = GUICtrlCreateLabel("X = " & Int($X), 15, 605, 100, 20)

Формулы пересчета координат в нормальный вид:
$X = 400 + $OFS_X[1] / 10
$Y = 550 + $OFS_Y[1] / 10
$Z = $OFS_Z[1] / 10

Это все уже тут было.
dokmlm is offline  
Thanks
1 User
Old 11/19/2009, 17:45   #644
 
elite*gold: 0
Join Date: Apr 2009
Posts: 237
Received Thanks: 403
dokmlm
Quote:
Но что-то сомнительный способ, отлавливать моменты когда рес на пути к каком либо мобу, ловить этого моба в таргет, посылать нормальную атаку, подменять ид моба на ид реса и только после этого, чар должен по пути к атакуемому мобу собрать рес.
Жесть вобщем то, пните в нужную сторону кто уже сделал автосбор, благодарность моя не будет иметь границ
Указанный способ жонглирования значениями ячеек памяти, одно туда, запустить атаку, записать еще куда-нибудь – работает, но есть алгоритмы быстрее и надежнее. Смотреть стоит в область массива «действий», где записаны указатели всех основных операций чара… А имея эти указатели, легко заставить чара выполнять требуемое… и не только собирать рес.
P.S. Товарищи, обращаю внимание, что много полезной информации находится в PW_Mem_Table v2.xls: и нужные смещения, и массивы с указателями, и т.п.
dwar is offline  
Old 11/19/2009, 17:49   #645
 
elite*gold: 0
Join Date: Nov 2009
Posts: 11
Received Thanks: 2
Quote:
Originally Posted by dwar View Post
dokmlm
Указанный способ жонглирования значениями ячеек памяти, одно туда, запустить атаку, записать еще куда-нибудь – работает, но есть алгоритмы быстрее и надежнее. Смотреть стоит в область массива «действий», где записаны указатели всех основных операций чара… А имея эти указатели, легко заставить чара выполнять требуемое… и не только собирать рес.
P.S. Товарищи, обращаю внимание, что много полезной информации находится в PW_Mem_Table v2.xls: и нужные смещения, и массивы с указателями, и т.п.
Спасибо за пинок, но я как жопой почуял что нужно заглянуть в эту табличку, заглянул и сам пришел к подобному выводу. Уже занялся копанием.
dokmlm is offline  
Reply




All times are GMT +1. The time now is 18:09.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.