Автоматизация и боты

 Помощь      Поиск      Пользователи
Сайт Кибор     Программируемый кликер Кибор     Видео обучение     Заказать бот

 Страниц (3): [1] 2 3 »   

> Без описания
Agid
Отправлено: 05 Сентября, 2013 - 22:07:57
Post Id



Пользователь
Прохожий


Покинул форум
Сообщений всего: 4
Дата рег-ции: Авг. 2013  
Репутация: 0




Играю в мобильную браузерную игру. думаю практически всем известно что там что бы качнуть лвл нужно жать всего одну кнопку)) Пытался реализовать это через автокликер- до определенного момента все хорошо, но потом появляется дроп, и клавиша на атаку моба немного смещается. Думал попробовать написать скрипт, но я мало того что не опытный в этом языке, но и даже не знаю по какому принципу делать бот к такой игре! Прошу, кто может, напишите скрипт который бил бы первого в списке моба, вовремя перезаряжался, и после того как закончится энергия, выходил в меню и ждал 5 минут. Вот сама игра-zomvir.ru
заранее спасибо тому кто моможет) Улыбка
 
 Top
Kibor
Отправлено: 06 Сентября, 2013 - 00:25:10
Post Id



Администратор
Эксперт


Покинул форум
Сообщений всего: 8359
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 359




Вот скачать скрипт и нужные рисунки: скрипт и рисунки для zomvir.ru На С распаковать
Для мозилы! Вот к примеру в хроме на находит рисунки... надо делать другие.

Запускать когда игра идет на улице.
Если не играет - не находит рисунки. Сделать со своего экрана аналогично прилагаемым.
Перед этим почитать это и это

Вот текст этого скрипта:
CODE:
int PosX, PosY;
int time;
int Image_0[49][11];loadimage (#Image_0[0][0], "C:\zomvir-ru\zabrat.bmp");//Кнопка забрать

int Image_1[89][11];loadimage (#Image_1[0][0], "C:\zomvir-ru\ataka.bmp");//Кнопка атака

int Image_2[110][10];loadimage (#Image_2[0][0], "C:\zomvir-ru\zdorovie.bmp");//Надпись маленького здоровья

int Image_3[40][9];loadimage (#Image_3[0][0], "C:\zomvir-ru\menu.bmp");//Меню кнопка

int Image_4[42][9];loadimage (#Image_4[0][0], "C:\zomvir-ru\ylica.bmp");//Улица кнопка

int Image_5[89][12];loadimage (#Image_5[0][0], "C:\zomvir-ru\perezaryadit.bmp");


int col, x, y;
getdisplay(col, x, y);
l:;
if (findimage(1, #Image_2[0][0], 0, #PosX, #PosY, 0, 0, x, y, -1)==1)// появилась надпись маленького здоровья
{
a: if (findimage(1, #Image_3[0][0], 0, #PosX, #PosY, 0, 0, x, y, -1)==0)//если не нашли меню кнопку
{
key(NEXT);sleep(200);//прокрутка вниз страницы
goto a;
}
mouse(LEFT, PosX+10, PosY+5);//на кнопку меню жать
sleep(50);mousemove(10, y/2);sleep(200);//Убрать мышку с поля, что бы не подсвечивать кнопки
time=gettime();
q: if (gettime()-time<300000){sleep(100); goto q;}//5 мин ожидать

a1: if (findimage(1, #Image_4[0][0], 0, #PosX, #PosY, 0, 0, x, y, -1)==0)//если не нашли улица кнопку
{
key(NEXT);sleep(200);//прокрутка вниз страницы
goto a1;
}
mouse(LEFT, PosX+10, PosY+5);//на кнопку улица жать
sleep(50);mousemove(10, y/2);sleep(200);//Убрать мышку с поля, что бы не подсвечивать кнопки
}


if (findimage(1, #Image_0[0][0], 0, #PosX, #PosY, 0, 0, x, y, -1)==1)//Появилась надпась лута и кнопка забрать
{
mouse(LEFT, PosX+10, PosY+5);// нажать
sleep(50);mousemove(10, y/2);sleep(200);//Убрать мышку с поля, что бы не подсвечивать кнопки
}

if (findimage(1, #Image_5[0][0], 0, #PosX, #PosY, 0, 0, x, y, -1)==1)//Появилась кнопка перезарядить
{
mouse(LEFT, PosX+10, PosY+5);// нажать
sleep(50);mousemove(10, y/2);sleep(200);//Убрать мышку с поля, что бы не подсвечивать кнопки
}

if (findimage(1, #Image_1[0][0], 0, #PosX, #PosY, 0, 0, x, y, -1)==1)//Найти атака кнопка.
{
mouse(LEFT, PosX+10, PosY+5);// нажать
sleep(50);mousemove(10, y/2);sleep(200);//Убрать мышку с поля, что бы не подсвечивать кнопки
}


sleep(500);//Указать между щелчками паузу


goto l;
 
 Top
Agid
Отправлено: 06 Сентября, 2013 - 12:48:18
Post Id



Пользователь
Прохожий


Покинул форум
Сообщений всего: 4
Дата рег-ции: Авг. 2013  
Репутация: 0




 Kibor пишет:
Вот скачать скрипт и нужные рисунки;[/code]

Не работает Огорчение все как нужно делал, через мозилу, картинки заменил, но после запуска бота ничего не происходит
 
 Top
Kibor
Отправлено: 06 Сентября, 2013 - 13:36:27
Post Id



Администратор
Эксперт


Покинул форум
Сообщений всего: 8359
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 359




 Agid пишет:
Не работает

Понятия не имею. У меня несколько часов без сбоев работал пока не остановил.
Выложите архив с рисунками.
Туда же скрин экрана с игрой (все страницы). Формат bmp без сжатия.
Если скрипт корректировался - его в архив.
 
 Top
Agid
Отправлено: 06 Сентября, 2013 - 13:49:01
Post Id



Пользователь
Прохожий


Покинул форум
Сообщений всего: 4
Дата рег-ции: Авг. 2013  
Репутация: 0










а вот до
и после запуска бота
 
 Top
Kibor
Отправлено: 06 Сентября, 2013 - 13:53:19
Post Id



Администратор
Эксперт


Покинул форум
Сообщений всего: 8359
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 359




 Kibor пишет:
Выложите архив с рисунками.
Туда же скрин экрана с игрой (все страницы). Формат bmp без сжатия.


По рисунку и так вижу что он больше прилагаемого мной. Это не допустимо, так как память выделена на меньший:
int Image_2[110][10];
почитать это и это
 
 Top
Agid
Отправлено: 06 Сентября, 2013 - 13:58:30
Post Id



Пользователь
Прохожий


Покинул форум
Сообщений всего: 4
Дата рег-ции: Авг. 2013  
Репутация: 0




(для просмотра ссылки Вам необходимо авторизоваться)
(Добавление)
 Kibor пишет:
 Kibor пишет:
Выложите архив с рисунками.
Туда же скрин экрана с игрой (все страницы). Формат bmp без сжатия.


По рисунку и так вижу что он больше прилагаемого мной. Это не допустимо, так как память выделена на меньший:
int Image_2[110][10];
почитать это и это

понял, сейчас попробую
(Добавление)
Есть! Спасибо, подправил размеры, теперь нормально. Но появился другой вопрос- как сделать так чтобы бот делал паузу в 2 секунды после удара? А то он бьет первых двух мобов слишком часто(не успевает перезарядится) а там после каждого удара(даже неудачного) мобы подходят на шаг
(Добавление)
Cпасибо уже нашел как
 
 Top
Kibor
Отправлено: 06 Сентября, 2013 - 14:57:55
Post Id



Администратор
Эксперт


Покинул форум
Сообщений всего: 8359
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 359




 Agid пишет:
как сделать так чтобы бот делал паузу в 2 секунды после удара


 Kibor пишет:
sleep(500);//Указать между щелчками паузу

Читайте коментарии в скрипте
 
 Top
MasterLamaster
Отправлено: 15 Сентября, 2013 - 22:18:23
Post Id



Пользователь
Прохожий


Покинул форум
Сообщений всего: 20
Дата рег-ции: Сент. 2013  
Репутация: 0




Вы говорили что вам нужно понять суть самой игры, но думаю можно обойтись и без этого) Собственно я об "Элдоре". Что мне собственно нужно:
Что бы бот заходил в "Бестиарий" выбирал нужного мне моба, бил его в нужной мне последовательности, и убивал его, после чего ждал нужное количество времени, и повторял данные действия. Если же его убиваю, то просто заходил в храм ждал до окончания регенерации, и повторял выше перечисленное. На сколько я понимаю все действия можно привязать к картинкам. И сделать не большие паузы между действиями так как иногда игра прогружаеться. Вот собственно и все что мне нужно от данного бота)
 
 Top
Kibor
Отправлено: 16 Сентября, 2013 - 10:43:55
Post Id



Администратор
Эксперт


Покинул форум
Сообщений всего: 8359
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 359




Суть игры в данном случае и есть правильная последовательность действий, со всякими временными ожиданиями регенерации и т.п.
Вот собственно этот нехитрый скрипт: архив с рисунками, эмулятором, игрой и скриптом.
В архиве все вместе. Распаковать на С.
Эмулятор и игра выложены так как именно этот эмулятор и игру использовать. Настройки эмуля - стандартные.

Стартовать скрипт в такой позиции


Скрипт настроен на Крыс.
Добавить код который позволит бить ударами разными я оставляю вам.

Сам скрипт
CODE:
win w=window ("KEmulator Lite v0.9.8", "SWT_Window0", -1);
int t;
int ojidat=50000; //Время которое ждем после восрешение
int ojidat1=20000; //Время которое ждем после боя и победы
int X, Y;
int bestisrii[61][9];
int zagryzka[18][18];
int kris[28][9];
int xod[23][11];
int porajenie[67][9];
int xram[30][9];
int pobeda[44][9];
int voskresli[81][9];

activate(w);
sleep(1000);
loadimage (#bestisrii[0][0], "C:\eldor\bestisrii.bmp");
loadimage (#zagryzka[0][0], "C:\eldor\zagryzka.bmp");
loadimage (#kris[0][0], "C:\eldor\kris.bmp");
loadimage (#xod[0][0], "C:\eldor\xod.bmp");
loadimage (#porajenie[0][0], "C:\eldor\porajenie.bmp");
loadimage (#xram[0][0], "C:\eldor\xram.bmp");
loadimage (#pobeda[0][0], "C:\eldor\pobeda.bmp");
loadimage (#voskresli[0][0], "C:\eldor\voskresli.bmp");

l: keydown(DOWN);sleep(500);keyup(DOWN);//жмем вниз

//////////////////////////////////////////////////////////////
find_bestisrii();//Ищем вход в бестиарий;
find_kris();//Ищем крыс списке;
boi();// бой

//////////////////////////////////////////////////////////////////////

goto l;



function find_bestisrii()
{
if (findimage(1, #bestisrii[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1)//нашелся бестиарий
{
keydown(F2);sleep(500);keyup(F2);
sleep(1000);
keydown(RETURN);sleep(500);keyup(RETURN);
sleep(1000);
a: if (findimage(1, #zagryzka[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1){sleep(100); goto a;}//ждать загрузку
}
}

function find_kris()
{
if (findimage(1, #kris[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1)//нашелся крыс
{
keydown(F2);sleep(500);keyup(F2);
sleep(1000);
keydown(RETURN);sleep(500);keyup(RETURN);
sleep(1000);
a: if (findimage(1, #zagryzka[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1){sleep(100); goto a;}//ждать загрузку
}
}


function boi()
{
b: if (findimage(1, #xod[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1)//нашелся ход
{
//Тут должен быть код нажатий разных ударов
keydown(F2);sleep(500);keyup(F2);
sleep(2000);

if (findimage(1, #porajenie[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1)//поражение
{
keydown(RETURN);sleep(500);keyup(RETURN);
sleep(1000);
a: if (findimage(1, #zagryzka[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1){sleep(100); goto a;}//ждать загрузку
l1: keydown(DOWN);sleep(500);keyup(DOWN);//жмем вниз
if (find_xram()==1)return;
goto l1;
}

if (findimage(1, #pobeda[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1)//победа
{
keydown(RETURN);sleep(500);keyup(RETURN);
sleep(1000);
a1: if (findimage(1, #zagryzka[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1){sleep(100); goto a1;}//ждать загрузку
t=gettime();
ay: if (gettime()-t<ojidat1){sleep(50);goto ay;}
return;
}

goto b;
}
}


function find_xram()
{

if (findimage(1, #xram[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1)//нашелся храм
{
keydown(F2);sleep(500);keyup(F2);
sleep(1000);
keydown(RETURN);sleep(500);keyup(RETURN);
sleep(1000);
a: if (findimage(1, #zagryzka[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1){sleep(100); goto a;}//ждать загрузку
j: if (findimage(1, #voskresli[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1)
{
sleep(500);
keydown(F1);sleep(500);keyup(F1);
a5: if (findimage(1, #zagryzka[0][0], 0, #X, #Y, 0, 0, 240, 320, w)==1){sleep(100); goto a5;}//ждать загрузку
keydown(UP);sleep(7000);keyup(UP);
t=gettime();
ay: if (gettime()-t>ojidat) return 1;//Воскресли
sleep(50);
goto ay;
}
sleep(100);
goto j;
}
return 0;

}
 
 Top
Страниц (3): [1] 2 3 »
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0)
« Вопросы и решение проблем »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 




Powered by