PDA

Просмотр полной версии : Помогите


lSiml
25.10.2010, 01:07
Парни(девушки если есть) прошу о помощи.
Все вы я думаю знаете бот-локомотив
http://coderx.ru/showthread.php?t=334
на серве работает замечательно.
но есть одно не большое НО.
На серве стоит защита от ботов "каждые 15 минут вылезает окно с вопросом и есле не ответить то кикает с игры"
помогите в скрипте под ил настроить чтобы бот сам делал релог каждые 13-14 минут. Есть второй скрипт на просто релог можете както совместить если получится. точнее это не на релог скрипт а просто посылает автоматом пакеты(но при включеном боте когда делаешь релог скриптом то критует) Нужно чтобы примерно так Включил бота он работает потом ставился на паузу делал релог и выключал паузу. Мне с моими познаниями этого не сделать слишком уж я мало про это всё знаю.
прошу вас не кидать ссылки на темы и кричать что поиск плохо юзаю, просто помогите.

Релог:
var
TimerCycle:integer;
timer:TTimer;

procedure Init;
begin
timer:=TTimer.Create(nil);
timer.interval:=1000;
timer.OnTimer:=@OnTimer;
timer.enabled:=False;
TimerCycle:=1;
end;

procedure OnTimer(Sender: TObject);
begin
case TimerCycle of
1:begin
buf:=HStr('45 00 00 00 00 00 00 00 00 00');
sendtoserver;
Inc(TimerCycle);
timer.interval:=20000;
end;
2:begin
buf:=HStr('46');
sendtoserver;
Inc(TimerCycle);
timer.interval:=12000;
end;
3:begin
buf:=HStr('0D 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00'); //2 пакет
sendtoserver;
TimerCycle:=1;
timer.interval:=800000;
end;
end;
end;

procedure Free;
begin
timer.free;
end;


begin
if FromClient and (pck=HStr('1B 0B 00 00 00')) then timer.enabled:=true;
if FromClient and (pck=HStr('1B 02 00 00 00')) then timer.enabled:=false;
end.

J-Fobos
25.10.2010, 11:32
Для начала надо сказать что пакетхак не работает с логин сервером и поэтому релог можно будет сделать только до комнаты с выбором чара, а не до окна с вводом логина и пароля.

Далее надо сказать, что вместо вас, скрипта никто писать не будет за просто так, если вы не хотите сами писать скрипт, то можете оплатить чужую работу.

Бот-локомотив я не юзал и у меня возник вопрос: имеет ли он возможность установки паузы? Если "да", то как она реализована? (Я конечно могу и сам посмотреть, но так не интересно :p ).

А еще хотелось бы узнать какого рода окно с вопросом появляется? Было бы лучше организовать не релог, а ответ на вопрос (ну конечно от сложности зависит, возможно релог действительно проще) :)

lSiml
25.10.2010, 12:50
Для начала надо сказать что пакетхак не работает с логин сервером и поэтому релог можно будет сделать только до комнаты с выбором чара, а не до окна с вводом логина и пароля.

так мне и надо релог перса самого а не всего акка.


Бот-локомотив я не юзал и у меня возник вопрос: имеет ли он возможность установки паузы? Если "да", то как она реализована? (Я конечно могу и сам посмотреть, но так не интересно ).

есть кнопка паузы. там их имеется 4:
Init
Start
Stop
Pause
реалезована она временной остановкой бота. имеется кнопка Init она при включении скрипта делает релог перса чтобы скрипт узнал мобов вокруг id чара и т.д. ну Start Stop думаю понятно.
в самом скрипте нашол такой кусок. ну 46 понятно это релог в комнату где персы. begin
RestartMode:= true;
buf:= #$46; // авто релогин
SendToServerEx(NickName);
end;
мне всеголишь нужно в скрипт както впихнуть таймер. вы хоть посоветуйте чтото.


А еще хотелось бы узнать какого рода окно с вопросом появляется? Было бы лучше организовать не релог, а ответ на вопрос (ну конечно от сложности зависит, возможно релог действительно проще)

вылезает окошко рандомно на экране(время от 15 минут, может через 2-3 часа)
в окошке примерный текст "лалалал я повелитель мира ла2 и т.д. и тп, не люблю ботов. в слове экран допущена ошибка выбери правильное и 5 вариантов ответа". когда отвечаешь на вопрос посылается пакет типа "7B 31 00 30 00 30 00 30 00 30 00 35 00 00 00 "

J-Fobos
25.10.2010, 14:10
Получается в локомотиве достаточно нажимать одну кнопку для релога каждые 15 мин. Не вижу никаких препятствий, кроме лени ))

А вариантов вопросов много? Наблюдаются ли какие-то закономерности между ними?)

dyh9l
25.10.2010, 19:20
Если вопросы повторяются, одинаковые ли пакеты приходят от сервера?

lSiml
26.10.2010, 14:11
от сервера я пакета не ловил вообщ. вариантов ответа 5. играю 3 дня не одного одинакого вопроса пока не встретил.
Получается в локомотиве достаточно нажимать одну кнопку для релога каждые 15 мин. Не вижу никаких препятствий, кроме лени ))
при нажатии кнопки Start кнопка init становится не активна. и я не смогу её нажать. такбы я давно кликер поставил онбы сам мне её тыкал) кнопку можно нажать только 1 раз при запуске бота. и ещё если я нажму стоп потом перезапущу и ткну старт то бот не заработает надо чтобы бот ставил на паузу ждал 20 сек потомучто в режими боя не выйдет. делал релог чара заходил и снимался с паузы. в принципе я решил свою проблему настройкой на серве бота l2net но всё ровно хотелась бы разобраться в этом вопросе)

J-Fobos
26.10.2010, 18:39
Я в том смысле, что мне лень писать дополнение к скрипту)
В скрипте локомотиве добавьте таймер, который будет нажимать кнопку стоп, а потом инит.

Breadfan
02.11.2010, 08:13
А что за сервер такой? Можно ж сделать пачку окон, и ими собрать бд вопросов (ну хотя бы попытаться - все будет зависеть от их (вопросов) числа) - наподобие - "вопрос есть в бд? - есть - ответим\нету - занести в бд и пробовать быстро уйти в релог"...Интересно, блин....Че за сервер??? А вопросы постоянно про грамматику? Признавайсо ! Может там прокатит примитивный парсинг присылаемой хтмлки, на предмет совпадающих слов в паре "вопрос-набор ответов", ну это в случае если так и пишут: ...в слове экран допущена ошибка выбери правильное и 5 вариантов ответа......Если что - можно еще стянуть базу слов с игр наподобие "Балда"...Посмотреть хочется :D

lSiml
06.11.2010, 19:55
вообще сервер oldshamon.ru
но вопрос не актуален ибо больше не играю(был вайп) да и адм поставил защиту чуть серьёзнее.