UoKit.com Форумы > Кликер > UO Pilot > UO Pilot в онлайн играх > UO Pilot в Ultima Online
dunkel
Подскажите по какому принципу ориентируется УО пилот в шахте? Можно ли как то заставить его ходить чётко по тайлам шахты не выходя за ее пределы и не пропуская их? Или каждый шаг надо в ручную прописывать? Заранее спасибо.
Вверх
DarkMaster
Тут есть несколько вариантов решения.
1) Бегать рандомом, детектить выход из шахты(ручками координаты ограничения для каждой шахты записать), если вышел - портуемся и по новой.
2) Четко задать ручками вейпоинты.
3) Написать логику по которой скрипт сам пройдет каждый тайл, запишет. Можно так же добавить запись с попытками копки, чтобы мертвые тайлы не тыкать.
По факту первый вариант вполне рабочий и показывал хорошие стабильные результаты, но по мне второй существенно интереснее.
Третий вариант конечно крут и все такое, но большой вопрос окупится ли потраченное на его написание время.
Вверх
dunkel
Вот третий вариант очень интересен. Я ещё давно слышал что как то на УО пилоте добивались того что скрипт на ламбер сам себе бегал и базу деревьев создавал. Только абсолютно не представляю как такое возможно. Так вот если он способен сам деревья найти, то с шахтами намного проще должно быть.

А ведь пилот может ещё ориентироваться по координатам глобальным ".where". Как бы теперь задать ему квадрат условный и чтобы он каждый тайл в этом заданном квадрате окапывал
Вверх
DarkMaster
там больше проблем с обходом препятствий. Ходить то не проблема:
Код
for x x_start x_end
    // соответствие направления стрелок не помню. дано для примера.
    for y y_start y_end
        send {right}
    end_for
    send {down}
end_for

Вот и беготня, при этом нужно еще протыкивать тайлы и смотреть, что упало в чат. Проблема только в том, что мы можем упереться в препятстиве и тут уже достаточно много проблем становится. Фактически тут нужно уже a-star алгоритм использовать для поиска пути. Причем изначально все тайлы необходимо считать проходимыми и по некоторому алгоритму, например, по спирали, идти и маркать непроходимые тайлы.
Вверх
dunkel
DarkMaster

УО пилот же отлично видит координаты чара можно же ему дать заданный квадрат (к примеру часть шахты где нету препятствий) и он в этом квадрате будет прокапывать каждый тайл. После завершения цикла он может перейти к другому такому условному квадрату в той же шахте.
Я вот только не знаю как заставить чара ходить в заданном квадрате ограниченным не координатами экрана а координатами GPS .where
Вверх
DarkMaster
Цитата
Я вот только не знаю как заставить чара ходить в заданном квадрате ограниченным не координатами экрана а координатами GPS .where

charposx
charposy
charposz
к вашим услугам. Зарезерированные переменные.
Вверх
dunkel
спасибо огромное, буду пробовать
Вверх
Invision Power Board © 2001-2024 Invision Power Services, Inc.
Version for Pocket PC © 2006-2024, IPBest Studio.