bugtraq:about - если вы нашли ошибку в OpenKore, то...

BugTraq: обнаруженные ошибки и обсуждение их устранения.

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

DInvalid
Грамотный
Сообщения: 368
Зарегистрирован: Вт ноя 14, 2006 4:54 pm

Сообщение DInvalid »

В модуле AI
sub ai_route {

раньше было:

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

	my %args;
	$x = int($x) if ($x ne "");
	$y = int($y) if ($y ne "");
	$args{'dest'}{'map'} = $map;
	$args{'dest'}{'pos'}{'x'} = $x;
	$args{'dest'}{'pos'}{'y'} = $y;
	$args{'maxRouteDistance'} = $param{maxRouteDistance} if exists $param{maxRouteDistance};
	$args{'maxRouteTime'} = $param{maxRouteTime} if exists $param{maxRouteTime};
	$args{'attackOnRoute'} = $param{attackOnRoute} if exists $param{attackOnRoute};
	$args{'distFromGoal'} = $param{distFromGoal} if exists $param{distFromGoal};
	$args{'pyDistFromGoal'} = $param{pyDistFromGoal} if exists $param{pyDistFromGoal};
	$args{'attackID'} = $param{attackID} if exists $param{attackID};
	$args{'noSitAuto'} = $param{noSitAuto} if exists $param{noSitAuto};
	$args{'noAvoidWalls'} = $param{noAvoidWalls} if exists $param{noAvoidWalls};
	$args{notifyUponArrival} = $param{notifyUponArrival} if exists $param{notifyUponArrival};
	$args{'tags'} = $param{tags} if exists $param{tags};
	$args{'time_start'} = time;

	if (!$param{'_internal'}) {
		$args{'solution'} = [];
		$args{'mapSolution'} = [];
	} elsif (exists $param{'_solution'}) {
		$args{'solution'} = $param{'_solution'};
	}

....
		AI::queue("route", \%args);
а сейчас стало:

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

	my @params = (
		x => $x,
		y => $y,
		maxDistance => $args{maxRouteDistance},
		maxTime => $args{maxRouteTime},
		distFromGoal => $args{distFromGoal},
		pyDistFromGoal => $args{pyDistFromGoal},
		avoidWalls => !$args{noAvoidWalls},
		notifyUponArrival => $args{notifyUponArrival}
	);
	if ($args{noMapRoute}) {
		$task = new Task::Route(@params);
	} else {
		$task = new Task::MapRoute(map => $map, @params);
	}
	$task->{attackOnRoute} = $args{attackOnRoute};
	$task->{noSitAuto} = $args{noSitAuto};

	AI::queue("route", $task);
}
Кучу параметров поубирали.
Может быть,

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

	my @params = (
		x => $x,
		y => $y,
                attackID => $args{attackID},
		maxDistance => $args{maxRouteDistance},
		maxTime => $args{maxRouteTime},
		distFromGoal => $args{distFromGoal},
		pyDistFromGoal => $args{pyDistFromGoal},
		avoidWalls => !$args{noAvoidWalls},
		notifyUponArrival => $args{notifyUponArrival}
	);
Все равно не работает.
Аватара пользователя
Click
Разработчик
Сообщения: 1564
Зарегистрирован: Сб ноя 04, 2006 11:30 pm
Сервер RO:: clickro.sytes.net
Откуда: Великий Новгород
Контактная информация:

Сообщение Click »

да на последних свн (6386) бот себя вообще плохо ведёт, атакует очень редко, хотя должен. это после последних изменений в логике передвижения и атаки от фригудса.

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

в 6423 вроде уже норм бегает

Добавлено спустя 43 минуты:

отпостил тут http://forums.openkore.com/viewtopic.php?f=56&t=1518
если чего не так написал поправьте, ибо в англиском плохо.
DInvalid
Грамотный
Сообщения: 368
Зарегистрирован: Вт ноя 14, 2006 4:54 pm

Сообщение DInvalid »

Оффтоп:
Они просто начиная с рев. 5533 (при переделке 5454 -> 5533) забыли вставить в хэш это значение...

Исправлено в 6377 ( http://openkore.svn.sourceforge.net/vie ... ortby=date )

Все это время бооольшой кусок логики, завязанный на это значение не работал вообще.

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

Исправлено в 6409.

Мдя.
Prontera.ru
Новичок
Сообщения: 4
Зарегистрирован: Вт май 27, 2008 1:23 pm
Контактная информация:

Сообщение Prontera.ru »

deal add z 0 кладёт сразу все зени в сделку

Commands.pm

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

} elsif ($arg[0] eq "add" && $arg[1] eq "z") {
- if (!$arg[2] || $arg[2] > $char->{'zenny'}) {

} elsif ($arg[0] eq "add" && $arg[1] eq "z") {
+ if (!$arg[2] && !($arg[2] eq "0") || $arg[2] > $char->{'zenny'}) {
Аватара пользователя
Click
Разработчик
Сообщения: 1564
Зарегистрирован: Сб ноя 04, 2006 11:30 pm
Сервер RO:: clickro.sytes.net
Откуда: Великий Новгород
Контактная информация:

Сообщение Click »

Prontera.ru писал(а):deal add z 0 кладёт сразу все зени в сделку
свн 6426
DInvalid
Грамотный
Сообщения: 368
Зарегистрирован: Вт ноя 14, 2006 4:54 pm

Сообщение DInvalid »

А работает ли у нас processClientSuspend, который используют для паузы, т.е. в режиме xkore 0?
Имхо, нет - всегда возвращает 0, и т.о. AI не суспендится.

Понаписал чего что, интересно, они поймут мои ломаные предложения?
http://forums.openkore.com/viewtopic.ph ... 6808#p6808
Аватара пользователя
Click
Разработчик
Сообщения: 1564
Зарегистрирован: Сб ноя 04, 2006 11:30 pm
Сервер RO:: clickro.sytes.net
Откуда: Великий Новгород
Контактная информация:

Сообщение Click »

по поводу attackChangeTarget
http://forums.openkore.com/viewtopic.php?f=56&t=1518
Fixed AI attack logic.
Fixed attackCheckLOS.
Fixed attackAuto_onlyWhenSafe.
New flag for attackChangeTarget: 2 - find better attack target while gaining LOS to current target.
Аватара пользователя
4epT
macro-маньячина
Сообщения: 2792
Зарегистрирован: Чт дек 21, 2006 1:23 pm
Сервер RO:: 4game
Discord: ya4ept#8494
Контактная информация:

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

Люди не знаю на каком этапе, но у нас теперь криво работает механизм работы со складом! Испытывал на SVN6449 (которая тут выложена)

вообщем настройки таковы:

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

lockMap pay_fild06

storageAuto 1
storageAuto_npc alberta 28 229
storageAuto_distance 5
storageAuto_npc_type 1

getAuto Awakening Potion {
	minAmount 0
	maxAmount 2
}
ну вообщем мы идём в кафру и смотрим что у нас нету в ней аваков:
Storage opened.
Kafra: Done talking
storage: Awakening Potion out of stock
Storage closed.
Storage logged
доходим до локи и до него доходит что у нас нету аваков:
Auto-storaging due to insufficient Awakening Potion
Teleporting to auto-storage
на OpenKore_206SVN6259 всё робит нормально!
Быстро и качественно напишу конфиг (макрос)! Стучи!
¤ Свежий бот ¤ Config checker ¤ Manual ¤
Изображение
Изображение
Аватара пользователя
4epT
macro-маньячина
Сообщения: 2792
Зарегистрирован: Чт дек 21, 2006 1:23 pm
Сервер RO:: 4game
Discord: ya4ept#8494
Контактная информация:

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

Клик, выдели в отдельную проблему мой пост :o
Быстро и качественно напишу конфиг (макрос)! Стучи!
¤ Свежий бот ¤ Config checker ¤ Manual ¤
Изображение
Изображение
Priesto
Начинающий
Сообщения: 26
Зарегистрирован: Ср июл 23, 2008 4:04 pm

Сообщение Priesto »

на 206SVN6455 аналогичная картина с гетавто.. итемс контрол настроен.

упд
и на 206SVN6341 то же самое
getAuto Butterfly wing {
minAmount 0
maxAmount 1
passive 0
}

getAuto Fly wing {
minAmount 0
maxAmount 20
passive 0
}

getAuto Concentrate potion {
minAmount 0
maxAmount 5
passive 0
}
##### HEAL/SUPPORT ITEMS #####
# Adjust these to your needs

Butterfly Wing 10 1 0
Fly Wing 100 1 0
Concentration potion 10 1 0
Итог
storage: Butterfly Wing out of stock
storage: Fly Wing out of stock
storage: Concentration potion out of stock

Извиняюсь за небольшой оффтоп
4epT писал(а): на OpenKore_206SVN6259 всё робит нормально!
не нашёл нигде 6259.. если кто может поспособствовать - отпишите пожалуйста в личку..
Аватара пользователя
Click
Разработчик
Сообщения: 1564
Зарегистрирован: Сб ноя 04, 2006 11:30 pm
Сервер RO:: clickro.sytes.net
Откуда: Великий Новгород
Контактная информация:

Сообщение Click »

http://forums.openkore.com/viewtopic.php?f=56&t=2245
ну тип того, скоро наверно починят)
кто шарит в ангельском отпишитесь там
Аватара пользователя
Click
Разработчик
Сообщения: 1564
Зарегистрирован: Сб ноя 04, 2006 11:30 pm
Сервер RO:: clickro.sytes.net
Откуда: Великий Новгород
Контактная информация:

Сообщение Click »

sli решил её так в свн5457

файл CoreLogic.pm
было:

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

	warning TF("storage: %s out of stock\n", $item{name});
стало:

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

	warning TF("storage: %s out of stock - getAuto block disabled\n", $item{name});
						$config{"getAuto_$args->{index}_disabled"} = 1;
но что-то мне не нравиться это решение, во-первых представим, бот пошёл в кафру, там пусто, задисаблил, пошёл в байавто, купил, но блок уже задисаблен. далее ещё минус: например мы в игре закупились в кафру и нам придёться перед запуском бота опять править когфиг, раздисабливать блоки.
Аватара пользователя
Click
Разработчик
Сообщения: 1564
Зарегистрирован: Сб ноя 04, 2006 11:30 pm
Сервер RO:: clickro.sytes.net
Откуда: Великий Новгород
Контактная информация:

Сообщение Click »

всё я вродь починил в 6458
Вложения
CoreLogic.rar
(24.05 КБ) 205 скачиваний
Priesto
Начинающий
Сообщения: 26
Зарегистрирован: Ср июл 23, 2008 4:04 pm

Сообщение Priesto »

в 6455 заменил результат тот же) Out of stock

пойду качать 6458, спасибо)
Аватара пользователя
Click
Разработчик
Сообщения: 1564
Зарегистрирован: Сб ноя 04, 2006 11:30 pm
Сервер RO:: clickro.sytes.net
Откуда: Великий Новгород
Контактная информация:

Сообщение Click »

Priesto
у тебя вроде другая проблема какая то...
Ответить