Суть скрипта Auto Target (л2)
Бежит герой и какой небуть моб наченает его месить но дык как сделать чтоб через пакеты герой брал моба на таргетиме иммено те мобов которые героя агрить хотят .. .
Нашел такой скрипт в программе L2phx но у меня не работает
но сервер понимает пакеты как можно отследить или что над послать клиенту чтоб он агрессара взял который атакует?
где вапще можно и как определить состояние героя кто агрит или над состояние моба проверять!?!
Надеюсь фичу понели
Прошу помогите пакет замутить чтоб узнавать кто агрит героя
Добавлено через 9 минут
delphi Код:
// Автоматическое взятие в таргет атакующего вас игрока или моба// Чтобы включить скрипт используйте в игре социальное действие - Yes// Чтобы выключить скрипт используйте в игре социальное действие - No// Автор: Furious// Версия: 0.4var
Attacker, CharID, ObjectID, SocialID, Status: Integer;
procedure TargetAttacker(Attacker: Integer);
begin
buf:=#$04;
WriteD(Attacker);
SendToServer;
end;
beginif FromServer and(pck[1]=#$04)then
CharID:=ReadD(18);
if FromClient and(pck[1]=#$1B)thenbegin
SocialID:=ReadD(2);
case SocialID of6:Status:=1;
5:Status:=0;
end;
end;
if Status=1thenbeginif FromServer and((pck[1]=#$48)or(pck[1]=#$05))thenbegin
Attacker:=ReadD(2);
ObjectID:=ReadD(6);
end;
if(Attacker<>ObjectID)and(CharID=ObjectID)then TargetAttacker(Attacker);
end;
end.
Ps вот оно помогите мне не нужны другие игроки нужны только мобы
как сделать через пакеты что где над вследить что отправить клиенту иль серверу хелппппппп
Последний раз редактировалось QaK, 19.05.2008 в 09:01.
Причина: Добавлено сообщение
В моем клиенте (Interludie) агрессор сам берется в тагрет, но перс продолжает бежать в указанную точку. И если к примеру перс сидит без таргета а его вдруг кто-то начинает бить, то перс встает и в таргете у него уже стоит агрессор.
Scions of Detiny
Увы не так играю на мелке www.lineage.ru
дык
Мне нужно это для бота
бот будет бежать с своей целью бить какогото моба,
А когда агр появится тоесть на целиный моб на героя таргет по меняется и герой будет целится на агра
гы гы
Пс агрессор сам берется в тагрет, но перс продолжает бежать в указанную точку.
Вот о чем речь если ты и граеш за лука допусти сначала бьеш таргет моба какогонебуть
а потом жмеш атак как цилк иль спел какойн герой бежит на моба правельно но а если таргет махенся через пакеты герой реско сменет цель следует герой не будет бить 2 мобов одновременно
Последний раз редактировалось black1, 16.05.2008 в 15:35.
Этот скрипт формирует не правильный пакет. Вот немного исправленный.
delphi Код:
// Автоматическое взятие в таргет атакующего вас игрока или моба// Чтобы включить скрипт используйте в игре социальное действие - Yes// Чтобы выключить скрипт используйте в игре социальное действие - No// Автор: Furious// Версия: 0.4// исправления by NLObPconst
Name='NLObP'; //имя чара для которого включаем скриптvar
AttackerID, TargetID, Status: Integer;
MyID, MyXpos, MyYpos, MyZpos, i: integer;
procedure TargetAttacker(Attacker: Integer);
begin
buf:=#$04;
WriteD(Attacker);
WriteD(MyXpos);
WriteD(MyYpos);
WriteD(MyZpos);
WriteC(00);
SendToServerEx(Name);
end;
procedure SendMsg(Msg:string);
begin
buf:=#$4A;
WriteD(0);
WriteD(10);
WriteS('');
WriteS(Msg);
SendToClientEx(Name);
end;
//***************************************************************// вызывается при приходе каждого пакета, если скрипт включен//***************************************************************begin//****************************************************************************if(ConnectName=Name)and FromServer thenbegincase pck[1] of
#$04: begin//пакет с инфой о моём чаре
i:=2;
MyXpos:=ReadD(i); //получаю координату х моего чара
MyYpos:=ReadD(i); //получаю координату у моего чара
MyZpos:=ReadD(i); //получаю координату z моего чара//Запоминаем ИД
i:=18;
MyID:=ReadD(i); //получаю ид моего чараend;
//***************************************************************//05=Attack:d(AttackerID)h(targetID)d(Damage)b(Flags)d(X)d(Y)d(Z)d(ListHits)h(targetID)d(damage)b(flags)//48=MagicSkillUse:h(CharID)h(targetID)h(skillID)d(skillLvl)d(hitTime)d(reuseDelay)d(X)d(Y)d(Z)w(count)d(d)d(d)d(d)
#$05,#$48: beginif Status=1thenbegin
AttackerID:=ReadD(2);
TargetID:=ReadD(6);
if(AttackerID<>TargetID)and(MyID=TargetID)then TargetAttacker(AttackerID);
end;
end;
end;
end;
//****************************************************************************if(ConnectName=Name)and FromClient thenbegincase pck[1] of
#$1B: begin//C>Пакет RequestSicialAction #$1Bcase ReadD(2)of//социальное действие Yes для начала ловли6: begin
Status:=1;
SendMsg('Автоматическое взятие в цель включено!');
//не передаем серверу
pck:='';
end;
//социальное действие No для окончания5: begin
Status:=0;
SendMsg('Автоматическое взятие в цель включено!');
//не передаем серверу
pck:='';
end;
end;
end;
//ValidatePosition пакет от клиента с моими кординатами
#$48: begin
MyXpos:=ReadD(2); //получаю координату х моего чара
MyYpos:=ReadD(6); //получаю координату у моего чара
MyZpos:=ReadD(10); //получаю координату z моего чараend;
end;
end;
end.
Супер код!тольк проблема я и на старый не жаловался потомучто не работает не то и не другое
Может что не правельно делаю скрипт не работает
дык прошу помогите как написать пакет!!(ПАКЕТ)
чтоб отправить серву или принять где что посмотреть как? прям чтоб самому сделать потому что кроме кнопки послать клиенту и серверу не видно чтоб чет работало
(вот как у меня все выгледит
Doublexbmw.narod.ru/bbbb.JPG
и кстате а как вапще происходит он на таргет берет? по каким данным опишите плиз
Последний раз редактировалось black1, 16.05.2008 в 16:26.
Да все так делаю
Ставлю галачку потом жму тест init
(на скрине видно вроде)
Может серв пропатчен иль яя уж такой нуб програмист позор мне
играю на www.lineage.ru x1
программой перехватывал пакеты отправлял порой работает
ток скрипты не хотят
Как проверяю скрипт когда в игре /socialyes(жму агрю моба ударив разок жму кенсел таргет (всмысле искейп)
потом моб бьет и бежит за мной ток таргет не получается всмысле скрипт не включается ведь должен на таргет моба взять так?
Последний раз редактировалось black1, 16.05.2008 в 17:19.
Я по шагам писал, что надо делать. Кнопку init не надо нажимать, она для отладки скрипта.
В версии 3.2.0 лучше делать так:
1. загружаем пакетхак, снимаем галочку - перехват
2. загружаем клиент, заходим до выбора сервера
4. в пакетхаке ставим галочку - перехват
5. в клиенте выбираем сервер, заходим чаром
6. в пакетхаке в поле - Список соединений: должно быть имя чара. Иначе не будут работать скрипты.
7. выбираем скрипт и ставим напротив него галочку.
Последний раз редактировалось NLObP, 16.05.2008 в 17:20.
Супер код!тольк проблема я и на старый не жаловался потомучто не работает не то и не другое
(вот как у меня все выгледит
Doublexbmw.narod.ru/bbbb.JPG
и кстате а как вапще происходит он на таргет берет? по каким данным опишите плиз
Если на скрин посмотреть, то у тебя там чето с перехватом в пакетхаке не так! В списке соединений должно было твое имя появиться!
вот пип что делать кто подскажет прогу как настроить
я вроде ток ееё распакавал и запустил потом включаю л2 вожжу акк когда список серверов включаю прогу дык
и потом скрип
Как правельно ннадо включить прогу настроить всмысле?
Кстате пытался вставить скрипт в закладку дополнительно дык сервер разрыает соеденение тудже когда посылаю
И на сервере работают проги к примеру l2control дык там есть авто таргет только не мобов а персонажей
Последний раз редактировалось black1, 16.05.2008 в 17:33.