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

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

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

А можно ли сделать стоб 1 чар проверял одновременно несколько РБ на сервере?
Из того, что я знаю об Л2 - нет, хотя я о пакетном уровне знаю почти ничего

А можете добавить к скрипту процедуру логина?
Мне просто пришла в голову идея рассадить мультов возле разных РБ и модифицировать скрипт так чтоб он по очереди заходил на каждого мульта, проверял РБ и слал сообщение о его наличии. Но логин логаут из кода делать не умею.

Имхо - это намного выгоднее с точки зрения ресурсов системы и удобства чем держать в игре n чаров и столько же бегающих скриптов.

Если пойти дальше, то можно научить скрипт вычитывать
skylancer вне форума   Ответить с цитированием
Старый 11.01.2009, 01:49   #42
Рыцарь
 
Аватар для NLObP
 
Регистрация: 25.02.2008
Адрес: г.Волгоград
Сообщений: 2,009
Сказал Спасибо: 1,285
Имеет 1,458 спасибок в 793 сообщенях
NLObP пока неопределено
По умолчанию

Цитата:
Сообщение от freeworld Посмотреть сообщение
Этот скрипт под грацию работает?
ID пакетов в Грации отличаются, нодо найти соответстяие с С4 и заменить.

PS: может позже сам поправлю
__________________
| Для самых ленивый | Телепаты в отпуске |Мы работаем над этим |
Не умеешь - учись, не хочешь учиться - плати © Суровый Закон Жизни


NLObP вне форума   Ответить с цитированием
Старый 24.01.2009, 23:38   #43
Новичок
 
Регистрация: 10.11.2008
Сообщений: 4
Сказал Спасибо: 3
Имеет 0 спасибок в 0 сообщенях
MrIICUX пока неопределено
По умолчанию

можно ID Raid Bossa Core
юзну спасибку
MrIICUX вне форума   Ответить с цитированием
Старый 25.01.2009, 16:07   #44
Местный
 
Аватар для KrazyKeNNy
 
Регистрация: 14.06.2008
Сообщений: 163
Сказал Спасибо: 4
Имеет 115 спасибок в 49 сообщенях
KrazyKeNNy пока неопределено
По умолчанию

12052
KrazyKeNNy вне форума   Ответить с цитированием
За это сообщение KrazyKeNNy нажился спасибкой от:
Старый 07.02.2009, 01:13   #45
Новичок
 
Регистрация: 07.02.2009
Сообщений: 5
Сказал Спасибо: 0
Имеет 2 спасибок в 2 сообщенях
vhl пока неопределено
По умолчанию

Я так издавал звук:
Код:
lib := loadLibrary('user32.dll');
CallFunction(lib,'MessageBeep',1,[5000]);
Функция издаст стандартный звуки винды "Стандартный звук". Какой вы там звук поставите - такой и будет звучать.
vhl вне форума   Ответить с цитированием
За это сообщение vhl нажился спасибкой от:
Старый 11.04.2009, 07:28   #46
Пользователь
 
Регистрация: 11.04.2009
Адрес: lameriy
Сообщений: 34
Сказал Спасибо: 9
Имеет 1 спасибку в 1 сообщении
lamer пока неопределено
По умолчанию

Ну ктонить разобрался со скриптом на нашей гране ада!!! Методом "тыка" я не смог подобрать нужное ИД. А может сам скрипт перестал работать...
lamer вне форума   Ответить с цитированием
Старый 11.04.2009, 11:33   #47
Местный
 
Аватар для Ckopo
 
Регистрация: 09.10.2008
Сообщений: 69
Сказал Спасибо: 10
Имеет 25 спасибок в 20 сообщенях
Ckopo пока неопределено
По умолчанию

а может не методом тыка нужно?)
Ckopo вне форума   Ответить с цитированием
Старый 11.04.2009, 11:52   #48
Пользователь
 
Регистрация: 11.04.2009
Адрес: lameriy
Сообщений: 34
Сказал Спасибо: 9
Имеет 1 спасибку в 1 сообщении
lamer пока неопределено
По умолчанию

Цитата:
Сообщение от Ckopo Посмотреть сообщение
а может не методом тыка нужно?)
вот еслиб знать как, яб помучился..)) но мой ник говорит сам за себя.)
lamer вне форума   Ответить с цитированием
Старый 16.04.2009, 18:16   #49
Пользователь
 
Регистрация: 11.04.2009
Адрес: lameriy
Сообщений: 34
Сказал Спасибо: 9
Имеет 1 спасибку в 1 сообщении
lamer пока неопределено
По умолчанию

Цитата:
Сообщение от NLObP Посмотреть сообщение
ID пакетов в Грации отличаются, нодо найти соответстяие с С4 и заменить.
а можно какнить облегчить с эти, напримере скрипта авто БД,СВС...
Веть суть я уловил.

Добавлено через 9 часов 4 минуты
delphi Код:
//Следим за РБ by NLObP для L2PacketHack v.3.1.9+ by Xkor //version 0.2 от 11.07.2008г. program spy; {******************************************************************************** Возможности скрипта: -------------------- 0.1 + Панель управления; + Посылает приватное сообщение игроку, когда увидит РБ; Проверялось на TheAbyss.ru x300(interlude) Скрипт распространяется как есть, и я не несу ответственности за то, что ВЫ натворили у себя, его используя. MyICQ 402988808 ********************************************************************************} //............................................ //Список констант const   Name='---'; //Вписать сюда имя чара   //установить константу в зависимости от типа игры (С4 или Интерлюд)   interlude=true; //Interlude - true, C4 - false   //kID=1000000; //коэфф вычитаемый из NpcID C4  lagam.net   kID=1023000; //коэфф вычитаемый из NpcID C6 theAbyss.ru //............................................ //Список переменных var   PlayerID, PlayerOID:integer;   PlayerName, TmpName, _message : string;   NpcID,NpcOID:integer;   ready : boolean;   timer : TTimer;   FormMain : TForm; //Создаваемая форма   Splitter1, Splitter2 : TSplitter;   Stats, Msg : TMemo;   Panel1 : TPanel;   GroupBox2 : TGroupBox;   Label2, Label4, Label12, Label13 : TLabel;   CheckBoxNpc : TCheckBox;   ComboBoxNpc : TComboBox;   ButtonStart, ButtonStop : TButton;   CheckBoxPlayer : TCheckBox;   ComboBoxPlayer : TComboBox;   EditNpcID, EditPlayerID, EditPlayerOID, EditNpcOID : TEdit;   Label1,  Label3 : TLabel;   Edit1,  Edit2 : TEdit; //............................................ //************************************* //Обработчики событий для элементов управления на форме //...................................... //CheckBoxNpc procedure CheckBoxNpc_Click(Sender: TCheckBox); //Event : OnClick begin   if CheckBoxNpc.Checked   then begin     EditNpcID.text:=Inttostr(NpcID); //inttostr(sumNpc(NpcID));     ComboBoxNpc.Enabled:=false; //выключаем   end else begin     NpcID:=0;               //отмена     NpcOID:=0;     ComboBoxNpc.Enabled:=true//включаем     EditNpcOID.Text:='0';     EditNpcID.text:='0';   end; end; //...................................... //...................................... //ComboBoxNpc procedure ComboBoxNpc_Click(Sender: TComboBox); //Event : OnClick begin     NpcID:=ExtractIDValues(ComboBoxNpc.Items.Strings[ComboBoxNpc.ItemIndex]); end; //...................................... //...................................... //CheckBoxPlayer procedure CheckBoxPlayer_Click(Sender: TCheckBox); //Event : OnClick begin   if CheckBoxPlayer.Checked   then begin     PlayerName:=TmpName;     ComboBoxPlayer.Enabled:=false; //выключаем   end else begin     PlayerID:=0;               //отмена     PlayerOID:=0;     ComboBoxPlayer.Enabled:=true//включаем   end; end; //...................................... //...................................... //ComboBoxPlayer procedure ComboBoxPlayer_Click(Sender: TComboBox); //Event : OnClick begin     TmpName:=ComboBoxPlayer.Items.Strings[ComboBoxPlayer.ItemIndex];     EditPlayerID.text:=TmpName; end; //...................................... //...................................... //ButtonStart procedure ButtonStart_Click(Sender: TButton); //Event : OnClick begin   if CheckBoxPlayer.Checked and CheckBoxNpc.Checked   then begin     msg.Lines.Add('Команда Старт!!!');     ready:=true; //готовы к работе     timer.interval:=strtoint(edit1.text);     //для версии 3.1.9+ можно попробовать отключить клиента     //Варнинг! Опасно для жизни! =)     //buf:=#$88;     //SendToClientEx(Name);     ButtonStop.Enabled  := TRUE;     ButtonStart.Enabled  := FALSE;   end else     msg.Lines.Add('Для работы скрипта выбери РБ и Игрока'); end; //...................................... //...................................... //ButtonStop procedure ButtonStop_Click(Sender: TButton); //Event : OnClick begin   msg.Lines.Add('Команда Стоп!!!');   timer.enabled:=false;   ready:=false;   ButtonStop.Enabled  := FALSE;   ButtonStart.Enabled  := TRUE; end; //...................................... //...................................... procedure Edit1_Exit(Sender: TEdit); //Event : OnExit begin //  MyHPID:=ExtractIDValues(ComboBoxHPotion.Npcs.Strings[ComboBoxHPotion.ItemIndex]); //  EditHPotionID.Text:=Inttostr(FindNpc(MyHPID)); //  EditHPotionOID.text:=inttostr(NpcBase2[1,1]); end; //...................................... //************************************* procedure Free_FormMain; //Освобождаем ресурсы ... begin   TRY     if FormMain<>NIL then begin        FormMain.Free;        FormMain:=NIL;     end;   FINALLY   END; end; //Free_FormMain //======================== //======================== function Create_FormMain : TForm; //Создаем форму и соотв. компоненты на ней ... Var   Yes : boolean; begin   Yes := FALSE;   Result := TForm.Create(nil);   TRY     //------------------------     //Свойства формы     Result.Caption     := 'Spy by NLObP v.0.2';     Result.Left        := 397;     Result.Top         := 233;     Result.Width       := 581;     Result.Height      := 205;     Result.FormStyle   := fsNormal;     Result.Position    := poDesigned;     Result.BorderStyle := bsSizeable;     Result.BorderWidth := 0;     Result.WindowState := wsNormal;     Result.Color       := clBtnFace;     Result.Font.Name   := 'Tahoma';     Result.Font.Size   := 8;     Result.Font.Color  := clWindowText;     Result.Font.CharSet:= 1;     //------------------------     //......................................     //Splitter1     Splitter1 := TSplitter.Create(Result);     Splitter1.Parent := Result;     Splitter1.Align := alBottom;     Splitter1.Color := clBtnFace;     Splitter1.Left    := 0;     Splitter1.Top     := 103;     Splitter1.Width   := 573;     Splitter1.Height  := 3;     Splitter1.Visible := TRUE;     Splitter1.Tag     := 0;     //......................................     //......................................     //Splitter2     Splitter2 := TSplitter.Create(Result);     Splitter2.Parent := Result;     Splitter2.Align := alRight;     Splitter2.Color := clBtnFace;     Splitter2.Left    := 442;     Splitter2.Top     := 0;     Splitter2.Width   := 1;     Splitter2.Height  := 103;     Splitter2.Visible := TRUE;     Splitter2.Tag     := 0;     //......................................     //......................................     //Stats     Stats := TMemo.Create(Result);     Stats.Parent := Result;     Stats.Left    := 443;     Stats.Top     := 0;     Stats.Width   := 130;     Stats.Height  := 103;     Stats.Visible := TRUE;     Stats.Tag     := 0;     Stats.Enabled  := TRUE;     Stats.Hint     := '';     Stats.ShowHint := FALSE;     Stats.Font.Name  := 'Tahoma';     Stats.Font.Size  := 8;     Stats.Font.Color := clWindowText;     Stats.Color         := clWindow;     Stats.TabOrder      := 0;     Stats.TabStop       := TRUE;     Stats.Align         := alRight;     Stats.WordWrap      := TRUE;     Stats.Alignment     := taLeftJustify;     Stats.WantTabs      := FALSE;     Stats.WantReturns   := TRUE;     Stats.HideSelection := TRUE;     Stats.MaxLength     := 0;     Stats.OEMConvert    := FALSE;     Stats.ReadOnly      := FALSE;     Stats.ScrollBars    := ssNone;     //......................................     //......................................     //Msg     Msg := TMemo.Create(Result);     Msg.Parent := Result;     Msg.Left    := 0;     Msg.Top     := 106;     Msg.Width   := 573;     Msg.Height  := 65;     Msg.Visible := TRUE;     Msg.Tag     := 0;     Msg.Enabled  := TRUE;     Msg.Hint     := '';     Msg.ShowHint := FALSE;     Msg.Font.Name  := 'Tahoma';     Msg.Font.Size  := 8;     Msg.Font.Color := clWindowText;     Msg.Color         := clWindow;     Msg.TabOrder      := 1;     Msg.TabStop       := TRUE;     Msg.Align         := alBottom;     Msg.WordWrap      := TRUE;     Msg.Alignment     := taLeftJustify;     Msg.WantTabs      := FALSE;     Msg.WantReturns   := TRUE;     Msg.HideSelection := TRUE;     Msg.MaxLength     := 0;     Msg.OEMConvert    := FALSE;     Msg.ReadOnly      := FALSE;     Msg.ScrollBars    := ssNone;     //......................................     //......................................     //Panel1     Panel1 := TPanel.Create(Result);     Panel1.Parent := Result;     Panel1.Left    := 0;     Panel1.Top     := 0;     Panel1.Width   := 442;     Panel1.Height  := 103;     Panel1.Visible := TRUE;     Panel1.Tag     := 0;     Panel1.Enabled  := TRUE;     Panel1.Hint     := '';     Panel1.ShowHint := FALSE;     Panel1.Caption    := '';     Panel1.Align      := alClient;     Panel1.Color      := clBtnFace;     Panel1.Font.Name  := 'Tahoma';     Panel1.Font.Size  := 8;     Panel1.Font.Color := clWindowText;     Panel1.Font.CharSet := 1;     Panel1.BevelWidth   := 1;     Panel1.BorderWidth  := 0;     Panel1.BevelInner   := bvNone;     Panel1.BevelOuter   := bvRaised;     Panel1.TabOrder     := 2;     Panel1.TabStop      := FALSE;     Panel1.AutoSize     := FALSE;     //......................................     //......................................     //GroupBox2     GroupBox2 := TGroupBox.Create(Result);     GroupBox2.Parent := Panel1;     GroupBox2.Left    := 1;     GroupBox2.Top     := 1;     GroupBox2.Width   := 440;     GroupBox2.Height  := 101;     GroupBox2.Visible := TRUE;     GroupBox2.Tag     := 0;     GroupBox2.Enabled  := TRUE;     GroupBox2.Hint     := '';     GroupBox2.ShowHint := FALSE;     GroupBox2.Caption    := 'Настройки';     GroupBox2.Align      := alClient;     GroupBox2.Color      := clBtnFace;     GroupBox2.Font.Name  := 'Tahoma';     GroupBox2.Font.Size  := 8;     GroupBox2.Font.Color := clWindowText;     GroupBox2.Font.CharSet := 1;     GroupBox2.TabOrder     := 0;     GroupBox2.TabStop      := FALSE;     //......................................     //......................................     //Label1     Label1 := TLabel.Create(Result);     Label1.Parent := GroupBox2;     Label1.Left    := 10;     Label1.Top     := 70;     Label1.Width   := 58;     Label1.Height  := 13;     Label1.Visible := TRUE;     Label1.Tag     := 0;     Label1.Enabled  := TRUE;     Label1.Hint     := '';     Label1.ShowHint := FALSE;     Label1.Caption     := 'Период посылки:';     Label1.Transparent := TRUE;     Label1.WordWrap    := FALSE;     Label1.Alignment   := taLeftJustify;     Label1.Layout      := tlTop;     Label1.AutoSize    := TRUE;     Label1.Align       := alNone;     Label1.Font.Name   := 'Tahoma';     Label1.Font.Size   := 8;     Label1.Font.Color  := clWindowText;     Label1.Color       := clBtnFace;     //...................................... {    //......................................     //Label1     Label3 := TLabel.Create(Result);     Label3.Parent := GroupBox2;     Label3.Left    := 170;     Label3.Top     := 70;     Label3.Width   := 58;     Label3.Height  := 13;     Label3.Visible := TRUE;     Label3.Tag     := 0;     Label3.Enabled  := TRUE;     Label3.Hint     := '';     Label3.ShowHint := FALSE;     Label3.Caption     := 'Мин.:';     Label3.Transparent := TRUE;     Label3.WordWrap    := FALSE;     Label3.Alignment   := taLeftJustify;     Label3.Layout      := tlTop;     Label3.AutoSize    := TRUE;     Label3.Align       := alNone;     Label3.Font.Name   := 'Tahoma';     Label3.Font.Size   := 8;     Label3.Font.Color  := clWindowText;     Label3.Color       := clBtnFace;     //......................................}     //......................................     //Edit1     Edit1 := TEdit.Create(Result);     Edit1.Parent := GroupBox2;     Edit1.Left    := 99;     Edit1.Top     := 67;     Edit1.Width   := 60;     Edit1.Height  := 21;     Edit1.Visible := TRUE;     Edit1.Tag     := 0;     Edit1.Enabled  := TRUE;     Edit1.Hint     := 'Введи период посылки сообщения в мс';     Edit1.ShowHint := TRUE;     Edit1.Text       := '5000';     Edit1.Font.Name  := 'Tahoma';     Edit1.Font.Size  := 8;     Edit1.Font.Color := clWindowText;     Edit1.Color        := clWindow;     Edit1.TabOrder     := 5;     Edit1.TabStop      := TRUE;     Edit1.ReadOnly     := FALSE;     Edit1.MaxLength    := 0;     Edit1.AutoSize     := TRUE;     Edit1.OnExit     := @Edit1_Exit;     //...................................... {    //......................................     //Edit2     Edit2 := TEdit.Create(Result);     Edit2.Parent := GroupBox2;     Edit2.Left    := 199;     Edit2.Top     := 67;     Edit2.Width   := 60;     Edit2.Height  := 21;     Edit2.Visible := TRUE;     Edit2.Tag     := 0;     Edit2.Enabled  := TRUE;     Edit2.Hint     := 'Какого уровня смогли достичь';     Edit2.ShowHint := TRUE;     Edit2.Text       := '0';     Edit2.Font.Name  := 'Tahoma';     Edit2.Font.Size  := 8;     Edit2.Font.Color := clWindowText;     Edit2.Color        := clWindow;     Edit2.TabOrder     := 5;     Edit2.TabStop      := FALSE;     Edit2.ReadOnly     := TRUE;     Edit2.MaxLength    := 0;     Edit2.AutoSize     := TRUE;     //......................................}     //......................................     //Label2     Label2 := TLabel.Create(Result);     Label2.Parent := GroupBox2;     Label2.Left    := 416;     Label2.Top     := 19;     Label2.Width   := 18;     Label2.Height  := 13;     Label2.Visible := TRUE;     Label2.Tag     := 0;     Label2.Enabled  := TRUE;     Label2.Hint     := '';     Label2.ShowHint := FALSE;     Label2.Caption     := '';     Label2.Transparent := TRUE;     Label2.WordWrap    := FALSE;     Label2.Alignment   := taLeftJustify;     Label2.Layout      := tlTop;     Label2.AutoSize    := TRUE;     Label2.Align       := alNone;     Label2.Font.Name   := 'Tahoma';     Label2.Font.Size   := 8;     Label2.Font.Color  := clWindowText;     Label2.Color       := clBtnFace;     //......................................     //......................................     //Label4     Label4 := TLabel.Create(Result);     Label4.Parent := GroupBox2;     Label4.Left    := 416;     Label4.Top     := 43;     Label4.Width   := 18;     Label4.Height  := 13;     Label4.Visible := TRUE;     Label4.Tag     := 0;     Label4.Enabled  := TRUE;     Label4.Hint     := '';     Label4.ShowHint := FALSE;     Label4.Caption     := '';     Label4.Transparent := TRUE;     Label4.WordWrap    := FALSE;     Label4.Alignment   := taLeftJustify;     Label4.Layout      := tlTop;     Label4.AutoSize    := TRUE;     Label4.Align       := alNone;     Label4.Font.Name   := 'Tahoma';     Label4.Font.Size   := 8;     Label4.Font.Color  := clWindowText;     Label4.Color       := clBtnFace;     //......................................     //......................................     //Label12     Label12 := TLabel.Create(Result);     Label12.Parent := GroupBox2;     Label12.Left    := 273;     Label12.Top     := 3;     Label12.Width   := 33;     Label12.Height  := 13;     Label12.Visible := TRUE;     Label12.Tag     := 0;     Label12.Enabled  := TRUE;     Label12.Hint     := '';     Label12.ShowHint := FALSE;     Label12.Caption     := 'NpcOID';     Label12.Transparent := TRUE;     Label12.WordWrap    := FALSE;     Label12.Alignment   := taLeftJustify;     Label12.Layout      := tlTop;     Label12.AutoSize    := TRUE;     Label12.Align       := alNone;     Label12.Font.Name   := 'Tahoma';     Label12.Font.Size   := 8;     Label12.Font.Color  := clWindowText;     Label12.Color       := clBtnFace;     //......................................     //......................................     //Label13     Label13 := TLabel.Create(Result);     Label13.Parent := GroupBox2;     Label13.Left    := 349;     Label13.Top     := 3;     Label13.Width   := 35;     Label13.Height  := 13;     Label13.Visible := TRUE;     Label13.Tag     := 0;     Label13.Enabled  := TRUE;     Label13.Hint     := '';     Label13.ShowHint := FALSE;     Label13.Caption     := 'NpcID';     Label13.Transparent := TRUE;     Label13.WordWrap    := FALSE;     Label13.Alignment   := taLeftJustify;     Label13.Layout      := tlTop;     Label13.AutoSize    := TRUE;     Label13.Align       := alNone;     Label13.Font.Name   := 'Tahoma';     Label13.Font.Size   := 8;     Label13.Font.Color  := clWindowText;     Label13.Color       := clBtnFace;     //......................................     //......................................     //CheckBoxNpc     CheckBoxNpc := TCheckBox.Create(Result);     CheckBoxNpc.Parent := GroupBox2;     CheckBoxNpc.Left    := 18;     CheckBoxNpc.Top     := 18;     CheckBoxNpc.Width   := 66;     CheckBoxNpc.Height  := 17;     CheckBoxNpc.Visible := TRUE;     CheckBoxNpc.Tag     := 0;     CheckBoxNpc.Enabled  := TRUE;     CheckBoxNpc.Hint     := 'Поставить галочку если выбрал за кем следить';     CheckBoxNpc.ShowHint := TRUE;     CheckBoxNpc.Caption    := 'Рейд Босс';     CheckBoxNpc.Font.Name  := 'Tahoma';     CheckBoxNpc.Font.Size  := 8;     CheckBoxNpc.Font.Color := clWindowText;     CheckBoxNpc.Color       := clBtnFace;     CheckBoxNpc.TabOrder    := 0;     CheckBoxNpc.TabStop     := TRUE;     CheckBoxNpc.Checked     := FALSE;     CheckBoxNpc.AllowGrayed := FALSE;     CheckBoxNpc.State       := cbUnchecked;     CheckBoxNpc.OnClick     := @CheckBoxNpc_Click;     //......................................     //......................................     //ComboBoxNpc     ComboBoxNpc := TComboBox.Create(Result);     ComboBoxNpc.Parent := GroupBox2;     ComboBoxNpc.Left    := 90;     ComboBoxNpc.Top     := 16;     ComboBoxNpc.Width   := 169;     ComboBoxNpc.Height  := 21;     ComboBoxNpc.Visible := TRUE;     ComboBoxNpc.Tag     := 0;     ComboBoxNpc.Enabled  := TRUE;     ComboBoxNpc.Hint     := 'Выбери из списка Рейд Босса';     ComboBoxNpc.ShowHint := TRUE;     ComboBoxNpc.Text       := 'ComboBoxNpc';     ComboBoxNpc.Font.Name  := 'Tahoma';     ComboBoxNpc.Font.Size  := 8;     ComboBoxNpc.Font.Color := clWindowText;     ComboBoxNpc.Color      := clWindow;     ComboBoxNpc.TabOrder   := 1;     ComboBoxNpc.TabStop    := TRUE;     ComboBoxNpc.Sorted     := FALSE;     ComboBoxNpc.ItemHeight  := 13;     ComboBoxNpc.Items.ADD('25035=Shilens Messenger Cabrio (Raid Boss)');     ComboBoxNpc.Items.ADD('6019=Antharas');     ComboBoxNpc.Items.ADD('29020=Baium (когда он в камне)');     ComboBoxNpc.Items.ADD('29025=Baium (когда он моб)');     ComboBoxNpc.Items.ADD('29001=Queen Ant');     ComboBoxNpc.Items.ADD('25220=Death Lord Hallate (Raid Boss)');     ComboBoxNpc.Items.ADD('25054=Kernon (Raid Boss )');     ComboBoxNpc.Items.ADD('25126=Longhorn Golkonda (Raid Boss)');     //test     ComboBoxNpc.Items.ADD('8573=Monakan Fishermens Guild Member');     ComboBoxNpc.ItemIndex  := 0;     ComboBoxNpc.OnClick     := @ComboBoxNpc_Click;     //......................................     //......................................     //ButtonStart     ButtonStart := TButton.Create(Result);     ButtonStart.Parent := GroupBox2;     ButtonStart.Left    := 263;     ButtonStart.Top     := 67;     ButtonStart.Width   := 75;     ButtonStart.Height  := 25;     ButtonStart.Visible := TRUE;     ButtonStart.Tag     := 0;     ButtonStart.Enabled  := TRUE;     ButtonStart.Hint     := '';     ButtonStart.ShowHint := FALSE;     ButtonStart.Caption    := 'Start';     ButtonStart.Font.Name  := 'Tahoma';     ButtonStart.Font.Size  := 8;     ButtonStart.Font.Color := clWindowText;     ButtonStart.Font.CharSet := 1;     ButtonStart.TabOrder     := 2;     ButtonStart.TabStop      := TRUE;     ButtonStart.Cancel       := FALSE;     ButtonStart.ModalResult  := 0;     ButtonStart.OnClick     := @ButtonStart_Click;     //......................................     //......................................     //ButtonStop     ButtonStop := TButton.Create(Result);     ButtonStop.Parent := GroupBox2;     ButtonStop.Left    := 339;     ButtonStop.Top     := 67;     ButtonStop.Width   := 75;     ButtonStop.Height  := 25;     ButtonStop.Visible := TRUE;     ButtonStop.Tag     := 0;     ButtonStop.Enabled  := FALSE;     ButtonStop.Hint     := '';     ButtonStop.ShowHint := FALSE;     ButtonStop.Caption    := 'Stop';     ButtonStop.Font.Name  := 'Tahoma';     ButtonStop.Font.Size  := 8;     ButtonStop.Font.Color := clWindowText;     ButtonStop.Font.CharSet := 1;     ButtonStop.TabOrder     := 3;     ButtonStop.TabStop      := TRUE;     ButtonStop.Cancel       := FALSE;     ButtonStop.ModalResult  := 0;     ButtonStop.OnClick     := @ButtonStop_Click;     //......................................     //......................................     //CheckBoxPlayer     CheckBoxPlayer := TCheckBox.Create(Result);     CheckBoxPlayer.Parent := GroupBox2;     CheckBoxPlayer.Left    := 18;     CheckBoxPlayer.Top     := 41;     CheckBoxPlayer.Width   := 66;     CheckBoxPlayer.Height  := 23;     CheckBoxPlayer.Visible := TRUE;     CheckBoxPlayer.Tag     := 0;     CheckBoxPlayer.Enabled  := TRUE;     CheckBoxPlayer.Hint     := 'Поставить галочку если выбрал кому посылать сообщение';     CheckBoxPlayer.ShowHint := TRUE;     CheckBoxPlayer.Caption    := 'Игрок';     CheckBoxPlayer.Font.Name  := 'Tahoma';     CheckBoxPlayer.Font.Size  := 8;     CheckBoxPlayer.Font.Color := clWindowText;     CheckBoxPlayer.Color       := clBtnFace;     CheckBoxPlayer.TabOrder    := 4;     CheckBoxPlayer.TabStop     := TRUE;     CheckBoxPlayer.Checked     := FALSE;     CheckBoxPlayer.AllowGrayed := FALSE;     CheckBoxPlayer.State       := cbUnchecked;     CheckBoxPlayer.OnClick     := @CheckBoxPlayer_Click;     //......................................     //......................................     //ComboBoxPlayer     ComboBoxPlayer := TComboBox.Create(Result);     ComboBoxPlayer.Parent := GroupBox2;     ComboBoxPlayer.Left    := 90;     ComboBoxPlayer.Top     := 40;     ComboBoxPlayer.Width   := 169;     ComboBoxPlayer.Height  := 21;     ComboBoxPlayer.Visible := TRUE;     ComboBoxPlayer.Tag     := 0;     ComboBoxPlayer.Enabled  := TRUE;     ComboBoxPlayer.Hint     := 'Выбери из списка имя игрока, которому шлем сообщения';     ComboBoxPlayer.ShowHint := TRUE;     ComboBoxPlayer.Text       := 'ComboBoxPlayer';     ComboBoxPlayer.Font.Name  := 'Tahoma';     ComboBoxPlayer.Font.Size  := 8;     ComboBoxPlayer.Font.Color := clWindowText;     ComboBoxPlayer.Color          := clWindow;     ComboBoxPlayer.TabOrder       := 5;     ComboBoxPlayer.TabStop        := TRUE;     ComboBoxPlayer.Sorted         := FALSE;     ComboBoxPlayer.ItemHeight     := 13;     ComboBoxPlayer.Items.ADD('---');     ComboBoxPlayer.Items.ADD('---');     ComboBoxPlayer.ItemIndex          := 0;     ComboBoxPlayer.OnClick     := @ComboBoxPlayer_Click;     //......................................     //......................................     //EditNpcID     EditNpcID := TEdit.Create(Result);     EditNpcID.Parent := GroupBox2;     EditNpcID.Left    := 341;     EditNpcID.Top     := 16;     EditNpcID.Width   := 72;     EditNpcID.Height  := 21;     EditNpcID.Visible := TRUE;     EditNpcID.Tag     := 0;     EditNpcID.Enabled  := TRUE;     EditNpcID.Hint     := '';     EditNpcID.ShowHint := FALSE;     EditNpcID.Text       := '0';     EditNpcID.Font.Name  := 'Tahoma';     EditNpcID.Font.Size  := 8;     EditNpcID.Font.Color := clWindowText;     EditNpcID.Color        := clWindow;     EditNpcID.TabOrder     := 6;     EditNpcID.TabStop      := TRUE;     EditNpcID.ReadOnly     := TRUE;     EditNpcID.MaxLength    := 0;     EditNpcID.AutoSize     := TRUE;     //......................................     //......................................     //EditPlayerID     EditPlayerID := TEdit.Create(Result);     EditPlayerID.Parent := GroupBox2;     EditPlayerID.Left    := 341;     EditPlayerID.Top     := 40;     EditPlayerID.Width   := 72;     EditPlayerID.Height  := 21;     EditPlayerID.Visible := TRUE;     EditPlayerID.Tag     := 0;     EditPlayerID.Enabled  := TRUE;     EditPlayerID.Hint     := '';     EditPlayerID.ShowHint := FALSE;     EditPlayerID.Text       := '0';     EditPlayerID.Font.Name  := 'Tahoma';     EditPlayerID.Font.Size  := 8;     EditPlayerID.Font.Color := clWindowText;     EditPlayerID.Color        := clWindow;     EditPlayerID.TabOrder     := 7;     EditPlayerID.TabStop      := TRUE;     EditPlayerID.ReadOnly     := TRUE;     EditPlayerID.MaxLength    := 0;     EditPlayerID.AutoSize     := TRUE;     //......................................     //......................................     //EditPlayerOID     EditPlayerOID := TEdit.Create(Result);     EditPlayerOID.Parent := GroupBox2;     EditPlayerOID.Left    := 263;     EditPlayerOID.Top     := 40;     EditPlayerOID.Width   := 72;     EditPlayerOID.Height  := 21;     EditPlayerOID.Visible := TRUE;     EditPlayerOID.Tag     := 0;     EditPlayerOID.Enabled  := TRUE;     EditPlayerOID.Hint     := '';     EditPlayerOID.ShowHint := FALSE;     EditPlayerOID.Text       := '0';     EditPlayerOID.Font.Name  := 'Tahoma';     EditPlayerOID.Font.Size  := 8;     EditPlayerOID.Font.Color := clWindowText;     EditPlayerOID.Color        := clWindow;     EditPlayerOID.TabOrder     := 8;     EditPlayerOID.TabStop      := TRUE;     EditPlayerOID.ReadOnly     := TRUE;     EditPlayerOID.MaxLength    := 0;     EditPlayerOID.AutoSize     := TRUE;     //......................................     //......................................     //EditNpcOID     EditNpcOID := TEdit.Create(Result);     EditNpcOID.Parent := GroupBox2;     EditNpcOID.Left    := 264;     EditNpcOID.Top     := 16;     EditNpcOID.Width   := 72;     EditNpcOID.Height  := 21;     EditNpcOID.Visible := TRUE;     EditNpcOID.Tag     := 0;     EditNpcOID.Enabled  := TRUE;     EditNpcOID.Hint     := '';     EditNpcOID.ShowHint := FALSE;     EditNpcOID.Text       := '0';     EditNpcOID.Font.Name  := 'Tahoma';     EditNpcOID.Font.Size  := 8;     EditNpcOID.Font.Color := clWindowText;     EditNpcOID.Color        := clWindow;     EditNpcOID.TabOrder     := 9;     EditNpcOID.TabStop      := TRUE;     EditNpcOID.ReadOnly     := TRUE;     EditNpcOID.MaxLength    := 0;     EditNpcOID.AutoSize     := TRUE;     //......................................     Yes := TRUE;   FINALLY     if not Yes then begin        //Освобождаем ресурсы, если неудачно ...        if Result<>NIL then begin           Result.Free;           Result:=NIL;        end;     end;   END;   msg.Lines.Add('...');   Stats.Lines.Add('Запускаем окно с чаром или бота. Он следит за нужной целью и как только он увидит цель (пакет NpcInfo) начинает спамить в пм определённому чару, с определённым помежутком времени');   Result.Show; end; //Create_FormMain //======================== //======================== procedure Init; //Вызывается при включении скрипта var   i:integer; begin   FormMain:=Create_FormMain;   timer:=TTimer.Create(nil);   timer.OnTimer:=@OnTimer;   timer.enabled:=false;   timer.interval:=10000; //время задержки   ready:=false; end; //...................................... //****************************************************************************** procedure Free; //Вызывается при выключении скрипта begin //  NpcBase:=nil; //нельзя так делать с массивом   timer.Free;   //достаточно освободить форму   Free_FormMain; end; //...................................... //*************************************************************** //только для Пакетхак v.3.1.9+ procedure OnConnect(WithClient: Boolean); //Вызывается при установке соединения begin   NoFreeOnClientDisconnect;   NoFreeOnServerDisconnect; end; //...................................... //****************************************************************************** //38=Say2:s(Text)d(Type)s(Target) procedure Say2(msg:string); begin   buf:=#$49;   WriteS(msg);   WriteD(2);   WriteS(PlayerName);   SendToServerEx(Name); end; //...................................... //*************************************************************** function ExtractIDValues(sData: string): integer; var   s: string;   i,j: integer; begin   i:=0;   s:=sData;   i:=pos('=',s);   if i>=0 then     s:=copy(s,1,i-1);   try     result:=strtoint(s);   except     result:=0;   end; end; //............................................ //****************************************************************************** procedure OnTimer(Sender: TObject); begin   msg.Lines.Add('Шлём сообщение PlayerName='+PlayerName);   //msg.Lines.Add(_message);   say2(_message); end; //...................................... //****************************************************************************** // вызывается при приходе каждого пакета, если скрипт включен //****************************************************************************** begin   //****************************************************************************   //не обрабатываем пустые пакеты   if pck='' then exit;   //......................................   //****************************************************************************   if FromServer and ready then //если готовы то проверяем   case pck[1] of       //***************************************************************       //пакет Die (моб умер)       //00=Die:h(CharID)d(d)d(HAsHideout)d(HasCastle)d(flags)d(sweepable)d(access)       #$00: begin          msg.Lines.Add('S>Пакет Die #$00 ObjectID='+IntToStr(ReadD(2)));          if (NpcOID=ReadD(2)) then begin             msg.Lines.Add('Убили моба ObjectID='+IntToStr(NpcOID)+' в '+TimeToStr(time));             _message:='Убили '+ComboBoxNpc.Items.Strings[ComboBoxNpc.ItemIndex]+' в '+TimeToStr(time);          end;       end;       //***************************************************************       //08=DeleteObject:d(ObjectID)d(d)       #$08: begin         msg.Lines.Add('S>C $08 DeleteObject '+inttostr(ReadD(2)));         if (NpcOID=ReadD(2)) then begin           msg.Lines.Add('Пропал ожидаемый моб ObjectID='+IntToStr(NpcOID)+' в '+TimeToStr(time));           _message:='Пропал '+ComboBoxNpc.Items.Strings[ComboBoxNpc.ItemIndex]+' в '+TimeToStr(time);         end;       end;       //***************************************************************       //16=NpcInfo:d(ObjectID)d(NpcTypeID)d(IsAttackable)d(X)d(Y)d(Z)d(Heading)       //d(d)d(Maspd)d(Paspd)d(runSpd)d(walkSpd)d(swimRSpd)d(swimWSpd)d(flRSpd)       //d(flWSpd)d(FlyRSpd)d(FlyWSpd)f(ProperMul)f(Paspd)f(CollisRadius)       //f(CollisHeight)d(RHand)d(d)d(LHand)b(nameabove)b(isRun)b(isInFight)       //b(isAlikeDead)b(isSummoned)s(Name)s(Title)d(d)d(d)d(karma)d(abnEffect)       //d(d)d(d)d(d)d(d)b(c)b(Team)f(collisRadius)f(collisHeight)d(d)       #$0C: begin         msg.Lines.Add('S>Пакет NpcInfo #$0C NpcOID='+inttostr(ReadD(2))+' NpcID='+inttostr(ReadD(6)));         if (NpcID=ReadD(6)-kID) then begin           NpcOID:=ReadD(2);           EditNpcOID.text:=inttostr(NpcOID);           timer.enabled:=true;           msg.Lines.Add('Появился ожидаемый моб NpcID='+IntToStr(NpcID)+' в '+TimeToStr(time));           _message:='Появился '+ComboBoxNpc.Items.Strings[ComboBoxNpc.ItemIndex]+' в '+TimeToStr(time);         end;       end;   end; end.

Вот скрипт переделанный под ХБ. Проверял на фишермене в геран харбор, полная проверка за вами. ИД мобов как и в интерлюдии.
Спасибо автору за данную прелесть.

Последний раз редактировалось QaK, 29.05.2009 в 08:35. Причина: Добавлено сообщение
lamer вне форума   Ответить с цитированием
За это сообщение lamer нажился спасибкой от:
Старый 28.05.2009, 09:03   #50
Пользователь
 
Регистрация: 11.04.2009
Адрес: lameriy
Сообщений: 34
Сказал Спасибо: 9
Имеет 1 спасибку в 1 сообщении
lamer пока неопределено
По умолчанию

Возникла проблемма, как отнять если id цели изначально менее 23000 ?
lamer вне форума   Ответить с цитированием
Ответ

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



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

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


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

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

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