View on GitHub

EntityToolsDocs

Документация к EntityTools

Инструменты картографирования (MappingTools)

Данный набор инструментов позволяет зафиксировать и сохранить в quester-профиле путь, по которому пользователь вручную в игре перемещает персонажа. В последствии при выполнении quester-профиля навигационная подсистема бота будет использовать данных путь для перемещения персонажа без участия пользователя.

Альтернативный способ задания путей - импортировать их из игры.

Пути задаются в виде множества путевых точек в трехмерном игровом пространстве (Waipoint), соединенных направленными ребрами (Edge), обозначающими допустимые направления перемещения персонажа между ними.
Такая структура называется граф или Meshes (меши) и обычно сохраняется в zip-архиве quester-профиля в файле с названием, совпадающим с идентификатором карты, и расширением bin.
Например, путевой граф карты “Драконий источник” хранится в файле:

Az_Tod.bin

Пути бывают двух видов:


Панель картографирования

Панель MappingTools

Режимы прокладывания пути (картографирования):

Bidirectional Mapping - прокладывания двунаправленного пути
После нажатия на кнопку будут добавляться новые путевые точки и соединяться двунаправленными ребрами с ближайшими соседними точками по одной на каждый из восьми секторов вокруг персонажа;

Перемещение по данному пути будет возможно в прямом и обратном направлении вдоль каждого ребра.

Unidirectional Mapping - прокладывания однонаправленного пути
После нажатия на кнопку будут добавляться путевые точки и соединяться однонаправленными ребрами с соседними точками. Перемещение по данному пути будет возможно только в направлении следования персонажа.

Stop - остановка картографирования.

Параметры связывания путевых точек:

Linear Path - параметр “Линейный путь”
Отключает поиск и связывания с соседними путевыми точками.
Если кнопка нажата, то при прокладывании пути новая путевая точка будет связываться только с последней добавленной точкой.

Force Linking - параметр “Принудительное связывание”.
По умолчанию при прокладывании пути ребрами связываются путевые точки расположенные в пределах WaypointDistance. Точки за пределами указанного расстояния не будут соединены с добавляемой. Если кнопка нажата, то при прокладывании пути новая путевая точка всегда соединяется с путевой точкой, которая была добавлена последней, независимо от расстояния до неё.

Панель дополнительных параметров

Нажатие на кнопку открывает панель:
MappingOptions

Waypoint Distance - расстояние (“шаг”) между путевыми точками. Точки, расстояние между которыми больше данной величины, не будут соединены. Оптимальное значение, установленное опытным путем, составляется 15 единиц.

Max Elevation Difference - максимальная допустимая разница высот между парой связываемых путевых точек. Точки, расстояние между которыми больше данной величины, не будут соединены.

Node Equivalence Distance - расстояние между путевыми точками, в пределах которого они считаются эквивалентны.
Иначе говоря, новая путевая точка не будет добавлена, если в пределах указанного расстояния от её предполагаемого местоположения есть другая точка. Путь будет проложен через существующую “эквивалентную” точку.
Значение не может превышать половины WaypointDistance.


Алгоритм картографирования

  1. В игре переместите персонажа в начальную точку пути.

  2. Активируйте нужный режим картографирования.
    Переключение между режимами возможно “на лету” без остановки, равно как изменение любых параметров связывания или дополнительных параметров.

  3. Установите нужные параметры картографирования.

  4. Перемещайте в игре персонажа по пути, который вы хотите зафиксировать в графе.
    После удаления персонажа от начальной или последней добавленной точки на расстояние WaypointDistance, Mapper:
    • добавит новую путевую точку, если рядом с персонажем нет точек, попадающих в радиус NodeEquivalenceDistance;
    • соединит новую (или эквивалентную ей) путевую точку с ближайшими соседними точками по одной на каждый из восьми секторов вокруг персонажа, если не был активирован параметр Linear Path;
    • если активирован параметр Force Linking, будет добавлена связь с ранее добавленной точкой.
  5. Отключите режим картографирования, нажав на кнопку Stop.

В режиме картографирования в окне Mapper’a вокруг персонажа, обозначенного стрелкой, отображается окружность, радиус которой соответствует NodeEquivalenceDistance.
Желтым ромбом обозначена последняя добавленная путевая точка, или эквивалентная ей. Желтыми точкам помечены ближайшие к персонажу путевые точки, помещенные в кэш для оптимизации алгоритма картографирования.

Настройки кэширования доступны на панели плагина в разделе Mapper.


Преимущества перед штатным Mapper’ом


Назад
Назад к описанию Mapper’a
Назад к содержанию