L2PacketHackФорум программы L2PacketHack, всё что с ней связано находится тут.
Правила раздела!
Категорически запрещено:
* Просить пакеты/скрипты на шмот/адену/другие вещи;
* Просить (помочь) взломать/сломать сервак/аккаунт или раздеть/наказать кого-то на любом серваке;
* Просить научить работать с программой, если не понимаете элементарных вещей в отношениях клиент-сервер (так как, если вы их понимаете, то вопросов по основным возможностям программы быть недолжно);
* Все посты не удовлетворяющие этим запретам, а так же не относящиеся к теме будут удаляться при первой возможности.
* Запрещается создавать темы с просьбой выполнить какую-то работу за автора темы.
* Форум является средством общения и общего поиска решения. Вашу работу за Вас никто выполнять не будет.
* Данные запреты неподлежат обсуждению.
//QaK:отдельная тема по подкючению пакетхака к серверу >>>>>>>>тут
любые вопросы по данной тематике в этом топе будут удаляться без предупреждения.
Код:
const
mp='8A 1B 15 01 10';
hp='8A 1A 15 01 10';
begin
if fromclient and (pck[1]=#$38#$F5#$00#$EF#$00#$00#$00#$03#$00#$00#$00) then
begin
buf:=hstr(hp);
SendToServer;
end;
if fromclient and (pck[2]=#$33#$F5#$00#$EF#$00#$40#$00#$03#$00#$00#$00) then
begin
buf:=hstr(mp);
SendToServer;
end;
end.
где я ошибся?
Последний раз редактировалось QaK, 30.08.2010 в 18:56.
Каким Действием можно заставить покупать у A нпц пухи,а у B точки ?! ...
Для этого самостоятельно ручками закупи у НПЦ пуху и точки, сохрани лог пакетов, а затем разберись в нем, какие пакеты были задействованы при этих операциях, отсей не нужные, заскриптуй полученное.
преамбула:
играю значит магом, и когда долбаешь моба или игрока - в попыхах при уже наведенном таргете можешь еще раз тыкнуть на него. то есть получается что чар начинает бежать к этому игроку или мобу, чтобы удариь его аркой. особенно если вплотную все происходит. этот удар аркой крадет пол секунды, из-за которых ты не успеешь запульнуть хуриканом или вортексом.
задача:
заблокировать повторное наведение таргета при уже наведенном.
код:
PHP код:
const
Name='SeregaZ';
var
idaction:string;
idtarget:string;
procedure Init; //Вызывается при включении скрипта
begin
useforconnectname := Name;
idaction := '';
idtarget := '';
end;
procedure Free; //Вызывается при выключении скрипта
begin
end;
//основная часть скрипта
//вызывается при приходе каждого пакета если скрипт включен
begin
if FromServer and (ConnectName=Name) and (pck[1]=#$A6) then begin //определение таргета
idtarget := pck[2]+pck[3]+pck[4]+pck[5];
end;
if FromClient and (ConnectName=Name) and (pck[1]=#$04) and (pck[2]+pck[3]+pck[4]+pck[5] = idtarget) then begin //блок дублирования наведения таргета
pck:='';
end;
if FromServer and (ConnectName=Name) and (pck[1]=#$2A) then begin //обнуление переменной таргета
idtarget:='';
end;
end.
проблема с кодом:
у тебя нет таргета - наводишь на кого либо, таргет замечательно береться. таргет наведен, тыркаешь еще раз таргет, все замечательно, второй таргет блоканулся и чар-маг не бежит к таргету, чтобы долбануть его аркой по файтерски. НО вместе с этим зависает вообще все чар перестает менять таргеты. то есть при живом таргете нельзя выбрать другой таргет. и чар не двигается. "разбудить" его можно сбросив таргет ескейпом, или навести таргет на себя. вот как бы решить эту самую проблему с зависанием?
так там же добавлено условие если в акшене указан ID тотже самый, что уже имеется в таргете, то блокировать. соответственно акшены со всеми прочими ID должен пропускать. а тут выходит что он как бы не проверяет четвертое условие и сразу все блокирует: (pck[2]+pck[3]+pck[4]+pck[5] = idtarget)
с шифтом думаю опять будет потеря полсекунды. по идее он должен будет послать пакет и вернуть акшионфейл.