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

cкрипт на вставку лс

-

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

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

Ответ
 
Опции темы
Старый 13.09.2009, 12:34   #1
 Разведчик
Аватар для Goffe
 
Goffe никому не известный тип
Регистрация: 13.09.2009
Сообщений: 6
Популярность: 16
Сказал(а) спасибо: 2
Поблагодарили 3 раз(а) в 2 сообщениях
 
По умолчанию cкрипт на вставку лс

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

Script:
PHP код:
const
  
Name='CuJIyC'// ник
  
ItemID=6594// пуха
  
LifeID=8762// лайфстон
  
GemsID=2131// гемстон
  
GemsAmount=25//кол-во гемов
  
max=180;  // инвентарь
var
 
LifeBase:array[1..maxof integer;    
 
ColvoLife,ColvoGems,Life,Item,Gems,SocialID,augid:integer;
procedure Init;
var 
i:integer;
begin
 buf
:=hstr('0F');
 
SendToServerEx(Name);
end;
procedure Free;
var 
i:integer;
begin
 
for i:=1 to max do
  
LifeBase[i]:=0;
end;
function 
StrToHex2(packetstring):string;
var
  
i:integer;
  
tmp:byte;
  function 
ByteToHex(bbyte): Char;
  
begin
    
if b<10 then result:=chr(b+$30)
      else 
result:=chr(b+$37);
  
end;
begin
  result
:='';
  for 
i:=1 to length(packet) do begin
    tmp
:=ord(packet[i]) div 16;
    
result:=result+ByteToHex(tmp);
    
tmp:=ord(packet[i]) - tmp*16;
    
result:=result+ByteToHex(tmp)+' ';
  
end;
end;
function 
inttohex(n:integer):string;
var 
i:integer;
    
t:string;
    
a:array[0..15of char;
begin
 a
[0]:='0';
 
a[1]:='1';
 
a[2]:='2';
 
a[3]:='3';
 
a[4]:='4';
 
a[5]:='5';
 
a[6]:='6';
 
a[7]:='7';
 
a[8]:='8';
 
a[9]:='9';
 
a[10]:='A';
 
a[11]:='B';
 
a[12]:='C';
 
a[13]:='D';
 
a[14]:='E';
 
a[15]:='F';
 
result:='';
 
t:='';
 
i:=0;
 while 
n<>do begin
  
if (i mod 2=0)and(i>0then begin
   result
:=result+t+' ';
   
t:='';
  
end;
  
t:=a[n mod 16]+t;
  
n:=n div 16;
  
inc(i);
 
end;
 
result:=result+t;
end;
procedure Say;
var 
i:integer;
    
s:string;
begin
  s
:='<tr><td>LS='+inttostr(ColvoLife)+' (*'+inttostr(GemsAmount)+'='+inttostr(ColvoLife*GemsAmount)+')</td></tr>';
  
s:=s+'<tr><td>Gems='+inttostr(ColvoGems)+' (/'+inttostr(GemsAmount)+'='+inttostr(ColvoGems div GemsAmount)+')</td></tr>';
  
s:=s+'<tr><td>---</td></tr>';
  if 
Item=0 then
   s
:=s+'<tr><td>No Weapon</td></tr>'
  
else if augid>0 then
   s
:=s+'<tr><td>Augmented ('+inttohex(augid)+')</td></tr>'
  
else
   
s:=s+'<tr><td>Not augmented</td></tr>';
  
buf:=hstr('0F 01 00 00 00');
  
WriteS('<html><body><br><table width=100%>'+s+'</table><br><br><br><br><br><br>'+
   
'"Social Yes" - Cancel Augment(if augmented) and Augment(if you have enough gems and LSs)<br>'+
   
'"Social No" - Show this help<br><br>'+
   
'Sometimes client dont get packet InventoryUpdate and you see "Not augment" when weapon is augmented.'+
   
' Simply press [Tab] twice or wear weapon.<br><br>'+
   
'(c) raid aka Mamy</body></html>');
//   '(c) raid aka Mamy<br>'+strtohex(pck)+'</body></html>');
  
WriteD(0);
  
SendToClientEx(Name);
end;
procedure CreateItemBase
var 
i,ss,j,ObjID,ItmID,ListCount,count,aug:integer;
begin
  Item
:=0;
  
ss:=1;
  
j:=4
  
ListCount:=ReadH(j); 
  if 
ListCount>max then ListCount:=max;
  
j:=8
  for 
i:=1 to ListCount do begin
     ObjID
:=ReadD(j);    
     
ItmID:=ReadD(j);    
     
Count:=ReadD(j);
     
j:=j+14;
     
aug:=ReadD(j);
     case 
ItmID of
        LifeID
begin
            LifeBase
[ss]:=ObjID;
            
inc(ss);
        
end;
        
ItemIDbegin
            Item
:=ObjID;
            
augid:=aug;
        
end;
        
GemsIDbegin
            Gems
:=ObjID;
            
ColvoGems:=Count;
        
end;
     
end;
    
j:=j+6;
  
end;
  
ColvoLife:=ss-1;
  
Say;
end;
procedure UpdateItemBase
var 
i,ii,j,ObjID,ItmID,ListCount,Count,UpdType,auginteger;
begin
  ListCount
:=ReadH(2);
  
j:=4;
  for 
i:=1 to ListCount do begin
    UpdType
:=ReadH(j);
    
j:=j+2;
    
ObjID:=ReadD(j);
    
ItmID:=ReadD(j);
    
Count:=ReadD(j);
    
j:=j+14;
    
aug:=ReadD(j);
    case 
UpdType of
      1
:case ItmID of
          ItemID
begin
            Item
:=ObjID;
            
augid:=aug;
          
end;
          
LifeIDbegin
            
for ii:=1 to max do
             if 
LifeBase[ii]=0 then begin
              LifeBase
[ii]:=ObjID;
              
ColvoLife:=ColvoLife+1;
              break;
             
end;
          
end;
        
GemsIDbegin
            Gems
:=ObjID;
            
ColvoGems:=Count;
        
end;
      
end;
      
2:case ItmID of
        ItemID
begin
          Item
:=ObjID;
          
augid:=aug;
        
end;
        
GemsIDbegin
            Gems
:=ObjID;
            
ColvoGems:=Count;
        
end;
      
end;
      
3:case ItmID of
        ItemID
:
          
Item:=0;
        
GemsIDbegin
            Gems
:=ObjID;
            
ColvoGems:=Count;
        
end;
        
LifeIDbegin
          
for ii:=1 to max do
            if 
LifeBase[ii]=ObjID then begin
             LifeBase
[ii]:=0;
             
ColvoLife:=ColvoLife-1;
            
end;
        
end;
      
end;
    
end;
    
j:=j+6;
  
end;
 
Say;
end;
function 
GetNextLifeinteger;
var 
i:integer;
begin
  Result
:=-1;
  for 
i:=1 to max do begin
    
if (LifeBase[i]<>0then begin
      Result
:=LifeBase[i];
      exit;
    
end;
  
end;
end;
procedure Augment;
begin
 buf
:=hstr('D0 29 00');
 
WriteD(Item);
 
SendToServerEx(Name);
 
delay(100);
 
buf:=hstr('D0 2A 00');
 
WriteD(Item);
 
WriteD(Life);
 
SendToServerEx(Name);
 
delay(100);
 
buf:=hstr('D0 2B 00');
 
WriteD(Item);
 
WriteD(Life);
 
WriteD(Gems);
 
WriteD(GemsAmount);
 
SendToServerEx(Name);
 
delay(100);
 
buf:=hstr('D0 2C 00');
 
WriteD(Item);
 
WriteD(Life);
 
WriteD(Gems);
 
WriteD(GemsAmount);
 
SendToServerEx(Name);
end;
procedure DisAugment;
begin
 buf
:=hstr('D0 2D 00');
 
WriteD(Item);
 
SendToServerEx(Name);
 
buf:=hstr('D0 2E 00');
 
WriteD(Item);
 
SendToServerEx(Name);
end;
begin
  
if pck='' then exit;
  if 
FromClient and (ConnectName=Name) and (pck[1]=#$1B) then begin
    
SocialID:=ReadD(2);
   
pck:='';
    case 
SocialID of
      7
begin
 buf
:=hstr('A7 2A A0 00 00 80 84 1E 00 0A 00 00 00 00 00 00 00 00 00 00 00');
 
SendToServerEx(Name);
 
buf:=hstr('A7 29 A0 00 00 40 0D 03 00 FA 00 00 00 00 00 00 00 00 00 00');
 
SendToServerEx(Name);

        exit;
       
end;
      
6begin
       
if augid>0 then begin
        DisAugment
;
        
delay(300);
       
end;
       
Life:=GetNextLife;
       if (
Life=-1)or(ColvoGems<GemsAmount)or(ColvoLife<1then
        
exit;
       
Augment;
       exit;
      
end;
      
5begin
       Say
;
       exit;
      
end;
    
end;
  
end;
  if 
FromServer then
  
case pck[1of
    
#$1B: CreateItemBase; 
    #$27: UpdateItemBase; 
  
end;
end
  Ответить с цитированием
Старый 13.09.2009, 13:22   #2
Заблокирован
 Старший сержант
Аватар для GraNIT
 
GraNIT излучает ауруGraNIT излучает ауруGraNIT излучает ауруGraNIT излучает ауруGraNIT излучает ауруGraNIT излучает ауру
Регистрация: 27.07.2009
Сообщений: 237
Популярность: 578
Сказал(а) спасибо: 593
Поблагодарили 329 раз(а) в 147 сообщениях
Отправить сообщение для GraNIT с помощью ICQ Отправить сообщение для GraNIT с помощью Skype™
 
По умолчанию Re: cкрипт на вставку лс

Цитата:
Сообщение от GoffeПосмотреть сообщение
скрипт на вставку лсов в любом месте
токо учтите что скрипт палевный, а именно когда вставляешь лсы у других игроков лагает)))

Script:
PHP код:
const
  
Name='CuJIyC'// ник
  
ItemID=6594// пуха
  
LifeID=8762// лайфстон
  
GemsID=2131// гемстон
  
GemsAmount=25//кол-во гемов
  
max=180;  // инвентарь
var
 
LifeBase:array[1..maxof integer;    
 
ColvoLife,ColvoGems,Life,Item,Gems,SocialID,augid:integer;
procedure Init;
var 
i:integer;
begin
 buf
:=hstr('0F');
 
SendToServerEx(Name);
end;
procedure Free;
var 
i:integer;
begin
 
for i:=1 to max do
  
LifeBase[i]:=0;
end;
function 
StrToHex2(packetstring):string;
var
  
i:integer;
  
tmp:byte;
  function 
ByteToHex(bbyte): Char;
  
begin
    
if b<10 then result:=chr(b+$30)
      else 
result:=chr(b+$37);
  
end;
begin
  result
:='';
  for 
i:=1 to length(packet) do begin
    tmp
:=ord(packet[i]) div 16;
    
result:=result+ByteToHex(tmp);
    
tmp:=ord(packet[i]) - tmp*16;
    
result:=result+ByteToHex(tmp)+' ';
  
end;
end;
function 
inttohex(n:integer):string;
var 
i:integer;
    
t:string;
    
a:array[0..15of char;
begin
 a
[0]:='0';
 
a[1]:='1';
 
a[2]:='2';
 
a[3]:='3';
 
a[4]:='4';
 
a[5]:='5';
 
a[6]:='6';
 
a[7]:='7';
 
a[8]:='8';
 
a[9]:='9';
 
a[10]:='A';
 
a[11]:='B';
 
a[12]:='C';
 
a[13]:='D';
 
a[14]:='E';
 
a[15]:='F';
 
result:='';
 
t:='';
 
i:=0;
 while 
n<>do begin
  
if (i mod 2=0)and(i>0then begin
   result
:=result+t+' ';
   
t:='';
  
end;
  
t:=a[n mod 16]+t;
  
n:=n div 16;
  
inc(i);
 
end;
 
result:=result+t;
end;
procedure Say;
var 
i:integer;
    
s:string;
begin
  s
:='<tr><td>LS='+inttostr(ColvoLife)+' (*'+inttostr(GemsAmount)+'='+inttostr(ColvoLife*GemsAmount)+')</td></tr>';
  
s:=s+'<tr><td>Gems='+inttostr(ColvoGems)+' (/'+inttostr(GemsAmount)+'='+inttostr(ColvoGems div GemsAmount)+')</td></tr>';
  
s:=s+'<tr><td>---</td></tr>';
  if 
Item=0 then
   s
:=s+'<tr><td>No Weapon</td></tr>'
  
else if augid>0 then
   s
:=s+'<tr><td>Augmented ('+inttohex(augid)+')</td></tr>'
  
else
   
s:=s+'<tr><td>Not augmented</td></tr>';
  
buf:=hstr('0F 01 00 00 00');
  
WriteS('<html><body><br><table width=100%>'+s+'</table><br><br><br><br><br><br>'+
   
'"Social Yes" - Cancel Augment(if augmented) and Augment(if you have enough gems and LSs)<br>'+
   
'"Social No" - Show this help<br><br>'+
   
'Sometimes client dont get packet InventoryUpdate and you see "Not augment" when weapon is augmented.'+
   
' Simply press [Tab] twice or wear weapon.<br><br>'+
   
'(c) raid aka Mamy</body></html>');
//   '(c) raid aka Mamy<br>'+strtohex(pck)+'</body></html>');
  
WriteD(0);
  
SendToClientEx(Name);
end;
procedure CreateItemBase
var 
i,ss,j,ObjID,ItmID,ListCount,count,aug:integer;
begin
  Item
:=0;
  
ss:=1;
  
j:=4
  
ListCount:=ReadH(j); 
  if 
ListCount>max then ListCount:=max;
  
j:=8
  for 
i:=1 to ListCount do begin
     ObjID
:=ReadD(j);    
     
ItmID:=ReadD(j);    
     
Count:=ReadD(j);
     
j:=j+14;
     
aug:=ReadD(j);
     case 
ItmID of
        LifeID
begin
            LifeBase
[ss]:=ObjID;
            
inc(ss);
        
end;
        
ItemIDbegin
            Item
:=ObjID;
            
augid:=aug;
        
end;
        
GemsIDbegin
            Gems
:=ObjID;
            
ColvoGems:=Count;
        
end;
     
end;
    
j:=j+6;
  
end;
  
ColvoLife:=ss-1;
  
Say;
end;
procedure UpdateItemBase
var 
i,ii,j,ObjID,ItmID,ListCount,Count,UpdType,auginteger;
begin
  ListCount
:=ReadH(2);
  
j:=4;
  for 
i:=1 to ListCount do begin
    UpdType
:=ReadH(j);
    
j:=j+2;
    
ObjID:=ReadD(j);
    
ItmID:=ReadD(j);
    
Count:=ReadD(j);
    
j:=j+14;
    
aug:=ReadD(j);
    case 
UpdType of
      1
:case ItmID of
          ItemID
begin
            Item
:=ObjID;
            
augid:=aug;
          
end;
          
LifeIDbegin
            
for ii:=1 to max do
             if 
LifeBase[ii]=0 then begin
              LifeBase
[ii]:=ObjID;
              
ColvoLife:=ColvoLife+1;
              break;
             
end;
          
end;
        
GemsIDbegin
            Gems
:=ObjID;
            
ColvoGems:=Count;
        
end;
      
end;
      
2:case ItmID of
        ItemID
begin
          Item
:=ObjID;
          
augid:=aug;
        
end;
        
GemsIDbegin
            Gems
:=ObjID;
            
ColvoGems:=Count;
        
end;
      
end;
      
3:case ItmID of
        ItemID
:
          
Item:=0;
        
GemsIDbegin
            Gems
:=ObjID;
            
ColvoGems:=Count;
        
end;
        
LifeIDbegin
          
for ii:=1 to max do
            if 
LifeBase[ii]=ObjID then begin
             LifeBase
[ii]:=0;
             
ColvoLife:=ColvoLife-1;
            
end;
        
end;
      
end;
    
end;
    
j:=j+6;
  
end;
 
Say;
end;
function 
GetNextLifeinteger;
var 
i:integer;
begin
  Result
:=-1;
  for 
i:=1 to max do begin
    
if (LifeBase[i]<>0then begin
      Result
:=LifeBase[i];
      exit;
    
end;
  
end;
end;
procedure Augment;
begin
 buf
:=hstr('D0 29 00');
 
WriteD(Item);
 
SendToServerEx(Name);
 
delay(100);
 
buf:=hstr('D0 2A 00');
 
WriteD(Item);
 
WriteD(Life);
 
SendToServerEx(Name);
 
delay(100);
 
buf:=hstr('D0 2B 00');
 
WriteD(Item);
 
WriteD(Life);
 
WriteD(Gems);
 
WriteD(GemsAmount);
 
SendToServerEx(Name);
 
delay(100);
 
buf:=hstr('D0 2C 00');
 
WriteD(Item);
 
WriteD(Life);
 
WriteD(Gems);
 
WriteD(GemsAmount);
 
SendToServerEx(Name);
end;
procedure DisAugment;
begin
 buf
:=hstr('D0 2D 00');
 
WriteD(Item);
 
SendToServerEx(Name);
 
buf:=hstr('D0 2E 00');
 
WriteD(Item);
 
SendToServerEx(Name);
end;
begin
  
if pck='' then exit;
  if 
FromClient and (ConnectName=Name) and (pck[1]=#$1B) then begin
    
SocialID:=ReadD(2);
   
pck:='';
    case 
SocialID of
      7
begin
 buf
:=hstr('A7 2A A0 00 00 80 84 1E 00 0A 00 00 00 00 00 00 00 00 00 00 00');
 
SendToServerEx(Name);
 
buf:=hstr('A7 29 A0 00 00 40 0D 03 00 FA 00 00 00 00 00 00 00 00 00 00');
 
SendToServerEx(Name);

        exit;
       
end;
      
6begin
       
if augid>0 then begin
        DisAugment
;
        
delay(300);
       
end;
       
Life:=GetNextLife;
       if (
Life=-1)or(ColvoGems<GemsAmount)or(ColvoLife<1then
        
exit;
       
Augment;
       exit;
      
end;
      
5begin
       Say
;
       exit;
      
end;
    
end;
  
end;
  if 
FromServer then
  
case pck[1of
    
#$1B: CreateItemBase; 
    #$27: UpdateItemBase; 
  
end;
end

На форуме есть отдельная тема по скриптам для l2phx + там это скрипт вроде есть, елс инет, то есть получше, это я точно помню. И врядли из за этого скрипта будет сервак лагать.
  Ответить с цитированием
Старый 13.09.2009, 23:56   #3
 Разведчик
Аватар для Goffe
 
Goffe никому не известный тип
Регистрация: 13.09.2009
Сообщений: 6
Популярность: 16
Сказал(а) спасибо: 2
Поблагодарили 3 раз(а) в 2 сообщениях
 
По умолчанию Re: cкрипт на вставку лс

тестил на l2blacklife.ru. Матерл админ еле как отмазался
  Ответить с цитированием
Старый 14.09.2009, 08:23   #4
Заблокирован
 Пехотинец
Аватар для SaiNet
 
SaiNet на правильном путиSaiNet на правильном пути
Регистрация: 28.07.2009
Сообщений: 58
Популярность: 106
Сказал(а) спасибо: 86
Поблагодарили 48 раз(а) в 32 сообщениях
 
По умолчанию Re: cкрипт на вставку лс

Это такое старье кошмар, года 2 назад юзал этот скрипт на локальной жаве.
Он уже у всех есть, даже в стандартных л2пх он сразу забит этот скрипт и от него ничего совершено нелагает, если тока ты неиграеш на сервере с железом пентак 2-3.
  Ответить с цитированием
Старый 15.09.2009, 01:51   #5
 Разведчик
Аватар для Goffe
 
Goffe никому не известный тип
Регистрация: 13.09.2009
Сообщений: 6
Популярность: 16
Сказал(а) спасибо: 2
Поблагодарили 3 раз(а) в 2 сообщениях
 
По умолчанию Re: cкрипт на вставку лс

сервер был указан сайди да посмотри
  Ответить с цитированием
Старый 15.09.2009, 14:16   #6
Заблокирован
 Рыцарь
Аватар для HellFire
 
HellFire блестящий пример для подражанияHellFire блестящий пример для подражанияHellFire блестящий пример для подражанияHellFire блестящий пример для подражанияHellFire блестящий пример для подражанияHellFire блестящий пример для подражанияHellFire блестящий пример для подражанияHellFire блестящий пример для подражанияHellFire блестящий пример для подражанияHellFire блестящий пример для подражанияHellFire блестящий пример для подражания
Регистрация: 15.06.2009
Сообщений: 353
Популярность: 1893
Сказал(а) спасибо: 582
Поблагодарили 833 раз(а) в 386 сообщениях
 
По умолчанию Re: cкрипт на вставку лс

Цитата:
Сообщение от SaiNetПосмотреть сообщение
Это такое старье кошмар, года 2 назад юзал этот скрипт на локальной жаве.
Он уже у всех есть, даже в стандартных л2пх он сразу забит этот скрипт и от него ничего совершено нелагает, если тока ты неиграеш на сервере с железом пентак 2-3.

ты видел в стандартных наборы скриптов?
  Ответить с цитированием
Старый 15.09.2009, 16:32   #7
 Старший сержант
Аватар для Суслиk
 
Суслиk скоро будет известенСуслиk скоро будет известенСуслиk скоро будет известенСуслиk скоро будет известен
Регистрация: 29.07.2009
Сообщений: 189
Популярность: 319
Сказал(а) спасибо: 319
Поблагодарили 200 раз(а) в 145 сообщениях
Отправить сообщение для Суслиk с помощью ICQ
 
По умолчанию Re: cкрипт на вставку лс

Цитата:
Сообщение от HellFireПосмотреть сообщение
ты видел в стандартных наборы скриптов?

Эм, ну да, в чистых l2ph обычно уже забиты 7-10 скриптов
________________
-Вы не считаете своего отца виновным?
-Нет
-Вы не верите в наше правосудие?
  Ответить с цитированием
Ответ

Опции темы

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

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

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

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

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

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