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

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

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
Ответ
 
Опции темы Опции просмотра
Старый 06.06.2011, 04:29   #1
Местный
 
Аватар для Deffol
 
Регистрация: 17.02.2011
Сообщений: 118
Сказал Спасибо: 51
Имеет 2 спасибок в 2 сообщенях
Deffol пока неопределено
Вопрос Скрипт для автоматизации..

Привет всем, вот хочу написать скрипт на автоматизацию выполнения квеста с крафтом, в общем игра айон, но это не важно!
я хочу сделать, чтоб посылался автоматически пакет на взятие квеста, потом в окне крафта посылал пакет на крафт нужных вещей сколько надо раз ,например 9, после этого сдавал квест, потом опять брал и по такому циклу! но там крафт идет несколько секунд, и пока он идет другой пакет на крафт следующего итема послать нельзя!
Пакет на крафт одинаковый, на сдачу и взятия квеста разные...
у меня голова немного варит в этом деле, но просто хочу спросить можно ли это реализовать и прошу от вас толчок в правильном направлении, что нужно в скрипте, а я уже сам реализую если возможно...
Deffol вне форума   Ответить с цитированием
Старый 06.06.2011, 06:10   #3
Местный
 
Аватар для Deffol
 
Регистрация: 17.02.2011
Сообщений: 118
Сказал Спасибо: 51
Имеет 2 спасибок в 2 сообщенях
Deffol пока неопределено
По умолчанию

я ботами не пользовался ниразу....я всегда скрипты писал.
вот я словил уже нужные пакеты, в общем в принципе я смогу реализовать таймер...
Но у меня проблема с крафтом будет, каждый раз время крафта разное, а я хотел бы поймать пакет синий который показывает, что крафт закончен и после него сразу бы начинался другой...
Но я не знаю какой пакет ловить, там когда крафт заканчивается в чат посылается инфа об обновлении миссии, думал может этот использовать, но пробовал ловить синии пакеты и отсылать, чтоб найти тот самый, думал если отошлю, то в инфе появится надпись, но не появилось, вот подскажите с этим пожалуйста, как мне поступить?

Добавлено через 55 минут
в общем после крафта идут около 5 синих пакетов, я выбрал самый простой и решил, что после его посылки "
PHP код:
#$16 SendToClient 
"
Будет запрос на пакет типа
PHP код:
#$E3 SendToServer 
......
хочу, чтоб скрипт начинался с посылки слова в чат например "/го"
PHP код:
('B9 57 76 00 2F 00 33 04 3E 04 00 00'
ну вот наглядно:
PHP код:
begin
if FromClient and (pck=Hstr('B9 57 76 00 2F 00 33 04 3E 04 00 00'
then 
begin
buf
:=HStr('9C 57 5B D3 01 00 00 EA 03 01 00 04 00 0F 19 00 00 00 00');
SendToServer;
pck:=''
после должен идти крафт #$E3, до синиго пакета #$16 ,потом опять #$E3
И так 9 раз....
Потом сдача квеста....
вот не могу придумать, как сделать, я с таким еще не имел дело.
можете подсказать как именно реализовать, посылку пакета #$E3 9 раз подряд, потом бы шел пакет на сдачу квеста, потом принятие и по циклу?

Последний раз редактировалось Deffol, 06.06.2011 в 06:10. Причина: Добавлено сообщение
Deffol вне форума   Ответить с цитированием
Старый 06.06.2011, 06:34   #4
Местный
 
Регистрация: 04.11.2009
Адрес: Где-то в жопе европы
Сообщений: 316
Сказал Спасибо: 32
Имеет 42 спасибок в 39 сообщенях
wimax пока неопределено
По умолчанию

Deffol, используй таймер
wimax вне форума   Ответить с цитированием
Старый 06.06.2011, 09:13   #5
Местный
 
Аватар для Deffol
 
Регистрация: 17.02.2011
Сообщений: 118
Сказал Спасибо: 51
Имеет 2 спасибок в 2 сообщенях
Deffol пока неопределено
По умолчанию

Пока я вот, что придумал: ( там пакеты пока просто посылка в чат, так проще проверять скрипт )

Оффтоп
Там в конце таймер выключается, когда я должен пробежать, но я бегу, а таймер работает, то есть идет посылка в чат, как бы дальше крафт идет, мне нужно его выключить по приходу пакета, что я не так сделал?

//Breadfan: тут каша из бегин\эндов. Проверка с отключением таймера - находится внутри проверки на старт - не выполнится оно.

Добавлено через 38 минут
в общем я нашел ошибку и сделал так:

Оффтоп

Теперь при посылке в чат "/го" посылается пакет на покупку заказа, затем включается таймер и сразу идет крафт. После того как крафт закончится, посылается пакет который объявляет о том, что вешь скрафтилась и таймер останавливается....
Подскажите, как сделать именно, чтоб крафтилось 9 раз, а потом сдавался квест, и сразу покупался?
Но еще момент, надо чтоб пакет на крафт после того как начал посылаться после покупки миссии, сразу останавливался, и начался бы только тогда, когда прийдет пакет который объявляет, что крафт закончен.
я не могу придумать...подскажите что нибудь

//Breadfan: в таймере введи переменную step - которая будет показывать на каком шаге находится выполнение. Навроде
delphi Код:
step:=0; ....... procedure OnTimer(Sender: TObject); begin //крафт step:=step+1; Timer.interval:=1500; buf:=HStr('B9 57 76 00 2F 00 3A 04 40 04 30 04 44 04 42 04 00 00'); SendToServerEx(ConnectName); Timer.enabled:=false; if step=9 then (сдать квест, сбросить step); end;
и в основной части добавь проверку прихода "крафт окончен" - при срабатывании - Timer.enabled:=true;

Добавлено через 36 минут
в общем я запутался и решил поставить в таймере интервал крафта на 1500
и по завершению квеста вырубить таймер:

Оффтоп
Так намного легче...но вот как сделать, чтоб после завершения квеста и собственно выключения таймера, скрипт сдал заказ и купил заного и такой цикл?

Последний раз редактировалось Deffol, 06.06.2011 в 10:22. Причина: Добавлено сообщение
Deffol вне форума   Ответить с цитированием
Старый 06.06.2011, 09:23   #6
Местный
 
Аватар для Breadfan
 
Регистрация: 29.04.2008
Сообщений: 830
Сказал Спасибо: 80
Имеет 230 спасибок в 169 сообщенях
Breadfan пока неопределено
По умолчанию

в блоке добавь нужное
if FromClient and (pck=Hstr('B9 57 76 00 41 04 42 04 3E 04 3F 04 00 00')) then
Timer.enabled:=false;//отключил таймер
////сдаешь че там нужно
///берешь заново
///запускаешь таймер вновь.
end;

Почему привязка отключения таймера - к клиенту, а не к ответу сервера?
__________________
На фразы в аську типа "слух карочь 1)как точить 2)как раскачаться за 5 мин" - игнор. ИМХО идиотизм
Дай голодному рыбу - он будет один день сыт. Покажи ему, как удить рыбу - он пошлёт тебя и скажет, что у него есть более интересные занятия, чем забрасывать снасти в воду
David Kastrup @ de.comp.text.tex.
"Приобретенные навыки общения с маленькими детьми - сильно упрощают взаимопонимание на форумах..."

А вы знаете, что для качественной сварки - место шва нужно протереть спиртом?
Breadfan вне форума   Ответить с цитированием
За это сообщение Breadfan нажился спасибкой от:
Старый 06.06.2011, 10:14   #7
Местный
 
Аватар для Deffol
 
Регистрация: 17.02.2011
Сообщений: 118
Сказал Спасибо: 51
Имеет 2 спасибок в 2 сообщенях
Deffol пока неопределено
По умолчанию

Цитата:
Сообщение от Breadfan Посмотреть сообщение
Почему привязка отключения таймера - к клиенту, а не к ответу сервера?
ну это я просто со словами в чате эксперементирую чтоб при всех в храме если, что не закосячить пакетами...а то не поймут...

Добавлено через 18 минут
Breadfan, вот сделал так:
delphi Код:
begin //Пакет завершения квеста if FromClient and (pck=Hstr('B9 57 76 00 41 04 42 04 3E 04 3F 04 00 00')) then Timer.enabled:=false; buf:=Hstr('B9 57 76 00 41 04 34 04 30 04 47 04 30 04 00 00'); SendToServerex(connectname); buf:=HStr('B9 57 76 00 2F 00 1F 04 3E 04 3A 04 43 04 3F 04 3A 04 30 04 00 00'); SendToServerEx(connectname); Timer.enabled:=true; end; end.

Начинают спамиться пакеты только на покупку и сдачу с минимальным интервалом времени

Добавлено через 20 минут
не могу ничего придумать, пытался сделать вспомогательный скрипт, на то, чтоб после пакета завершения квеста, посылал сдачу кв и покупку, так выкидывает из игры....не знаю, что и делать

Последний раз редактировалось Deffol, 06.06.2011 в 10:20. Причина: Добавлено сообщение
Deffol вне форума   Ответить с цитированием
Старый 06.06.2011, 10:23   #8
Местный
 
Аватар для Breadfan
 
Регистрация: 29.04.2008
Сообщений: 830
Сказал Спасибо: 80
Имеет 230 спасибок в 169 сообщенях
Breadfan пока неопределено
По умолчанию

Примерно так попробуй:
Оффтоп
__________________
На фразы в аську типа "слух карочь 1)как точить 2)как раскачаться за 5 мин" - игнор. ИМХО идиотизм
Дай голодному рыбу - он будет один день сыт. Покажи ему, как удить рыбу - он пошлёт тебя и скажет, что у него есть более интересные занятия, чем забрасывать снасти в воду
David Kastrup @ de.comp.text.tex.
"Приобретенные навыки общения с маленькими детьми - сильно упрощают взаимопонимание на форумах..."

А вы знаете, что для качественной сварки - место шва нужно протереть спиртом?

Последний раз редактировалось Breadfan, 06.06.2011 в 10:38.
Breadfan вне форума   Ответить с цитированием
За это сообщение Breadfan нажился спасибкой от:
Ответ

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



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

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


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

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

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