Скриптинг Форум посвещенный созданию скриптов для L2PacketHack
Результаты опроса: Нужна ли такая тема форуму?
Да, мне бы была полезна.
34
66.67%
Пускай будет, но мне и так норм.
10
19.61%
Нет, не нужна.
7
13.73%
19.03.2011, 19:26
#1
Местный
Регистрация: 11.06.2010
Сообщений: 644
Сказал Спасибо: 119
Имеет 85 спасибок в 77 сообщенях
ыыыыыыыыыыыыыыыыыыыыыыыыыыыыыыыыыы)
p.s: при нажатии 5, или допустим в чат писалось 5?)
__________________
21.03.2011, 11:35
#2
Местный
Регистрация: 23.11.2009
Сообщений: 574
Сказал Спасибо: 134
Имеет 117 спасибок в 82 сообщенях
Примерно так... (У мну нету ПХ так-что не исключены ошибки (Не у верен вот в этом месте:
)
Чтобы заработало:
1) Вписать свой ник в самом верху скрипта.
2) Сверху вписать кол-во пакетов (Сколько раз пошлет).
4) В игре создать макрос с таким содержанием:
# Определяет только чат (В группе за флуд не банит и без палева) можно написать просто .lol это не важно...
5) Поставить макрос на F5.
Если возникнут ошибки пиши где и что пишет... Если не корректно работает - отпиши что и как.
Сам скриптег:
delphi Код:
const
Name='Nickers' ; //Ник
N=5 ; //Сколько раз послать пакет
Var
timer : TTimer;
packet:string ; j:integer ;
procedure OnTimer( Sender: TObject ) ;
begin
inc ( j) ;
buf:=packet;
SendToServerEx( Name) ;
if j=N then
begin
j:=0 ;
timer.enabled :=false ;
end ;
end ;
procedure Init;
begin
packet:=Hstr( 'D0 0F 00 D3 04 00 00 91 01 00 00' ) ; // Пакет
timer:=TTimer.Create ( nil ) ;
timer.OnTimer :=@OnTimer;
timer.enabled :=false ;
timer.interval :=200 ; //0.2 сек
j:=0 ;
end ;
procedure Free;
begin
timer.free ;
end ;
begin
if fromclient and ( pck[1 ]=#$38 ) and ( ReadS( 2 ) ='.lol' ) then timer.enabled :=true ;
end .
Последний раз редактировалось Nickers, 21.03.2011 в 11:47 .
22.03.2011, 07:45
#3
Местный
Регистрация: 09.12.2010
Сообщений: 106
Сказал Спасибо: 18
Имеет 46 спасибок в 45 сообщенях
Полезный скриптик
Добавлено через 16 часов 48 минут
delphi Код:
var act:integer ; me1:char ; me2:char ; me3:char ; me4:char ; nm:integer ; t1:char ; t2:char ; t3:char ; t4:char ; nt:integer ; shade:integer ; mz:integer ; pz:integer ; tz:integer ; hz:integer ;
procedure SendMsg( msg:string ) ;
begin
buf:=#$4A;
WriteD( 0 ) ;
WriteD( 10 ) ;
WriteS( '' ) ;
WriteS( msg) ;
SendToClient;
end ;
begin
//анализ ИД себя
if nm<>1 then
begin
if FromServer and ( pck[1 ]=#$04 ) then
begin
me1:=pck[18 ];
me2:=pck[19 ];
me3:=pck[20 ];
me4:=pck[21 ];
nm:= 1 ;
end ;
end ;
//защитная часть
if FromClient and ( pck[1 ]=#$1B) and ( pck[2 ]=#$06 ) then
begin
act:=1 ;
SendMsg( 'AT system on' ) ;
end ;
if FromClient and ( pck[1 ]=#$1B) and ( pck[2 ]=#$05 ) then
begin
act:=0 ;
SendMsg( 'AT system off' ) ;
end ;
if FromClient and ( pck=#$38 #$3C#$04 #$2B#$00 #$00 #$00 #$03 #$00 #$00 #$00 ) then
begin
mz:=1 ;
SendMsg( 'Advanced m.def on' )
end ;
if FromClient and ( pck=#$38 #$3C#$04 #$2D#$00 #$00 #$00 #$03 #$00 #$00 #$00 ) then
begin
mz:=0 ;
SendMsg( 'Advanced m.def off' )
end ;
if FromClient and ( pck=#$38 #$3F#$04 #$2B#$00 #$00 #$00 #$03 #$00 #$00 #$00 ) then
begin
pz:=1 ;
SendMsg( 'Advanced p.def on' )
end ;
if FromClient and ( pck=#$38 #$3F#$04 #$2D#$00 #$00 #$00 #$03 #$00 #$00 #$00 ) then
begin
pz:=0 ;
SendMsg( 'Advanced p.def off' )
end ;
if FromClient and ( pck=#$38 #$42 #$04 #$2B#$00 #$00 #$00 #$03 #$00 #$00 #$00 ) then
begin
tz:=1 ;
SendMsg( 'Anti-target on' )
end ;
if FromClient and ( pck=#$38 #$42 #$04 #$2D#$00 #$00 #$00 #$03 #$00 #$00 #$00 ) then
begin
tz:=0 ;
SendMsg( 'Anti-target off' )
end ;
if FromClient and ( pck=#$38 #$45 #$04 #$2B#$00 #$00 #$00 #$03 #$00 #$00 #$00 ) then
begin
hz:=1 ;
SendMsg( 'Hit"n"Hide on' )
end ;
if FromClient and ( pck=#$38 #$45 #$04 #$2D#$00 #$00 #$00 #$03 #$00 #$00 #$00 ) then
begin
hz:=0 ;
SendMsg( 'Hit"n"Hide off' )
end ;
if FromClient and ( pck[1 ]=#$1B) and ( pck[2 ]=#$03 ) then
begin
buf:=#$48 #$00 #$00 #$FE#$FF#$7F#$AB#$03 #$00 #$E9#$F1#$FF#$FF#$88 #$D4#$00 #$00 #$00 #$00 #$00 #$00 ;
SendToServer;
end ;
if act=1 then
begin
if tz=1 then
begin
if FromServer and ( pck[1 ]=#$29 ) and ( pck[6 ] = me1) and ( pck[7 ] = me2) and ( pck[8 ] = me3) and ( pck[9 ] = me4) then
begin
buf:=#$48 #$00 #$00 #$FE#$FF#$7F#$AB#$03 #$00 #$E9#$F1#$FF#$FF#$88 #$D4#$00 #$00 #$00 #$00 #$00 #$00 ;
SendToServer;
end ;
end ;
if mz=1 then
begin
if FromServer and ( pck[1 ]=#$48 ) and ( pck[6 ] = me1) and ( pck[7 ] = me2) and ( pck[8 ] = me3) and ( pck[9 ] = me4) and ( pck[2 ] <> me1) and ( pck[3 ] <> me2) and ( pck[4 ] <> me3) and ( pck[5 ] <> me4) then
begin
buf:=#$48 #$00 #$00 #$FE#$FF#$7F#$AB#$03 #$00 #$E9#$F1#$FF#$FF#$88 #$D4#$00 #$00 #$00 #$00 #$00 #$00 ;
SendToServer;
end ;
end ;
if pz=1 then
begin
if FromServer and ( pck[1 ]=#$05 ) and ( pck[6 ] = me1) and ( pck[7 ] = me2) and ( pck[8 ] = me3) and ( pck[9 ] = me4) and ( pck[2 ] <> me1) and ( pck[3 ] <> me2) and ( pck[4 ] <> me3) and ( pck[5 ] <> me4) then
begin
buf:=#$48 #$00 #$00 #$FE#$FF#$7F#$AB#$03 #$00 #$E9#$F1#$FF#$FF#$88 #$D4#$00 #$00 #$00 #$00 #$00 #$00 ;
SendToServer;
end ;
end ;
if hz=1 then
begin
if FromServer and ( pck[1 ]=#$48 ) and ( pck[6 ] = me1) and ( pck[7 ] = me2) and ( pck[8 ] = me3) and ( pck[9 ] = me4) then
begin
buf:=#$48 #$00 #$00 #$FE#$FF#$7F#$AB#$03 #$00 #$E9#$F1#$FF#$FF#$88 #$D4#$00 #$00 #$00 #$00 #$00 #$00 ;
SendToServer;
end ;
end ;
end ;
//часть таргета
if FromClient and ( pck[1 ]=#$04 ) then
begin
nt:=1 ;
t1:=pck[2 ];
t2:=pck[3 ];
t3:=pck[4 ];
t4:=pck[5 ];
end ;
if FromClient and ( pck[1 ]=#$37 ) then
begin
nt:=0 ;
end ;
if nt=1 then
begin
if FromClient and ( pck[1 ]=#$30 ) then
begin
buf:=#$04 +t1+t2+t3+t4+#$00 #$00 #$00 #$00 #$00 #$00 #$00 #$00 #$00 #$00 #$00 #$00 #$00 ;
SendToServer;
buf:=#$A6+t1+t2+t3+t4+#$00 #$00 ;
SendToClient;
end ;
end ;
if FromClient and ( pck[1 ]=#$1B) and ( pck[2 ]=#$04 ) then
begin
buf:=#$04 +t1+t2+t3+t4+#$00 #$00 #$00 #$00 #$00 #$00 #$00 #$00 #$00 #$00 #$00 #$00 #$00 ;
SendToServer;
buf:=#$A6+t1+t2+t3+t4+#$00 #$00 ;
SendToClient;
end ;
//shadowmelt
if FromClient and ( pck[1 ]=#$1B) and ( pck[2 ]=#$07 ) then
begin
shade:=1 ;
buf:=#$48 #$00 #$00 #$FE#$FF#$7F#$AB#$03 #$00 #$E9#$F1#$FF#$FF#$88 #$D4#$00 #$00 #$00 #$00 #$00 #$00 ;
SendToServer;
SendMsg( 'Skipped to Shadows' ) ;
end ;
if FromClient and ( pck[1 ]=#$1B) and ( pck[2 ]=#$08 ) then
begin
shade:=0 ;
buf:=#$30 #$00 #$00 ;
SendToServer;
SendMsg( 'Reveal from Darkness' ) ;
end ;
if shade = 1 then
begin
if FromClient and ( pck[1 ]=#$30 ) then pck:='' ;
end ;
end .
Что тут не так?
__________________
Объявление: Искуственный интелект запущен!
Объявление: Идите к девчонкам!;-D
Последний раз редактировалось L2.exe, 22.03.2011 в 10:57 .
Причина: Добавлено сообщение
За это сообщение L2.exe нажился спасибкой от:
22.03.2011, 09:56
#4
Местный
Регистрация: 23.11.2009
Сообщений: 574
Сказал Спасибо: 134
Имеет 117 спасибок в 82 сообщенях
L2.exe , Что за скрипт, что должен делать, что именно идет не так, есть ли ошибки?
22.03.2011, 12:42
#5
Рыцарь
Регистрация: 25.02.2008
Адрес: г.Волгоград
Сообщений: 2,009
Сказал Спасибо: 1,285
Имеет 1,458 спасибок в 793 сообщенях
L2.exe , все if ... then .... лучше переделать в case ... of, по типу такого:
delphi Код:
//********************************************************
// вызывается при приходе каждого пакета, если скрипт включен
//********************************************************
begin
if pck='' then exit ; //не обрабатываем пустые пакеты
if FromServer then
case pck[1 ] of //ID пакета
#$11 : begin
//debugmsg('S>C Пакет ItemListPacket #$11');
ItemList;
end ;
#$21 : begin
//debugmsg('S>C Пакет InventoryUpdate #$21');
InventoryUpdate;
end ;
end
else
case pck[1 ] of //ID пакета
#$XX: begin
...
end ;
#$XX: begin
...
end ;
end ;
end .
И ещё, не понятно зачем полностью пакет сверять, можно один два характерных байта.
За это сообщение NLObP нажился спасибкой от:
22.03.2011, 12:51
#6
Местный
Регистрация: 23.11.2009
Сообщений: 574
Сказал Спасибо: 134
Имеет 117 спасибок в 82 сообщенях
Кто-нибудь за тестите
скриптик )) А то мне самому интересно робит он или нет)
22.03.2011, 13:02
#7
Местный
Регистрация: 29.04.2008
Сообщений: 830
Сказал Спасибо: 80
Имеет 230 спасибок в 169 сообщенях
офаю тему, все это есть в Скриптинге да и NLObP решение показал
__________________
На фразы в аську типа "слух карочь 1)как точить 2)как раскачаться за 5 мин" - игнор. ИМХО идиотизм
Дай голодному рыбу - он будет один день сыт. Покажи ему, как удить рыбу - он пошлёт тебя и скажет, что у него есть более интересные занятия, чем забрасывать снасти в воду
David Kastrup @ de.comp.text.tex.
"Приобретенные навыки общения с маленькими детьми - сильно упрощают взаимопонимание на форумах..."
А вы знаете, что для качественной сварки - место шва нужно протереть спиртом?
22.03.2011, 13:22
#8
Местный
Регистрация: 23.11.2009
Сообщений: 574
Сказал Спасибо: 134
Имеет 117 спасибок в 82 сообщенях
Breadfan , Эмм... Тема вообще-то для вопросов-ответов... и NLObP дал ответ только на последний из них... Там еще 6 страниц есть, уверяю... Тему прошу не закрывать она бесконечна))
Добавлено через 3 минуты
+ 1ю страницу буду обновлять и пополнять... Мне лично не удобно все искать по форуму через аццкий поисковик...
(Ну у меня то все на компе в папочке отсортировано по алфовиту, но другим буит полезно)
Добавлено через 1 минуту
Голосование я не просто так сделал...
Последний раз редактировалось Nickers, 22.03.2011 в 13:22 .
Причина: Добавлено сообщение
За это сообщение Nickers нажился 2 спасибками от:
22.03.2011, 16:59
#9
Местный
Регистрация: 09.12.2010
Сообщений: 106
Сказал Спасибо: 18
Имеет 46 спасибок в 45 сообщенях
НЕ оФфайте тему!!!!!!!!!!!!!!!!!!!!!!!!!
Оффтоп
Она нужна мне как яйца^^
Добавлено через 9 минут
Цитата:
Сообщение от
Nickers
L2.exe , Что за скрипт, что должен делать, что именно идет не так, есть ли ошибки?
Это антитаргет
Цитата:
И так управление - нажимает Social Yes, система запущена, но еще не подключены модули... Подключаем те которые нам нужны...
пишем в ПАТИ ЧАТ:
т+ / т- - Включение/Выелючение АВТО антитаргета - таргет сбрасывется когда вас БЕРУТ НА ТАРГЕТ, тоесть он пытается выделить, а вы сбрасываете!
м+ / м- , п+ / п- - дополнительная магическая и физическая защита, непомню уже сам как работает (да у меня и не работает, изза лагучести инета) но знакомый говорит, если включить их в паре, то сбивает каст когда пытаются кастануть на вас заклинание, и "ичезает" прямо во время физической атаки на вас...
х+ / х- - уход в хайд после каждой своей физической атаки
Там есть еще такая штукенция, что после хайда, предыдущий таргет выберется автоматом (этого не видно в клиенте но он выделится, протестите на мобах)
Social Bow / Social Unaware - исчезнуть и появится, ну это кусок скрипта ХИНТА на его антитаргет.}
Оффтоп
Ворованый
Работает вроде,сейчас комп перезагружу и попробую !
__________________
Объявление: Искуственный интелект запущен!
Объявление: Идите к девчонкам!;-D
Последний раз редактировалось L2.exe, 22.03.2011 в 17:16 .
Причина: Заработало
За это сообщение L2.exe нажился спасибкой от:
08.04.2011, 17:18
#10
Местный
Регистрация: 23.11.2009
Сообщений: 574
Сказал Спасибо: 134
Имеет 117 спасибок в 82 сообщенях
Ап же
Последний раз редактировалось Nickers, 10.04.2011 в 09:37 .
Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
Часовой пояс GMT +4, время: 10:45 .
vBulletin style designed by
MSC Team .
Powered by vBulletin® Version 3.6.11
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод:
zCarot
Вы хотите чувствовать себя в безопасности? чоп Белган обеспечит её!