кривая автозакупка (buyAuto) [не решено]
Модератор: 4epT
В общем, бот отказывается на отрез выполнять мои просьбы.
На:Он отвечает мне, этим:
И флуд этой строкой в консоли продолжается до бесконечности, при это бот перестает что-либо делать вообще.
При чем при каких-то там его условиях он выполнял авто-закуп. Но сейчас этого не происходит совсем. Очень похожее на описанное здесь. Не появилось ли решение этой проблемы?
Чуть погодя....
Поставила вот так: после чего, еще прочитала вот тут. Тьфу, тьфу, тьфу. Заработало. Но выходит параметр distance - остается "мертвым". Но я еще потестю.
На:
Код: Выделить всё
buyAuto Awakening Potion {
npc morocc 147 102
standpoint 152 108
distance
minAmount 1
maxAmount 3
}
buyAuto White Potion {
npc morocc 147 102
standpoint 152 108
distance
minAmount 2
maxAmount 25
}
buyAuto Arrow {
npc morocc 147 102
standpoint 152 108
distance
minAmount 25
maxAmount 900
}
Код: Выделить всё
Calculating auto-buy route to: Morroc Town (morocc): 147, 102
При чем при каких-то там его условиях он выполнял авто-закуп. Но сейчас этого не происходит совсем. Очень похожее на описанное здесь. Не появилось ли решение этой проблемы?
Чуть погодя....
Поставила вот так:
Код: Выделить всё
buyAuto Любой предмет(ы) {
npc morocc 147 102
standpoint morocc 150 105
distance
minAmount 1
maxAmount 3
}
config.txt;mon_control.txt;Self Conditions;pickupitems.txt - Знаю на троечку с плюсом. Учусь ^_^
timeouts.txt - Буду учить и нубам советую ^_^
Встал вопрос? Почеши эту тему. Рекомендую новичкам.
timeouts.txt - Буду учить и нубам советую ^_^
Встал вопрос? Почеши эту тему. Рекомендую новичкам.
- 4epT
- macro-маньячина
- Сообщения: 2792
- Зарегистрирован: Чт дек 21, 2006 1:23 pm
- Сервер RO:: 4game
- Discord: ya4ept#8494
- Контактная информация:
вообщем нуна тут подправить (как я понил):
my $talk_distance
Код: Выделить всё
my $do_route;
if ($field{name} ne $args->{npc}{map}) {
# we definitely need to route if we're on the wrong map
$do_route = 1;
} else {
my $distance = distance($args->{npc}{pos}, $char->{pos_to});
# move exactly to the given spot if we specified a standpoint
my $talk_distance = ($config{"buyAuto_$args->{index}"."_standpoint"} ? 1 : $config{"buyAuto_$args->{index}"."_distance"});
if ($distance > $talk_distance) {
$do_route = 1;
}
}
- Click
- Разработчик
- Сообщения: 1564
- Зарегистрирован: Сб ноя 04, 2006 11:30 pm
- Сервер RO:: clickro.sytes.net
- Откуда: Великий Новгород
- Контактная информация:
а как этот кусок расшифровать?
Код: Выделить всё
t"} ? 1 : $co
- Click
- Разработчик
- Сообщения: 1564
- Зарегистрирован: Сб ноя 04, 2006 11:30 pm
- Сервер RO:: clickro.sytes.net
- Откуда: Великий Новгород
- Контактная информация:
делаем вот так
и всё работает
протестите плиз если нужно закупиться у нескольких нпц.
Добавлено спустя 14 минут 21 секунду:
да и ещё standpoint prontera 56 180 с названием мапы
Добавлено спустя 8 минут 23 секунды:
лан вроде работает, сам затестил.
коммитю)
207svn6546
Код: Выделить всё
- my $do_route;
- if ($field{name} ne $args->{npc}{map}) {
- # we definitely need to route if we're on the wrong map
- $do_route = 1;
- } else {
- my $distance = distance($args->{npc}{pos}, $char->{pos_to});
- # move exactly to the given spot if we specified a standpoint
- my $talk_distance = ($config{"buyAuto_$args->{index}"."_standpoint"} ? 1 : $config{"buyAuto_$args->{index}"."_distance"});
- if ($distance > $talk_distance) {
- $do_route = 1;
- }
- }
undef $ai_v{'temp'}{'do_route'};
if ($field{'name'} ne $args->{'npc'}{'map'}) {
$ai_v{'temp'}{'do_route'} = 1;
} else {
$ai_v{'temp'}{'distance'} = distance($args->{'npc'}{'pos'}, $chars[$config{'char'}]{'pos_to'});
$config{"buyAuto_$args->{index}"."_distance"} = 1 if ($config{"buyAuto_$args->{index}"."_standpoint"});
if ($ai_v{'temp'}{'distance'} > $config{"buyAuto_$args->{index}"."_distance"}) {
$ai_v{'temp'}{'do_route'} = 1;
}
}
my $msgneeditem;
- if ($do_route) {
+ if ($ai_v{'temp'}{'do_route'}) {
протестите плиз если нужно закупиться у нескольких нпц.
Добавлено спустя 14 минут 21 секунду:
да и ещё standpoint prontera 56 180 с названием мапы
Добавлено спустя 8 минут 23 секунды:
лан вроде работает, сам затестил.
коммитю)
207svn6546
- Click
- Разработчик
- Сообщения: 1564
- Зарегистрирован: Сб ноя 04, 2006 11:30 pm
- Сервер RO:: clickro.sytes.net
- Откуда: Великий Новгород
- Контактная информация:
Re: кривая автозакупка (buyAuto) [не решено]
это зачем?4epT писал(а): да и вообще параметр zeny тут лучше бы обозначал стоимость шмотки а не всего зеней..
- Click
- Разработчик
- Сообщения: 1564
- Зарегистрирован: Сб ноя 04, 2006 11:30 pm
- Сервер RO:: clickro.sytes.net
- Откуда: Великий Новгород
- Контактная информация:
так запишу, что б не забыть.
1. действительно zeny нуно переименовать в price, сделать, что б он означал стоимость итема и исходя из этого если не хватает денег на всё кол-во покупал столько на сколько хватит. ну конечно же с разнией в максимально нужно и уже находящееся в инвентаре. и добавить в стандартный конф эту опцию, во как. кстати не работает zeny, затестил, если есть такой параметр то он вообще не идёт закупаться, бага.
2. думаю надо добавить параметр типа autoBuyAfterSell 1 который бы при условии, что сработал автобай, втыкал в АИ перед ним автоселл.
3. после этого можно уже думать о булк закупке. Можно добавить опцию в конфиг autoBuy 2. если 0 то не закупаемся, поможет с макросами. если 1 то стандарная закупка. если 2 то булк закупка.
вроде траблы с кривой автозакупкой должны решиться.
Добавлено спустя 41 минуту 2 секунды:
понял почему не работает zeny, видимо нельзя использовать это слово, со словом price работает норм.
Добавлено спустя 14 минут 47 секунд:
хм, но доже если price выставлять хоть больше хоть меньше зеней в нашем кормане, то строчка
inRange($char->{zenny}, $config{"buyAuto_$i"."_price"})
всегда возвращает 0
правда если этот параметр вообще если в конфиге, иначе возвращает 1
почему? О_о
1. действительно zeny нуно переименовать в price, сделать, что б он означал стоимость итема и исходя из этого если не хватает денег на всё кол-во покупал столько на сколько хватит. ну конечно же с разнией в максимально нужно и уже находящееся в инвентаре. и добавить в стандартный конф эту опцию, во как. кстати не работает zeny, затестил, если есть такой параметр то он вообще не идёт закупаться, бага.
2. думаю надо добавить параметр типа autoBuyAfterSell 1 который бы при условии, что сработал автобай, втыкал в АИ перед ним автоселл.
3. после этого можно уже думать о булк закупке. Можно добавить опцию в конфиг autoBuy 2. если 0 то не закупаемся, поможет с макросами. если 1 то стандарная закупка. если 2 то булк закупка.
вроде траблы с кривой автозакупкой должны решиться.
Добавлено спустя 41 минуту 2 секунды:
понял почему не работает zeny, видимо нельзя использовать это слово, со словом price работает норм.
Добавлено спустя 14 минут 47 секунд:
хм, но доже если price выставлять хоть больше хоть меньше зеней в нашем кормане, то строчка
inRange($char->{zenny}, $config{"buyAuto_$i"."_price"})
всегда возвращает 0
правда если этот параметр вообще если в конфиге, иначе возвращает 1
почему? О_о
- Click
- Разработчик
- Сообщения: 1564
- Зарегистрирован: Сб ноя 04, 2006 11:30 pm
- Сервер RO:: clickro.sytes.net
- Откуда: Великий Новгород
- Контактная информация:
http://forums.openkore.com/viewtopic.php?f=36&t=3233
svn6582
zeny=2004
inventory:
Bouquet x 3
Flower x 1
zeny=0
inventory:
Bouquet x 4
Flower x 3
P.S "Auto-buy: Flower" идёт без Bouquet, так как Bouquet нам не надо было шибко, оно не достигло минАмаунт 2, их было 3. Иначе былаб строка "Auto-buy: Bouquet, Flower". Ну это так для себя, а то в 6 утра забеспокоился.
svn6582
zeny=2004
inventory:
Bouquet x 3
Flower x 1
buyAuto Bouquet {
npc prontera 58 182
standpoint
distance 5
price 2000
minAmount 2
maxAmount 5
}
buyAuto Flower {
npc prontera 58 182
standpoint
distance 5
price 2
minAmount 2
maxAmount 5
}
Код: Выделить всё
Auto-buy: Flower
Calculating auto-buy route to: Prontera City, Capital of Rune Midgard (prontera): 58, 182
...
...
Flower Girl: Type 'store' to start buying, or type 'sell' to start selling
----------Flower Girl's Store List-----------
# Name Type Price
0 Flower Non-usable 2z
1 Bouquet Non-usable 2000z
-------------------------------
Done talking with Flower Girl.
You lost 2,000 zeny.
Item added to inventory: Bouquet (17) x 1 - Non-usable
Buy completed.
Flower Girl: Type 'store' to start buying, or type 'sell' to start selling
----------Flower Girl's Store List-----------
# Name Type Price
0 Flower Non-usable 2z
1 Bouquet Non-usable 2000z
-------------------------------
Done talking with Flower Girl.
You lost 4 zeny.
Item added to inventory: Flower (18) x 2 - Non-usable
Buy completed.
inventory:
Bouquet x 4
Flower x 3
P.S "Auto-buy: Flower" идёт без Bouquet, так как Bouquet нам не надо было шибко, оно не достигло минАмаунт 2, их было 3. Иначе былаб строка "Auto-buy: Bouquet, Flower". Ну это так для себя, а то в 6 утра забеспокоился.
-
- Бывалый
- Сообщения: 624
- Зарегистрирован: Вс мар 25, 2007 9:18 pm
- Сервер RO:: localhost
- Откуда: Санкт-Петербург
А может все-таки оставить параметр zeny, как то минимальное количество зеней, которое должно остаться после покупки(а то сейчас бот будет покупать, пока у него есть зени и может обанкротиться(зени = 0 не есть хорошо)).
Кстати, в SVN6570(и более ранних версиях) у меня параметр zeny работал и я на него не жаловался:
Кстати, в SVN6570(и более ранних версиях) у меня параметр zeny работал и я на него не жаловался:
buyAuto Awakening Potion {
npc morocc 147 102
standpoint
distance 10
minAmount 0
maxAmount 3
zeny > 1000
}
........
You are sitting.
s
----------------------- Status -------------------------
........
Zeny: 5,575
........
--------------------------------------------------------
c @zeny 5000
You gained 5,000 zeny.
Number of zenys changed!
Auto-buy: Awakening Potion
Calculating auto-buy route to: Morroc Town (morocc): 147, 102
You are standing.
..........