телепортация от моба, когда он уже близко? [да! в snv-6214]
Модератор: 4epT
Правила форума
Все вопросы по OK не касающиеся плагинов и макросов публикуются в этом разделе.
Перед тем как что то писать, пожалуйста, удостоверьтесь что данная тема не поднималась, вы полностью изучили мануалы по конфигурационным файлам бота и не нашли там решения.
Все вопросы по OK не касающиеся плагинов и макросов публикуются в этом разделе.
Перед тем как что то писать, пожалуйста, удостоверьтесь что данная тема не поднималась, вы полностью изучили мануалы по конфигурационным файлам бота и не нашли там решения.
телепортация от моба, когда он уже близко? [да! в snv-6214]
Было: возможна ли через mon_control телепортация,когда моб близко?
Вопрос в Kore можно оcуществить следущее:
если расстояние между Ботом и мобом, описаным в mon_control.txt, превышает допустим 3 клетки (тоесть 2 клетки расстояния). Бот в ЭТОМ и ТОЛЬКО в этом случае портовался вингами или крими. Тоесть не по причине появления на "экране", а по причине придлижения к боту.
Можно ли это осуществить, и что для этого требуется (команда, макрос, плагин) ?
[mod="piroJOKE"]изменил заголовок[/mod]
Вопрос в Kore можно оcуществить следущее:
если расстояние между Ботом и мобом, описаным в mon_control.txt, превышает допустим 3 клетки (тоесть 2 клетки расстояния). Бот в ЭТОМ и ТОЛЬКО в этом случае портовался вингами или крими. Тоесть не по причине появления на "экране", а по причине придлижения к боту.
Можно ли это осуществить, и что для этого требуется (команда, макрос, плагин) ?
[mod="piroJOKE"]изменил заголовок[/mod]
- piroJOKE
- Модератор
- Сообщения: 8205
- Зарегистрирован: Сб ноя 04, 2006 2:20 am
- Сервер RO:: localhost
- Откуда: Molvania
Знаешь, я какую-то какаху написал, которая делает нечто похожее на то, что ты хочешь,
но мне кажется оно работает как-то ненадёжно... В общем, глянешь. Вот:
Например, Poring 0 4 - не атаковать поринга, и телепортироваццо еслми он близко. Дистанция забита в коде, выше. Еще, думаю стоит уменьшить sleepTime до родных 10000, может помочь (а может и нет).
но мне кажется оно работает как-то ненадёжно... В общем, глянешь. Вот:
Найдешь в коде эту процедуру, и заменишь. В mon_control-е же появляется новая опция для телепорта, 4.Код: Выделить всё
##### TELEPORT MONSTER ##### if ($safe && timeOut($timeout{ai_teleport_away})) { foreach (@monstersID) { next unless $_; if (mon_control($monsters{$_}{name},$monsters{$_}{nameID})->{teleport_auto} == 1) { message TF("Teleporting to avoid %s\n", $monsters{$_}{name}), "teleport"; $ai_v{temp}{clear_aiQueue} = 1 if (useTeleport(1)); $timeout{ai_teleport_away}{time} = time; return; } elsif (mon_control($monsters{$_}{name},$monsters{$_}{nameID})->{teleport_auto} == 4) { my $dist = distance($monsters{$_}{pos}, $char->{pos}); # distance!!! : if ($dist < 5) { message TF("Teleporting to avoid near %s\n", $monsters{$_}{name}), "teleport"; $ai_v{temp}{clear_aiQueue} = 1 if (useTeleport(1)); $timeout{ai_teleport_away}{time} = time; return; } } } $timeout{ai_teleport_away}{time} = time; }
Например, Poring 0 4 - не атаковать поринга, и телепортироваццо еслми он близко. Дистанция забита в коде, выше. Еще, думаю стоит уменьшить sleepTime до родных 10000, может помочь (а может и нет).
- piroJOKE
- Модератор
- Сообщения: 8205
- Зарегистрирован: Сб ноя 04, 2006 2:20 am
- Сервер RO:: localhost
- Откуда: Molvania
Опубликовал код (выше) на форуме ОК: http://forums.openkore.com/viewtopic.php?t=37798
Может, кто-то усовершенствует его.
Добавлено спустя 33 секунды:
(весь флуд в теме потёрт)
Добавлено спустя 1 час 34 минуты 12 секунд:
А вот моя новая бредовая идея! Битовая маска - для телепорта из мон_контрола!
Может, кто-то усовершенствует его.
Добавлено спустя 33 секунды:
(весь флуд в теме потёрт)
Добавлено спустя 1 час 34 минуты 12 секунд:
А вот моя новая бредовая идея! Битовая маска - для телепорта из мон_контрола!
- Вложения
-
- пример распределения битов
- bred_tp-2.gif (7.48 КБ) 1801 просмотр
- piroJOKE
- Модератор
- Сообщения: 8205
- Зарегистрирован: Сб ноя 04, 2006 2:20 am
- Сервер RO:: localhost
- Откуда: Molvania
Ну... это типо биты. Мы как бы заменяем опцию <teleport> на две других опции <teleport_if> и <teleport_do>. Первая - в каком случае телепортироваться (желтое), вторая (фиолетовая) - что именно нужно сделать - телепортироваццо, отключиться или что-нибудь другое. Ну... и в целях совместимости (хнык-хнык) мы пакуем это всё в одну опцию <teleport>, разбрасывая по битам. Знаю, что звучит это никаковенно, но я ведь это сразу написал, что это бредовая идея.
[mod="piroJOKE"]оверквотинг! потс сокращен[/mod]piroJOKE писал(а):Код: Выделить всё
##### TELEPORT MONSTER ##### if ($safe && timeOut($timeout{ai_teleport_away})) { ...
У меня нупский вопрос - в каком файле это заменять?
ЗЫ долго думал - так и не понял.
Style from the dark side.
Use ai against ai. (c)
Use ai against ai. (c)
- piroJOKE
- Модератор
- Сообщения: 8205
- Зарегистрирован: Сб ноя 04, 2006 2:20 am
- Сервер RO:: localhost
- Откуда: Molvania
Чтоб небыло таких вопросов, объясняю, как искать.
Есть такая штука в природе, как поиск по содержимому файла.
Например, я это делаю так. Запускаю свой любимый Total Commander,
захожу в нужный каталог (\src), жму Alt-F7 (поиск), и заполняю поле Find text,
как показано ниже на картинке. Поехали... Бинго!
Есть такая штука в природе, как поиск по содержимому файла.
Например, я это делаю так. Запускаю свой любимый Total Commander,
захожу в нужный каталог (\src), жму Alt-F7 (поиск), и заполняю поле Find text,
как показано ниже на картинке. Поехали... Бинго!
- Вложения
-
- пример поиска по содержимому
- tc_search.gif (8.02 КБ) 1785 просмотров
-
- Разработчик
- Сообщения: 32
- Зарегистрирован: Пт дек 22, 2006 8:31 pm
- Сервер RO:: iRo
- Контактная информация: