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

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

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
Ответ
 
Опции темы Опции просмотра
Старый 13.08.2010, 00:33   #1
Новичок
 
Регистрация: 13.08.2010
Сообщений: 1
Сказал Спасибо: 0
Имеет 0 спасибок в 0 сообщенях
Azhole пока неопределено
По умолчанию

//J-Fobos: Вариант "сделайте все за меня и чтоб работало" здесь не прокатит
Но помочь не откажемся, спрашивайте что интересует, подскажем.

Раз на то пошло, основы программирования у меня есть но только на языке C++.
Многие функции я просто не перевариваю(здесь нужна помошь, где мне получить эту базу епрст).Что то я находил но там явно не для новичков гайд.
Код:
const
   nik='xxxx';
   Enchant=16;

var
   Useitem2:string; //х3 мои домыслы гм шоп в моём инвентори 
   UseItem, SelectItem, EnchantItem: string;//обьявляем переменные , которые будут изьяты и потока строкой 
   CurrentEnch: integer;//непонятно 
   key: boolean; // не знаю как работате наверное возращает значение true/false или  1\0 ...
   Timer01, Timer02: TTimer; 

procedure Init; // как я понял главный модуль скрипта
begin
   Timer01:=TTimer.Create(nil);
   Timer01.OnTimer:=@OnTimer01;
   Timer01.enabled:=false;
   Timer01.interval:=3000;

   Timer02:=TTimer.Create(nil);
   Timer02.OnTimer:=@OnTimer02;
   Timer02.enabled:=false;
   Timer02.interval:=500;

end;

procedure OnTimer01(Sender: TObject); 
begin
   case key of
      false: 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;
//проверка на что та причём работает постоянно я х3 (
//мне нужна такаяже только на кол. точек в инвенторе предположения где будет проверка, сразу при использование
UseItem (как я понял сама точка) поставить счётчик (или тут в моде таймер) и крч если Useitem<=0 то ... то используем Useitem2
а далее шаримся по гм шопу (появляется меню ну тут я не знаю как работать с менюшками , толи остаются пакеты с разделами , либо самому вписывать  а далее всё как обычно в меню Scrolls выбираем точку строго покупаем 50 и дальше точим точим) ...
//вобще программа очень заинтересовала но здесь нету материала от которого можна отталкнутся по крайней мере на виду.
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;
       3: CurrentEnch:=0;
       end;
    if FromClient and (pck[1]=#$19) then UseItem:=pck;
    if FromClient and (pck[1]=#$D0) then SelectItem:=pck;
    if FromClient and (pck[1]=#$5F) then EnchantItem:=pck;
    if FromClient and (pck[1]+pck[2]=#$56#$0C) then
       begin
          pck:='';
          Timer01.enabled:=not(Timer01.enabled);
       end;
end.

Последний раз редактировалось Azhole, 14.08.2010 в 03:40.
Azhole вне форума   Ответить с цитированием
Старый 22.08.2010, 12:50   #2
Местный
 
Аватар для J-Fobos
 
Регистрация: 09.06.2008
Сообщений: 867
Сказал Спасибо: 175
Имеет 468 спасибок в 259 сообщенях
J-Fobos пока неопределено
По умолчанию

Цитата:
Сообщение от Azhole Посмотреть сообщение
Раз на то пошло, основы программирования у меня есть но только на языке C++.
Многие функции я просто не перевариваю(здесь нужна помошь, где мне получить эту базу епрст).Что то я находил но там явно не для новичков гайд.
В прикрепленных темах есть вся нужная информация. Конечно она сделана не в виде гайдов, а как справочник. Вот тот прокоментирую тот скрипт что вы скинули:
Код:
const
   nik='xxxx';  //константа с именем чара
   Enchant=16; //константа с желаемым уровнем заточки

var
   Useitem2:string; //переменная в скрипте не используется. Кажется автор скрипта просто забыл ее убрать, строку вообще можно удалить
   UseItem, SelectItem, EnchantItem: string;//обьявляем переменные , которые будут изьяты и потока строкой 
   CurrentEnch: integer;//уровень заточки предмета в данный момент 
   key: boolean;//так как вы и написали, либо тру, либо фелс
   Timer01, Timer02: TTimer;    //два таймера

procedure Init; //это не главный модуль скрипта, это процедура которая выполняется при старте скрипта. В данном случаи в ней задаются парамерты работы 2-х таймеров.
begin
   Timer01:=TTimer.Create(nil);
   Timer01.OnTimer:=@OnTimer01;
   Timer01.enabled:=false;  //таймер сначала выключен
   Timer01.interval:=3000;

   Timer02:=TTimer.Create(nil);
   Timer02.OnTimer:=@OnTimer02;
   Timer02.enabled:=false; //таймер сначала выключен
   Timer02.interval:=500;

end;

procedure OnTimer01(Sender: TObject); //процеруда которая вылняется первым таймером
begin
   case key of
      false: begin
         buf:=UseItem;//переменная buf испоьзуется для отправки пакета, что в этой переменной бубет находится то и отправится на сервер/клиент
         SendToServerEx(nik);  //   отправка  buf на сервер
         Timer02.enabled:=true;   //вклчюаем второй таймер
         end; 
      true: begin
         buf:=EnchantItem;
         SendToServerEx(nik);//отправка  buf на сервер
         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;


//все ниже написанные строки будут выполнятся при перхвате каждого пакета
//это значит что за секунду они будут выпонятся раз 20-30, в зависимости от количества пакетов что придут от сервера и которые отправит клиент

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

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;
       3: CurrentEnch:=0;
       end;
    if FromClient and (pck[1]=#$19) then UseItem:=pck;
    if FromClient and (pck[1]=#$D0) then SelectItem:=pck;
    if FromClient and (pck[1]=#$5F) then EnchantItem:=pck;
    if FromClient and (pck[1]+pck[2]=#$56#$0C) then
       begin
          pck:='';
          Timer01.enabled:=not(Timer01.enabled);
       end;
end.
__________________

В любом из нас спит гений. И с каждым днем все крепче.

Переходим на протокол нового поколения jabber
J-Fobos вне форума   Ответить с цитированием
За это сообщение J-Fobos нажился 3 спасибками от:
Старый 20.12.2011, 21:00   #3
Новичок
 
Аватар для °Exzest°
 
Регистрация: 20.12.2011
Сообщений: 3
Сказал Спасибо: 2
Имеет 0 спасибок в 0 сообщенях
°Exzest° пока неопределено
По умолчанию

Можно ли сделать так в этом скрипте, чтоб точилась не одна вещь, а к примеру в инвентаре 4 меча и каждый меч подгонялся под топ точку другого?
°Exzest° вне форума   Ответить с цитированием
Старый 25.02.2012, 15:51   #4
Новичок
 
Регистрация: 19.02.2012
Сообщений: 2
Сказал Спасибо: 1
Имеет 0 спасибок в 0 сообщенях
FixGM пока неопределено
По умолчанию

Использую 4 скрипт от МКС
Вот пакеты при точке с +3 на +4
19 D8 7C 50 40 00 00 00 00 (UseItem)
D0 4C 00 BA 90 50 40 (RequestExTryToPutEnchantTargetItem)
5F BA 90 50 40 00 00 00 00 (RequestEnchantItem)
87 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 (EnchantResult)
Вот поломка с +4 на 0
те же 1-ые 3
87 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 (EnchantResult)

Результат. На +5 вещь сломалась. Далее точнулась с 0 на 1 и скрипт остановился. Визуально доспех точен на +5, реально +1.

Скрин

Скрипт

Что в скрипте изменить, чтоб корректно работал?
(Может еще какие-нибудь входящие пакеты выложить?)

Последний раз редактировалось FixGM, 25.02.2012 в 16:38.
FixGM вне форума   Ответить с цитированием
Старый 26.02.2012, 11:38   #5
Местный
 
Аватар для Pinko
 
Регистрация: 31.05.2011
Сообщений: 130
Сказал Спасибо: 287
Имеет 23 спасибок в 22 сообщенях
Pinko пока неопределено
По умолчанию

3: CurrentEnch:=0;
1: CurrentEnch:=0;
__________________
Никого нельзя ничему научить,
но всему можно научиться

народная мудрость

"Если любишь в жизни риск - форматируй жесткий диск!"
Pinko вне форума   Ответить с цитированием
За это сообщение Pinko нажился спасибкой от:
Старый 26.02.2012, 12:35   #6
Новичок
 
Регистрация: 30.01.2012
Сообщений: 2
Сказал Спасибо: 0
Имеет 0 спасибок в 0 сообщенях
Piter12 пока неопределено
По умолчанию

Подскажите что может быть Скрипты автоточка отрабатывают только один раз в атоматическом режиме, далее приходится давить на соц действие да либо на точку разок нажать и всё нормально ещё разок точнёт. Всё приятно но хочется полного автоматизма.
Я так понял там проблема с Time03 , он включатся не хочет , а втот почему я не знаю
Скрипт во вложении так он не влазит в одно сообщение кому интересно посмотрите.
Играю на грации финалке.

Я так понял знающих нет. Печально Будим надеется что хоть кто то поможет.
Вложения
Тип файла: txt скрипт.txt (13.8 Кб, 29 просмотров)

Последний раз редактировалось Piter12, 28.02.2012 в 11:09.
Piter12 вне форума   Ответить с цитированием
Старый 26.02.2012, 13:50   #7
Новичок
 
Регистрация: 19.02.2012
Сообщений: 2
Сказал Спасибо: 1
Имеет 0 спасибок в 0 сообщенях
FixGM пока неопределено
По умолчанию

to Pinko
Спасибо, помогло, теперь точит до нужного уровня и останавливается (правда, с визуализацией тоже самое, ну и фиг с ней).

Сразу возникает следующая потребность.
Как заставить точить следующую аналогичную вещь до заданного уровня? Может проще доработать этот скрипт или все-таки использовать другой?
FixGM вне форума   Ответить с цитированием
Старый 23.06.2012, 12:00   #8
Новичок
 
Регистрация: 23.06.2012
Сообщений: 1
Сказал Спасибо: 4
Имеет 0 спасибок в 0 сообщенях
kai5510 пока неопределено
По умолчанию

а де скачать??

Добавлено через 8 минут
е как скачать

Добавлено через 12 минут
mks, а как скачать прогу?

Последний раз редактировалось kai5510, 23.06.2012 в 12:00. Причина: Добавлено сообщение
kai5510 вне форума   Ответить с цитированием
Старый 07.04.2013, 15:56   #9
Новичок
 
Регистрация: 07.04.2013
Сообщений: 1
Сказал Спасибо: 1
Имеет 0 спасибок в 0 сообщенях
Аргишт пока неопределено
По умолчанию

как скачать?
Аргишт вне форума   Ответить с цитированием
Старый 29.04.2013, 18:40   #10
Новичок
 
Регистрация: 29.04.2013
Сообщений: 1
Сказал Спасибо: 0
Имеет 0 спасибок в 0 сообщенях
Opofes пока неопределено
По умолчанию

Прошу прощение за такие нуб вопросы но я первый раз обращаюсь к таким вещам как читы и все что сними связанно! Подскажите вот этот скрипт куда вообще помещать то нужно .. чет я думал думал и не как не могу понять как может программа называться для скрипта этого на заточку! дайте ссылку где скачать. и ещё, на High Five будит работать авто точка?
Opofes вне форума   Ответить с цитированием
Ответ

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



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

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


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

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

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