Расчитано на пвп серваки и изобилие блес точек...
Использование: включаем скрипт, включаем скрипт << СМОТРЕТЬ
забиваем ник и уровень точки, точим нужную шмотку на +1(не важно со скольки), скрипт запоминает необходимые данные, 1е соц действие включает и выключает автозаточку. 1е соц действие << СМОТРЕТЬ
Скорость заточки выставлена 500мс(+2 в секунду), можно ускорять или замедлять в зависимости от сервака...
В общим заточился на полуавтомате, пришлось ручками по нпс щелкать, да ну и пофиг. И так делать нечего, боты, скрипты, . Но всеже добить надо скрипт.
DELPHI Код:
const nik='xxx';
Enchant=15;
var
UseItem, SelectItem, EnchantItem: string;
CurrentEnch: integer;
key: boolean;
Timer01, Timer02: TTimer;
procedure Init;
begin
Timer01:=TTimer.Create(nil);
Timer01.OnTimer:=@OnTimer01;
Timer01.enabled:=false;
Timer01.interval:=3370;
Timer02:=TTimer.Create(nil);
Timer02.OnTimer:=@OnTimer02;
Timer02.enabled:=false;
Timer02.interval:=500;
end;
procedure OnTimer01(Sender: TObject);
begincase key offalse: begin
buf:=UseItem;
SendToServerEx(nik);
Timer02.enabled:=true;
end;
true: begin
buf:=EnchantItem;
SendToServerEx(nik);
end;
end;
key:=not(key);
end;
procedure OnTimer02(Sender: TObject);
begin
buf:=SelectItem;
SendToServerEx(nik);
Timer02.enabled:=false;
end;
procedure Free;
begin
Timer01.free;
Timer02.free;
CurrentEnch:=0;
key:=false;
end;
beginif FromServer and(pck[1]=#$87)thencase ReadD(2)of0: begin
CurrentEnch:=CurrentEnch+1;
if CurrentEnch=Enchant then Timer01.enabled:=false;
end;
3:begin
Timer01.enabled:=false;
buf:=hstr('1F 87 04 01 10 2C 41 02 00 A2 23 FF FF 24 F5 FF FF 00');
SendToServerEx(nik);
end;
end;
if FromServer and(pck[1]=#$23)thenbegin
Timer01.enabled:=true;
CurrentEnch:=10;// уровень до какого точит нпсend;
end.
Тут замысел работал, покет посылался после неудачной заточки на общение с нпс. Я в скриптах не очень методом тыка пытался что-то добавить, застрял на том что скрип работает сразу без каманды т.е он еще ничего не запомнил что я буду точить и меня кикало с серва - чуть бан не хватанул отмазался. Этого мало-то одного пакета, 4 надо послать только потом шмотка на 10 затачивается. Да а как еще команду теперь впихнуть чтоб запускалось. Жду помощи..
Последний раз редактировалось neonv1, 08.10.2009 в 08:36.
Народ а на серваке vlineage.ru ваще етот скрипт работает? Я все вродь сделал, нажимаю на скрипт а у меня критует и реконект с сервом, и сам l2phx вылетает с неизвестной ошибкой.
помогите как прекрутить пакеты чисто покетами простомушто на сервере в тарфике какаята каша.
немного по ковырявшись я нашол нужные пакеты но не знаю как их подкрутить к скрипту.(сервер грация финал)
if FromClient and (pck[1]=#$19) then UseItem:=pck;//нажимает на заточку
if FromClient and (pck[1]=#$D0) then// вставляет оружие в окно заточки
begin
ItemID:=ReadD(4);
SelectItem:=pck;
end;
if FromClient and (pck[1]=#$5F) then EnchantItem:=pck;//затачивает
__________________
Тут не форум гадалок, если ты делаешь все правильно и по пунктам - то все должно работать
Последний раз редактировалось TAMBIK, 15.11.2009 в 11:50.
Здравствуйте! Пользуюсь скриптом под грацию , он работает , но иногда остонавливаеться и перестает точить =( Подскажите в чем проблема ...
Макс заточка стоит на 20 , он остонавливаеться произвольно иногда на 5-и иногда на 2-ух.
Здравствуйте! Пользуюсь скриптом под грацию , он работает , но иногда остонавливаеться и перестает точить =( Подскажите в чем проблема ...
Макс заточка стоит на 20 , он остонавливаеться произвольно иногда на 5-и иногда на 2-ух.
var
UseItem, EnchantItem: string;
Count, CurrentEnch: integer;
Timer01: TTimer;
procedure Init;
begin
Timer01:=TTimer.Create(nil);
Timer01.OnTimer:=@OnTimer01;
Timer01.enabled:=false;
Timer01.interval:=5000;
end;
procedure OnTimer01(Sender: TObject);
begin
buf:=UseItem;
SendToServerEx(nik);
buf:=EnchantItem;
SendToServerEx(nik);
end;
procedure Free;
begin
Timer01.free;
count:=0;
CurrentEnch:=0;
end;
begin
if FromServer then
begin
case pck[1] of
#$62: begin
if (ReadD[02]=62) or (ReadD[02]=63) then
CurrentEnch:=CurrentEnch+1
else
if ReadD[02]=1517 then
CurrentEnch:=0;
if CurrentEnch=Enchant then
Timer01.enabled:=false;
end;
end;
end;
if FromClient and (pck[1]=#$19) then UseItem:=pck;
if FromClient and (pck[1]=#$5F) then EnchantItem:=pck;
if FromClient and (pck=#$34#$02#$00#$00#$00) then
begin
pck:='';
Timer01.enabled:=not(Timer01.enabled);
end;
end.
Пакет Enchant Result и InventoryUpdate переделан админами и не показывает результата точки и уровня заточки предмета соответственно.
Я решил сделать с помощью просмотра пакета 62(системное сообщение об удачности\неудачности заточки),где значение 62 и 63 в строке 2 выдаются при удачной заточке и 1517 при неудачной.
При компиляции скрипта выдает ошибку "Array type required". Ошибка в строке 38("if (ReadD[02]=62) or (ReadD[02]=63 then").
Тут мои знания языка закончились и пришлось региться на форуме и писать вам
Добавлено:
Разобрался в чем проблема- скобки у ReadD были квадратные...
Невнимательность это нехорошо....
Последний раз редактировалось Lukito, 28.11.2009 в 22:45.
var
UseItem, EnchantItem: string;
Count, CurrentEnch: integer;
Timer01: TTimer;
procedure Init;
begin
Timer01:=TTimer.Create(nil);
Timer01.OnTimer:=@OnTimer01;
Timer01.enabled:=false;
Timer01.interval:=500;
end;
procedure OnTimer01(Sender: TObject);
begin
buf:=UseItem;
SendToServerEx(nik);
buf:=EnchantItem;
SendToServerEx(nik);
end;
procedure Free;
begin
Timer01.free;
count:=0;
CurrentEnch:=0;
end;
begin
if FromServer and (pck[1]=#$87) then
begin
CurrentEnch:=ReadD(2);
if CurrentEnch=Enchant then Timer01.enabled:=false;
end;
if FromClient and (pck[1]=#$19) then UseItem:=pck;
if FromClient and (pck[1]=#$5F) then EnchantItem:=pck;
if FromClient and (pck=#$34#$02#$00#$00#$00) then
begin
pck:='';
Timer01.enabled:=not(Timer01.enabled);
end;
end.
Я запускаю L2PacketHack потом Линейдж(tbs.org.ru); у мну ловит соединение!я добавлюю скрипт в скрипты в проге!
Дальше Обьянсните плз! Как запустить 1 соц действие(поподробней плз) Короч напишите что мне делать после того как добавил скрипт!