Уважаемый NLObP, а как сделать чтоб перс сам докупал заточки?
Сделать что бы покупал можно, но это для каждого сервера будет немного по своему, поэтому делать не буду.
Посмотреть, как это сделать самому, можно в рыбалке и в теме алгоритмов.
Немного подскажу. Надо знать ID продавцов. Знать как продается - обычный магазин/мультиселл. Знать bypass из html-менюшки, который посылать для покупки. Нужно запоминать ListID в ответе продавца.
покупка состоит из следующих шагов:
1. таргет на продавце, пауза, снова таргет (c04=Action, c04=Action)
2. приходит s0F=NpcHtmlMessage:d(MessageID)s(HTML)d(d) - берем из него bypass требуемого пункта меню
3. шлем выбранный пункт из меню c21=RequestBypassToServer:s(Cmd)
4. приходит s11=BuyList:d(Money)h(ListID)w(ListCount)w(ItemTyp e1)h(ObjectID)i(ItemID)d(maxcnt)w(ItemType2)w(h)d( ItemBodyPart)... - берем ListID
5. FindItem(ID) найдем OID, Count нужной вещи по ID - это отдельная процедура поиска в инвентаре и здесь не требуется!
6. шлем c1F=RequestBuyItem:h(ListID)d(BuyCount)i(ItemID)d( Count)i(ItemID)d(Count)
На некоторых серверах не обязятельно подходить к продавцу, на других обязательно. Тоже самое с ListID - на некоторых можно 0 ставить.
Последний раз редактировалось NLObP, 03.08.2008 в 00:51.
Сделать что бы покупал можно, но это для каждого сервера будет немного по своему, поэтому делать не буду.
Посмотреть, как это сделать самому, можно в рыбалке и в теме алгоритмов.
Как вариант:
Делаешь функцию настройки скрипта:
В ПМ пишеться: выдели нпц, выбери пункт меню, купи 5 точек, используй одну точку на любом оружие...
Всё довольно просто после чего сохраняешь параметры в стринглист тот же и в файл.
PS: Жаль что на l2r.ru сложная шифрация пакетов, которую я одолеть не могу, так бы было много скриптов от меня(автокачающийся ВК был бы точно) ну и карту бы закончил в dll.
Сделать что бы покупал можно, но это для каждого сервера будет немного по своему, поэтому делать не буду.
Посмотреть, как это сделать самому, можно в рыбалке и в теме алгоритмов.
Немного подскажу. Надо знать ID продавцов. Знать как продается - обычный магазин/мультиселл. Знать bypass из html-менюшки, который посылать для покупки. Нужно запоминать ListID в ответе продавца.
Приветствую! Спасибо большое за скрипт!
Если все вручную закупать, то все точит без проблем. Но, вот какая ситуация была. У меня в инвентаре лежали несколько уже заточеных АС+10. В скрипте я поставил точить до +10, и закупил +0 и заточки. Когда он переломал все что точил, то начал точить те самые +10 что уже были. Хорошо хоть не все переломал. На следующем кругу он их точнул до +12. Вот такой небольшой косяк.
Далее. Чтобы зайти на мой серв ботом, нужно использовать WP со скриптиком в PPC. Соотвественно когда я пытаюсь подконектится с включенным L2PH, то он рвет то соединение, патчит, и делает новое, но бот уже пишет Link LoginServer failed. Как бы мне L2HP к боту прикрутить? С клиентом работает без проблем.
И последнее, по поводу закупки заточек и шмота. ID продавцов я знаю, скрипт смотрел... но там кусок от рыбалки, и как его прикрутить на ГМшоп, я так и не понял. Чем бы мне посмотреть bypass HTML шопа? Старые боты не конектятся к серву, а новый не работает с HTML Reader'ом WP.
Еще раз спасибо за скрипт!
Вообщем начал потихоньку разбираться со скриптами. Прикрутил закупку заточек. Но вот с взятием в таргет так и не разобрался. Автотаргет не работает, так как кот(магазин) меня не атакует.
Вот собственно кусок на закупку:
delphi Код:
//04=Action:h(ObjectID)d(OriginX)d(OriginY)d(OriginZ)b(ShiftFlag)procedure Roy;//(Attacker: Integer);begin
buf:=#$04;
WriteD(1209014909);
WriteD(107977);
WriteD(218146);
WriteD(-3672);
WriteC(00);
SendToServerEx(Name);
end;
//......................................//***************************************************************//21=RequestBypassToServer:s(Cmd)procedure RequestByPassToServer(cmd:string);
begin
buf:=#$21;
WriteS(cmd);
SendToServerEx(Name);
end;
//......................................//***************************************************************procedure RequestMultiSellItem(ListId,EntryID,Count:integer);
begin
msg.Lines.Add('Покупаем ListID:'+inttostr(ListID)+' EntryID:'+inttostr(EntryID)+' в кол-ве:'+inttostr(count));
buf:=#$A7;
WriteD(ListID);
WriteD(EntryId);
WriteD(Count);
SendToServerEx(Name);
// end;end;
//***************************************************************procedure BuyEnchScroll;
begin
RequestByPassToServer('menu_select?ask=-303&reply=559');
delay(500);
RequestMultiSellItem(559,17,1);
delay(500);
end;
//Дальше в скрипте ------------------//************************************************
msg.Lines.Add('Пробуем улучшить ItemID='+IntToStr(ItemID)+' ItemOID='+IntToStr(ItemOID));
RequestEnchantItem(ItemOID);
ready:=false;
timer.enabled:=true; //пока в тесте отключаем (вкл. после заточки предмета)//*** Закупка ***
delay(250);
RequestMultiSellItem(559,17,1); //Scroll S Weapon
delay(250);
//***end;
#$81: if readd(2)=0thenbegin
CurEnchLvl:=0; //начнем с начала// BuyEnchScroll;//--------------------------------------
Вообщем закупается одна заточка при открытом диалоговом окне с заточками.
Еще хочу прикрутить проверку кол-ва Аден, и подходить к другому коту и менять их. И дальше точить. Но опять все упирается в таргет.
Код надо в теги [ HIGHLIGHT ] обрамлять (правая решетка с параметром delphi)
__________________
Shadows anywhere...
Последний раз редактировалось NLObP, 07.08.2008 в 14:16.
Но вот с взятием в таргет так и не разобрался. Автотаргет не работает, так как кот(магазин) меня не атакует.
А что мешает встать у кота, взять его в таргет и только потом стартовать скрипт? Я делал авто покупку, просто вставив посылку на покупку 50 точек через каждые 50 циклов затачивания.
А что мешает встать у кота, взять его в таргет и только потом стартовать скрипт? Я делал авто покупку, просто вставив посылку на покупку 50 точек через каждые 50 циклов затачивания.
А если надо оружие и заточки у двух продавцов покупать, а если они далеко друг от друга? Значит и бег как в рыбалке приделывать?
Пока могу посоветовать в скрипт рыбалки заглянуть. Там реализовано продажа/покупка/мультиселл обмен.
Да чет смотрел, там все через Аттакера, а как аттакера прикрутить, я так и не понял.
Цитата:
Сообщение от Breadfan
А что мешает встать у кота, взять его в таргет и только потом стартовать скрипт? Я делал авто покупку, просто вставив посылку на покупку 50 точек через каждые 50 циклов затачивания.
Мешает то что закупка шмота у одного кота, а обмен денег у другого. В моей реализации и так происходит постоянная закупка заточек при открытом диалоге.
Цитата:
Сообщение от NLObP
А если надо оружие и заточки у двух продавцов покупать, а если они далеко друг от друга? Значит и бег как в рыбалке приделывать?
В принципе это нада бы сделать, но у меня все проще. Мой чар стоит как раз между котами, и только поворачивается при ретаргетинге. Так что передвижения не нужны. Главное таргет кидать.