Вернуться   CoderX :: Forums > Lineage II > L2PacketHack > Скриптинг
Войти через OpenID

Скриптинг Форум посвещенный созданию скриптов для L2PacketHack

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
Ответ
 
Опции темы Опции просмотра
Старый 21.05.2009, 11:19   #1
Рыцарь
 
Аватар для mks
 
Регистрация: 21.09.2007
Сообщений: 376
Сказал Спасибо: 11
Имеет 218 спасибок в 106 сообщенях
mks пока неопределено
По умолчанию Автозаточка, просто и сердито!

Расчитано на пвп серваки и изобилие блес точек...
Использование: включаем скрипт,
включаем скрипт << СМОТРЕТЬ
забиваем ник и уровень точки, точим нужную шмотку на +1(не важно со скольки), скрипт запоминает необходимые данные, 1е соц действие включает и выключает автозаточку.
1е соц действие << СМОТРЕТЬ
Скорость заточки выставлена 500мс(+2 в секунду), можно ускорять или замедлять в зависимости от сервака...

>>>1-й скрипт от mks<<<

Переделал для тех у кого 1й скрипт работает, но не останавливается заточив до указанного уровня:

>>>2-й скрипт от mks<<<


Переделал слегка для Грации Файнал.
Холява закончилась, если выставляешь интервал заточки меньше чем 2100мс получаешь авто-бан(возможно не везде так)

>>>3-й скрипт от mks<<<

для Грации Файнал.
4-й скрипт от mks
добавлен 2й таймер

Последний раз редактировалось NLObP, 08.12.2009 в 23:07.
mks вне форума   Ответить с цитированием
Старый 08.06.2009, 20:40   #51
Пользователь
 
Аватар для HORSE
 
Регистрация: 06.06.2009
Сообщений: 92
Сказал Спасибо: 31
Имеет 9 спасибок в 8 сообщенях
HORSE пока неопределено
По умолчанию

Цитата:
Сообщение от mks Посмотреть сообщение
HORSE, у тебя перед end. нехватает end; одного
PHP код:
const 
Name='HORSE';  
var 
timer:TTimer
x:byte//определение, какоде действие по счету мы совершаем 

procedure Init
begin 
timer
:=TTimer.Create(nil); 
timer.interval:=150
timer.OnTimer:=@fireTimer
timer.enabled:=true
x:=1;//сначала х=1 
end

procedure Free
begin 
timer
.Free
end

procedure fireTimer(SenderTObject); 
begin 
case x of 
1
:begin 
     buf
:=hstr('5F 48 65 BF 19 00 00 00 00 '); 
     
SendToServerEx(Name); 
     
inc(x); 
   
end
2:begin 
     buf
:=hstr('5F 48 65 BF 19 00 00 00 00 '); 
     
SendToServerEx(Name); 
     
x:=1
   
end
end;{case} 

if 
FromServer then 
  begin 
    
case pck[1of 
      
#$21: begin //InventoryUpdate 
        
if (pck[12]=9456) and (pck[34]=5then timer.enabled:=false;; 
      
end
end;
end
Всё равно выделяет end.
Пишет:- Ошибка:';' expected...
Ииии...мне всё равно кажеться в скрипте напортачил....

Добавлено через 1 минуту
Цитата:
Сообщение от NLObP Посмотреть сообщение
if (pck[12]=ID_предмета) and (pck[34]=уровень заточки) then что_хотим_сделать;
(pck[34]=уровень заточки)
Вот меня интерисует этот момент...в каком виде писать уровень заточки:обычным числом, в байтах,пакетом???

Последний раз редактировалось HORSE, 08.06.2009 в 20:40. Причина: Добавлено сообщение
HORSE вне форума   Ответить с цитированием
Старый 08.06.2009, 21:22   #52
Рыцарь
 
Аватар для alexteam
 
Регистрация: 07.03.2009
Сообщений: 9,139
Сказал Спасибо: 70
Имеет 2,820 спасибок в 1,735 сообщенях
alexteam на пути к лучшему
По умолчанию

Почитай содержимое PacketsT1.ini для начала особенно коментарии в начале. и это.
ибо pck[12] это byte
а id предмета и уровень его заточки это word т.е. 4 байта.
__________________
L2Ext - project closed.
alexteam вне форума   Ответить с цитированием
Старый 08.06.2009, 21:27   #53
Пользователь
 
Аватар для HORSE
 
Регистрация: 06.06.2009
Сообщений: 92
Сказал Спасибо: 31
Имеет 9 спасибок в 8 сообщенях
HORSE пока неопределено
По умолчанию

типа мне неправильно написал NLObP ???
Я что то не вдуплю...я ваще тупой епта=(((
HORSE вне форума   Ответить с цитированием
Старый 08.06.2009, 22:17   #54
Новичок
 
Регистрация: 23.11.2008
Сообщений: 14
Сказал Спасибо: 0
Имеет 0 спасибок в 0 сообщенях
vovanchikst пока неопределено
По умолчанию

Вот мой лог. Я уже говорил у меня точится выше заданного числа. http://depositfiles.com/files/ave148o1v
//nlobp:пишите хроники и на сколько точили, а то непонятно.

Последний раз редактировалось NLObP, 09.06.2009 в 00:57.
vovanchikst вне форума   Ответить с цитированием
Старый 08.06.2009, 23:30   #55
Рыцарь
 
Аватар для mks
 
Регистрация: 21.09.2007
Сообщений: 376
Сказал Спасибо: 11
Имеет 218 спасибок в 106 сообщенях
mks пока неопределено
По умолчанию

Цитата:
Сообщение от HORSE Посмотреть сообщение
типа мне неправильно написал NLObP ???
Я что то не вдуплю...я ваще тупой епта=(((
я думаю это просто была очепятка со стороны NLObP
имелось в виду:
if (ReadD(12)=ID_предмета) and (ReadD(34)=уровень заточки) then что_хотим_сделать;
а да, ID предмета и уровень заточки тут писать в десятичном виде (как обычные люди считают)
delphi Код:
const Name='HORSE';    var  timer:TTimer;  x:byte; //îïðåäåëåíèå, êàêîäå äåéñòâèå ïî ñ÷åòó ìû ñîâåðøàåì  procedure Init;  begin  timer:=TTimer.Create(nil);  timer.interval:=150;  timer.OnTimer:=@fireTimer;  timer.enabled:=true;  x:=1;//ñíà÷àëà õ=1  endprocedure Free;  begin  timer.Freeendprocedure fireTimer(Sender: TObject)begin  case x of  1:begin       buf:=hstr('5F 48 65 BF 19 00 00 00 00 ');       SendToServerEx(Name);       inc(x);     end2:begin       buf:=hstr('5F 48 65 BF 19 00 00 00 00 ');       SendToServerEx(Name);       x:=1;     endend;{case} end; //кусок ниже ты получается влепил в таймер, пришлось расставить еще пару end; и begin; begin if FromServer then    begin      case pck[1] of        #$21: begin //InventoryUpdate          if (ReadD(12)=9456) and (ReadD(34)=5) then timer.enabled:=false;;       endend; end; end.
ЗЫ в алгоритм твоего скрипта не вникал, поправил синтаксис

Последний раз редактировалось mks, 08.06.2009 в 23:52.
mks вне форума   Ответить с цитированием
За это сообщение mks нажился 2 спасибками от:
Старый 09.06.2009, 00:54   #56
Рыцарь
 
Аватар для NLObP
 
Регистрация: 25.02.2008
Адрес: г.Волгоград
Сообщений: 2,009
Сказал Спасибо: 1,285
Имеет 1,458 спасибок в 793 сообщенях
NLObP пока неопределено
По умолчанию

Цитата:
Сообщение от mks Посмотреть сообщение
я думаю это просто была очепятка со стороны NLObP
имелось в виду:
if (ReadD(12)=ID_предмета) and (ReadD(34)=уровень заточки) then что_хотим_сделать;
а да, ID предмета и уровень заточки тут писать в десятичном виде (как обычные люди считают
Точно! Это я ступил малость.
__________________
| Для самых ленивый | Телепаты в отпуске |Мы работаем над этим |
Не умеешь - учись, не хочешь учиться - плати © Суровый Закон Жизни


NLObP вне форума   Ответить с цитированием
Старый 09.06.2009, 00:55   #57
Рыцарь
 
Аватар для mks
 
Регистрация: 21.09.2007
Сообщений: 376
Сказал Спасибо: 11
Имеет 218 спасибок в 106 сообщенях
mks пока неопределено
По умолчанию

Переделал для тех у кого 1й скрипт работает, но не останавливается заточив до указанного уровня:
delphi Код:
const    nik='xxxx';    Enchant=30; 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 case ReadD(2) of        0: begin           CurrentEnch:=CurrentEnch+1;           if CurrentEnch=Enchant then Timer01.enabled:=false;           end;        2: CurrentEnch:=0;        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.
mks вне форума   Ответить с цитированием
За это сообщение mks нажился 2 спасибками от:
Старый 09.06.2009, 01:06   #58
Рыцарь
 
Аватар для NLObP
 
Регистрация: 25.02.2008
Адрес: г.Волгоград
Сообщений: 2,009
Сказал Спасибо: 1,285
Имеет 1,458 спасибок в 793 сообщенях
NLObP пока неопределено
По умолчанию

vovanchikst, твой лог очень похож на мой сервак (java Грация), для которого делал скрипт.

Последовательность пакетов, в основном такая
Код:
1. c0x19 (UseItem) - выбор свитка
2. s0x62 (SystemMessage)
3. s0x7C (ChooseInventoryItem)
4. c0x5F (RequestEnchantItem) - выбор оружия
5. s0x62 (SystemMessage)
6. s0x87 (EnchantResult) - результат улучшения
7. s 0x11 (ItemList)
Код:
Тип: 0x87 (EnchantResult)
Размер: 13+2
Время прихода: 20:02:42:625
0002 d  Result: 2 (0x00000002), где 0 - прошла заточка, 2 - сбросило в 0
__________________
| Для самых ленивый | Телепаты в отпуске |Мы работаем над этим |
Не умеешь - учись, не хочешь учиться - плати © Суровый Закон Жизни



Последний раз редактировалось NLObP, 09.06.2009 в 01:44.
NLObP вне форума   Ответить с цитированием
Старый 09.06.2009, 01:15   #59
Рыцарь
 
Аватар для mks
 
Регистрация: 21.09.2007
Сообщений: 376
Сказал Спасибо: 11
Имеет 218 спасибок в 106 сообщенях
mks пока неопределено
По умолчанию

vovanchikst, на 2мегабайта лог)
последний скрипт у тебя должен нормально работать
mks вне форума   Ответить с цитированием
Старый 09.06.2009, 01:52   #60
Пользователь
 
Аватар для HORSE
 
Регистрация: 06.06.2009
Сообщений: 92
Сказал Спасибо: 31
Имеет 9 спасибок в 8 сообщенях
HORSE пока неопределено
По умолчанию

Цитата:
Сообщение от mks Посмотреть сообщение
Переделал для тех у кого 1й скрипт работает, но не останавливается заточив до указанного уровня:
delphi Код:
const    nik='xxxx';    Enchant=30; 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 case ReadD(2) of        0: begin           CurrentEnch:=CurrentEnch+1;           if CurrentEnch=Enchant then Timer01.enabled:=false;           end;        2: CurrentEnch:=0;        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.
У меня твой скрипт теперь точно не видит конца...раньше он с раза второго понимал до скольки точить, а этот точит пока точки не кончаться...

Добавлено через 11 минут
Цитата:
Сообщение от mks Посмотреть сообщение
я думаю это просто была очепятка со стороны NLObP
имелось в виду:
if (ReadD(12)=ID_предмета) and (ReadD(34)=уровень заточки) then что_хотим_сделать;
а да, ID предмета и уровень заточки тут писать в десятичном виде (как обычные люди считают)
delphi Код:
const Name='HORSE';    var  timer:TTimer;  x:byte; //îïðåäåëåíèå, êàêîäå äåéñòâèå ïî ñ÷åòó ìû ñîâåðøàåì  procedure Init;  begin  timer:=TTimer.Create(nil);  timer.interval:=150;  timer.OnTimer:=@fireTimer;  timer.enabled:=true;  x:=1;//ñíà÷àëà õ=1  endprocedure Free;  begin  timer.Freeendprocedure fireTimer(Sender: TObject)begin  case x of  1:begin       buf:=hstr('5F 48 65 BF 19 00 00 00 00 ');       SendToServerEx(Name);       inc(x);     end2:begin       buf:=hstr('5F 48 65 BF 19 00 00 00 00 ');       SendToServerEx(Name);       x:=1;     endend;{case} end; //кусок ниже ты получается влепил в таймер, пришлось расставить еще пару end; и begin; begin if FromServer then    begin      case pck[1] of        #$21: begin //InventoryUpdate          if (ReadD(12)=9456) and (ReadD(34)=5) then timer.enabled:=false;;       endend; end; end.
ЗЫ в алгоритм твоего скрипта не вникал, поправил синтаксис
Ввел все данные..точит отлично...не перетачивает=))))
Можете забирать)))СКРИПТ РОБОЧИЙ!!!!!!!!!!
БОЛЬШОЕ СПАСИБО mks и NLObP за то что сделали почти всё=))))И не послали меня на *** !!!!!

Последний раз редактировалось HORSE, 09.06.2009 в 01:52. Причина: Добавлено сообщение
HORSE вне форума   Ответить с цитированием
Ответ

  CoderX :: Forums > Lineage II > L2PacketHack > Скриптинг



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

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


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

vBulletin style designed by MSC Team.
Powered by vBulletin® Version 3.6.11
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Locations of visitors to this page
Rambler's Top100

Вы хотите чувствовать себя в безопасности? чоп Белган обеспечит её!