Oustm1ne |
Отправлено: 14 Марта, 2016 - 01:13:15
|
Прохожий
Покинул форум
Сообщений всего: 11
Дата рег-ции: Март 2016
Репутация: 0
|
Хочу сделать себе бота для игры на рулетке простым методом красное-черное. Начинаю осваивать редактор, сначала с графического помощника. Нарисовал сие чудо
получаю такую ошибку
вот код
код (Отобразить)PHP:int col_KIB, ex_KIB, ey_KIB, sum_KIB, x_KIB, y_KIB, tim_KIB;
int Image_0_KIB[25][25];
int Image_1_KIB[30][24];
start_();
mouse_(0, 1, 887+rand(1, 1), 654+rand(1, 1), 10);
mouse_(0, 1, 340, 838, 10);
mouse_(0, 1, 483, 780, 10);
m_KIB4: if (findimage_(#Image_0_KIB[0][0], 24000, 0, 0, 0, 0, 0, 0, -1, 0, 100, 1, #sum_KIB, #787, #576)>0) goto m_KIB9;
else goto m_KIB6;
m_KIB9: mouse_(0, 1, 896, 77, 10);
mouse_(0, 1, 340, 838, 10);
mouse_(0, 1, 483, 780, 10);
m_KIB5: if (findimage_(#Image_1_KIB[0][0], 0, 0, 0, 0, 0, 0, 0, -1, 0, 100, 1, #sum_KIB, #787, #576)>0) goto m_KIB10;
else goto m_KIB15;
m_KIB10: mouse_(0, 1, 887, 654, 10);
mouse_(0, 1, 340, 838, 10);
mouse_(0, 1, 483, 780, 10); goto m_KIB4;
m_KIB7: mouse_(0, 1, 487, 838, 10);
mouse_(0, 1, 483, 780, 10); goto m_KIB4;
m_KIB6: mouse_(0, 1, 312, 838, 10); goto m_KIB7;
m_KIB15: mouse_(0, 1, 312, 838, 10);
mouse_(0, 1, 487, 838, 10);
mouse_(0, 1, 483, 780, 10); goto m_KIB5;
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:\Users\Oustm1ne\Documents\кибор\черное выпало.bmp");
loadimage (#Image_1_KIB[0][0], "C:\Users\Oustm1ne\Documents\кибор\выпало красное.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#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], 0, 0, ex_KIB, ey_KIB, -1); if (sum>0) goto e;}
else {sum=findimage(k, #Image[0][0], fon, #x[0], #y[0], 0, 0, ex_KIB, ey_KIB, 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, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==2){mouse(MIDDLE, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==3){mouse(RIGHT, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==4){mousedown(LEFT, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==5){mousedown(MIDDLE, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==6){mousedown(RIGHT, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==7){mouseup(LEFT, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==8){mouseup(MIDDLE, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==9){mouseup(RIGHT, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==10){mousemove(x_KIB+xm, y_KIB+ym); pause(p3);}
return sum_KIB;
}
если делаю какие-то элементарные ошибки,подскажите пожалуйста. сие чудо может зарабатывать нехилые денюжки, но его надо доделать
(Добавление)
увеличил время обработки на поиск картинки и поставил погрешность со 100 до 80%. теперь такая ошибка (Отредактировано автором: 14 Марта, 2016 - 01:29:41) |
|
|
Kibor |
Отправлено: 14 Марта, 2016 - 10:25:26
|
Эксперт
Просматривает форум
Сообщений всего: 8227
Дата рег-ции: Март 2013
Откуда: Одесса
Репутация: 357
|
Много где накосячил.
http://kibor-bot.com/forum/topic...16415#1457416415
тут видео поясняющее что такое переменные, а то исходя их
Цитата: m_KIB4: if (findimage_(#Image_0_KIB[0][0], 24000, 0, 0, 0, 0, 0, 0, -1, 0, 100, 1, #sum_KIB, #787, #576)>0) я вижу что полная ерунда.
тут должны быть переменные а не числа и их надо объявить.
это ошибка.
потом почему на скрине с блока клика мыши ведет 2 ветки исходящие?? как должна на это реагировать программа? иди туда и одновременно туда?? на видео я пояснял сколько путей может быть с какого блока.
примерное решение такой логики
|
|
|
Oustm1ne |
Отправлено: 14 Марта, 2016 - 12:49:42
|
Прохожий
Покинул форум
Сообщений всего: 11
Дата рег-ции: Март 2016
Репутация: 0
|
Спасибо, учу матчасть. Если уж совсем тупой окажусь, апну тему
(Добавление)
каюсь, тупой... попробовал такую схему
с таким кодом
PHP:int col_KIB, ex_KIB, ey_KIB, sum_KIB, x_KIB, y_KIB, tim_KIB;
int Image_0_KIB[21][5];
int Image_1_KIB[9][2];
int Image_2_KIB[17][2];
start_();
m_KIB1: mouse_(0, 1, 890, 556, 0);
mouse_(0, 1, 340, 766, 0);
mouse_(0, 1, 482, 710, 0);
m_KIB10: if (findimage_(#Image_2_KIB[0][0], 1, 30000, 0, 0, 0, 0, 0, -1, 80, 100, 1, #sum_KIB, #731, #574)>0) goto m_KIB4;
else goto m_KIB11;
m_KIB4: mouse_(0, 1, 892, 476, 0);
mouse_(0, 1, 340, 766, 0);
mouse_(0, 1, 482, 710, 0);
m_KIB7: if (findimage_(#Image_0_KIB[0][0], 1, 30000, 0, 0, 0, 0, 0, -1, 80, 100, 1, #sum_KIB, #731, #574)>0) goto m_KIB1;
else goto m_KIB8;
m_KIB9: if (findimage_(#Image_2_KIB[0][0], 1, 0, 0, 0, 0, 0, 0, -1, 80, 100, 1, #sum_KIB, #731, #574)>0) goto m_KIB13;
else goto m_KIB7;
m_KIB13: mouse_(0, 1, 314, 769, 0);
mouse_(0, 1, 494, 770, 0);
mouse_(0, 1, 482, 710, 0); goto m_KIB7;
m_KIB8: if (findimage_(#Image_1_KIB[0][0], 1, 0, 0, 0, 0, 0, 0, -1, 80, 100, 1, #sum_KIB, #731, #574)>0) goto m_KIB13;
else goto m_KIB9;
m_KIB11: if (findimage_(#Image_1_KIB[0][0], 1, 0, 0, 0, 0, 0, 0, -1, 80, 100, 1, #sum_KIB, #731, #574)>0) goto m_KIB15;
else goto m_KIB12;
m_KIB15: mouse_(0, 1, 314, 769, 0);
mouse_(0, 1, 494, 770, 0);
mouse_(0, 1, 482, 710, 0); goto m_KIB10;
m_KIB12: if (findimage_(#Image_0_KIB[0][0], 1, 0, 0, 0, 0, 0, 0, -1, 80, 100, 1, #sum_KIB, #731, #574)>0) goto m_KIB15;
else goto m_KIB10;
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:\Users\Oustm1ne\Documents\кибор\красное.bmp");
loadimage (#Image_1_KIB[0][0], "C:\Users\Oustm1ne\Documents\кибор\ноль.bmp");
loadimage (#Image_2_KIB[0][0], "C:\Users\Oustm1ne\Documents\кибор\черное.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#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], 0, 0, ex_KIB, ey_KIB, -1); if (sum>0) goto e;}
else {sum=findimage(k, #Image[0][0], fon, #x[0], #y[0], 0, 0, ex_KIB, ey_KIB, 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, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==2){mouse(MIDDLE, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==3){mouse(RIGHT, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==4){mousedown(LEFT, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==5){mousedown(MIDDLE, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==6){mousedown(RIGHT, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==7){mouseup(LEFT, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==8){mouseup(MIDDLE, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==9){mouseup(RIGHT, x_KIB+xm, y_KIB+ym); pause(p3);}
if (m==10){mousemove(x_KIB+xm, y_KIB+ym); pause(p3);}
return sum_KIB;
}
опять ошибку выдает при поиске изображения, а теперь еще и не кликает куда надо. прошу помощи.
(Добавление)
так,мой косяк. координаты не те дал. исправлю пока |
|
|
Kibor |
Отправлено: 14 Марта, 2016 - 14:29:09
|
Эксперт
Просматривает форум
Сообщений всего: 8227
Дата рег-ции: Март 2013
Откуда: Одесса
Репутация: 357
|
Oustm1ne пишет: m_KIB8: if (findimage_(#Image_1_KIB[0][0], 1, 0, 0, 0, 0, 0, 0, -1, 80, 100, 1, #sum_KIB, #731, #574)>0) какие координаты?? я уже пояснил что в поля переменные в настройки поиска изображений надо вводить переменные а не координаты.
видео тут http://kibor-bot.com/forum/topic...16415#1457416415 |
|
|
Oustm1ne |
Отправлено: 14 Марта, 2016 - 14:39:27
|
Прохожий
Покинул форум
Сообщений всего: 11
Дата рег-ции: Март 2016
Репутация: 0
|
т.е. я могу задать переменные х и y например, m_KIB11: if (findimage_(#Image_1_KIB[0][0], 1, 0, 0, 0, 0, 0, 0, -1, 80, 100, 1, #sum_KIB, #x, #y)>0)
а как мне дать этим переменным значения? |
|
|
|