телепортация от моба, когда он уже близко? [да! в snv-6214]

Общие вопросы по OpenKore обсуждаются здесь. Можно сказать, что это - основной раздел форума.
Возник вопрос? Вам сюда.

Модератор: 4epT

Правила форума
Все вопросы по OK не касающиеся плагинов и макросов публикуются в этом разделе.
Перед тем как что то писать, пожалуйста, удостоверьтесь что данная тема не поднималась, вы полностью изучили мануалы по конфигурационным файлам бота и не нашли там решения.
Rugal
Новичок
Сообщения: 12
Зарегистрирован: Чт фев 21, 2008 11:07 am

телепортация от моба, когда он уже близко? [да! в snv-6214]

Сообщение Rugal »

Было: возможна ли через mon_control телепортация,когда моб близко?

Вопрос в Kore можно оcуществить следущее:
если расстояние между Ботом и мобом, описаным в mon_control.txt, превышает допустим 3 клетки (тоесть 2 клетки расстояния). Бот в ЭТОМ и ТОЛЬКО в этом случае портовался вингами или крими. Тоесть не по причине появления на "экране", а по причине придлижения к боту.

Можно ли это осуществить, и что для этого требуется (команда, макрос, плагин) ?

[mod="piroJOKE"]изменил заголовок[/mod]
Аватара пользователя
piroJOKE
Модератор
Сообщения: 8205
Зарегистрирован: Сб ноя 04, 2006 2:20 am
Сервер RO:: localhost
Откуда: Molvania

Сообщение piroJOKE »

Угу, я сам о таком думал... :( В общем так и не сделал.

Добавлено спустя 1 минуту 30 секунд:

Оптимальней всего замутить это плагином, имхо. Ибо макрос будет жрать слишком много быстродействия - надо часто устраивать проверки.
Use brain against brain, ai against ai... · как правильно задавать вопросы · faq · download
Rugal
Новичок
Сообщения: 12
Зарегистрирован: Чт фев 21, 2008 11:07 am

Сообщение Rugal »

панятно, буду значит дальше читать мануалы и разберать принцыпы реагирования на мобов, еси напишу, выложу на форум )
Прогромирование - это на самом деле ВЫСОКОЕ искуство выстукивания по клаве.
Аватара пользователя
4epT
macro-маньячина
Сообщения: 2792
Зарегистрирован: Чт дек 21, 2006 1:23 pm
Сервер RO:: 4game
Discord: ya4ept#8494
Контактная информация:

Сообщение 4epT »

а разве кора плохо реагирует на "замах мобом дубинкой"?
другими словами моб успевает садануть, если мы улетаем по условию атаки??
Быстро и качественно напишу конфиг (макрос)! Стучи!
¤ Свежий бот ¤ Config checker ¤ Manual ¤
Изображение
Изображение
Аватара пользователя
piroJOKE
Модератор
Сообщения: 8205
Зарегистрирован: Сб ноя 04, 2006 2:20 am
Сервер RO:: localhost
Откуда: Molvania

Сообщение piroJOKE »

Знаешь, я какую-то какаху написал, которая делает нечто похожее на то, что ты хочешь,
но мне кажется оно работает как-то ненадёжно... В общем, глянешь. Вот:

Код: Выделить всё

	##### 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;
	}
Найдешь в коде эту процедуру, и заменишь. В mon_control-е же появляется новая опция для телепорта, 4.

Например, Poring 0 4 - не атаковать поринга, и телепортироваццо еслми он близко. Дистанция забита в коде, выше. Еще, думаю стоит уменьшить sleepTime до родных 10000, может помочь (а может и нет).
Use brain against brain, ai against ai... · как правильно задавать вопросы · faq · download
Rugal
Новичок
Сообщения: 12
Зарегистрирован: Чт фев 21, 2008 11:07 am

Сообщение Rugal »

громадное спасибо кора хорошо реагирует + Дистанцию можно выставлять, работает надежно (покрайней мере на Punk в Клок Таувере).

З.Ы. советую написать письмо в Саппорт Коры что бы в Дальнейшем добавили.
Прогромирование - это на самом деле ВЫСОКОЕ искуство выстукивания по клаве.
Аватара пользователя
piroJOKE
Модератор
Сообщения: 8205
Зарегистрирован: Сб ноя 04, 2006 2:20 am
Сервер RO:: localhost
Откуда: Molvania

Сообщение piroJOKE »

Да мы как бы и сами могём, того, добавить; чай не маленькие. :twisted:
Только надо это блок как-то облагородить и сделать более универсальным. ... :(
Use brain against brain, ai against ai... · как правильно задавать вопросы · faq · download
Аватара пользователя
piroJOKE
Модератор
Сообщения: 8205
Зарегистрирован: Сб ноя 04, 2006 2:20 am
Сервер RO:: localhost
Откуда: Molvania

Сообщение piroJOKE »

Опубликовал код (выше) на форуме ОК: http://forums.openkore.com/viewtopic.php?t=37798
Может, кто-то усовершенствует его. :(

Добавлено спустя 33 секунды:

(весь флуд в теме потёрт)

Добавлено спустя 1 час 34 минуты 12 секунд:

А вот моя новая бредовая идея! :crazy: Битовая маска - для телепорта из мон_контрола! :shock: :twisted:
Вложения
пример распределения битов
пример распределения битов
bred_tp-2.gif (7.48 КБ) 1773 просмотра
Use brain against brain, ai against ai... · как правильно задавать вопросы · faq · download
Аватара пользователя
Click
Разработчик
Сообщения: 1564
Зарегистрирован: Сб ноя 04, 2006 11:30 pm
Сервер RO:: clickro.sytes.net
Откуда: Великий Новгород
Контактная информация:

Сообщение Click »

разложи по полочкам, а? сложно понять для чего, и как.
Аватара пользователя
piroJOKE
Модератор
Сообщения: 8205
Зарегистрирован: Сб ноя 04, 2006 2:20 am
Сервер RO:: localhost
Откуда: Molvania

Сообщение piroJOKE »

Ну... это типо биты. Мы как бы заменяем опцию <teleport> на две других опции <teleport_if> и <teleport_do>. Первая - в каком случае телепортироваться (желтое), вторая (фиолетовая) - что именно нужно сделать - телепортироваццо, отключиться или что-нибудь другое. Ну... и в целях совместимости (хнык-хнык) мы пакуем это всё в одну опцию <teleport>, разбрасывая по битам. Знаю, что звучит это никаковенно, но я ведь это сразу написал, что это бредовая идея.
Use brain against brain, ai against ai... · как правильно задавать вопросы · faq · download
Аватара пользователя
Click
Разработчик
Сообщения: 1564
Зарегистрирован: Сб ноя 04, 2006 11:30 pm
Сервер RO:: clickro.sytes.net
Откуда: Великий Новгород
Контактная информация:

Сообщение Click »

я чувствую что на это никто не пойдёт))
Аватара пользователя
totis
Грамотный
Сообщения: 157
Зарегистрирован: Ср фев 07, 2007 3:18 pm

Сообщение totis »

piroJOKE писал(а):

Код: Выделить всё

	##### TELEPORT MONSTER #####
	if ($safe && timeOut($timeout{ai_teleport_away})) {
		...
[mod="piroJOKE"]оверквотинг! потс сокращен[/mod]

У меня нупский вопрос - в каком файле это заменять?
ЗЫ долго думал - так и не понял.
Style from the dark side.
Use ai against ai. (c)
Аватара пользователя
piroJOKE
Модератор
Сообщения: 8205
Зарегистрирован: Сб ноя 04, 2006 2:20 am
Сервер RO:: localhost
Откуда: Molvania

Сообщение piroJOKE »

Чтоб небыло таких вопросов, объясняю, как искать.
Есть такая штука в природе, как поиск по содержимому файла.

Например, я это делаю так. Запускаю свой любимый Total Commander,
захожу в нужный каталог (\src), жму Alt-F7 (поиск), и заполняю поле Find text,
как показано ниже на картинке. Поехали... Бинго!
Вложения
пример поиска по содержимому
пример поиска по содержимому
tc_search.gif (8.02 КБ) 1757 просмотров
Use brain against brain, ai against ai... · как правильно задавать вопросы · faq · download
Аватара пользователя
totis
Грамотный
Сообщения: 157
Зарегистрирован: Ср фев 07, 2007 3:18 pm

Сообщение totis »

pJ спасибо. Сорри за оверквоутинг - ступил немного
Style from the dark side.
Use ai against ai. (c)
Free Goods
Разработчик
Сообщения: 32
Зарегистрирован: Пт дек 22, 2006 8:31 pm
Сервер RO:: iRo
Контактная информация:

Сообщение Free Goods »

piroJOKE ^^

С байтом:
+ - можно упаковать нужную нам дистанцию в этот байт, как и все другие опции
- - пользоваться ну очень неудобно)

Есть же ещё выход. Допустим, вот сейчас есть значения 0, 1, 2. Дальше значения до 15 можно брать за дистанцию.
Ответить