БАФ КОНЯ НА ПЕРСА КОТОРОМУ НУЖЕН БАФ ( я тут не понял какой именно нужно капировать по этому держи 3 штуки )
================================================== ================================================== ================================
Tип: 0x48 (MagicSkillUse)
Pазмер: 41+2
Время прихода: 14:20:45:250
0002 d charID: 1323344568 (0x4EE0A2B
0006 d targetID: 1323344568 (0x4EE0A2B
000A d skillID: Благословение Серафима ID:4702 (0x125E)
000E d skillLvl: 2 (0x00000002)
0012 d hitTime: 4000 (0x00000FA0)
0016 d reuseDelay: 8000 (0x00001F40)
001A d X: 146305 (0x00023B81)
001E d Y: 46736 (0x0000B690)
0022 d Z: -3432 (0xFFFFF29
0026 h count: 0 (0x0000)
теперь у тебя два пути - или таймер, или реакция на слово "баф" в пати чате. а можно даже совместить, чтоб долбил по таймеру, а еще если кому надо то вручную писуя слово "баф" в пати чате.
1.Нужно пакеты ловить на движение.
2.Фильтровать пакеты проверкой по нику основы.
3.Запомнить X,Y,Z с пакета движения.
4.Бежать x+50,Y+50,Z от основы.
5.и по таймеру бафать коня или сделать проверку по пакету Say ловить пакет с пати чата и проверять текст ReadS(2) вроде,на слово.и вызвать процедуру баффа.
6.Для этого нужно все запомнить.
Друзья не сритесь а лучше помогите, потому что я уже кучу скриптом перепробовал переделать, не чего не получилось, как я понимаю проверка на коня еще нужна, 20минут пройдет что бы он его заново вызывал, и если убъют например, подсобите самый простой вариант сойдет.. SeregaZ я в тебя верю дружище :d
Последний раз редактировалось BerkooT, 20.06.2012 в 03:47.
Причина: Добавлено сообщение
procedure Init; //Вызывается при включении скрипта begin useforconnectname := 'PonyVod'; //useforconnectname := 'SVPONIVOD'; end;
procedure Free; //Вызывается при выключении скрипта begin
end;
//основная часть скрипта //вызывается при приходе каждого пакета если скрипт включен begin if FromServer and (pck[1]=#$39) then begin //проверка имени пати кидающего и принятие если это я if (pck[2]+pck[3]+pck[4]+pck[5]=HStr('45 00 6C 00')) or (pck[2]+pck[3]+pck[4]+pck[5]=HStr('53 00 65 00')) then begin buf:=HStr('2A 01 00 00 00'); //пати принял SendToServer;
if FromClient and (pck=HStr('2A 00 00 00 00')) and (a = 1) //блок пакета непринятия пати then begin pck:=''; end;
if FromServer and (pck[1]=#$50) //если пати распущено, то бот готов принять сл пати then begin a:=0; end;
if FromServer and (pck[1]=#$4A) and (pck[6]=#$03) and //пати чат просят баф then begin j:=10; // j - стартовая позиция указателя //CharOID:=ReadD(j); // -- OID перса //TextType:=ReadD(j); //-- индекс чата в котором пишется текст nick:=ReadS(j); //-- считывается ник, и, одновременно, указатель байта сдвигается на его длинну, т.е после выполнения команды будет j:=j+(длинна_блока_оканчивающегося "00 00") text:=ReadS(j); //-- считываем текст сообщения if (text='баф') or (text='аф') then begin
не бегает, нет таймера. вызывал коня по киданию в пати. причем принимал пати только после проверки части ника... не помню что там должно было по "Se" чтоли проверялось... сто летней давности. сам разбирайся, докручивай таймер, проверку на своего коня и все что надо.
procedure Init; //Вызывается при включении скрипта
begin
useforconnectname := 'PonyVod';
//useforconnectname := 'SVPONIVOD';
end;
procedure Free; //Вызывается при выключении скрипта
begin
end;
//основная часть скрипта
//вызывается при приходе каждого пакета если скрипт включен
begin
if FromServer and (pck[1]=#$39) then begin //проверка имени пати кидающего и принятие если это я
if (pck[2]+pck[3]+pck[4]+pck[5]=HStr('45 00 6C 00')) or (pck[2]+pck[3]+pck[4]+pck[5]=HStr('53 00 65 00'))
then begin
buf:=HStr('2A 01 00 00 00'); //пати принял
SendToServer;
if FromClient and (pck=HStr('2A 00 00 00 00')) and (a = 1) //блок пакета непринятия пати
then begin
pck:='';
end;
if FromServer and (pck[1]=#$50) //если пати распущено, то бот готов принять сл пати
then begin
a:=0;
end;
if FromServer and (pck[1]=#$4A) and (pck[6]=#$03) and //пати чат просят баф
then begin
j:=10; // j - стартовая позиция указателя
//CharOID:=ReadD(j); // -- OID перса
//TextType:=ReadD(j); //-- индекс чата в котором пишется текст
nick:=ReadS(j); //-- считывается ник, и, одновременно, указатель байта сдвигается на его длинну, т.е после выполнения команды будет j:=j+(длинна_блока_оканчивающегося "00 00")
text:=ReadS(j); //-- считываем текст сообщения
if (text='баф') or (text='аф') then begin
не бегает, нет таймера. вызывал коня по киданию в пати. причем принимал пати только после проверки части ника... не помню что там должно было по "Se" чтоли проверялось... сто летней давности. сам разбирайся, докручивай таймер, проверку на своего коня и все что надо.
Братан я же объясняю что я даже таймер прикрутить не шарю как ) помоги ты сделать 2 недели уже тут обитаю ) неужели тебе 20минут в падлу потратить.. и помочь
принять пати, смотреть список бафа - если нет баф коня и цель не мертва и цель маг - (вызвать коня) - бафнуть. и все. Бег за ведущим - давно рассматривался - и есть алгоритмы. Таймер нафиг не нужен, бо надо бафать по факту. Если б ты прислал именно то что я просил (имеет место быть переписка в личке) - давно написал бы, но ты ж не лог дал, а лишь самовырезаные кусочки.
И не 20 минут. Клиент установить, найти сервер где пх работает...Это далеко не 20 минут. 120 - это офигенно быстро. Ты же сам не говоришь на каком сервере пробовать.
А собсно - найди "Сумасшедший бафер" (кактотак) - так все принципы описаны
__________________ На фразы в аську типа "слух карочь 1)как точить 2)как раскачаться за 5 мин" - игнор. ИМХО идиотизм
Дай голодному рыбу - он будет один день сыт. Покажи ему, как удить рыбу - он пошлёт тебя и скажет, что у него есть более интересные занятия, чем забрасывать снасти в воду
David Kastrup @ de.comp.text.tex.
"Приобретенные навыки общения с маленькими детьми - сильно упрощают взаимопонимание на форумах..."
А вы знаете, что для качественной сварки - место шва нужно протереть спиртом?
Последний раз редактировалось Breadfan, 21.06.2012 в 08:59.
принять пати, смотреть список бафа - если нет баф коня и цель не мертва и цель маг - (вызвать коня) - бафнуть. и все. Бег за ведущим - давно рассматривался - и есть алгоритмы. Таймер нафиг не нужен, бо надо бафать по факту. Если б ты прислал именно то что я просил (имеет место быть переписка в личке) - давно написал бы, но ты ж не лог дал, а лишь самовырезаные кусочки.
И не 20 минут. Клиент установить, найти сервер где пх работает...Это далеко не 20 минут. 120 - это офигенно быстро. Ты же сам не говоришь на каком сервере пробовать.
А собсно - найди "Сумасшедший бафер" (кактотак) - так все принципы описаны
Объясните как лог сделать, организую
Добавлено через 4 часа 11 минут
Цитата:
Сообщение от Breadfan
принять пати, смотреть список бафа - если нет баф коня и цель не мертва и цель маг - (вызвать коня) - бафнуть. и все. Бег за ведущим - давно рассматривался - и есть алгоритмы. Таймер нафиг не нужен, бо надо бафать по факту. Если б ты прислал именно то что я просил (имеет место быть переписка в личке) - давно написал бы, но ты ж не лог дал, а лишь самовырезаные кусочки.
И не 20 минут. Клиент установить, найти сервер где пх работает...Это далеко не 20 минут. 120 - это офигенно быстро. Ты же сам не говоришь на каком сервере пробовать.
А собсно - найди "Сумасшедший бафер" (кактотак) - так все принципы описаны
Готово сделал логи, отослал в личку..
Последний раз редактировалось BerkooT, 21.06.2012 в 19:12.
Причина: Добавлено сообщение