Полезный плагин для поиска у торгашей за определенную цену

Дополнения к OpenKore, расширяющиее её функциональность, называются плагинами.

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

darzanebor
Грамотный
Сообщения: 221
Зарегистрирован: Чт дек 07, 2006 8:43 pm
Откуда: Бирмингем, ул. Бр.Грим....

Полезный плагин для поиска у торгашей за определенную цену

Сообщение darzanebor »

Полезный плагин если надо что-то купить за определенную цену, ищет шмотки по параметрам, цена и нужное колличество:
Сам плагин:

package shopper;

#
# This plugin is licensed under the GNU GPL
# Copyright 2006 by kaliwanagan
# --------------------------------------------------
#

use strict;
use Plugins;
use Globals;
use Log qw(message warning error debug);
use AI;
use Misc;
use Network;
use Network::Send;

Plugins::register('shopper', 'automatically buy items from merchant vendors', \&Unload);
my $AI_pre = Plugins::addHook('AI_pre', \&AI_pre);
my $encounter = Plugins::addHook('packet_vender', \&encounter);
my $storeList = Plugins::addHook('packet_vender_store', \&storeList);

my @vendorList;

sub Unload {
Plugins::delHook('AI_pre', $AI_pre);
Plugins::delHook('packet_vender', $encounter);
Plugins::delHook('packet_vender_store', $storeList);
}

my $delay = 1;
my $time = time;

sub AI_pre {
if (AI::is('checkShop') && main::timeOut($time, $delay)) {
my $vendorID = AI::args->{vendorID};
$messageSender->sendEnteringVender($vendorID);
AI::dequeue;
}
$time = time;
}

# we encounter a vend shop
sub encounter {
my ($packet, $args) = @_;
my $ID = $args->{ID};

# don't check the same store twice
# FIXME: clear the vendor list from time to time or else
# it will get very large
#foreach my $vendorID (@vendorList) {
# return if ($ID == $vendorID);
#}
#push (@vendorList, $ID);
AI::queue('checkShop', {vendorID => $ID});
}

# we're currently inside a store if we receive this packet
sub storeList {
my ($packet, $args) = @_;
my $venderID = $args->{venderID};
my $price = $args->{price};
my $name = $args->{name};
my $number = $args->{number};
my $amount = $args->{amount};

my $prefix = "shopper_";
my $i = 0;
while (exists $config{$prefix.$i}) {
my $maxPrice = $config{$prefix.$i."_maxPrice"};
my $maxAmount = $config{$prefix.$i."_maxAmount"};

my $invIndex = main::findIndexString_lc($char->{'inventory'}, "name", $config{$prefix.$i});
my $item = $char->{'inventory'}[$invIndex];

if (main::checkSelfCondition($prefix.$i) &&
($price <= $maxPrice) &&
(lc($name) eq lc($config{$prefix.$i}))
)
{
message "$name found!!! Buying it for $price (max price: $maxPrice).\n";
$messageSender->sendBuyVender($venderID, $number, $maxAmount);
configModify($prefix.$i."_disabled", 1);
}
$i++;
}
}

return 1;


Пример использования:


shopper Elunium{
maxPrice 500000
maxAmount 120
disabled 0
}

Если кора найдет магаз меньше чем с 120 Эликами

--------------------------- Vender: Kore Masta (0) ----------------------------
# Name Type Amount Price
Elunium found!!! Buying it for 10000 (max price: 500000).
Config 'shopper_0_disabled' set to 1 (was 0)
2 Elunium Non-usable 119 10,000z
-------------------------------------------------------------------------------
Failed to buy 119 of item #2 from vender (unknown code 4).

Если найдет больше чем со 120 то ккупит

--------------------------- Vender: Kore Masta (0) ----------------------------
# Name Type Amount Price
Elunium found!!! Buying it for 10000 (max price: 500000).
Config 'shopper_0_disabled' set to 1 (was 0)
2 Elunium Non-usable 148 10,000z
-------------------------------------------------------------------------------
You lost 1,200,000 zeny.
Item added to inventory: Elunium (0) x 120 - Non-usable
Изображение
Изображение
Antarx
Бывалый
Сообщения: 640
Зарегистрирован: Вс янв 07, 2007 5:56 am

Сообщение Antarx »

а как тут вводить, где будет ходить бот? неужели локмап_икс/игрек и рандомволк? палится же жутко...
Превосходство некоторых людей над окружающими одни считают несправедливостью, требующей уравнивания, другие - неполноценностью недовольных.
Выбор взгляда за Вами...
Изображение :)
darzanebor
Грамотный
Сообщения: 221
Зарегистрирован: Чт дек 07, 2006 8:43 pm
Откуда: Бирмингем, ул. Бр.Грим....

Сообщение darzanebor »

взял посадил на попу ровно посреди толпы торгашей, или макрос прописал, чтоб он ходил от одной точки пронта до другой, или несколько точек, и задержку поставь между хождением =) среди толпы то, палится???
Изображение
Изображение
Xakka
Новичок
Сообщения: 6
Зарегистрирован: Пн ноя 20, 2006 12:15 am

Сообщение Xakka »

Вот ссылка http://forums.openkore.com/viewtopic.ph ... 54&start=0
Antarx
Бот ходит с помощью макроса.

Пробовал этот плагин давно. Что-то не очень понравился. Проще уж или по базе товар найти или на скупку сесть.
Antarx
Бывалый
Сообщения: 640
Зарегистрирован: Вс янв 07, 2007 5:56 am

Сообщение Antarx »

Xakka
база сейчас очень часто работает, а скупка требует наличия владельца за компом
Превосходство некоторых людей над окружающими одни считают несправедливостью, требующей уравнивания, другие - неполноценностью недовольных.
Выбор взгляда за Вами...
Изображение :)
vasa666
Энтузиаст
Сообщения: 103
Зарегистрирован: Вт июн 19, 2007 8:58 pm
Откуда: Москва
Контактная информация:

Сообщение vasa666 »

Есть необходимость его зациклить.. то есть как он обходит все магазины он сейчас останавливается.. а мне надо чтоб он снова начинал их проверять. Это реально сделать.. может, кто ни будь помочь?
Аватара пользователя
Kissa2k
Профессионал
Сообщения: 1304
Зарегистрирован: Пн дек 04, 2006 8:33 pm

Сообщение Kissa2k »

Хм, с тех пор как появились базы вроде prontera.ru, думаю стоит написать другой плагин, который скажем раз в 5-10 минут проверят нужную вещь по базе и если находит её, то выцепляет координаты торговца и бежит покупать ^_^
vasa666
Энтузиаст
Сообщения: 103
Зарегистрирован: Вт июн 19, 2007 8:58 pm
Откуда: Москва
Контактная информация:

Сообщение vasa666 »

я на оффе не играю.. я на пиратке играюсь..
Так что попрежнему прошу кого ни будь помочь :(
vasa666
Энтузиаст
Сообщения: 103
Зарегистрирован: Вт июн 19, 2007 8:58 pm
Откуда: Москва
Контактная информация:

Сообщение vasa666 »

ну неужели там так много надо переделывать? плиз! помогите... :(
endigro1
Новичок
Сообщения: 12
Зарегистрирован: Чт мар 20, 2008 9:09 pm

Сообщение endigro1 »

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

в конфиге:
shopper Fabric {
maxPrice 1401
maxAmount 1
}

если верить мануалу то он должен скупать если больше 1й тряпки с ценой меньше 1401 зени или я чегото не понимаю?
при таких настройках покупает 1 тряпку и все=)
если поставить maxAmount 1 более то выдает ошибку
я так понимаю что сдесь не встроено покупка всего что есть в шопе если есть возможность подправте............
amba
Начинающий
Сообщения: 46
Зарегистрирован: Сб окт 06, 2007 6:04 pm

Сообщение amba »

endigro1
мне кажется что надо еще и итем_контрол настроить
Делай что можешь, случиться что должно.
Изображение
endigro1
Новичок
Сообщения: 12
Зарегистрирован: Чт мар 20, 2008 9:09 pm

Сообщение endigro1 »

настроино чтобы в инвентаре было 8к требуемого лута и помещал еще в тележку
тоесть тут я не думаю что в этм проблема

Добавлено спустя 58 минут 2 секунды:

maxAmount
работает немого не коректно если пишишь 1 то покупает только одну вещь и все, это удобно если допусти карту какуюнить купить а если необходимо купить много, плюс нет возможности поставить флаг покупать все пока есть деньги
А также больная прозьба разьясните как работает флаг:
Config 'shopper_0_disabled'
yonah
Грамотный
Сообщения: 161
Зарегистрирован: Ср ноя 15, 2006 9:49 pm

Сообщение yonah »

Напиши что выдает консоль.Может пакет изменился.
endigro1
Новичок
Сообщения: 12
Зарегистрирован: Чт мар 20, 2008 9:09 pm

Сообщение endigro1 »

Fabric found!!! Buying it for 1500 (max price: 1501).
Config 'shopper_0_disabled' set to 1 (was )

Failed to buy 580 of item #6 from vender (unknown code 4).

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

может я не правельно настраиваю как мне заставить бота скупать допустим бесконечное количество лута меньше определенной цены, что нужно добавлять в конфиг?
SpiderDiablo
Новичок
Сообщения: 8
Зарегистрирован: Ср апр 09, 2008 2:54 pm

Re: Полезный плагин для поиска у торгашей за определенную цену

Сообщение SpiderDiablo »

А как сделать так, чтобы он просто ходил и записывал цены? Ничерта в макросах не понимаю (
Ответить