Регистрация Главная Сообщество
Сообщения за день Справка Регистрация

Скрипты для l2phx

-

Скрипты и перехват пакетов

- Скрипты и перехват пакетов

Ответ
 
Опции темы
Старый 29.10.2009, 15:46   #16
Заблокирован
 Старший сержант
Аватар для GraNIT
 
GraNIT излучает ауруGraNIT излучает ауруGraNIT излучает ауруGraNIT излучает ауруGraNIT излучает ауруGraNIT излучает ауру
Регистрация: 27.07.2009
Сообщений: 237
Популярность: 578
Сказал(а) спасибо: 593
Поблагодарили 329 раз(а) в 147 сообщениях
Отправить сообщение для GraNIT с помощью ICQ Отправить сообщение для GraNIT с помощью Skype™
 
По умолчанию Re: Скрипты для l2phx

Ну так я и говорил про статы...и не надо тут отмазываться...ссылки на серваки ты мне так и не дал!

Добавлено через 2 минуты
АвТОзаТоЧкА для gracia final
СКРИПТИК
Цитата:
by TAMBIK coderx.ru


Последний раз редактировалось GraNIT; 29.10.2009 в 15:49. Причина: Добавлено сообщение
  Ответить с цитированием
4 пользователя(ей) сказали cпасибо:
Derzkiy (29.10.2009), PavelQwa (21.02.2010), TAMBIK (08.11.2009), vovka1488 (28.05.2011)
Старый 08.11.2009, 16:19   #17
 Разведчик
Аватар для TAMBIK
 
TAMBIK на правильном пути
Регистрация: 08.11.2009
Сообщений: 19
Популярность: 58
Сказал(а) спасибо: 8
Поблагодарили 24 раз(а) в 15 сообщениях
 
По умолчанию Re: Скрипты для l2phx

АвТОзаТоЧкА--- авто-gracia_final +1.
автор я
www.coderx.ru
l2phx.3.5.28.151
Код:
//  авто-gracia_final +1. 
//  хроники  Грация ФИНАЛ
//  Соцдействие ДА открыть управление скриптом
//  в пати чат пишем уровень заточки
//  можно менять в процесе работы скрипта
//  заточить один предмет чтоб запомнить чем и что точить
//  дальше скрипт сам точит до указаного уровня заточки
//  все предметы ОДИНАКОВЫЕ  с  ПЕРВЫМ  заточеным 
//  предметы точатся добавляя по +1 на предмет 
//  т.е если у вас предметы с  одинаковым уровнем заточки например 0
//  будет точится первый предмет до +1, потом второй до +1 и т.д
//  если предмет при заточки блесс скрол слетел на 0 или на уровень как у вас на сервере
//  то будет точиться он пока несравняется с остальными
//   и т.д
//  пока недостигнете заданого уровня заточки
//  если предметов более 1 то один остается 
//  АВТОР ==>>>> TAMBIK
program Enchant_gracia;
   const
//===========================================

   myname='TAMBIK'; //<<== пишем свой НИК

   max=80;//<<== колличество ячеек в рюкзаке

    
//===========================================
    HTML='<html><body><center>'+
 '<img src="L2UI_CH3.herotower_deco width=256 height=32>'+
 '<img src="L2UI.SquareWhite" width=260 height=1>'+
 '<font color="04fbfb">Cкрипт автозаточка для gracia_final</font><br>'+
 '<img src="L2UI.SquareWhite" width=260 height=1>'+
 '<img src="L2UI.Squarewidth" width=260 height=1>'+
 '<font color="04fbfb">системные сообщения</font><br>'+
 '<button value="в к л" action="bypass -3"      width=80 height=15  back="sek.cbui94"  fore="sek.cbui92">'+
 '<img src="L2UI.SquareWhite" width=60 height=1>'+
 '<img src="L2UI.Squarewidth" width=60 height=4>'+
 '<font color="04fbfb">             </font><br>'+
 '<button value=" в ы к л " action="bypass -4" width=80 height=15  back="sek.cbui94"  fore="sek.cbui92">'+
 '<img src="L2UI.SquareWhite" width=60 height=1>'+
 '<img src="L2UI.Squarewidth" width=60 height=4>'+ 
 '<font color="04fbfb">             </font><br>'+
 '<img src="L2UI.SquareWhite" width=260 height=1>'+
 '<img src="L2UI.Squarewidth" width=260 height=4>'+
 '<font color="04fbfb">АВТОЗАТОЧКА</font><br>'+
 '<font color="04fbfb">             </font><br>'+
 '<button value="П У С К" action="bypass  -pusk"     width=100 height=15 back="sek.cbui94"  fore="sek.cbui92">'+
 '<img src="L2UI.SquareWhite" width=60 height=1>'+
 '<img src="L2UI.Squarewidth" width=60 height=4>'+
 '<font color="04fbfb">          </font><br>'+
 '<button value="С Т О П" action="bypass  -stop"     width=100 height=20 back="sek.cbui94"  fore="sek.cbui92">'+
 '<img src="L2UI.SquareWhite" width=60 height=1>'+
 '<img src="L2UI.Squarewidth" width=60 height=4>'+ 
 '<font color="04fbfb">          </font><br>'+
 '<img src="L2UI.SquareWhite" width=260 height=1>'+
 '<img src="L2UI.Squarewidth" width=260 height=4>'+
 '<img src="L2UI.SquareWhite" width=60 height=1>'+
 '<img src="L2UI.Squarewidth" width=60 height=4>'+ 
 '<font color="LEVEL">Автор TAMBIK</font><br>'+
 '</center></body></html>';
//==========================================
  var
    BaseItems:array[1..max,1..11] of integer;
    Baselvl:array[0..max] of integer;
    Timer01: TTimer;
    Timer02: TTimer;
    Timer03: TTimer;

    mytext:string; 
    Bypass:string; 
    autostart,start,autoMsg:Boolean;
    flag : Boolean;
     t,l,d,x,y,ii,i:integer;

    ListSize,ItemEnch:word; 
    textID,itemID:integer;
    enchantObjectID:integer;
    enchantID,skrolObjectID:integer; 
    ItemOID,objectOID:integer;  
    sumskrol,sumitemID,sumitem:integer;
    maxlvl,minlvl,enchlvl,selectlvl:integer;
    skrolID,skrolObj:integer;
    minEnchitem:integer;
     object,index : integer;
//==========================================
//  ShowHTML(HTML);
Procedure ShowHTML( _html : string );
begin
  buf:=#$19;
  WriteD(5);
  WriteS(_HTML);
  SendToClientEx(myname);
   end;
//========================
procedure ActionUse;
 begin
     Bypass:=ReadS(2);
     case Bypass of
  '-3':begin  autoMsg:=true; end;
  '-4':begin  autoMsg:=false; end;
  '-pusk':begin 
   if (autostart=false) then SendMsg2( 'предмет незаточен или пакеты неприняты !' );
   if (maxlvl=0) then SendMsg2( '  Неуказан Уровень Заточки  !' );
    SendMsg2( '_______________________________' );
   if autostart and  (maxlvl>0)  then begin
        buf:=hstr('14');
        SendToServerEx(myname);
      SendMsg2( '        ! ! !   П О Е Х А Л И    ! ! !' );
      SendMsg2( '_______________________________' );
      start:=true;
      Timer01.enabled:=true;// вкл таймер выбора свитка
       end;
     end;
  '-stop':begin
     deleteBase;
     start:=false;
     enchantID:=0;
     ItemEnch:=0;
      minlvl:=0;
     sumitem:=0;
     Timer01.enabled:=false;
     Timer02.enabled:=false;
     Timer03.enabled:=false;
    SendMsg2( '         ! ! !   С Т О П   ! ! ! ' );
    stopselectskrol;
    index :=0;
 for ii:=1 to max do 
  Baselvl[ii]:=-1;
   end;
 end;
end;
//===========================================
procedure SendMsg2(msg:string);
begin 
  buf:=#$4A;
  WriteD(0);
  WriteD(3);
  WriteS('');
  WriteS(msg);
  SendToClientEx(myname);
end;
//===========================================
procedure Resultmaxlvl;
var
  i:integer;
begin
    i:=2;
    mytext:=ReadS(i);
    textID:=ReadD(i);
 if (textID=3)  then begin
     maxlvl:=StrToInt(mytext);
SendMsg2( '  установлен Уровень Заточки: '+IntToStr(maxlvl)+'' ); 
end;
end;
//.............................................................................. 
procedure ItemList;
var
  i, j, k: integer;
  count,x:integer; 
 begin
   count:=0;
   x:=0;
   y:=0;
   j:=4; //пропускаем дo ListSize
  ListSize:=ReadH(j); 
   count:=round((Length(pck)-5) / ListSize);// длина блока
  for i:=1 to ListSize do
  if (i<=ListSize) then begin
      BaseItems[i,1]:=ReadH(j);  //ItemType1- 1:одето броня. 0:бижа. 4:в рюкзаке
      BaseItems[i,2]:=ReadD(j);  //ObjectID
      BaseItems[i,3]:=ReadD(j);  //ItemID
      BaseItems[i,4]:=ReadD(j);  //LocationSlot
      BaseItems[i,5]:=ReadD(j);  //  Amount: 
      BaseItems[i,6]:=ReadD(j);  //  Amount: 
      BaseItems[i,7]:=ReadH(j);//ItemType2
      BaseItems[i,8]:=ReadH(j);// CustomType1
      BaseItems[i,9]:=ReadH(j);//isEquipped: 
      BaseItems[i,10]:=ReadD(j);//BodyPart
      BaseItems[i,11]:=ReadH(j);//EnchantLevel
             inc(x); // счетчик 
            //y := пропускаем до следущего блока
    y:=count*x-(j-6);// . 6= длина ListSize + 4 байта пропуска в начале пакета
            inc(j,y); 
  end else for k:=1 to 11 do BaseItems[i,k]:=0; // забиваем нулями
         addenchantitemID;
   
if (skrolID>0)  then begin
    sumskrol:=Getitem(skrolID,3,5);//считаем SKROL
if autoMsg  then SendMsg2 ('   SKROL ... c  ID : '+IntToStr(skrolID)+' =  '+IntToStr(sumskrol)+' ШТ ');
if start and (0<sumskrol) then  Timer01.enabled:=true;// вкл таймер выбора свитка
if (sumskrol=0)  then  begin
   SendMsg2 ('........ НЕДОСТАТОЧНО  SKROL........  ');
  SendMsg2 ('___ О С Т А Н О В Л Е Н О ___ ');
   start:=false;
 end;
end;
end;
//=============================
procedure EnchantResult;
  begin
   deleteBase;
   index :=0;
 for ii:=1 to max do 
  Baselvl[ii]:=-1;
  end;
//=============================
procedure deleteBase;
var
  i,j,k:integer;  
 begin
    for i:=1 to max do
      BaseItems[i,1]:=0;
      BaseItems[i,2]:=0; //ObjectID  
      BaseItems[i,3]:=0;  //ItemID
      BaseItems[i,4]:=0;  
      BaseItems[i,5]:=0; 
      BaseItems[i,6]:=0; 
      BaseItems[i,7]:=0;
      BaseItems[i,8]:=0;
      BaseItems[i,9]:=0;
      BaseItems[i,10]:=0;
      BaseItems[i,11]:=0;
       inc(j,y);  
end;         
//===========================
function Getitem(Obj,up,down:integer): integer; 
var 
  i: integer;
begin
 Result:= 0; //В начале у нас 0
  for i:=1 to max do
    if (BaseItems[i,up]=Obj) then begin
      Result:=BaseItems[i,down];
   end;
end;
//===========================
function Getsumitem(Obj,up,down:integer): integer; 
var 
  i: integer;
begin
 Result:= 0; //В начале у нас 0
  for i:=1 to max do
    if (BaseItems[i,up]=Obj)  then begin
      Result:=Result+BaseItems[i,down];
   end;
end;
//=============================

// добавляем в базу  ЛВЛ заточки
 procedure  addenchantitemID;
 begin
         for i:=1 to max do
 if (BaseItems[i,3] = ItemOID)  then  begin
        enchlvl:=BaseItems[i,11];
    flag:=false; 
           for ii:=1 to max do
   if (Baselvl[ii] = enchlvl) then  begin // текущий  уже есть в массиве,
       flag := true;
         BREAK; { прекращаем цикл }
           end;
 if (flag = false) then begin
        for ii:=1 to max do 
   if (Baselvl[ii]=-1) then begin // добавим   в массив,
        Baselvl[ii]:=enchlvl;  
          index :=ii;
       BREAK; { прекращаем цикл }
  end;
end;
end;
end;
//========================== 
 procedure ChooseInventory;
var
 OID, lvl:integer;
begin
  if (ItemOID>0) and start then  begin
           sumitemID:=0;
      sumitemID:=Getsumitem(ItemOID,3,5); // считаем предметы для заточки
              minlvl:=Baselvl[1];
       for ii:=2  to   index  do   
  if  Baselvl[ii] < minlvl   then  
        minlvl:=Baselvl[ii];// мин заточка 
         objectOID:=0;
 if (sumitemID > sumitem) then objectOID:=GetObjectID(ItemOID);//находим по ItemID  предмет с ObjectID
 if (objectOID = 0)  then begin
              start:=false;
      SendMsg2('Больше предметов c ID : '+IntToStr(ItemOID)+' для заточки НЕТ ! ! ! ! ');
           lvl:=0;
         for i:=1 to max do
  if (BaseItems[i,3] = ItemOID) then  begin
        OID:=BaseItems[i,2];
        lvl:=BaseItems[i,11];
SendMsg2('Предмет  c ID : '+IntToStr(ItemOID)+'  с ObjectID : '+IntToStr(OID)+'  заточен до : '+IntToStr(lvl)+' ');
   end;
 end;
end;
end;
//=========================
//находим enchantID предмета по  ItemID для заточки
function GetObjectID(ItemOID:integer) : integer;
var
  ID,i:integer;
begin
enchantID:= 0;
  ItemEnch:=0;  
  Result:= 0;
 if autoMsg  then   SendMsg2( '*******************************************' );
 if (ItemOID>0) then begin
 if autoMsg  then  SendMsg2 ('    ищем ObjectID предмета с ID  :  ' +IntToStr(ItemOID)+' ');
 if autoMsg  then  SendMsg2('------------------------------' );

     for i:=1 to max do
 if (BaseItems[i,3] = ItemOID) and (BaseItems[i,11] = minlvl) and (BaseItems[i,11] < maxlvl) then begin
     enchantID:=BaseItems[i,2];
      Result:=BaseItems[i,2];
     ItemEnch:=BaseItems[i,11];
if autoMsg  then  SendMsg2('   ..... найден предмет для заточки  ..... ');
if autoMsg  then  SendMsg2(' ID  : '+IntToStr(ItemOID)+' и ObjectID : '+IntToStr(enchantID)+'   заточен до : '+IntToStr(ItemEnch)+'');
if autoMsg  then  SendMsg2('------------------------------' );
     if (enchantID>0) then  Timer02.enabled:=true;
      Break;  // прерываем дальнейший перебор массива.
 end;
end;
 end;
//==========================
procedure stopselectskrol;
begin
  buf:=hstr('D04E00');
 SendToServerEx(myname);
end;
//===================================
procedure OnTimer01(Sender: TObject);
begin
  buf:=#$19;
  WriteD(skrolObjectID);
  WriteD(0);
  SendToServerEx(myname);
 Timer01.enabled:=false;
   end;
//--------------------------
procedure OnTimer02(Sender: TObject);
begin
   buf:=hstr('D04C00');
   WriteD(enchantID);
   SendToServerEx(myname);
   Timer02.enabled:=false;
   Timer03.enabled:=true;
   end;
procedure OnTimer03(Sender: TObject);
begin 
   buf:=#$5F;
   WriteD(enchantID);
   WriteD(0);
   SendToServerEx(myname);
   Timer03.enabled:=false;
if autoMsg  then SendMsg2('      .....    Точим Предмет    ..... ');
if autoMsg  then SendMsg2( ' ID :  '+IntToStr(ItemOID)+' и ObjectID : '+IntToStr(enchantID)+'  -  до  :  '+IntToStr(maxlvl)+'' );
if autoMsg  then SendMsg2( '_______________________________' );
 end;
//-----------------------------------------
procedure Init;
begin
  minlvl:=0;    maxlvl:=0;  enchlvl:=0; ItemEnch:=0;
  sumskrol:=0;  sumitem:=0; sumitemID:=0;
  objectOID:=0; object:=0;  enchantObjectID:=0;
  enchantID:=0; skrolObjectID:=0;
  skrolID:=0;   itemID:=0; ItemOID:=0;
  t:=0;l:=0;d:=0;index :=0;
   
   flag:=false; 
   autostart:=false;
   start:=false;
   autoMsg:=true; 

   Timer01:=TTimer.Create(nil);
   Timer01.OnTimer:=@OnTimer01;
   Timer01.enabled:=false;
   Timer01.interval:=400; //<<== время  выбора свитка
 
   Timer02:=TTimer.Create(nil);
   Timer02.OnTimer:=@OnTimer02;
   Timer02.enabled:=false;
   Timer02.interval:=400; //<<== время  выбора предмета

   Timer03:=TTimer.Create(nil);
   Timer03.OnTimer:=@OnTimer03;
   Timer03.enabled:=false;
   Timer03.interval:=4500; //<<== время между заточкой  

 SendMsg2( '   в пати чат пишем уровень заточки' );
 SendMsg2( '    заточить предмет   !   !' );
 SendMsg2( '  Соцдействие  ДА - откр окно управления ' );
 SendMsg2( '------------------------------------- ' );
   buf:=hstr('14');
   SendToServerEx(myname);
  for ii:=1 to max do 
      Baselvl[ii]:=-1;
 end;
procedure Free;
begin
  Timer01.free;
  Timer02.free;
  Timer03.free;
end;
 //=========================
begin
//не обрабатываем пустые пакеты
  if pck='' then exit; 
 if FromServer and (pck[1]=#$87) then  EnchantResult;
 if FromServer and (pck[1]=#$11) then ItemList;
 if FromServer and (pck[1]=#$7C) then ChooseInventory;
 if FromClient and (pck[1]=#$49) then begin Resultmaxlvl;pck:='';exit;end;     //
 if FromClient and (pck[1]=#$56) and (ReadD(2)=24) then begin
           ShowHTML(HTML); pck:='';exit; end; 
 if FromClient and (pck[1]=#$23)  then begin ActionUse; pck:='';exit;end;     //
begin
 if (start=false) and FromClient then   
    case pck[1] of
 #$19:begin 
        stopselectskrol;
        buf:=hstr('14');
        SendToServerEx(myname);
      t:=1;
    skrolObjectID:=ReadD(2);
    skrolID:= Getitem(skrolObjectID,2,3);//находим по ObjectID скрол с ItemID
    SendMsg2(' .................' );
    SendMsg2('   активирован SKROL  ID : '+IntToStr(skrolID)+' ' );
    SendMsg2(' .................' );
           end;
 #$D0:if  ReadH(2)=76 then  begin
       l:=1;
       SendMsg2('    окно выбора предмета ' );
       SendMsg2(' .................' );
     end;
 #$5F:begin
       d:=1;
    enchantObjectID:=ReadD(2);
    if  (t=1) and (l=1) and (d=1) then begin
        autostart:=true;
       ItemOID:= Getitem(enchantObjectID,2,3);//находим по ObjectID предмет с ItemID
    SendMsg2 ('  ID предмета :  '+IntToStr(ItemOID)+'   для заточки');
  sumitemID:=0;
  sumitem:=0;
  sumitemID:=Getsumitem(ItemOID,3,5); // считаем предметы для заточки
  SendMsg2 (' Предметов для заточки с  ID :  '+IntToStr(ItemOID)+'  =  '+IntToStr(sumitemID)+' ШТ ');
       if (sumitemID > 1) then sumitem:=1;
       stopselectskrol;
      end;
     end;
   end;
end;
end.

Последний раз редактировалось TAMBIK; 08.11.2009 в 16:22.
  Ответить с цитированием
2 пользователя(ей) сказали cпасибо:
6a4a (14.11.2009), DDOSer (21.02.2010)
Старый 09.11.2009, 17:22   #18
 Сержант
Аватар для ISharkI
 
ISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражания
Регистрация: 29.10.2009
Сообщений: 117
Популярность: 1783
Сказал(а) спасибо: 78
Поблагодарили 242 раз(а) в 79 сообщениях
Отправить сообщение для ISharkI с помощью ICQ
 
По умолчанию Re: Скрипты для l2phx

Мб у каго то нету Скрипт на ФЛуд чата без бана..открывает отдельное окно чата.
Код:
const
     MaxMessages = 1000;
var
  m: TMemo;
  frm:TForm;
  penel: TPanel;
  etext:  tedit;
  button: tbutton;
  box   : TCheckBox;
  every : TEdit;
  _Name : TEdit;
  i: Integer;
  tm:TTimer;
  Message, Name: String;

procedure SendMs(Sender: TObject);
var
  Msg, Nm: String;
  dd: integer;
begin
  if etext.text<>'' then begin
    buf:=#$38;
    case etext.text[1] of
      '!': begin
        Msg:=Copy(etext.text,2,1000);
        dd:=1;
        nm:='';
      end;
      '$': begin
        Msg:=Copy(etext.text,2,1000);
        dd:=9;
        nm:='';
      end;
      '+': begin
        Msg:=Copy(etext.text,2,1000);
        dd:=8;
        nm:='';
      end;
      '"': begin
        dd:=pos(' ', etext.text);
        Msg:=Copy(etext.text,dd+1,1000);
        nm:=Copy(etext.text,2,dd-3);
        dd:=2;
      end;
      '#': begin
        Msg:=Copy(etext.text,2,1000);
        dd:=3;
        nm:='';
      end;
      '@': begin
        Msg:=Copy(etext.text,2,1000);
        dd:=4;
        nm:='';
      end;
      else begin
        Msg:=etext.text;
        dd:=0;
        nm:='';
      end;
    end;
    WriteS(Msg);
    WriteD(dd);
    if nm<>'' then WriteS(Nm);
    SendToServerEx(_Name.Text);
  end;
end;
procedure onNewCommand(obj:TObject;key:string);
var i:integer;
var symbol:Variant;
var after:string;
begin
     if (key[1]=#$0D) then begin
         SendMs(obj);
         symbol := etext.Text[1];
         after := '';
         if symbol = '#' then after := '#';
         if symbol = '!' then after := '!';
         if symbol = '@' then after := '@';
         if symbol = '$' then after := '$';
         if symbol = '%' then after := '%';
         etext.Text := after;
     end;
end;
procedure onTimer(Sender:TObject);
begin
  tm.Interval := StrToInt(every.Text);
  if box.checked = true then SendMs(Sender);
end;
procedure Init;
begin
  frm := TForm.Create(nil);
  frm.Caption := 'Chat';
  frm.BorderStyle := bsSizeable;
  frm.Position := poDesigned ;
  frm.Width:=400;
  frm.Height:=600;
  m:=TMemo.Create(frm);
  m.parent:=frm;
  m.align:=alClient;
  m.ReadOnly:=true;
  m.ScrollBars:=ssBoth;
  penel:=TPanel.Create(frm);
  penel.parent:=frm;
  penel.align:=alBottom;
  penel.height:=48;
  etext:=tedit.Create(penel);
  etext.parent:=penel;
  button:=tbutton.Create(penel);
  button.parent:=penel;
  button.top := etext.height;
  button.caption:='Send';
  button.onClick:=@SendMs;
  box := TCheckBox.Create(penel);
  box.parent := penel;
  box.Top := etext.height + 2;
  box.Left := button.width + button.left +2;
  box.Caption := 'Шторм через: ';
  every:=tedit.Create(penel);
  every.parent:=penel;
  every.Left := box.Left + box.Width;
  every.Top := button.top;
  every.Text := IntToStr(3000);
  tm := TTimer.Create(frm);
  tm.Interval := 1000;
  tm.Enabled := true;
  tm.OnTimer := @OnTimer;
  etext.OnKeyPress := @onNewCommand;
  _Name:=tedit.Create(frm);
  _Name.parent:=frm;

  _Name.Text := '';
  frm.Show;
end;

procedure SaveToFile(prefix:string);
var name:string;
begin
     name := prefix+'.'+ConnectName+'.'+DateToStr(Date)+'.'+TimeToStr(Time)+'.txt';
     while Pos(':',name) <> 0 do begin
           name[Pos(':',name)] := '-';
     end;
     m.Lines.SaveToFile(name);
end;

procedure Free;
begin
  SaveToFile('ChatLog');
  box.Free;
  every.Free;
  tm.Free;
  etext.Free;
  button.Free;
  penel.Free;
  m.Free;
  frm.Free;
end;



var tp:integer;
var ct:string;
var MessageCounter:integer;
begin
if _Name.Text = '' then _Name.Text := ConnectName;
if FromServer and (ConnectName = _Name.Text) and (pck[1]=#$4a) then
  begin
    i:=10;
    name:=ReadS(i);
    message:=ReadS(i);
    tp := ReadD(6);
    ct := '???';
    if tp = 0 then ct := 'GNR';
    if tp = 8 then ct := 'TRD';
    if tp = 3 then ct := 'PRT';
    if tp = 4 then ct := 'CLN';
    if tp = 9 then ct := 'ALY';

    ct := DateToStr(Date) + ' '+ TimeToStr(Time) + ', '+ ct;

    if name='' then name:='Объявление: ';
    m.Lines.Add('['+ct+'] '+Name+': '+message);

    if MessageCounter > MaxMessages then begin
       SaveToFile('Backup');
       //m.Lines.Add('BACKUPED');
       MessageCounter := 0;
    end;
    MessageCounter := MessageCounter+1;
  end;
end.

Последний раз редактировалось ISharkI; 09.11.2009 в 17:26.
  Ответить с цитированием
3 пользователя(ей) сказали cпасибо:
DDOSer (22.03.2010), GraNIT (09.11.2009), Jumper (01.01.2010)
Старый 09.11.2009, 17:40   #19
 Сержант
Аватар для ISharkI
 
ISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражания
Регистрация: 29.10.2009
Сообщений: 117
Популярность: 1783
Сказал(а) спасибо: 78
Поблагодарили 242 раз(а) в 79 сообщениях
Отправить сообщение для ISharkI с помощью ICQ
 
По умолчанию Re: Скрипты для l2phx

Скрипт называется MasterPvP может у каго нету=)

Код:
//by mks
//помошник в PvP и PK.
//пьет CP и HP пробирки в нужное время(можно добавить и MP для пвп серваков), и освобождает вас от небоходимости зажатия клавиши Ctrl, которая так меня раздражает!(думаю это раздражает и не только меня)
///////////////////////////////////////////////////////
///////////////Master PvP by MKS v.1.0/////////////////
///////////////////////////////////////////////////////

//после активации скрипта необходимо выпить сначала банку CP, потом HP для получения их ID
const
   Name='Name';  //ник перса
var
   CurHP,MaxHP,CurCP,MaxCP: integer;
   CPuse,HPuse: string;

   TimerCP,TimerHP: TTimer;

procedure Init; //Вызывается при включении скрипта
begin
  TimerCP:=TTimer.Create(nil);
  TimerCP.OnTimer:=@OnTimerCP;
  TimerCP.enabled:=false;
  TimerCP.interval:=10000;  //интервал 1сек, т.к. чаще пить CP всеравно не будет, дабы не засорять трафик

  TimerHP:=TTimer.Create(nil);
  TimerHP.OnTimer:=@OnTimerHP;
  TimerHP.enabled:=false;
  TimerHP.interval:=15000; //интервал 15сек, т.к. действие одной бутылки = 15сек
end;

procedure OnTimerCP(Sender: TObject);
begin
  buf:=CPuse;
  SendToServerEx(Name);
end;
procedure OnTimerHP(Sender: TObject);
begin
  buf:=HPuse;
  SendToServerEx(Name);
end;

procedure Free; //Вызывается при выключении скрипта
begin
  TimerCP.free;
  TimerHP.free;
  HPuse:='';
  CPuse:='';
end;

//основная часть скрипта
//вызывается при приходе каждого пакета если скрипт включен
begin
//пьем сначала CP, потом HP банку что б запомнить их ID(я решил взять эти пакеты целиком, дабы не усложнять)
  if FromClient and (ConnectName=Name) and (pck[1]=#$14) and (CPuse='') then CPuse:=pck;
  if FromClient and (ConnectName=Name) and (pck[1]=#$14) and (CPuse<>pck) and (HPuse='') then HPuse:=pck;

//считываем текущие и максимальные значения CP и HP
if FromServer and (pck[1]+pck[6]=#$0E#$04) then
  begin
    CurHP:=ReadD(14);
    MaxHP:=ReadD(22);
    CurCP:=ReadD(30);
    MaxCP:=ReadD(38);
  end;

if CurHP<>0 then
begin

//если вы используете не грэйтер CP то вместо 200 подставьте кол-во CP сколько восстанавливает 1 банка
if (CurCP<MaxCP-200) and (CPuse<>'') then TimerCP.enabled:=true else TimerCP.enabled:=false;
if (CurHP<MaxHP) and (HPuse<>'') then TimerHP.enabled:=true else TimerHP.enabled:=false;

//если используем скилы или заклинания добавляем флаг Ctrl, что б не надо было удерживать контрол
if FromClient and (ConnectName=Name) and (pck[1]=#$2F) then pck[6]:=#$01;

//если наводим таргет, повторное нажатие по нему подменивается на атаку, опять же что б не удерживать контрол
if FromClient and (ConnectName=Name) and (pck[1]=#$04) then pck[1]:=#$0A;
end
else 
begin
TimerHP.enabled:=false;
TimerCP.enabled:=false;
end;


end.
  Ответить с цитированием
Пользователь сказал cпасибо:
GraNIT (09.11.2009)
Старый 09.11.2009, 19:35   #20
 Разведчик
Аватар для H0oL1GaN
 
H0oL1GaN на правильном путиH0oL1GaN на правильном пути
Регистрация: 11.08.2009
Сообщений: 35
Популярность: 104
Сказал(а) спасибо: 20
Поблагодарили 48 раз(а) в 18 сообщениях
Отправить сообщение для H0oL1GaN с помощью ICQ
 
По умолчанию Re: Скрипты для l2phx

Все скрипты Роботают на Интерлюде, некоторые из них роботают и на С4, может и на камаеле, лично кроме интерлюда не тестил.
В самих скриптах написано где они роботают.
вот Пример: Скрипт слежки за РБ © NLObP , в самом скрипте есть строчка :
interlude=true; //Interlude - true, C4 - false
ето значит что роботает на ИТ\С4.
для ИТ стоит "True" , если вы играете на С4 в етой строчке нужно поменять "True на false" и сохранить.
Вот вроде нормально)


**********

раз так то выложу скипт на тп каторым пользуюсь я хД он круче чем скрипт NLObP'а
Автор скрипта © tiranous


[Ссылки могут видеть только зарегистрированные пользователи. ]
[Ссылки могут видеть только зарегистрированные пользователи. ]

**********

А вот скрипт , слежка за РБ ставите твинка возле рб и когда он появится то твинк будет строчить тому кому надо в ПМ
Автор скрипта © NLObP


[Ссылки могут видеть только зарегистрированные пользователи. ]
[Ссылки могут видеть только зарегистрированные пользователи. ]

**********

Скрипт, Бегущий титул
title := 'Admin postav norm inet lagaet ppc!!! '; - тут ставим текст каторый хотите что б двигался
titleoff := 'ea DRAKON nax #1'; - а ето ваш титул каторый будет стоять после выключения скрипта
Автор скрипта © Br1nk


[Ссылки могут видеть только зарегистрированные пользователи. ]
[Ссылки могут видеть только зарегистрированные пользователи. ]


**********

Ах, вот еще скрипт на ловлю рыбы, описание всередине..
Автор © NLObP


[Ссылки могут видеть только зарегистрированные пользователи. ]
[Ссылки могут видеть только зарегистрированные пользователи. ]

**********

Скрипт, ТП к сопартийцу
Автор © CrazyS


[Ссылки могут видеть только зарегистрированные пользователи. ]
[Ссылки могут видеть только зарегистрированные пользователи. ]

**********

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


[Ссылки могут видеть только зарегистрированные пользователи. ]
[Ссылки могут видеть только зарегистрированные пользователи. ]

**********

Думаю отчёта с вирус тотала ненадо, т.к. ето простые .тхт файлы)
да еще и я не занимаюсь таким))

Пользуемся ) на здоровье)
Не забываем жать ©П©)))


P.S. - Если гдето не та ссылка ну например 2 одинаковые ссылки, то пишыте я перезалью, просто я быстро писал может гдето чтото пропустил)
________________
Зачем Ла2 себе скачал? Зачем ее установил? Я сон нормальный потерял. Про жизнь реальную забыл.

Последний раз редактировалось H0oL1GaN; 10.11.2009 в 16:07.
  Ответить с цитированием
5 пользователя(ей) сказали cпасибо:
DDOSer (21.02.2010), GraNIT (10.11.2009), ISharkI (10.11.2009), lordgrins (05.01.2012), mapuo (09.11.2009)
Старый 10.11.2009, 13:03   #21
 Разведчик
Аватар для igormon
 
igormon на правильном пути
Регистрация: 06.09.2009
Сообщений: 5
Популярность: 30
Сказал(а) спасибо: 14
Поблагодарили 10 раз(а) в 5 сообщениях
Отправить сообщение для igormon с помощью ICQ
 
Post Re: Скрипты для l2phx

Код:
const
   nik='NIK';   //сюда свой ник
   Enchant=5;

var
   UseItem, EnchantItem: string;
   Count, CurrentEnch: integer;
   Timer01: TTimer;

procedure Init;
begin
   Timer01:=TTimer.Create(nil);
   Timer01.OnTimer:=@OnTimer01;
   Timer01.enabled:=false;
   Timer01.interval:=3200;   //скорость точки
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.
ВОТ НОРМ СКРИПТ НА АВТО ТОЧКУ.....здесь не надо нечего делать кроме как сперва врубить скрипт, 1 раз заточить и нажать соц. действие привецтвие..... токо есть одна проблема оно точитса без ограничения.....переделайте плз этот скрипт чтобы останавливалось до указанои точки очень прошу.....
________________
Пум-пу-Пумп............

Последний раз редактировалось GraNIT; 01.03.2010 в 18:46.
  Ответить с цитированием
Пользователь сказал cпасибо:
DDOSer (22.03.2010)
Старый 10.11.2009, 15:03   #22
 Сержант
Аватар для ISharkI
 
ISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражания
Регистрация: 29.10.2009
Сообщений: 117
Популярность: 1783
Сказал(а) спасибо: 78
Поблагодарили 242 раз(а) в 79 сообщениях
Отправить сообщение для ISharkI с помощью ICQ
 
По умолчанию Re: Скрипты для l2phx

Цитата:
Сообщение от MestПосмотреть сообщение
Антитаргет (пробывал на 3.1.9)
Код:
var act:integer; me1:char; me2:char; me3:char; me4:char; nm:integer; t1:char; t2:char; t3:char; t4:char; nt:integer; shade:integer; mz:integer; pz:integer; tz:integer; hz:integer;

procedure SendMsg(msg:string);
begin
buf:=#$4A;
WriteD(0);
WriteD(10);
WriteS('');
WriteS(msg);
SendToClient;
end;

begin


//анализ ИД себя

if nm<>1 then
begin
if FromServer and (pck[1]=#$04) then
begin
me1:=pck[18];
me2:=pck[19];
me3:=pck[20];
me4:=pck[21];
nm:= 1;
end;
end;


//защитная часть

if FromClient and (pck[1]=#$1B) and (pck[2]=#$06) then
begin
act:=1;
SendMsg('AT system on');
end;

if FromClient and (pck[1]=#$1B) and (pck[2]=#$05) then
begin
act:=0;
SendMsg('AT system off');
end;

if FromClient and (pck=#$38#$3C#$04#$2B#$00#$00#$00#$03#$00#$00#$00) then
begin
mz:=1;
SendMsg('Advanced m.def on')
end;

if FromClient and (pck=#$38#$3C#$04#$2D#$00#$00#$00#$03#$00#$00#$00) then
begin
mz:=0;
SendMsg('Advanced m.def off')
end;

if FromClient and (pck=#$38#$3F#$04#$2B#$00#$00#$00#$03#$00#$00#$00) then
begin
pz:=1;
SendMsg('Advanced p.def on')
end;

if FromClient and (pck=#$38#$3F#$04#$2D#$00#$00#$00#$03#$00#$00#$00) then
begin
pz:=0;
SendMsg('Advanced p.def off')
end;

if FromClient and (pck=#$38#$42#$04#$2B#$00#$00#$00#$03#$00#$00#$00) then
begin
tz:=1;
SendMsg('Anti-target on')
end;

if FromClient and (pck=#$38#$42#$04#$2D#$00#$00#$00#$03#$00#$00#$00) then
begin
tz:=0;
SendMsg('Anti-target off')
end;

if FromClient and (pck=#$38#$45#$04#$2B#$00#$00#$00#$03#$00#$00#$00) then
begin
hz:=1;
SendMsg('Hit"n"Hide on')
end;

if FromClient and (pck=#$38#$45#$04#$2D#$00#$00#$00#$03#$00#$00#$00) then
begin
hz:=0;
SendMsg('Hit"n"Hide off')
end;

if FromClient and (pck[1]=#$1B) and (pck[2]=#$03) then
begin
buf:=#$48#$00#$00#$FE#$FF#$7F#$AB#$03#$00#$E9#$F1#$FF#$FF#$88#$D4#$00#$00#$00#$00#$00#$00;
SendToServer;
end;

if act=1 then
begin

if tz=1 then
begin
if FromServer and (pck[1]=#$29) and (pck[6] = me1) and (pck[7] = me2) and (pck[8] = me3) and (pck[9] = me4) then
begin
buf:=#$48#$00#$00#$FE#$FF#$7F#$AB#$03#$00#$E9#$F1#$FF#$FF#$88#$D4#$00#$00#$00#$00#$00#$00;
SendToServer;
end;
end;

if mz=1 then
begin
if FromServer and (pck[1]=#$48) and (pck[6] = me1) and (pck[7] = me2) and (pck[8] = me3) and (pck[9] = me4) and (pck[2] <> me1) and (pck[3] <> me2) and (pck[4] <> me3) and (pck[5] <> me4) then
begin
buf:=#$48#$00#$00#$FE#$FF#$7F#$AB#$03#$00#$E9#$F1#$FF#$FF#$88#$D4#$00#$00#$00#$00#$00#$00;
SendToServer;
end;
end;

if pz=1 then
begin
if FromServer and (pck[1]=#$05) and (pck[6] = me1) and (pck[7] = me2) and (pck[8] = me3) and (pck[9] = me4) and (pck[2] <> me1) and (pck[3] <> me2) and (pck[4] <> me3) and (pck[5] <> me4) then
begin
buf:=#$48#$00#$00#$FE#$FF#$7F#$AB#$03#$00#$E9#$F1#$FF#$FF#$88#$D4#$00#$00#$00#$00#$00#$00;
SendToServer;
end;
end;

if hz=1 then
begin
if FromServer and (pck[1]=#$48) and (pck[6] = me1) and (pck[7] = me2) and (pck[8] = me3) and (pck[9] = me4) then
begin
buf:=#$48#$00#$00#$FE#$FF#$7F#$AB#$03#$00#$E9#$F1#$FF#$FF#$88#$D4#$00#$00#$00#$00#$00#$00;
SendToServer;
end;
end;

end;


//часть таргета

if FromClient and (pck[1]=#$04) then
begin
nt:=1;
t1:=pck[2];
t2:=pck[3];
t3:=pck[4];
t4:=pck[5];
end;

if FromClient and (pck[1]=#$37) then
begin
nt:=0;
end;

if nt=1 then
begin
if FromClient and (pck[1]=#$30) then
begin
buf:=#$04+t1+t2+t3+t4+#$00#$00#$00#$00#$00#$00#$00#$00#$00#$00#$00#$00#$00;
SendToServer;
buf:=#$A6+t1+t2+t3+t4+#$00#$00;
SendToClient;
end;
end;

if FromClient and (pck[1]=#$1B) and (pck[2]=#$04) then
begin
buf:=#$04+t1+t2+t3+t4+#$00#$00#$00#$00#$00#$00#$00#$00#$00#$00#$00#$00#$00;
SendToServer;
buf:=#$A6+t1+t2+t3+t4+#$00#$00;
SendToClient;
end;

//shadowmelt

if FromClient and (pck[1]=#$1B) and (pck[2]=#$07) then
begin
shade:=1;
buf:=#$48#$00#$00#$FE#$FF#$7F#$AB#$03#$00#$E9#$F1#$FF#$FF#$88#$D4#$00#$00#$00#$00#$00#$00;
SendToServer;
SendMsg('Skipped to Shadows');
end;

if FromClient and (pck[1]=#$1B) and (pck[2]=#$08) then
begin
shade:=0;
buf:=#$30#$00#$00;
SendToServer;
SendMsg('Reveal from Darkness');
end;

if shade = 1 then
begin
if FromClient and (pck[1]=#$30) then pck:='';
end;

end.
И так управление - нажимает Social Yes, система запущена, но еще не подключены модули... Подключаем те которые нам нужны...

пишем в ПАТИ ЧАТ:

т+ / т- - Включение/Выелючение АВТО антитаргета - таргет сбрасывется когда вас БЕРУТ НА ТАРГЕТ, тоесть он пытается выделить, а вы сбрасываете!

м+ / м- , п+ / п- - дополнительная магическая и физическая защита, непомню уже сам как работает (да у меня и не работает, изза лагучести инета) но знакомый говорит, если включить их в паре, то сбивает каст когда пытаются кастануть на вас заклинание, и "ичезает" прямо во время физической атаки на вас...

х+ / х- - уход в хайд после каждой своей физической атаки

Там есть еще такая штукенция, что после хайда, предыдущий таргет выберется автоматом (этого не видно в клиенте но он выделится, протестите на мобах)

Social Bow / Social Unaware - исчезнуть и появится, ну это кусок скрипта ХИНТА на его антитаргет.}

Добавлено через 6 минут
Инвиз
(только при том вы не можите двигаться а просто исчезаете, сильной полезности нет , но может кому нить пригодиться)

И так управление - нажимает Social Yes,No

Код:
//Invisible Mode 
var 
  pck48:string; 
  hidden:boolean; 
  i,x,y:integer; 

procedure Init; 
begin 
  hidden:=false; 
  pck48:=''; 
  randomize; 
end; 

procedure SendMsg(msg:string); 
begin 
  buf:=#$4A; 
  WriteD(0); 
  WriteD(2); 
  WriteS('hLaPEx'); 
  WriteS(msg); 
  SendToClient; 
end; 

begin 
  if FromServer then exit; 
  case ord(pck[1]) of 
    $1B:case ord(pck[2]) of 
      $05:begin 
        SendMsg('invisible_mode: Off'); 
        pck:=#$30; 
        hidden:=false; 
      end; 
      $06:begin 
        if pck48='' then exit; 
        SendMsg('invisible_mode: On'); 
        hidden:=true; 
        pck:=pck48; 
        i:=2; 
        x:=ReadD(i); 
        y:=ReadD(i); 
        x:=x+1000+round(random*200)-100; 
        y:=y+1000+round(random*200)-100; 
        buf:=pck; 
        WriteD(x,2); 
        WriteD(y,6); 
        pck:=buf; 
      end; 
    end; 
    $48:pck48:=pck; 
    $30:if hidden then pck:=''; 
  end; 
end.

Ни одно ни другое что то нехочет работать Пишет ошибка в этой строчке procedure SendMsg(msg:string);
________________
Продвижение вашего сайта, увеличение ссылочной массы, продвижение по НЧ-СЧ-ВЧ запросам.

Последний раз редактировалось ISharkI; 10.11.2009 в 15:05. Причина: Забыл добавить кое что
  Ответить с цитированием
Старый 10.11.2009, 16:04   #23
 Разведчик
Аватар для H0oL1GaN
 
H0oL1GaN на правильном путиH0oL1GaN на правильном пути
Регистрация: 11.08.2009
Сообщений: 35
Популярность: 104
Сказал(а) спасибо: 20
Поблагодарили 48 раз(а) в 18 сообщениях
Отправить сообщение для H0oL1GaN с помощью ICQ
 
По умолчанию Re: Скрипты для l2phx

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

что б первый зароботал , я делал текст инит ,в версии 3.4.1.81 и когда у меня выделяло то что плохо написано я просто удалял там какраз строчку ету:
Код:
procedure SendMsg(msg:string);
begin
buf:=#$4A;
WriteD(0);
WriteD(10);
WriteS('');
WriteS(msg);
SendToClient;
end;
и сохраняеш, и должно роботать , у меня впринцыпе роботало .. но говорю еще раз на малом количестве серверов, и зависит от сборки
________________
Зачем Ла2 себе скачал? Зачем ее установил? Я сон нормальный потерял. Про жизнь реальную забыл.

Последний раз редактировалось H0oL1GaN; 10.11.2009 в 16:12.
  Ответить с цитированием
Старый 10.11.2009, 19:36   #24
 Разведчик
Аватар для TAMBIK
 
TAMBIK на правильном пути
Регистрация: 08.11.2009
Сообщений: 19
Популярность: 58
Сказал(а) спасибо: 8
Поблагодарили 24 раз(а) в 15 сообщениях
 
По умолчанию Re: Скрипты для l2phx

надо добавить 2 к SendMsg везде
как пример :
SendMsg2(надо добавить 2 к SendMsg везде);

procedure SendMsg2(msg:string);
  Ответить с цитированием
4 пользователя(ей) сказали cпасибо:
GraNIT (11.11.2009), H0oL1GaN (11.11.2009), ISharkI (10.11.2009), ka3ant1p (11.11.2009)
Старый 14.11.2009, 09:49   #25
Заблокирован
 Пехотинец
Аватар для 6a4a
 
6a4a скоро будет известен6a4a скоро будет известен6a4a скоро будет известен6a4a скоро будет известен
Регистрация: 01.09.2009
Сообщений: 64
Популярность: 331
Сказал(а) спасибо: 35
Поблагодарили 166 раз(а) в 42 сообщениях
Отправить сообщение для 6a4a с помощью ICQ
 
По умолчанию Re: Скрипты для l2phx

Цитата:
Сообщение от ka3ant1pПосмотреть сообщение
Вопрос не в тему конечно, но если кто умеет писать скрипты, скажите плиз какие тут используются языки программирования, а то понимаю отдельные строки но в целом не могу понять, а так как занимаюсь веб программированием смогу в легкую разобраться и писать сам скрипты и тут выкладывать, мб есть какая то литературка почитать? Можно все в ЛС писать

_http://mmoworld.info/f6/gaid-po-napisaniyu-skriptov-dlya-l2phx-875/


Цитата:
Сообщение от igormonПосмотреть сообщение
ВОТ НОРМ СКРИПТ НА АВТО ТОЧКУ.....здесь не надо нечего делать кроме как сперва врубить скрипт, 1 раз заточить и нажать соц. действие привецтвие..... токо есть одна проблема оно точитса без ограничения.....переделайте плз этот скрипт чтобы останавливалось до указанои точки очень прошу.....

ну, раз так хочется - лови:

Код:
const
   nik='NIK';   //сюда свой ник
   Enchant=5;

var
   UseItem, EnchantItem: string;
   Count, CurrentEnch: integer;
   Timer01: TTimer;

procedure Init;
begin
   Timer01:=TTimer.Create(nil);
   Timer01.OnTimer:=@OnTimer01;
   Timer01.enabled:=false;
   Timer01.interval:=3200;   //скорость точки
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
          if ReadD(2)=0 then inc(CurrentEnch);
          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.

Последний раз редактировалось GraNIT; 01.03.2010 в 18:46.
  Ответить с цитированием
5 пользователя(ей) сказали cпасибо:
GraNIT (16.11.2009), igormon (01.03.2010), Jumper (01.01.2010), ka3ant1p (14.11.2009), Федя (14.11.2009)
Старый 14.11.2009, 13:51   #26
 Разведчик
Аватар для TAMBIK
 
TAMBIK на правильном пути
Регистрация: 08.11.2009
Сообщений: 19
Популярность: 58
Сказал(а) спасибо: 8
Поблагодарили 24 раз(а) в 15 сообщениях
 
По умолчанию Re: Скрипты для l2phx

Цитата:
begin
if FromServer and (pck[1]=#$87) then
begin
if ReadD(2)=0 then inc(CurrentEnch);
if CurrentEnch=Enchant then Timer01.enabled:=false;
end;

здесь пакет от сервера о заточки 87
на разных сервах по разному приходит инфа
есть : 0-заточили.2- отмена.3-сломали.
а есть приходит уровень на какой заточили предмет
  Ответить с цитированием
Старый 15.11.2009, 14:49   #27
 Разведчик
Аватар для TAMBIK
 
TAMBIK на правильном пути
Регистрация: 08.11.2009
Сообщений: 19
Популярность: 58
Сказал(а) спасибо: 8
Поблагодарили 24 раз(а) в 15 сообщениях
 
По умолчанию Re: Скрипты для l2phx

Простенький скрипт для "глухих", перенаправляет сообщения
немного добавил
[Ссылки могут видеть только зарегистрированные пользователи. ]
Код:
//===========================================

   myname='TAMBIK'; //<<== пишем свой НИК

//===========================================
// открыть управление соцдействие ДА
// Автор  mks . coderx.ru .добавил TAMBIK
//===========================================
    HTML='<html><body><center>'+
 '<img src="L2UI_CH3.herotower_deco width=256 height=32>'+
 '<img src="L2UI.SquareWhite" width=260 height=1>'+
 '<font color="04fbfb">Cкрипт сообщения на экран</font><br>'+
 '<img src="L2UI.SquareWhite" width=260 height=1>'+
 '<img src="L2UI.Squarewidth" width=260 height=1>'+
 '<font color="04fbfb">системные сообщения</font><br>'+
 '<button value=" Trade " action="bypass Trade"    width=80 height=15  back="sek.cbui94"  fore="sek.cbui92">'+
 '<img src="L2UI.SquareWhite" width=60 height=1>'+
 '<img src="L2UI.Squarewidth" width=60 height=4>'+
 '<button value=" Party " action="bypass Party"    width=80 height=15  back="sek.cbui94"  fore="sek.cbui92">'+
 '<img src="L2UI.SquareWhite" width=60 height=1>'+
 '<img src="L2UI.Squarewidth" width=60 height=4>'+ 
 '<button value=" Clan " action="bypass  Clan"     width=80 height=15 back="sek.cbui94"  fore="sek.cbui92">'+
 '<img src="L2UI.SquareWhite" width=60 height=1>'+
 '<img src="L2UI.Squarewidth" width=60 height=4>'+
 '<button value=" Alli " action="bypass  Alli"     width=80 height=15 back="sek.cbui94"  fore="sek.cbui92">'+
 '<img src="L2UI.SquareWhite" width=60 height=1>'+
 '<img src="L2UI.Squarewidth" width=60 height=4>'+ 
 '<button value=" P M " action="bypass  PM"        width=80 height=15 back="sek.cbui94"  fore="sek.cbui92">'+
 '<img src="L2UI.SquareWhite" width=60 height=1>'+
 '<img src="L2UI.Squarewidth" width=60 height=4>'+ 
 '<button value=" Hero " action="bypass  Hero"     width=80 height=15 back="sek.cbui94"  fore="sek.cbui92">'+
 '<img src="L2UI.SquareWhite" width=60 height=1>'+
 '<img src="L2UI.Squarewidth" width=60 height=4>'+ 
 '<font color="LEVEL"> mks </font><br>'+
 '<img src="L2UI.SquareWhite" width=60 height=1>'+
 '<img src="L2UI.Squarewidth" width=60 height=4>'+ 
 '<button value=" стоп" action="bypass stop"       width=80 height=15 back="sek.cbui94"  fore="sek.cbui92">'+
 '<img src="L2UI.SquareWhite" width=60 height=1>'+
 '<img src="L2UI.Squarewidth" width=60 height=4>'+ 
 '<font color="LEVEL">TAMBIK</font><br>'+
 '</center></body></html>';
//==========================================

        var
    Bypass:string; 
    autoText:Boolean;
    TextType:integer; 

//==========================================
//  ShowHTML(HTML);
Procedure ShowHTML( _html : string );
begin
  buf:=#$19;
  WriteD(5);
  WriteS(_HTML);
  SendToClientEx(myname);
   end;
//========================
procedure ActionUse; //2=PM, 3=Party, 4=Clan, 8=Trade, 9=Alli, 17=Hero
 begin
     Bypass:=ReadS(2);
     case Bypass of
 'Trade':begin  autoText:=true;TextType:=8; end;//Trade
 'Party':begin  autoText:=true;TextType:=3; end;//Party
 'Clan':begin   autoText:=true;TextType:=4; end;//Clan
 'Alli':begin   autoText:=true;TextType:=9; end;//Alli
 'PM':begin     autoText:=true;TextType:=0; end;//PM
 'Hero':begin   autoText:=true;TextType:=17;end;//Hero
 'stop':begin   autoText:=false;TextType:=0;end;
 end;
end;
//-----------------------------------------
procedure Init;
begin
TextType:=0;
autoText:=false;
end;
procedure Free;
begin

end;
//Tип: 0x4A (CreatureSay)
//Pазмер: 83+2
//Время прихода: 12:35:56:375
//0002 d  ObjectID: 268899150 (0x1007134E)
//0006 d  TextType: 15 (0x0000000F)
//000A s  CharName: MaFaca
//0018 s  Text: ВТТ ВАШ СЕПОР С СА, ПРЕДЛЫ ПМ
 //=========================
begin
//не обрабатываем пустые пакеты
  if pck='' then exit; 
 if FromClient and (pck[1]=#$34) and (ReadD(2)=06) then begin ShowHTML(HTML); pck:='';exit;end; 
 if FromClient and (pck[1]=#$23) then begin ActionUse; pck:='';exit;end; //
 if FromServer and autoText and (pck[1]=#$4A) and (ReadD(6)=TextType) then begin
      buf:=pck;
     WriteD(15,6);
     pck:=buf;
   end;
 end.
  Ответить с цитированием
3 пользователя(ей) сказали cпасибо:
GraNIT (16.11.2009), Федя (20.11.2009), Sorceres (20.11.2009)
Старый 24.11.2009, 09:37   #28
 Разведчик
Аватар для TAMBIK
 
TAMBIK на правильном пути
Регистрация: 08.11.2009
Сообщений: 19
Популярность: 58
Сказал(а) спасибо: 8
Поблагодарили 24 раз(а) в 15 сообщениях
 
По умолчанию Re: Скрипты для l2phx

для Gracia Final
в скрипте находим
Код:
/===========================================
procedure CreateItemBase;
var
  i, j, ListCount : integer;
begin
  for i:=1 to max do begin
    //очищаем масив
    ItemBase[1,i]:=0;     //OID
    ItemBase[2,i]:=0;    //ID
    ItemBase[3,i]:=0;   //kol-vo
  end;
  j:=4;
  ListCount:=ReadH(j);
  j:=8;
  for i:=1 to ListCount do begin
    ItemBase[1,i]:=ReadD(j);
    ItemBase[2,i]:=ReadD(j);
    inc(j,4);
    ItemBase[3,i]:=ReadD(j);
    inc(j,48); //  <<<< == ДОЛЖНО БЫТЬ ТАК
  end;
  StringList.Clear;
  try
  Ответить с цитированием
Старый 24.11.2009, 14:46   #29
 Сержант
Аватар для ISharkI
 
ISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражанияISharkI блестящий пример для подражания
Регистрация: 29.10.2009
Сообщений: 117
Популярность: 1783
Сказал(а) спасибо: 78
Поблагодарили 242 раз(а) в 79 сообщениях
Отправить сообщение для ISharkI с помощью ICQ
 
По умолчанию Re: Скрипты для l2phx

Скрипт реально работает, на всех сборках la2base и везде где у бафера есть кнопки heal,cp,mana,Лично проверял.//
Код:
Скрипт на регенерацию Маны,Хп,Цп на сервере *****
//Для активации окна введите в парти чат '.window'
//Перед включением скрипта нужно стоять рядом с бафером!
//Для регенерации хп нужно просто посылать '.heal' в парти чат
//Работает на сервер где есть у бафера регенерация хп мп цп
//Версия 6.0  Final
//Автор Crazy$

var
// переменная
ValidatePosition:string; c:integer; e:integer; n:integer; r:boolean;     
a:integer; b:boolean;  d:integer; f:integer; v:integer;

procedure Init; //Вызывается при включении скрипта
begin
SendMsc('Возьми в таргет бафера и сделай шаг!');
b:=false;
end;
procedure SendMsc(msc:string);
begin
buf:=#$4A;
WriteD(0);
WriteD(10);
WriteS('');
WriteS(msc);
SendToClient;
end;
//защитная часть
begin
begin
if FromClient and (pck[1]=#$04)and (not b) then 
begin
a:=ReadD(2); c:=ReadD(6);
d:=ReadD(10); e:=ReadD(14);
f:=ReadC(18);
SendMsc('Запомнен ObjectID = '+inttostr(a));
b:=true;
end;
end;
begin
if FromClient and (pck[1]=#$48) then 
begin
v:=ReadD(14); n:=ReadD(18);
end;
end;
//запоминание пакета ValidatePosition
if FromClient and (pck[1]=#$48) then ValidatePosition:=pck;
if pck='' then exit;
if fromclient and (pck=#$38#$2E#$00#$77#$00#$69#$00#$6E#$00#$64#$00#$6F#$00#$77#$00#$00#$00#$03#$00#$00#$00) then
begin
buf:=#$04;
WriteD(a);
WriteD(c);
WriteD(d);
WriteD(e);
WriteC(f);
SendToServer;
buf:=#$48;
WriteD(c);
WriteD(d);
WriteD(e);
WriteD(v);
WriteD(n);
SendToServer;
buf:=#$21;
Writes('npc_'+inttostr(a)+'_restore hp 1');
SendToServer;
buf:=#$21;
WriteS('npc_'+inttostr(a)+'_restore mp 1');
SendToServer;
buf:=#$21;
WriteS('npc_'+inttostr(a)+'_restore cp 1');
SendToServer;
buf:=hstr('37 01 00');
SendToServer;
//отсылка пакета ValidatePosition, запомненого ранее
buf:=ValidatePosition; SendToServer;
end;
begin
if FromClient and (pck[1]=#$48) then ValidatePosition:=pck;
if pck='' then exit;
if FromClient and (pck=#$38#$2E#$00#$68#$00#$65#$00#$61#$00#$6C#$00#$00#$00#$03#$00#$00#$00) then 
begin
buf:=#$48;
WriteD(c);
WriteD(d);
WriteD(e);
WriteD(v);
WriteD(n);
SendToServer;
buf:=#$21;
Writes('npc_'+inttostr(a)+'_restore hp 1');
SendToServer;
buf:=#$21;
WriteS('npc_'+inttostr(a)+'_restore mp 1');
SendToServer;
buf:=#$21;
WriteS('npc_'+inttostr(a)+'_restore cp 1');
SendToServer;
//отсылка пакета ValidatePosition, запомненого ранее
buf:=ValidatePosition; SendToServer;
                end;
           end;
end.
________________
Продвижение вашего сайта, увеличение ссылочной массы, продвижение по НЧ-СЧ-ВЧ запросам.
  Ответить с цитированием
Пользователь сказал cпасибо:
Lafisarrr (03.03.2010)
Старый 26.12.2009, 12:51   #30
 Разведчик
Аватар для TAMBIK
 
TAMBIK на правильном пути
Регистрация: 08.11.2009
Сообщений: 19
Популярность: 58
Сказал(а) спасибо: 8
Поблагодарили 24 раз(а) в 15 сообщениях
 
По умолчанию Re: Скрипты для l2phx

Цитата:
Сообщение от objectПосмотреть сообщение
мб надо галчки потавить?),сори за оф топ

для версии l2phx выше 100
прописать путь к файлу ItemsID.ini
в скрипте находим
Код:
//RequestItemList вызываем инвентарь
  buf:=hstr('14');
  SendToServerEx(Name);
  StringList:=TStringList.Create;
  ItemsName:=TStringList.Create;
  try
    ItemsName.LoadFromFile('itemsid.ini');
  except
    msg.Lines.Add('itemsid.ini не найден!');
    exit;
пишем так :
ItemsName.LoadFromFile('settings\ItemsID.ini');
  Ответить с цитированием
Ответ

Метки
l2phx, скрипты


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Скрипт] Скрипты для RFRudokop. Vizir Rising Force Online 13 14.07.2009 23:10
[Файл] l2phx.3.4.1.70 ZliLO Скрипты и перехват пакетов 7 05.04.2009 22:25
[Руководство] Нейтральные скрипты maxxx Архив Warcraft 3 0 11.11.2008 20:22
Скрипты для Рудокопа Chopa Архив уязвимостей 1 16.07.2008 16:32

Заявление об ответственности / Список мошенников

Часовой пояс GMT +4, время: 11:09.

Пишите нам: [email protected]
Copyright © 2024 vBulletin Solutions, Inc.
Translate: zCarot. Webdesign by DevArt (Fox)
G-gaMe! Team production | Since 2008
Hosted by GShost.net