zachelovek - даю подсказку, держатели ботов рядом с тобой, но это точно не я....
по ссылке где якобы человек объясняет движение намерено (или случайно ?) не объявлена переменная $ta (_MemoryPointerWrite($APP_BASE_ADDRESS, $PROCESS_INFORMATION, $w2ofs, $ta) - так что код не работоспособный... долго ковырялся бился.. глюки с движением вплоть до вылета клиента - выкладываю переделанный (недоделаный) клиент MHS с хилом пета. Верность восстанавливаю водой раз в 4 минуты на кнопке AutoBaff - хилл на кнопке F3. Так как не реализовал движение к луту - бот в форме лисы работает...Получайте очередного мутанта...
Если не создавать таблиц (структур,массивов) как там их по граммотному назвать,
а использовать нижеприведенный прием чтения данных о Мобах имею в виду и в целом
в программе и главное в Цикле - пересчета мобов - то
скорость сканирования увеличивается в 10 раз -
я это не для афекту пишу - действительно проверил работу цикла
который ночью приводил с квадратными скобками .. и Этот - вообще Дым,
наверное это потому что компилятор не производит разбор на состовляющие и
машинный код получается компактнее или легче работающем .. проверьте
казалось бы вызовов функций больше, но работает почему быстрее ..
; Base + 8 + 36 + 24 + - Начало области данных Мобов; из записи => [BA] + 8 + 36 + 24 + (i * 4) + 4 + ... (где i от 0 до 768)
Global $MOB = _MemoryRead(_MemoryRead(_MemoryRead(_MemoryRead($B ASE,$PROCESS)+8,$PROCESS)+36,$PROCESS)+24,$PROCESS )
Global $mTP ; Тип (9 - питомец, 7 - NPS, 6 - моб)
Global $_mTP = 180 ;
$mTP = _MemoryRead(_MemoryRead(_MemoryRead($MOB+$I*4,$PRO CESS)+4,$PROCESS)+$_mTP,$PROCESS) ; Тип 0-го Моба (т.к. $I=0)
Global $mX ; - X
Global $_mX = 60 ;
$mX = Int(_MemoryRead(_MemoryRead(_MemoryRead($MOB+$I*4, $PROCESS)+4,$PROCESS)+$_mX,$PROCESS,"float")/10+401)
Global $mY ; - X
Global $_mY = 68 ;
$mY = Int(_MemoryRead(_MemoryRead(_MemoryRead($MOB+$I*4, $PROCESS)+4,$PROCESS)+$_mY,$PROCESS,"float")/10+551)
Global $mZ ; - X
Global $_mZ = 64 ;
$mZ = Int(_MemoryRead(_MemoryRead(_MemoryRead($MOB+$I*4, $PROCESS)+4,$PROCESS)+$_mZ,$PROCESS,"float")/10)
Global $mID ; - ID номер
Global $_mID = 284 ;
$mID = Hex(_MemoryRead(_MemoryRead(_MemoryRead($MOB+$I*4, $PROCESS)+4,$PROCESS)+$_mID,$PROCESS))
Global $mLEV ; - Уровень
Global $_mLEV = 292 ;
$mLEV = _MemoryRead(_MemoryRead(_MemoryRead($MOB+$I*4,$PRO CESS)+4,$PROCESS)+$_mLEV,$PROCESS)
Global $mF ; Занятость - если > 0 - Занят, если = 0 - Свободен
Global $_mF = 708 ;
$mF = _MemoryRead(_MemoryRead(_MemoryRead($MOB+$I*4,$PRO CESS)+4,$PROCESS)+$_mF,$PROCESS)
Global $mDIS ; Дисстанция до моба
Global $_mDIS = 608 ;
$mDIS = Int(_MemoryRead(_MemoryRead(_MemoryRead($MOB+$I*4, $PROCESS)+4,$PROCESS)+$_mDIS,$PROCESS,"float")/10)
это все в начале проги, а внутри например -
$mX = Int(_MemoryRead(_MemoryRead(_MemoryRead($MOB+$I*4, $PROCESS)+4,$PROCESS)+$_mX,$PROCESS,"float")/10+401)
все это массивы циклы классно, но до одного места если бот не умеет совершать банальных движений действий. Удар через скилл, движение через пинок под одно место, общение с нпс вобще какоето извращение.... Сижу полгода на форуме и нутром чуствую что есть тут люди которые знают но не договаривают... Честнее было бы брать деньги за знание чем смотреть как кучка людей заново колесо изобретают.....через 10 страниц думаю будет сделан зеворк номер 2 - только надо учесть что зеворк это творение вьетнамцев двухгодичной давности портированое к нам (более умных ботов ждать через два года?).Короче скучно....
Надоело уже читать одинаковые посты, что «в программировании ничего не понимаю», «функции непонятно как работают», «все написано… а мы велосипед изобретаем»… а что вы хотите? Получить разжеванный материал, который достаточно скомпилировать со своим интерфейсом? Сомневаюсь, что кто-нибудь соблаговолит выложить свой труд (о простых вещах речь и не идет), на который была потрачено не одна ночь.
Основ для исследования, размышления уже предостаточно, остается только приложить собственные усилия. Кто же вам мешает самостоятельно хоть что-то сделать, да хотя бы провести полный анализ всех структур, разобраться в работе программы? Конечно, это ведь долго, нудно, требует лишний раз мышку по столу повозить и выпить больше кофе ночью… «Мы хотим написать бот! Давайте сотрудничать!». И что? Выложил переработанную excel табличку от drShtain, с предложением полностью ее доработать, т.к. зная, что и где хранится, любой, для начала, сможет разобраться в нехитром методе передвижения чара (да и не только), но за прошедшие 20 страниц ничего не сдвинулось с места, лишь стали появляться вопросы «почему так [BA] + $1C + $08 + $24 + $14, а не так [BA] + $08 + $24 + $14». Как понимаю, под «совместным» ботом подразумевалось - «один пишет, остальные ждут результата»?
Я еще полгода назад сделал бота собирающего рес, опираясь на тот скудный материал, что был представлен на данном сайте. Естественно, никакие готовые, кем-то написанные функции, не были использованы, все – авторская работа. И при этом 90% действий бота были реализованы через «игру с подменой значений в памяти»… На данный же момент, информации стало гораздо больше… В китайских исходниках есть и инжект для перемещения, и каст спеллов и…
Т.ч., вместо засорения форума пустыми сообщениями и требованиями, хорошим вариантом была бы работа, а все запросы на какие-либо боты рассматриваются в другой ветке форума.
origmas
Клиент много чего сам делает… Для полного разбора сих вещей, надо сервер ставить и смотреть его структуру, тогда будет кристально ясно, где и какая информация обрабатывается.
та бросьте вы страдать...хай китайцы со своим инжектом балуются, а нам аутоит подсунули в виде MHS... я его подкрутил чуток и он мне бота в топы вывел (92 лвл взял) забанили правда 2 месяца назад....все норм... можно и с горбатым работать, а на мерсах хай китайцы ездят
Я тоже начал с MHS - месяц назад, теперь совсем другой уже бот, умный, расчетливый, с питомцем, не суетиться по поляне, быстро очень работает. От MHS остались ручки да ножки, MHS - это теперь у нас как Quake2 будет - началом-начал ..
Но одно хочу сказать - все-равно идея постановки целей в список так и останется за MHS. У меня сейчас этот фрагмент кода закоментирован - Бот сам определяет кого бить, только вот когда нужно по заданию убить например 20 волков каких-нить, всетаки придется список применять.
dwar +1, правильные слова. Полностью согласен. Сижу вторую ночь, ковыряю чат. Сделаю автоответчик на боте. Для всех выложил (давно) адресацию чата, а сам алгоритм работы останется только моим, потому что я убил на него свое время. Бига, назови того чела, который тебе всунул автоит. Ты так жалобно про него пишешь, что я готов чела на куски порвать. Не нравится - есть другие компиляторы - Си, Делфи, Бейсик, да мадо ли, хоть на ассемблере пиши.
Помощь в том и заключается, чтобы обьяснить что то, дать какие то направления. Что и было сделано многими людьми на этом форуме. Информации - море. Я сделал хождение персом - все работает именно так, как было описано. Хотя узнал об аутоите на этом форуме и до этого ни разу с ним не работал. Форум перелистывал раза три, прежде чем задать первый вопрос.
origmas, поставь кодировку в автовыбор, и будет тебе щастье.
«Мы хотим написать бот! Давайте сотрудничать!». И что? Выложил переработанную excel табличку от drShtain, с предложением полностью ее доработать, т.к. зная, что и где хранится, любой, для начала, сможет разобраться в нехитром методе передвижения чара (да и не только), но за прошедшие 20 страниц ничего не сдвинулось с места, лишь стали появляться вопросы «почему так [BA] + $1C + $08 + $24 + $14, а не так [BA] + $08 + $24 + $14». Как понимаю, под «совместным» ботом подразумевалось - «один пишет, остальные ждут результата»?
Я еще полгода назад сделал бота собирающего рес, опираясь на тот скудный материал, что был представлен на данном сайте.
Для полной картины, это предлагал я. И все это предложение раскритиковали.
Да, я очень медленно продвигаюсь, и порой пропускаю некоторые полезные посты.
Мне очень мешает отсутствие опыта. Не программирования вообще, а опыта в ковырянии чужих процессов.
Вообще в работе с ассемблером, ячейками, адресами, сдвигами, аутоитом и CE я НОВИЧОК. Я до этого писал на языках высокого уровня, C++ Delphi C#
Я до этой ветки аутоит в глаза не видел.
Пока читал форум, думал разберусь с ним.. так блин, каждый выкладывает нерабочие куски кода ведь! или у него что то объявлено, но он шапку пропускает. Пока догонишь что к чему, посинеешь. В итоге я понял, что на аутоит надо забить. просто брать общую картину из кусков кода, а делать все на дельфи и с нормальным инжектом. Вот кстати сейчас разбираюсь как искать адреса процедур для инжекта.
Про таблицу: Да, она навороченная. Да в ней много адресов. С небольшими подписками, что мол это-то, а это-это. Но не имея элементарного опыта разобраться в ней очень туго.
Нету нормальных примеров. Либо они просто огромны и в них тяжеловато разбираться.
Вот тут выше dokmlm предлагал процедуру движения.
ячейки памяти, ручник, пинок итд.
Quote:
Originally Posted by dokmlm View Post
Дальше снимаем с ручника, записываем координаты и летим в указанную точку.
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
Поднимаемся по Z:
Send("{SPACE DOWN}")
Sleep(2000)
Send("{SPACE UP}")
Сделал все как написано, перс не пытается даже чтолибо сделать-
даже на полет не залазит. Хотя посылаем {F6} все как положено. Все функции вернули неошибочное значение.
То что новички раздражают умудренных своими глупыми и по сто раз повторяющимися вопросами, это не есть плохо.
Плохо когда умудренные не хотят поделиться знаниями, а говорят что то типа "перечитай весь форум в потом погугли а потом еще че нибудь сделай и может быть найдешь что нибудь" , вместо того чтобы маленький примерчик показать, КАК пользоваться той информацией, что выложена кусочно то тут то там. Потому что эти куски порой не знаешь куда пришить, куда вставить.
Мне конечно не лестно, что я представляю не самых продвинутых формумчан в этой ветке, ну да ладно. Переживу как нибудь.
Лишь бы информацией делились, а не отсылали в гугл.
Не знаю, читаю все в ослике, навороченными браузерами не пользуюсь, стоит поддержка языков с иероглифами и автовыбор кодировки - весь форум читабельный. Еще обновлял SP3 - может, в нем дело? Хотя, навряд ли.