| Yoko http://forum.yoko.com.ua/ |
|
| Новая ходилка http://forum.yoko.com.ua/viewtopic.php?f=20&t=5049 |
Page 1 of 3 |
| Author: | SerrouS [ 2005-09-02 18:54:10 ] |
| Post subject: | Новая ходилка |
Я в поисках наиболее удачной версии ходилки. Ниже приведен код по реализации Ходилки с обходом препятствий по алгоритму "Надежная трассировка" с соединенем алгорима "Трассировка вокруг препятствия". Суть алгоритмов можно почерпнуть http://dev.dtf.ru/articles/read.php?id=46 внизу страницы. Для алгорима необходим Стек. Вот он Code: #(c)SerrouS Кто не знает что такое стек - ищет что-нить типа программирование для чайников и руками не лезет. Кто знает и хочет его использовать у себя - иметь в виду стек существо капризное. Кто не верит - Assembler опять же для чайников, ищем и смотрим, что если похерить стек - то всему кранты. Далее Code: SUB GoToXY(x,y,prec) Просьба протестировать, кому интересно. Если глюки будут - скидываем суда лог + пишем о поведении. Пробный пуск показал, что принципиальная схема работает. Точность - один тайл ( для непонявших поясняю - в проход шириной в один тайл при обходе чар не пройдет - делаем по старинке - прописываем ару лишних координат, чтоб чар пользовался дверью по порямому назначению а не как обходом) Выслушаю любые предложения по усовершенствованию и облагораживанию. Чей исходный был копирайт - незнаю, но уважаю (напишите чей, тока имейте в виду название не суть скрипта, просто может кто код узнает). |
|
| Author: | PCGamer [ 2005-09-02 19:07:59 ] |
| Post subject: | |
Афигительно в тему. Тока сегодня разочаровался в своей текущей ходилке и стал искать новую . Убёг тестить. |
|
| Author: | PCGamer [ 2005-09-03 15:25:41 ] |
| Post subject: | |
Тест-отчёт Ходилка тестилась на макросе майнинга и около дома. Что понравилось: +Обходит сложные препятствия +Находит выход из любых закоулков, откуда 3 мои предыдущие ходилки выбраться не могли. +Жмёт на кнопку, тока когда это необходимо, избегая такиим образом постоянных сообщений "step bufer overflow" и лагов. +Действует по более-менее Что можно улучшить 1) Сделать более быстрое хождение на прямых участках (когда нет препятствий). 2) Сделать её быстрее, с сохранением надежности. Интересно что думает автор по поводу этих улучшений. А так это именно та ходилка которую я искал. Спасибо. Если возникнут какие-нибудь сложности - напишу. |
|
| Author: | SerrouS [ 2005-09-03 15:58:49 ] |
| Post subject: | |
Quote: Жмёт на кнопку, тока когда это необходимо, избегая такиим образом постоянных сообщений "step bufer overflow" и лагов. просто стоит заранее бОльшая задержка. Это сделано по двум причинам: - проще тестить - если координата не успееет поменяться до проверки в скрипте, то будет начат обход несуществующего препятствия. Quote: Сделать более быстрое хождение на прямых участках (когда нет препятствий) принципиально - не сложно, к вечеру сделаю наверное.(Када скрипт на лумбер поправлю) А остальные ~25 прочитавших что-же ?[/quote] |
|
| Author: | MazaFaka [ 2005-09-04 12:42:51 ] |
| Post subject: | |
все хорошо! но ! если координаты цели постоянно меняются? и почему то у меня не работает*(((((((( Образование не позволяет) если не сложно то с параметрами задания координат цели! прлллз |
|
| Author: | SerrouS [ 2005-09-04 15:33:12 ] |
| Post subject: | |
MazaFaka wrote: если координаты цели постоянно меняются? и почему то у меня не работает*(((((((( Образование не позволяет)
если не сложно то с параметрами задания координат цели! прлллз чеегоо да кстати Code: var stepdelay = 1000 лучше поставить около 350. Ходит быстрее. А вообще подбираем под себя. (Потому как принципиальная схема убыстрения ходилки на прямых участках принципиально не сработает, из принципиальных соображений |
|
| Author: | Sfagnum [ 2005-09-04 16:05:16 ] |
| Post subject: | |
SerrouS wrote: Code: var stepdelay = 1000 |
|
| Author: | dUha [ 2005-09-08 11:53:14 ] |
| Post subject: | |
тестировал я тоже ходилку да довольно не плоха написона но вот цикл бывает сбиваетса тестировал я ее на своем скрипте на ламбер вокруг минок банка из 3 кругов 1 заглючил |
|
| Author: | Corwin [ 2005-09-08 14:37:01 ] |
| Post subject: | Re: Новая ходилка |
Возможно, ошибка связана с этим: SerrouS wrote: Code: dim deltax[7]; индекс - аналогично, значение - изменение координаты при проходе стенки Тут опечатка - размерность массива должна быть равна восьми. |
|
| Author: | SerrouS [ 2005-09-08 19:06:10 ] |
| Post subject: | |
Согласен, опечатался. Видимо сазавается привычка писать на Делфи В первом посте подправил. Спасибо |
|
| Author: | SerrouS [ 2005-09-09 09:11:51 ] |
| Post subject: | |
Для тех кто не вкурсе с чем ходилки едят. Имеется три входных папаметра x - целевая координата по оси Х (в заголовке Инжекта первая) y - целевая координата по оси Y (в заголовке Инжекта вторая) prec - точность подхода к координатам - если например в качестве координат указан тайл с сундуком, то туда вы просто не сможете придти следовательно ставя точность 1 вы подойдете к нему вплотную. Промер использования: Code: sub <subname>() другой пример Code: sub <subname>() Настойка Code: var stepdelay = 1000 это единственое что можо и нужно настраивать. Если чар ходит слишком медленно, с остановками - уменьшите число. Если быстро, в ошибками переполнения буфера и проскоком места назначения и поворотов, кароче если не работает - увеличить. При 1000 - должно работать везде.(ну наверно) Для меня наиболее удачной оказалась цифра 350. PS Написано по просьбам трудящихся. Если у трудящихся все еще остались вопросы как использовать данную функцию пусть пишут сюда же. |
|
| Author: | Jerry [ 2005-09-09 10:56:10 ] |
| Post subject: | |
Огрромное спасибо, действительно суперходилка, прям шедевр Правда тока что, когда из пещеры выходил, запутался чар, сначала оббежал всю пещеру по периметру, потом пробежал мимо точки, до которой должен идти и побежал дальше искать эту точку, я чувствую он бы далеко ушёл... |
|
| Author: | Askaneli [ 2005-09-12 11:08:58 ] |
| Post subject: | |
[quote="Sfagnum"][/quote] Тестал сам образец ? |
|
| Author: | Sfagnum [ 2005-09-12 11:37:04 ] |
| Post subject: | |
Askaneli wrote: Sfagnum wrote: Тестал сам образец ? от добра-добра не ищут |
|
| Author: | PCGamer [ 2005-09-16 14:00:27 ] |
| Post subject: | |
Выявлен баг: иногда начинает обходить несуществующие предметы и уходит в бесконечный цикл. Задержка 1000. Пинг до сервера меньше 10мс. Как пофиксить? |
|
| Author: | PCGamer [ 2005-09-16 14:44:39 ] |
| Post subject: | |
MazaFaka wrote: все хорошо! но !
если координаты цели постоянно меняются? и почему то у меня не работает*(((((((( Образование не позволяет) если не сложно то с параметрами задания координат цели! прлллз Передавай в скрипт ID цели, а X и Y получай внутри функции в первом repeat-until м помощью UO.GetX(target_id) и UO.GetY(target_id). |
|
| Author: | SerrouS [ 2005-09-16 19:00:40 ] |
| Post subject: | Re: Новая ходилка |
Quote: Выявлен баг: иногда начинает обходить несуществующие предметы и уходит в бесконечный цикл. Задержка 1000. Пинг до сервера меньше 10мс. Как пофиксить? SerrouS wrote: Если глюки будут - скидываем суда лог + пишем о поведении.
Я ж специально принты оставил. Ну или хотя бы скажи где место то (в координатах само собой,и куда-откуда идти) баговское ( я так надеюсь оно относится к разряду общих для всех шардов Фиксить все буду когда Цитадель откроют для иногородних. Счас у меня отдых и Горький Зеро Кстати там Корвин ошибочку выявил ты вкурсе (может привести к подобному, потому как любой баг может привести к чему угодно)?? |
|
| Author: | miha [ 2005-09-28 23:49:13 ] |
| Post subject: | Re: Новая ходилка |
SerrouS wrote: Quote: Выявлен баг: иногда начинает обходить несуществующие предметы и уходит в бесконечный цикл. Задержка 1000. Пинг до сервера меньше 10мс. Как пофиксить? SerrouS wrote: Если глюки будут - скидываем суда лог + пишем о поведении. Я ж специально принты оставил. Ну или хотя бы скажи где место то (в координатах само собой,и куда-откуда идти) баговское ( я так надеюсь оно относится к разряду общих для всех шардов Фиксить все буду когда Цитадель откроют для иногородних. Счас у меня отдых и Горький Зеро Кстати там Корвин ошибочку выявил ты вкурсе (может привести к подобному, потому как любой баг может привести к чему угодно)?? такая ситуация: иногда доходит до нужных координат и начинает обход, причем непонятно чего и на этом зацикливается |
|
| Author: | ForwarD [ 2005-10-01 06:35:27 ] |
| Post subject: | |
помогите михе сделайте чтобы не сбивалось +) |
|
| Author: | Destruction [ 2005-10-01 11:05:35 ] |
| Post subject: | |
Гмм, где-то я эту ссылочку на алгоритмы видел -) У меня ходилка лучше, хотя писал и не я Скажем так, если хочешь улучшить ходилку - юзай ASM, эффективность возрастет раза в два. Кроме того, при обходе препятствия, ты сразу выбираешь идти направо или налево, надо забить в переменную лимит, када чар разворачивается и дует обходить с другой стороны, чтобы не обходил остров, када достаточно сразу проти по мосту. |
|
| Page 1 of 3 | All times are UTC+02:00 |
| Powered by phpBB® Forum Software © phpBB Limited https://www.phpbb.com/ |
|