Кибор » Кибор - Интегрированная среда разработки ботов » Вопросы и решение проблем » Нужна помощь нубу=)

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

1. Lonkusy - 24 Июня, 2016 - 05:54:40 - перейти к сообщению
Помогите пожалуйста, только узнал о вашей программке, попытался в ней разобраться, но у меня вообще ничего не получается(( Смотрел кучу обзоров, читал и прочее, но я тугодум((

Суть проблемы следующая, есть браузерная онлайн игра, очень похожа на DarkOrbit, я пытался сделать такой же бот, как в этом видео



Бот должен по сути быть точно таким же, тоже искать ресурсы на карте по цвету, и подбирать их. Но проблема в том, что ресурсы в игре, для которой я пытался сделать такой бот динамические, то есть они постоянно крутятся, и там нету одного цвета который можно было бы выделить (как это сделано в видео).
Вот видео нескольких разных ресурсов из этой игры, подскажите пожалуйста как сделать, что бы бот искал их и кликал по ним? Я не могу понять как сделать что бы он искали эти динамические ресурсы(


Помогите пожааалуйста решить эту проблемму, буду очень благодарен..


И проблема номер 2, (не критическая, но я не понимаю почему так происходит), когда я захожу в Графику, навожу мышкой на окно с игрой в браузере и нажимаю Ctrl+Shift+S то оно показывает просто черный фон, а не картинку как должно. Точно так же где угодно, не только в браузере. Показует как нужно только если выбрать Экран а не Контрол.
2. Kibor - 24 Июня, 2016 - 06:26:57 - перейти к сообщению
Тут надо использовать findheapcolor
В визуальном редакторе этого сейчас нет. Я как раз делаю обновление, в котором будет выбор поиска по

finddynamic- Искать динамично меняющиеся области экрана
findimage- Искать изображение на экране по маске изображения загруженного в память Кибор. Пример поиска по неполному совпадению
findheapcolor- Ищет области на которых есть скученности пикселей определенных цветов
scanpixel- Сравнивает введенный цвет с цветом пикселя в веденных координатах ориентируясь на разбежности в цветах RGB
findcolor- Найти все координаты всех пикселей указанного цвета

Но доступно будет только в максималке, кроме findimage ..

По поводу черного экрана не знаю.. ну можно использовать экран.. и в игре фон отключить надо
На данный момент это можно только запрограммировать вручную используя findheapcolor
3. revenant11 - 10 Июля, 2016 - 12:50:07 - перейти к сообщению
Всем доброго вечера, тоже нубский вопрос, никак не могу победить массив( все, вродь, делаю по следующему видео:(для просмотра ссылки Вам необходимо авторизоваться) но, во второе изображение не кликает, кликает только на первое, если перекрываю первое - кликает на второе. Подскажите пожалуйста где я мог ошибиться. С месяц назад получилось, сейчас уже пол дня победить не могу(

CODE:
int col_KIB, ex_KIB, ey_KIB, sum_KIB, x_KIB, y_KIB, tim_KIB;
int Image_0_KIB[127][82];

int k, x[20], y[20], n;
start_();
m_KIB3: findimage_(#Image_0_KIB[0][0], 2000, 0, 1000, 0, 0, 0, 0, -1, 0, 100, 1, 0, 0, ex_KIB, ey_KIB, #k, #x[0], #y[0]);
n=0;
m_KIB1: mouse_(300, 2, x[n], y[n], 300);
n++;
if (n==k) goto f;
goto m_KIB1;
m_KIB5: f:; goto m_KIB3;



function start_()
{
getdisplay(col_KIB, ex_KIB, ey_KIB);
load_image_();
pause(1000);
}


function mouse_(int p1, int m, int xm, int ym, int p2)
{
pause(p1);
if (m==1) mouse(LEFT, xm, ym);
if (m==2) mouse(MIDDLE, xm, ym);
if (m==3) mouse(RIGHT, xm, ym);
if (m==4) mousedown(LEFT, xm, ym);
if (m==5) mousedown(MIDDLE, xm, ym);
if (m==6) mousedown(RIGHT, xm, ym);
if (m==7) mouseup(LEFT, xm, ym);
if (m==8) mouseup(MIDDLE, xm, ym);
if (m==9) mouseup(RIGHT, xm, ym);
if (m==10) mousemove(xm, ym);
pause(p2);
}


function load_image_()
{
loadimage (#Image_0_KIB[0][0], "C:\kibor\123\ch_4.bmp");
}


function findimage_(int #Image, int t, int p1, int p2, int m, int xm, int ym, int p3, int fon, int r, int p, int k, int xs, int ys, int xf, int yf, int#sum, int#x, int#y)
{
pause(p1);
sum_KIB=0;
if (t!=1) tim_KIB=gettime();
a: if (r==0 && p==100){sum=findimage(k, #Image[0][0], fon, #x[0], #y[0], xs, ys, xf, yf, -1); if (sum>0) goto e;}
else {sum=findimage(k, #Image[0][0], fon, #x[0], #y[0], xs, ys, xf, yf, r, r, r, r, r, r, p, 1, -1); if (sum>0) goto e;}
if (t==0) return 0;
if (gettime()-tim_KIB<t){sleep(20); goto a;}
return 0;
e: sum_KIB=sum; x_KIB=x[0]; y_KIB=y[0];
pause(p2);
if (m==1){mouse(LEFT, xs+x_KIB+xm, ys+y_KIB+ym); pause(p3);}
if (m==2){mouse(MIDDLE, xs+x_KIB+xm, ys+y_KIB+ym); pause(p3);}
if (m==3){mouse(RIGHT, xs+x_KIB+xm, ys+y_KIB+ym); pause(p3);}
if (m==4){mousedown(LEFT, xs+x_KIB+xm, ys+y_KIB+ym); pause(p3);}
if (m==5){mousedown(MIDDLE, xs+x_KIB+xm, ys+y_KIB+ym); pause(p3);}
if (m==6){mousedown(RIGHT, xs+x_KIB+xm, ys+y_KIB+ym); pause(p3);}
if (m==7){mouseup(LEFT, xs+x_KIB+xm, ys+y_KIB+ym); pause(p3);}
if (m==8){mouseup(MIDDLE, xs+x_KIB+xm, ys+y_KIB+ym); pause(p3);}
if (m==9){mouseup(RIGHT, xs+x_KIB+xm, ys+y_KIB+ym); pause(p3);}
if (m==10){mousemove(xs+x_KIB+xm, ys+y_KIB+ym); pause(p3);}
return sum_KIB;
}
4. Kibor - 10 Июля, 2016 - 13:11:15 - перейти к сообщению
помочь в коде? а смысл?
если делается в виз редакторе
5. revenant11 - 10 Июля, 2016 - 20:14:26 - перейти к сообщению
я имел в виду помочь вообще))
по ссылке *.vc файл, заставить кликнуть на второе изображение не получается, хотя все вроде верно, но кликает только по первому в цикле

https://drive.google.com/folderv...&usp=sharing
(Добавление)
попробовал на другом компе с другими изображениями, версия кибора 5.11, все так же кликает только в 1е изображение в цикле, при перекрывании первого чем-либо, кликает во второе и тд. Я похоже, чтот сильно не правильно делаю))
6. Kibor - 10 Июля, 2016 - 21:35:23 - перейти к сообщению
Ищет только 1.
поставить -1 в настройках поиска в блоке. там написано где.
7. revenant11 - 10 Июля, 2016 - 21:40:33 - перейти к сообщению
капец..., а слона то я и не приметил) столько раз пересматривал видео и и столько же раз прошляпил этот момент...большое спасибо!)

Powered by ExBB FM 1.0 Final