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

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

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

пользовалась l2phx.3.4.1.83,юзала скрипт на автоматизацию процесса заточки,успешно юзала к слову скачала отсюда еще 1 скрипт тоже на автоматизацию энчанта,он не работал,но суть проблемы что после него и старый почему то работать перестал) скрипт тот же.так же стоит галочка,но ничего не происходит)может кто имеет предположения по какой причине?
delphi Код:
const    nik='тут ник';    Enchant=9; var    UseItem, SelectItem, EnchantItem: string;    CurrentEnch: integer;    key: boolean;    Timer01, Timer02: TTimer; procedure Init; begin    Timer01:=TTimer.Create(nil);    Timer01.OnTimer:=@OnTimer01;    Timer01.enabled:=false;    Timer01.interval:=8440;    Timer02:=TTimer.Create(nil);    Timer02.OnTimer:=@OnTimer02;    Timer02.enabled:=false;    Timer02.interval:=1134; 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; 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.

вот ссылка на темку с тем скриптом который пыталась ставить 2ым)
http://coderx.ru/showthread.php?t=476

после того как обнаружила проблему скачала отсюда l2phx.3.5.33.164,но проблема осталась) т.е. скрипт вроде включен,но не работает)

п.с.создала темку не в том разделе сначала сорь если опять не там то я хезе тогда куда ее писать хД

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

Смущает фраза "скрипт вроде включен" Проверьте внимательно включен или нет))

Добавьте в скрипт процедуру

Код:
procedure SendMsg2(Msg:string);
begin
buf:=#$4A;
WriteD(0);
WriteD(10);
WriteS('');
WriteS(Msg);
SendToClientEx(nik);
end;
А потом запихните в оба таймера команды SendMsg2('Событие: таймер 01'); и SendMsg2('Событие: таймер 02');
А также в логические условия if FromClient and (pck[1]=#$19) добавьте SendMsg2('Событие: пакет #$19'); и так дальше, во всех условиях.

Посмотрим что получится.
__________________

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

Переходим на протокол нового поколения jabber
J-Fobos вне форума   Ответить с цитированием
За это сообщение J-Fobos нажился спасибкой от:
Старый 22.08.2010, 13:48   #3
Новичок
 
Регистрация: 22.08.2010
Сообщений: 18
Сказал Спасибо: 8
Имеет 0 спасибок в 0 сообщенях
Astery пока неопределено
По умолчанию

ох сложновасто хД щас попробую:Р
по вопросу вроде включен-так он действительно включен галочка стоит все нормально,он активируется первым соц действием,но теперь почему-то при нажатии этого первого действия оно ток машет руками и ничего не делает
а готовый скрипт теперь должен выглядеть примерно так?
delphi Код:
const    nik='ник тут:Р';    Enchant=9; var    UseItem, SelectItem, EnchantItem: string;    CurrentEnch: integer;    key: boolean;    Timer01, Timer02: TTimer; procedure Init; begin    Timer01:=TTimer.Create(nil);    Timer01.OnTimer:=@OnTimer01;    Timer01.enabled:=false;    Timer01.interval:=5640;    Timer02:=TTimer.Create(nil);    Timer02.OnTimer:=@OnTimer02;    Timer02.enabled:=false;    Timer02.interval:=1320; end; procedure OnTimer01(Sender: TObject); begin    case key of       false: begin          buf:=UseItem;          SendToServerEx(nik);          Timer02.enabled:=true;          SendMsg2('Событие: таймер 01');          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;          SendMsg2('Событие: таймер 01'); end; procedure Free; begin   Timer01.free;   Timer02.free;   CurrentEnch:=0;   key:=false; end; procedure SendMsg2(Msg:string); begin buf:=#$4A; WriteD(0); WriteD(10); WriteS(''); WriteS(Msg); SendToClientEx(nik); 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;        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. [/quote] и куда вставлять SendMsg2('Событие: пакет #$19');?:Р [quote]     if FromClient and (pck[1]=#$19) then UseItem:=pck;     SendMsg2('Событие: пакет #$19');     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
вот так? и во всех 4 далее?
сорь мб чушь написала немного не понимаю даж почти не немного
и посл вопрос:р для условия
if FromClient and (pck[1]=#$5F) then EnchantItem:=pck;
строка будет уже
SendMsg2('Событие: пакет #$5F'); ?

спс что помогаете :РР

Последний раз редактировалось QaK, 22.08.2010 в 14:26.
Astery вне форума   Ответить с цитированием
Старый 22.08.2010, 14:08   #4
Местный
 
Аватар для J-Fobos
 
Регистрация: 09.06.2008
Сообщений: 867
Сказал Спасибо: 175
Имеет 468 спасибок в 259 сообщенях
J-Fobos пока неопределено
По умолчанию

Вот так будет. Сразу объясню зачем: увидим визуально работает ли скрипт и в каком моменте он дает сбой.

Код:
const
nik='ник тут:Р';
Enchant=9;

var
UseItem, SelectItem, EnchantItem: string;
CurrentEnch: integer;
key: boolean;
Timer01, Timer02: TTimer;

procedure Init;
begin
Timer01:=TTimer.Create(nil);
Timer01.OnTimer:=@OnTimer01;
Timer01.enabled:=false;
Timer01.interval:=5640;

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

procedure OnTimer01(Sender: TObject);
begin
SendMsg2('Событие: таймер 01');
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;
SendMsg2('Событие: таймер 02');
end;

procedure Free;
begin
Timer01.free;
Timer02.free;
CurrentEnch:=0;
key:=false;
end;

procedure SendMsg2(Msg:string);
begin
buf:=#$4A;
WriteD(0);
WriteD(10);
WriteS('');
WriteS(Msg);
SendToClientEx(nik);
end;

begin
if FromServer and (pck[1]=#$87) then case ReadD(2) of
0: begin
SendMsg2('Событие: пакет #$87');
CurrentEnch:=CurrentEnch+1;
if CurrentEnch=Enchant then Timer01.enabled:=false;
end;
3: begin CurrentEnch:=0; SendMsg2('Событие: пакет #$87 fail en4ant');end;
end;
if FromClient and (pck[1]=#$19) then begin UseItem:=pck; SendMsg2('Событие: пакет #$19'); end;
if FromClient and (pck[1]=#$D0) then begin SelectItem:=pck; SendMsg2('Событие: пакет #$D0');end;
if FromClient and (pck[1]=#$5F) then begin EnchantItem:=pck; SendMsg2('Событие: пакет #$5F'); end;
if FromClient and (pck[1]+pck[2]=#$56#$0C) then
begin
pck:='';
Timer01.enabled:=not(Timer01.enabled);
SendMsg2('Событие: пакет #$56 0С');
end;
end.
__________________

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

Переходим на протокол нового поколения jabber
J-Fobos вне форума   Ответить с цитированием
За это сообщение J-Fobos нажился спасибкой от:
Старый 22.08.2010, 14:25   #5
Новичок
 
Регистрация: 22.08.2010
Сообщений: 18
Сказал Спасибо: 8
Имеет 0 спасибок в 0 сообщенях
Astery пока неопределено
По умолчанию

сппспсп ща попробую:Р

Добавлено через 13 минут
delphi Код:
const    nik='Astery';    Enchant=9; var    UseItem, SelectItem, EnchantItem: string;    CurrentEnch: integer;    key: boolean;    Timer01, Timer02: TTimer; procedure Init; begin    Timer01:=TTimer.Create(nil);    Timer01.OnTimer:=@OnTimer01;    Timer01.enabled:=false;    Timer01.interval:=5640;    Timer02:=TTimer.Create(nil);    Timer02.OnTimer:=@OnTimer02;    Timer02.enabled:=false;    Timer02.interval:=1320; end; procedure OnTimer01(Sender: TObject); begin    SendMsg2('Событие: таймер 01');    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;          SendMsg2('Событие: таймер 02'); end; procedure Free; begin   Timer01.free;   Timer02.free;   CurrentEnch:=0;   key:=false; end; procedure SendMsg2(Msg:string); begin    buf:=#$4A;    WriteD(0);    WriteD(10);    WriteS('');    WriteS(Msg);    SendToClientEx(nik); end; begin     if FromServer and (pck[1]=#$87) then case ReadD(2) of        0: begin           SendMsg2('Событие: пакет #$87');           CurrentEnch:=CurrentEnch+1;           if CurrentEnch=Enchant then Timer01.enabled:=false;           end;        3: begin CurrentEnch:=0; SendMsg2('Событие: пакет #$87 fail en4ant');end;        end;     if FromClient and (pck[1]=#$19) then begin UseItem:=pck; SendMsg2('Событие: пакет #$19'); end;     if FromClient and (pck[1]=#$D0) then begin SelectItem:=pck; SendMsg2('Событие: пакет #$D0');end;     if FromClient and (pck[1]=#$5F) then begin EnchantItem:=pck; SendMsg2('Событие: пакет #$5F'); end;     if FromClient and (pck[1]+pck[2]=#$56#$0C) then        begin           pck:='';           Timer01.enabled:=not(Timer01.enabled);           SendMsg2('Событие: пакет #$56 0С');        end; end.
вот) все равно ничего)сохранила в скриптах.обновила список,поставила галочку,жму первое соц действие и опять ничего) чар опять машет руками и усе почему не работает ваще не пойму
вру хД при соц действии ничего,как только руками делаю энчант в объявлениях пишет: Событие:пакет #$87 и больше ничего не происходит)
пс.код подредактировала:Р

Последний раз редактировалось Astery, 22.08.2010 в 14:33. Причина: Добавлено сообщение
Astery вне форума   Ответить с цитированием
Старый 22.08.2010, 14:29   #6
Рыцарь
 
Аватар для QaK
 
Регистрация: 28.09.2007
Сообщений: 1,558
Сказал Спасибо: 71
Имеет 351 спасибок в 244 сообщенях
QaK пока неопределено
По умолчанию

Просьба код оформлять в теги [ HIGHLIGHT="delphi" ]тут код[ /HIGHLIGHT ]

Добавлено через 1 минуту
Astery, 56 - это точно пакет от сервера - социальное действие? Хроники какие?

Последний раз редактировалось QaK, 22.08.2010 в 14:29. Причина: Добавлено сообщение
QaK вне форума   Ответить с цитированием
Старый 22.08.2010, 14:39   #7
Новичок
 
Регистрация: 22.08.2010
Сообщений: 18
Сказал Спасибо: 8
Имеет 0 спасибок в 0 сообщенях
Astery пока неопределено
По умолчанию

грация финал)
социальное действие приветствие)

Добавлено через 2 минуты
дело в том,что когда скрипт работал,при нажатии приветствия ничего не происходило.Далее первый энчант руками,далее он сам)
теперь при нажатии приветствия чар действительно выполняет приветствие отчего это я никак не пойму)

Последний раз редактировалось Astery, 22.08.2010 в 14:39. Причина: Добавлено сообщение
Astery вне форума   Ответить с цитированием
Старый 22.08.2010, 14:48   #8
Местный
 
Аватар для J-Fobos
 
Регистрация: 09.06.2008
Сообщений: 867
Сказал Спасибо: 175
Имеет 468 спасибок в 259 сообщенях
J-Fobos пока неопределено
По умолчанию

С лога пакетов выложите сюда пакет RequestActionUse с приветствием.
Хотя нет, ненадо... Ща подумаю..
Все таки выкладывайте пакет RequestActionUse
__________________

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

Переходим на протокол нового поколения jabber

Последний раз редактировалось J-Fobos, 22.08.2010 в 14:54.
J-Fobos вне форума   Ответить с цитированием
Старый 22.08.2010, 14:55   #9
Новичок
 
Регистрация: 22.08.2010
Сообщений: 18
Сказал Спасибо: 8
Имеет 0 спасибок в 0 сообщенях
Astery пока неопределено
По умолчанию

15 0C 00 00 00 00 00 00 00 00 этот от клиента
от оно:Р
27 E9 92 0B 10 02 00 00 00 эт от сервера

Добавлено через 1 минуту


Добавлено через 1 минуту
ток там не так написано хД
Tип: 0x15 (Unknown)
Pазмер: 10+2
Время прихода: 13:50:53:397
вот так как то)(эт от клиента)

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

27 E9 92 0B 10 02 00 00 00
27 - SocialAction и 02 00 00 00 - id приветствия, здесь все правильно.

15 0C 00 00 00 00 00 00 00 00
15 - нету такого id пакета, и даже если расценивать что id=15 является пакетом SocialAction, то все равно 0C 00 00 00 никак не связать с соц действием приветствие. В общем не понятно что это за пакет.

Ну можно этим не заморачиватся, отказаться от использования соц действий. Включать процесс точения командой с чата например.
Впишите вместо if FromClient and (pck[1]+pck[2]=#$56#$0C) then условие с пакетом Say2 и все.

ps: как видите, проблема возникла отнюдь не из за того что вы попытались использовать другой скрипт.
__________________

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

Переходим на протокол нового поколения jabber

Последний раз редактировалось J-Fobos, 22.08.2010 в 15:06.
J-Fobos вне форума   Ответить с цитированием
Ответ

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



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

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


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

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

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