| borg3008 |
Отправлено: 30 Марта, 2016 - 12:22:15
|


Прохожий

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

|
Появилась задача сделать бота для одной 3D игры, маркер над мобами которой, очень большой и однообразный, а так же находится на одном и том же расстоянии от них
что позволяет легко его находить, но вот как только дело дошло до перемещения мыши для поворота камеры, прицела. Начали всплывать ошибки... либо вовсе отказывалась работать
при включенном анти анти кликере
[img](для просмотра ссылки Вам необходимо авторизоваться) /img]
[img](для просмотра ссылки Вам необходимо авторизоваться) /img]
первый косяк вылезает даже при ручном наборе, на скринах выше
задача сохранить положение курсора и переместить его по оси x
Заранее спасибо за помощь.
так же не все понятно в привязке к окну в визуальном редакторе, в прочем мне бы в начале с первым вопросом разобраться, ведь код на основе такого блока всё рав но не рабочий получится. (Отобразить)
[img] (для просмотра ссылки Вам необходимо авторизоваться) /img]
[img] (для просмотра ссылки Вам необходимо авторизоваться) [/img]
[img] (для просмотра ссылки Вам необходимо авторизоваться) /img]
[img] (для просмотра ссылки Вам необходимо авторизоваться) /img]
[img] (для просмотра ссылки Вам необходимо авторизоваться) [/img]
aring
win w_KIB;
int sum_KIB, x_KIB, y_KIB, tim_KIB;
int Image_0_KIB[8][10];
int k,x[50],y[50],n, n=0, d=50;
start_();
window ("WoT Client", "App", -1)
mouse_(3000, 1, 960+rand(-50, 50), 550+rand(-50, 50), 20);
m_KIB2: if (findimage_(#Image_0_KIB[0][0], 20, 0, 0, 0, 0, 0, 10, -1, 10, 95, 1, #k, #x[0], #y[0])>0) goto m_KIB4;
else goto m_KIB7;
m_KIB4: getmouse(x[2], y[2], win wind);
mousetransfer(-1, x[2], y[2], x[0], y[0], 0.05, 1, win wind);
findimage_(#Image_0_KIB[0][0], 0, 0, 0, 10, 5, 10, 0, -1, 10, 95, 1, #k, #x[3], #y[3]);
mouse_(0, 1, x[3]+rand(-5, 5), y[3]+rand(-5, 5), 20); goto m_KIB2;
m_KIB7: getmouse(x[4], y[4], win wind);
mousetransfer(-1, x[4], y[4], x[4]=d, y[4], 0.05, 1, win wind); goto m_KIB2;
function start_()
{
load_image_();
pause(1000);
int x, y;
getmouse(x, y);
w_KIB=getwindow(1, x, y);
}
function mouse_(int p1, int m, int xm, int ym, int p2)
{
pause(p1);
if (m==1) sendmouse(LEFT, xm, ym, w_KIB);
if (m==2) sendmouse(MIDDLE, xm, ym, w_KIB);
if (m==3) sendmouse(RIGHT, xm, ym, w_KIB);
if (m==4) sendmousedown(LEFT, xm, ym, w_KIB);
if (m==5) sendmousedown(MIDDLE, xm, ym, w_KIB);
if (m==6) sendmousedown(RIGHT, xm, ym, w_KIB);
if (m==7) sendmouseup(LEFT, xm, ym, w_KIB);
if (m==8) sendmouseup(MIDDLE, xm, ym, w_KIB);
if (m==9) sendmouseup(RIGHT, xm, ym, w_KIB);
if (m==10) sendmousemove(xm, ym, w_KIB);
pause(p2);
}
function load_image_()
{
loadimage (#Image_0_KIB[0][0], "C:\Users\borg3\Documents\Image_0.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, w_KIB.widthclient, w_KIB.heightclient, w_KIB); if (sum>0) goto e;}
else {sum=findimage(k, #Image[0][0], fon, #x[0], #y[0], 0, 0, w_KIB.widthclient, w_KIB.heightclient, r, r, r, r, r, r, p, 1, w_KIB); 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){sendmouse(LEFT, x_KIB+xm, y_KIB+ym, w_KIB); pause(p3);}
if (m==2){sendmouse(MIDDLE, x_KIB+xm, y_KIB+ym, w_KIB); pause(p3);}
if (m==3){sendmouse(RIGHT, x_KIB+xm, y_KIB+ym, w_KIB); pause(p3);}
if (m==4){sendmousedown(LEFT, x_KIB+xm, y_KIB+ym, w_KIB); pause(p3);}
if (m==5){sendmousedown(MIDDLE, x_KIB+xm, y_KIB+ym, w_KIB); pause(p3);}
if (m==6){sendmousedown(RIGHT, x_KIB+xm, y_KIB+ym, w_KIB); pause(p3);}
if (m==7){sendmouseup(LEFT, x_KIB+xm, y_KIB+ym, w_KIB); pause(p3);}
if (m==8){sendmouseup(MIDDLE, x_KIB+xm, y_KIB+ym, w_KIB); pause(p3);}
if (m==9){sendmouseup(RIGHT, x_KIB+xm, y_KIB+ym, w_KIB); pause(p3);}
if (m==10){sendmousemove(x_KIB+xm, y_KIB+ym, w_KIB); pause(p3);}
return sum_KIB;
}
Поворот камеры в 3D играх от первого лица по оси x стал для меня непреодолимой преградой
Для чистоты эксперимента испытывал бота в разных вариациях в 5 играх |
| |
|
| borg3008 |
Отправлено: 01 Апреля, 2016 - 07:13:27
|


Прохожий

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

|
С поворотом разобрался, теперь пытаюсь понять, что не так с doto в коде который сгенерирован визуальным редактором. По какой-то причине не находится метка, хотя она в коде присутствует



Код: (Отобразить)
int col_KIB, ex_KIB, ey_KIB, sum_KIB, x_KIB, y_KIB, tim_KIB;
int Image_0_KIB[9][2];
int k,x[50],y[50], n=0,;
start_();
pause(3000)
m_KIB2: if (findimage_(#Image_0_KIB[0][0], 20, 0, 0, 0, 0, 0, 10, -1, 10, 95, 1, #k, #x[9], #y[9])>0) goto m_KIB0;
else goto m_KIB6;
m_KIB0: getmouse (x[0], y[0]);
pause (50);
mousetransfer(-1, x[0], y[0], x[9], y[9], 0.05);
pause (500);
findimage_(#Image_0_KIB[0][0], 0, 0, 0, 6, 5, 10, 100, -1, 10, 95, 1, #k, #x[9], #y[9]); goto m_KIB2;
m_KIB5: getmouse (x[0], y[0]);
pause (50);
y[1]=y[0];
x[1]=x[0]+90;
pause (50);
mouseup(MIDDLE, x[1], y[0]);
pause (500); goto m_KIB2;
m_KIB6: mouse_(10, 7, x[9]+rand(-5, 5), y[9]+rand(-5, 5), 20); 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\borg3\Documents\Image_6.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;
}
|
| |
|
| borg3008 |
Отправлено: 01 Апреля, 2016 - 19:49:22
|


Прохожий

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

|

CODE:win w_KIB;
int sum_KIB, x_KIB, y_KIB, tim_KIB;
int Image_0_KIB[9][2];
int k,x[50],y[50], n=0,;
start_();
pause(3000);
m_KIB2: if (findimage_(#Image_0_KIB[0][0], 20, 0, 0, 0, 0, 0, 10, -1, 10, 95, 1, #k, #x[9], #y[9])>0) goto m_KIB0;
else goto m_KIB6;
m_KIB0: getmouse (x[0], y[0]);
pause (50);
mousetransfer(-1, x[0], y[0], x[9], y[9], 0.05);
pause (500);
findimage_(#Image_0_KIB[0][0], 0, 0, 0, 6, 5, 10, 100, -1, 10, 95, 1, #k, #x[9], #y[9]); goto m_KIB2;
m_KIB5: getmouse (x[0], y[0]);
pause (50);
y[1]=y[0];
x[1]=x[0]+90;
pause (50);
mouseup(MIDDLE, x[1], y[0]);
pause (500); goto m_KIB2;
m_KIB6: mouse_(10, 7, x[9]+rand(-5, 5), y[9]+rand(-5, 5), 20); goto m_KIB5;
function start_()
{
load_image_();
pause(1000);
int x, y;
getmouse(x, y);
w_KIB=getwindow(1, x, y);
}
function mouse_(int p1, int m, int xm, int ym, int p2)
{
pause(p1);
if (m==1) sendmouse(LEFT, xm, ym, w_KIB);
if (m==2) sendmouse(MIDDLE, xm, ym, w_KIB);
if (m==3) sendmouse(RIGHT, xm, ym, w_KIB);
if (m==4) sendmousedown(LEFT, xm, ym, w_KIB);
if (m==5) sendmousedown(MIDDLE, xm, ym, w_KIB);
if (m==6) sendmousedown(RIGHT, xm, ym, w_KIB);
if (m==7) sendmouseup(LEFT, xm, ym, w_KIB);
if (m==8) sendmouseup(MIDDLE, xm, ym, w_KIB);
if (m==9) sendmouseup(RIGHT, xm, ym, w_KIB);
if (m==10) sendmousemove(xm, ym, w_KIB);
pause(p2);
}
function load_image_()
{
loadimage (#Image_0_KIB[0][0], "C:\Users\borg3\Documents\Image_6.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, w_KIB.widthclient, w_KIB.heightclient, w_KIB); if (sum>0) goto e;}
else {sum=findimage(k, #Image[0][0], fon, #x[0], #y[0], 0, 0, w_KIB.widthclient, w_KIB.heightclient, r, r, r, r, r, r, p, 1, w_KIB); 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){sendmouse(LEFT, x_KIB+xm, y_KIB+ym, w_KIB); pause(p3);}
if (m==2){sendmouse(MIDDLE, x_KIB+xm, y_KIB+ym, w_KIB); pause(p3);}
if (m==3){sendmouse(RIGHT, x_KIB+xm, y_KIB+ym, w_KIB); pause(p3);}
if (m==4){sendmousedown(LEFT, x_KIB+xm, y_KIB+ym, w_KIB); pause(p3);}
if (m==5){sendmousedown(MIDDLE, x_KIB+xm, y_KIB+ym, w_KIB); pause(p3);}
if (m==6){sendmousedown(RIGHT, x_KIB+xm, y_KIB+ym, w_KIB); pause(p3);}
if (m==7){sendmouseup(LEFT, x_KIB+xm, y_KIB+ym, w_KIB); pause(p3);}
if (m==8){sendmouseup(MIDDLE, x_KIB+xm, y_KIB+ym, w_KIB); pause(p3);}
if (m==9){sendmouseup(RIGHT, x_KIB+xm, y_KIB+ym, w_KIB); pause(p3);}
if (m==10){sendmousemove(x_KIB+xm, y_KIB+ym, w_KIB); pause(p3);}
return sum_KIB;
} |
| |
|
|