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

Жесткий скриптинг Раздел для обсуждения готовых и тестируемых скриптов
Внимание! В разделе введена жесткая модерация, темы и сообщения публикуются только после проверки модераторами

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
Ответ
 
Опции темы Опции просмотра
Старый 25.07.2008, 00:00   #1
Пользователь
 
Аватар для metalFan
 
Регистрация: 26.10.2007
Сообщений: 43
Сказал Спасибо: 8
Имеет 21 спасибок в 8 сообщенях
metalFan
Счастье FreedomEmulator

delphi Код:
//FreedomEmulator v1.0beta //скрипт скрывающий нпс и\или игроков //помогает снять нагрузку с несчастного клиента //при убивании пакетов активность можно посмотреть в отдельном окне //тестировался на la2c6 abyss 10alpha //(c)metalFan const name=('metalFan'); var frm,frm2: TForm; Button1,Button2,Button3,Button4,Button5: TButton; m:TMemo; box:TGroupBox; i,k,RaceID,SexID,ClassID: integer; r1,r2,r3,s:boolean; CharName,FName,VictimName,race,sex,class,message: string; Inventory: array[0..79,0..9] of integer; IdItem:real; zu:Tlabel; procedure Init; //Вызывается при включении скрипта begin //формочка frm2 := TForm.Create(Application); frm2.Caption := 'Activity (player\class\race\sex)'; frm2.BorderStyle := bsSizeable; frm2.Position := poDesigned; frm2.Width:=300; frm2.Height:=200; frm2.OnClose := @FormClose; frm := TForm.Create(nil); frm.Caption := 'FreedomEmulator by metalFan v1.0b'; frm.BorderStyle := bsDialog; frm.Position := poScreenCenter; frm.Width:=295; frm.Height:=120; frm.OnClose := @FormClose; box:=TGroupBox.Create(nil); box.parent:=frm; box.Width:=273; box.Height:=73; box.Left := 8; box.top := 8; box.align:=alnone; zu:=Tlabel.create(nil); zu.parent:=frm; zu.Width:=73; zu.Height:=25; zu.top:=52; zu.left:=184; zu.Caption:=('(c)metalFan'); zu.Transparent := False; zu.Visible := True;     m:=TMemo.Create(frm2); m.parent:=frm2; m.align:=alClient; m.ReadOnly:=true; m.ScrollBars:=ssBoth; Button1 := TButton.Create(frm); Button1.Parent := frm; Button1.Caption := '>.<'; Button1.Left := 16; Button1.Top := 16; Button1.onClick := @Action1; Button1.OnMouseMove := @Button1MouseMove; Button2 := TButton.Create(frm); Button2.Parent := frm; Button2.Caption := '>.<'; Button2.Left := 96; Button2.Top := 16; Button2.onClick := @Action2; Button2.OnMouseMove := @Button2MouseMove; Button3 := TButton.Create(frm); Button3.Parent := frm; Button3.Caption := '>.<'; Button3.Left := 16; Button3.Top := 48; Button3.onClick := @Action3; Button3.OnMouseMove := @Button3MouseMove; Button4 := TButton.Create(frm); Button4.Parent := frm; Button4.Caption := '>.<'; Button4.Left := 96; Button4.Top := 48; Button4.onClick := @Action4; Button4.OnMouseMove := @Button4MouseMove; Button5 := TButton.Create(frm); Button5.Parent := frm; Button5.Caption := '>.<'; Button5.Left := 176; Button5.Top := 16; Button5.onClick := @Action5; Button5.OnMouseMove := @Button5MouseMove; buf:=Hstr('4A 00 00 00 00 0A 00 00 00 00 00 4B 00 69 00 6C 00 6C 00 20 00 50 00 6C 00 61 00 79 00 65 00 72 00 73 00 20 00 2D 00 20 00 41 04 3A 04 40 04 4B 04 32 04 30 04 35 04 42 04 20 00 32 04 41 04 35 04 45 04 20 00 3F 04 35 04 40 04 41 04 3E 04 3D 04 30 04 36 04 35 04 39 04 2C 00 20 00 4B 00 69 00 6C 00 6C 00 20 00 4E 00 70 00 63 00 20 00 2D 00 20 00 41 04 3A 04 40 04 4B 04 32 04 30 04 35 04 42 04 20 00 32 04 41 04 35 04 45 04 20 00 32 04 35 04 3D 04 34 04 3E 04 40 04 3E 04 32 04 20 00 3A 00 29 00 20 00 2C 00 20 00 43 00 75 00 72 00 65 00 20 00 2D 00 20 00 32 04 4B 04 3A 04 3B 04 4E 04 47 04 30 04 35 04 42 04 20 00 41 04 3A 04 40 04 4B 04 32 04 30 04 3B 04 3A 04 43 04 2C 00 20 00 34 04 3B 04 4F 04 20 00 3E 04 42 04 3E 04 31 04 40 04 30 04 36 04 35 04 3D 04 38 04 4F 04 20 00 32 04 41 04 35 04 45 04 20 00 32 04 3E 04 3A 04 40 04 43 04 33 04 20 00 32 04 3A 04 3B 04 4E 04 47 04 38 04 42 04 35 04 20 00 38 04 20 00 37 04 30 04 42 04 35 04 3C 04 20 00 32 04 4B 04 3A 04 3B 04 4E 04 47 04 38 04 42 04 35 04 20 00 32 04 38 04 34 04 35 04 3E 04 41 04 4A 04 35 04 3C 04 3A 04 43 04 20 00 40 04 3E 04 3B 04 38 04 3A 04 3E 04 32 04 20 00 28 00 41 04 29 00 6D 00 65 00 74 00 61 00 6C 00 46 00 61 00 6E 00 00 00'); SendToClientEx(name); frm.show; frm2.Show; r1:=False; r2:=False; r3:=True; s:=true; end;   procedure Free; //Вызывается при выключении скрипта begin button1.free; button2.free; button3.free; m.free; frm2.free; frm.free; end;   //(c)NLObP скажи нет случайному закрытию формы procedure FormClose(Sender: TObject; var Action: TCloseAction); begin Action:=caNone; end;   procedure OnDisconnect(WithClient: Boolean); //Вызывается при установке соединения begin NoFreeOnClientDisconnect; NoFreeOnServerDisconnect; end; procedure Button1MouseMove(Sender: TButton); begin Button1.Caption := 'Kill players'; end; procedure Button2MouseMove(Sender: TButton); begin Button2.Caption := 'Kill npc'; end; procedure Button3MouseMove(Sender: TButton); begin Button3.Caption := 'Stop filter'; end; procedure Button4MouseMove(Sender: TButton); begin Button4.Caption := 'Switch'; end; procedure Button5MouseMove(Sender: TButton); begin if s=true then begin Button5.Caption := 'Hide Monitor' end else begin Button5.Caption := 'Show Monitor'; end; end; procedure Action1(Sender: TButton); begin r1:=True; buf:=Hstr('4A 00 00 00 00 0A 00 00 00 00 00 23 04 31 04 38 04 32 04 30 04 4E 04 20 00 38 04 33 04 40 04 3E 04 3A 04 3E 04 32 04 00 00'); SendToClientEx(name); end; procedure Action2 (Sender: TButton); begin r2:=True; buf:=Hstr('4A 00 00 00 00 0A 00 00 00 00 00 23 04 31 04 38 04 32 04 30 04 4E 04 20 00 32 04 35 04 3D 04 34 04 3E 04 40 04 3E 04 32 04 00 00'); SendToClientEx(name); end; procedure Action3 (Sender: TButton); begin Button3.Caption := 'Load...'; r1:=False; r2:=False; buf:=Hstr('CF'); SendToServerEx(name); delay(5000); Button3.Caption := 'Done'; end; procedure Action4 (Sender: TButton); begin if r3=true then begin r3:=False; Button4.Caption := 'Stop...'; m.Lines.Add('Остановка монитора'); end else begin r3:=true; Button4.Caption := 'Start...'; m.Lines.Add('Запуск монитора'); end; delay(1000); Button4.Caption := 'Done'; end; procedure Action5 (Sender: TButton); begin if s=true then begin m.Lines.Add('Сворачиваю окошко с живностью'); s:=false; m.Lines.Add('>.<'); delay(1000); frm2.hide; Button5.Caption := '>.<'; end else begin frm2.Show; s:=True; delay(1000); m.Lines.Add('Разворачиваю окошко с живностью'); Button5.Caption := '>.<'; end;     end; //(c)Shura1oplot инвентарь procedure InventoryCreate; var i,k: integer; begin for i:=0 to 79 do if (i<ReadH(4)) then begin Inventory[i,0]:=ReadH(i*28+6); // itemType1 Inventory[i,1]:=ReadD(i*28+8); // ObjectId Inventory[i,2]:=ReadD(i*28+12); // ItemID end else for k:=0 to 9 do Inventory[i,k]:=0; // забиваем нулями end;   function GetInv(obj,up,down:integer): integer; var i: integer; begin for i:=0 to 79 do if (Inventory[i,up]=obj) then begin Result:=Inventory[i,down]; exit; end; Result:=-1; end; begin if (FromServer) and (ConnectName=name) then case pck[1] of #$03: begin if r1=true then begin pck:=''; end; end; #$16: begin if r2=true then begin pck:=''; end; end; end; if FromServer and (pck[1]=#$03) and r3=true then begin k:=22; FName:=ReadS(k); RaceID:=ReadD(k); SexID:=ReadD(k); ClassID:=ReadD(k); case RaceID of 0:race:='Human'; 1:race:='Elf'; 2:race:='Dark Elf'; 3:race:='Оrc'; 4:race:='Dwarf'; end; case SexID of 0:sex:='Male'; 1:sex:='Female'; end; case ClassID of 0:class:='Fighter'; 1:class:='Warrior'; 2:class:='Gladiator'; 88:class:='Duelist'; 3:class:='Warlord'; 89:class:='Dreadnought'; 4:class:='Knight'; 5:class:='Paladin'; 90:class:='PhoenixKnight'; 6:class:='DarkAvenger'; 91:class:='HellKnight'; 7:class:='Rogue'; 8:class:='TreasureHunter'; 93:class:='Adventurer'; 9:class:='Hawkeye'; 92:class:='Sagittarius'; 10:class:='Mage'; 11:class:='Wizard'; 12:class:='Sorceror'; 94:class:='Archmage'; 13:class:='Necromancer'; 95:class:='Soultaker'; 14:class:='Warlock'; 96:class:='ArcanaLord'; 15:class:='Cleric'; 16:class:='Bishop'; 97:class:='Cardinal'; 17:class:='Prophet'; 98:class:='Hierophant'; 18:class:='Fighter'; 19:class:='Knight'; 20:class:='TempleKnight'; 99:class:='EvaTemplar'; 21:class:='SwordSinger'; 22:class:='Scout'; 23:class:='PlainsWalker'; 101:class:='WindRider'; 24:class:='SilverRanger'; 102:class:='MoonlightSentinel'; 25:class:='Mage'; 26:class:='Wizard'; 27:class:='SpellSinger'; 103:class:='MysticMuse'; 28:class:='ElementalSummoner'; 104:class:='ElementalMaster'; 29:class:='Oracle'; 30:class:='Elder'; 105:class:='EvaSaint'; 31:class:='Fighter'; 32:class:='PaulusKnight'; 33:class:='ShillienKnight'; 106:class:='ShillienTemplar'; 34:class:='BladeDancer'; 107:class:='SpectralDancer'; 35:class:='Assassin'; 36:class:='AbyssWalker'; 108:class:='GhostHunter'; 37:class:='PhantomRanger'; 109:class:='GhostSentinel'; 38:class:='Mage'; 39:class:='DarkWizard'; 40:class:='Spellhowler'; 110:class:='StormScreamer'; 41:class:='PhantomSummoner'; 111:class:='SpectralMaster'; 42:class:='ShillienOracle'; 43:class:='ShillienElder'; 112:class:='ShillienSaint'; 44:class:='Fighter'; 45:class:='Raider'; 46:class:='Destroyer'; 113:class:='Titan'; 47:class:='Monk'; 48:class:='Tyrant'; 114:class:='GrandKhauatari'; 49:class:='Mage'; 50:class:='Shaman'; 51:class:='Overlord'; 115:class:='Dominator'; 52:class:='Warcryer'; 116:class:='Doomcryer'; 53:class:='Fighter'; 54:class:='Scavenger'; 55:class:='BountyHunter'; 117:class:='FortuneSeeker'; 56:class:='Artisan'; 57:class:='Warsmith'; 118:class:='Maestro'; end; Message:=(class+ ' |' +race+ ' |' +sex+ ' |'); m.Lines.Add(FName+' | '+Message); end; end. end.   end.
в общем идете вы в гиран мило купить бутылки у вендора на сервере где онлайн под пару тысяч закатил, а там...
лаги... всюду гномы трейдеры и ктото бегает в общем очень плохо ващему слабому компьютеру...
но этот скрипт если не полностью, (MoveToPawn, MoveToLocation ни как не убить =\ хотя...) то облягчит вам жизнь, он скроет всех ненужных игроков и\или вендоров
функции можно включать\отключать в общем методом тыка думаю разберетесь
metalFan вне форума   Ответить с цитированием
За это сообщение metalFan нажился 7 спасибками от:
Старый 25.07.2008, 00:59   #2
Пользователь
 
Аватар для metalFan
 
Регистрация: 26.10.2007
Сообщений: 43
Сказал Спасибо: 8
Имеет 21 спасибок в 8 сообщенях
metalFan
По умолчанию

ой процедуру inventoryvreate и getinv мона удалить, это ненужная часть кода из предыдущей версии, где чтобы игроки появились надо было использовать сое
metalFan вне форума   Ответить с цитированием
Старый 25.07.2008, 02:10   #3
Новичок
 
Регистрация: 07.05.2008
Сообщений: 15
Сказал Спасибо: 1
Имеет 0 спасибок в 0 сообщенях
Faust пока неопределено
По умолчанию

еще бы стрелы спрятать а то бывает бегаешь а их как грязи
Faust вне форума   Ответить с цитированием
Старый 25.07.2008, 14:46   #4
Пользователь
 
Аватар для metalFan
 
Регистрация: 26.10.2007
Сообщений: 43
Сказал Спасибо: 8
Имеет 21 спасибок в 8 сообщенях
metalFan
По умолчанию

delphi Код:
procedure Init; //Вызывается при включении скрипта begin
delphi Код:
[b]end;[/b] [b]procedure Free; //Вызывается при выключении скрипта begin[/b] [b]end;[/b] [b]procedure OnConnect(WithClient: Boolean); //Вызывается при установке соединения begin[/b] [b]end;[/b] [b]   procedure OnDisconnect(WithClient: Boolean); //Вызывается при установке соединения             begin             NoFreeOnClientDisconnect;             NoFreeOnServerDisconnect;             end; begin if (FromServer) then begin if pck[1]=#$03 then pck:=''; end; end. [/b]
Faust, сделаю, ток лень щас
вот первая версия скрипта
metalFan вне форума   Ответить с цитированием
Старый 22.08.2008, 23:57   #5
Новичок
 
Регистрация: 21.12.2007
Сообщений: 10
Сказал Спасибо: 7
Имеет 1 спасибку в 1 сообщении
jestb
По умолчанию

на Абуссе альфе запускаю, надпись в чат приходит "убиваю игроков" и т.п. но ничего не происходит. В окне монитора игроки показываются. Но не исчезает никто ( .
jestb вне форума   Ответить с цитированием
Старый 30.11.2008, 18:45   #6
Пользователь
 
Аватар для metalFan
 
Регистрация: 26.10.2007
Сообщений: 43
Сказал Спасибо: 8
Имеет 21 спасибок в 8 сообщенях
metalFan
По умолчанию

jestb, ты должен включить скрипт до того как войдешь в город, хотя на абуссе не играю давно, мб там что то изменилось
metalFan вне форума   Ответить с цитированием
Старый 12.01.2009, 07:48   #7
Местный
 
Аватар для Sashafaq
 
Регистрация: 03.05.2008
Адрес: Ростов-на-Дону
Сообщений: 214
Сказал Спасибо: 19
Имеет 24 спасибок в 18 сообщенях
Sashafaq пока неопределено
По умолчанию

Вот моя заготовка на невидимость стрел дропаюшихся и появляющихся в видимости
Код:
procedure Init; //Вызывается при включении скрипта
begin
end;
procedure Free; //Вызывается при выключении скрипта
begin
end;
const
Excludes=[1344,1873,1868,5495,5528]; // id предметов
begin
  if FromServer and (((pck[1]=#$0C) and (ReadD(10) in Excludes))
     or ((pck[1]=#$0B) and (ReadD(6) in Excludes))) then pck:='';
end.

Последний раз редактировалось Sashafaq, 30.01.2009 в 13:14.
Sashafaq вне форума   Ответить с цитированием
За это сообщение Sashafaq нажился 2 спасибками от:
Ответ

  CoderX :: Forums > Lineage II > L2PacketHack > Жесткий скриптинг


Опции темы
Опции просмотра

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

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


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

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

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