БС Лутер (Корысть) / использование скилла Greed

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

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

Правила форума
Все вопросы по OK не касающиеся плагинов и макросов публикуются в этом разделе.
Перед тем как что то писать, пожалуйста, удостоверьтесь что данная тема не поднималась, вы полностью изучили мануалы по конфигурационным файлам бота и не нашли там решения.
Apri
Новичок
Сообщения: 11
Зарегистрирован: Пт дек 14, 2007 5:52 pm
Контактная информация:

БС Лутер (Корысть) / использование скилла Greed

Сообщение Apri »

Хотелось бы реализовать бота, чистого лутера...
Есть чар - БС. С умением "Корысть"...

Проблема:
Чар покупает поты, варпается в ОД, идет в данж и тупо бегает по мапу! Никакие pickupitems.txt и оные не могут заставить чара поднимать чужой лут... он ходит мимо гор лута и ничего не берет!

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

Сообщение piroJOKE »

перенесено в "вопросы".

афтар, почитай плз для начала тему "как правильно задавать вопросы", а затем и FAQ по конфигу.

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

Конкретно под скилл Грид надобен, вероятно, плагин... Я бы сделал так, заходишь в поисковик Гугль (слышал про такой?) и пишешь там нечто вроде такого: greed site:openkore.com - глядишь что и найдеццо. :twisted:
Use brain against brain, ai against ai... · как правильно задавать вопросы · faq · download
Apri
Новичок
Сообщения: 11
Зарегистрирован: Пт дек 14, 2007 5:52 pm
Контактная информация:

Сообщение Apri »

Ребят, не держите за лоха... не ребенок вроде...

Спасибо за ответ, openkore.com форумы облазил еще 2 дня назад... по greed'у очень мало всего и никто не может довести до ума макрос...
Все, спасибо... =(

Удаляй сабж, если никто до завтра не ответит...
Аватара пользователя
Kissa2k
Профессионал
Сообщения: 1304
Зарегистрирован: Пн дек 04, 2006 8:33 pm

Сообщение Kissa2k »

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

Сообщение piroJOKE »

Apri писал(а):Ребят, не держите за лоха... не ребенок вроде...
Спасибо за ответ, openkore.com форумы облазил еще 2 дня назад...
Я когда чего советую, то не треплюсь понапрасну. А ты даже не соизволил готовую строку Гуглю скормить. :x
Use brain against brain, ai against ai... · как правильно задавать вопросы · faq · download
Sergant
Грамотный
Сообщения: 152
Зарегистрирован: Ср ноя 15, 2006 2:15 am

Сообщение Sergant »

А если без грида?
как отрубить no looting?

чтобы он просто подбирал уже валяющийся лут.

В конфиге стоит:
itemsTakeAuto 2
itemsTakeAuto_party 0
itemsGatherAuto 2

(ставил все на 1. все равно не собирает)

в самой консоле пишет к примеру:
Item Exists: Log (8) x 1
Item Exists: Resin (9) x 1
Gathering: Log (8)
Failed to gather Log (8) : No looting!
Apri
Новичок
Сообщения: 11
Зарегистрирован: Пт дек 14, 2007 5:52 pm
Контактная информация:

Сообщение Apri »

2Sergant
Я уже неделю бьюсь над этим вопросом, просто наизусть практически выучил форум openkore.com %)

itemsTakeAuto
itemsTakeAuto_party
itemsGatherAuto

пробовал просто по всякому, баловатся с таймаутами, прикрутил Грид плагин... но:

НО выяснил только одно!!! Не собирает он этот лут в ОД2...
И знаете почему??? Потому что этот лут лежит не далее чем в 12-ти клетках от его владельца (замечал наверное, что изредка бот все-таки что-то подбирает?)... 12 клеток как я выяснил вшито в OK специально, чтобы бот был не палевный... А НАМ это как раз и нужно!!! Как же обидно... :o

Господа разработчики, покажите пожалуйста, гже лежит в исходниках строчка с этим кодом!!! Я сам пересоберу ОК без нее...

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

Правильно или не правильно я нашел? Вот это:

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

##### ITEMS AUTO-GATHER #####
sub processItemsAutoGather {
	if ( (AI::isIdle || AI::action eq "follow"
		|| ( AI::is("route", "mapRoute") && (!AI::args->{ID} || $config{'itemsGatherAuto'} >= 2)  && !$config{itemsTakeAuto_new}))
	  && $config{'itemsGatherAuto'}
	  && !$ai_v{sitAuto_forcedBySitCommand}
	  && ($config{'itemsGatherAuto'} >= 2 || !ai_getAggressives())
	  && percent_weight($char) < $config{'itemsMaxWeight'}
	  && timeOut($timeout{ai_items_gather_auto}) ) {

		foreach my $item (@itemsID) {
			next if ($item eq ""
				|| !timeOut($items{$item}{appear_time}, $timeout{ai_items_gather_start}{timeout})
				|| $items{$item}{take_failed} >= 1
				|| pickupitems(lc($items{$item}{name})) eq "0"
				|| pickupitems(lc($items{$item}{name})) == -1 );
			if (!positionNearPlayer($items{$item}{pos}, 12) &&
			    !positionNearPortal($items{$item}{pos}, 10)) {
				message TF("Gathering: %s (%s)\n", $items{$item}{name}, $items{$item}{binID});
				gather($item);
				last;
			}
		}
		$timeout{ai_items_gather_auto}{time} = time;
	}
}

##### ITEMS GATHER #####
sub processItemsGather {
	if (AI::action eq "items_gather" && AI::args->{suspended}) {
		AI::args->{ai_items_gather_giveup}{time} += time - AI::args->{suspended};
		delete AI::args->{suspended};
	}
	if (AI::action eq "items_gather" && !($items{AI::args->{ID}} && %{$items{AI::args->{ID}}})) {
		my $ID = AI::args->{ID};
		message TF("Failed to gather %s (%s) : Lost target\n", $items_old{$ID}{name}, $items_old{$ID}{binID}), "drop";
		AI::dequeue;

	} elsif (AI::action eq "items_gather") {
		my $ID = AI::args->{ID};
		my ($dist, $myPos);

		if (positionNearPlayer($items{$ID}{pos}, 12)) {
			message TF("Failed to gather %s (%s) : No looting!\n", $items{$ID}{name}, $items{$ID}{binID}), undef, 1;
			AI::dequeue;

		} elsif (timeOut(AI::args->{ai_items_gather_giveup})) {
			message TF("Failed to gather %s (%s) : Timeout\n", $items{$ID}{name}, $items{$ID}{binID}), undef, 1;
			$items{$ID}{take_failed}++;
			AI::dequeue;

		} elsif ($char->{sitting}) {
			AI::suspend();
			stand();

		} elsif (( $dist = distance($items{$ID}{pos}, ( $myPos = calcPosition($char) )) > 2 )) {
			if (!$config{itemsTakeAuto_new}) {
				my (%vec, %pos);
				getVector(\%vec, $items{$ID}{pos}, $myPos);
				moveAlongVector(\%pos, $myPos, \%vec, $dist - 1);
				move($pos{x}, $pos{y});
			} else {
				my $item = $items{$ID};
				my $pos = $item->{pos};
				message TF("Routing to (%s, %s) to take %s (%s), distance %s\n", $pos->{x}, $pos->{y}, $item->{name}, $item->{binID}, $dist);
				ai_route($field{name}, $pos->{x}, $pos->{y}, maxRouteDistance => $config{'attackMaxRouteDistance'});
			}

		} else {
			AI::dequeue;
			take($ID);
		}
	}
}
Прошу помощи знающих людей, можно ли просто так менять значения 12 или 10 в этом коде? Это возымеет эффект сразу или нужно как-то компилировать?
Apri
Новичок
Сообщения: 11
Зарегистрирован: Пт дек 14, 2007 5:52 pm
Контактная информация:

Сообщение Apri »

Всем спасибо за участие, я таки сделал то, что мне было нужно. Пришлось эти кусочки кода немного поправить... :D

Практически я бы сказал хорошо собирает, но конечно требует доработки...

Разработчики, чего молчите? Опубликовать то, что я сделал или это сугубо мое мнение инавязывать его никому не нужно? Заодно может поможете мне подправить код?
vit
Бывалый
Сообщения: 624
Зарегистрирован: Вс мар 25, 2007 9:18 pm
Сервер RO:: localhost
Откуда: Санкт-Петербург

Сообщение vit »

Apri писал(а):Разработчики, чего молчите?
Ты знаешь например, что в коре специально сделано, чтобы бот не килстиллил? И запрещно помогать людям, чтобы убрать это. То, что сделал ты, это очень близко по теме к этому. Поэтому никто ничего публиковать не будет.
Sergant
Грамотный
Сообщения: 152
Зарегистрирован: Ср ноя 15, 2006 2:15 am

Сообщение Sergant »

vit, ты знаешь... использование бот программ вообще запрещено :) поэтому не будем здесь о запретах. Человек в праве менять конфиг и раздичные параметры на свой страх и риск
Apri, поделись наработками. мини гайдиком сюда
Myrz16
Новичок
Сообщения: 9
Зарегистрирован: Пн дек 31, 2007 6:10 pm

Сообщение Myrz16 »

Тоже эксперементировал с этой штуковиной,так в итоге ничего рабочего и не получил,бот тупо ходил ммимо всего и даже ничего не подобрал.в config.txt,timeouts.txt настроено все верно.в чем можетбыть причина,прошу помощи.
extezi91
Начинающий
Сообщения: 22
Зарегистрирован: Пн июл 13, 2009 2:38 pm
Сервер RO:: RU

Re:

Сообщение extezi91 »

Apri писал(а):Всем спасибо за участие, я таки сделал то, что мне было нужно. Пришлось эти кусочки кода немного поправить... :D

Практически я бы сказал хорошо собирает, но конечно требует доработки...

Разработчики, чего молчите? Опубликовать то, что я сделал или это сугубо мое мнение инавязывать его никому не нужно? Заодно может поможете мне подправить код?
что ты именно сделал?
extezi91
Начинающий
Сообщения: 22
Зарегистрирован: Пн июл 13, 2009 2:38 pm
Сервер RO:: RU

Re: БС Лутер (Корысть) / использование скилла Greed

Сообщение extezi91 »

люди,у кого нибудь остался плагин с openkore.com?
тема там называлась greedPlugin for greed people
Аватара пользователя
chuvachok
Грамотный
Сообщения: 320
Зарегистрирован: Ср авг 06, 2008 12:47 pm
Сервер RO:: iRO
Discord: chuvachok #2811
Откуда: г. Москва

Re: БС Лутер (Корысть) / использование скилла Greed

Сообщение chuvachok »

Изображение
extezi91
Начинающий
Сообщения: 22
Зарегистрирован: Пн июл 13, 2009 2:38 pm
Сервер RO:: RU

Re: БС Лутер (Корысть) / использование скилла Greed

Сообщение extezi91 »

он не работает(
кто может его подделать под современную версию коры?
Ответить