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

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

 Страниц (8): « 1 2 3 4 [5] 6 7 8 »   

> Описание: скрипты
Kibor
Отправлено: 05 Марта, 2015 - 21:39:16
Post Id



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


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




нажимать Ё. код рабочий. по своему не менять. править после теста.
CODE:
int f,g, n, m;
win wind=window ("StarConflict 1.0.13.64275", "game_main_window", -1);
if (wind==0){messagebox ("error");goto er;}
loop:;
sleep(50);
if (getkeystate(192)==1)Poisk();
goto loop;
er:;
function Poisk()
{
getmouse(n, m, wind);
finddynamic(0, #f, #g, 0, 0, 0, 0, n-20, m-20, n+20, m+20, wind);
sleep(200);
if (finddynamic(1, #f, #g, 2, 2, 40, 40, n-20, m-20, n+20, m+20, wind)==1)mousemove(n-20+f, m-20+g, wind);
}


но не знаю насколько правильно к вашей ситуации.. что там ищется
 
 Top
VladosS
Отправлено: 05 Марта, 2015 - 21:43:48
Post Id



Пользователь
Наблюдатель


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




уже есть в теме, ищется центр кружочка упреждения, ранее была картинка
(Добавление)
тест не дал результатов, кроме того что программа начала вылетать с шибкой "error';
решение банальное, сегодня была обнова, и версия приложения изменилась, теперь ошибки нет, но в самом приложении тоже действий нет
 
 Top
Kibor
Отправлено: 05 Марта, 2015 - 21:57:47
Post Id



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


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






CODE:
int x,y, x1, y1, xs, ys;
getmouse(xs, ys);
win wind=getwindow(1, xs, ys);
if (wind==0){messagebox ("error. запускать над страницей");goto er;}
loop:;
sleep(10);
if (getkeystate(192)==1)Poisk();
goto loop;
er:;
function Poisk()
{
getmouse(x,y, wind);
finddynamic(0, #x1, #y1, 0, 0, 0, 0, x-200, y-200, x+200, y+200, wind);
sleep(50);
if (finddynamic(1, #x1, #y1, 10, 10, 50, 50, x-200, y-200, x+200, y+200, wind)==1)mousemove(x-200+x1, y-200+y1, wind);
}


запустить над этой страницей.
установить мышку в пределах +-200 от смайла.
жать Ё.

Запускать от админа.........................................
(Добавление)
 VladosS пишет:
тест не дал результатов, кроме того что программа начала вылетать с шибкой "error';

ггггггггггггггг.
error это сообщение скрипта что нет указателя.
неверный. внимательно изучаем весь скрипт. и ищем почему eror.............
 
 Top
VladosS
Отправлено: 05 Марта, 2015 - 22:02:32
Post Id



Пользователь
Наблюдатель


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




Работает, указатель перемещаяется на смайл и прыгает на нем в 3х точках
 
 Top
Kibor
Отправлено: 05 Марта, 2015 - 22:03:41
Post Id



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


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




 VladosS пишет:
Работает, указатель перемещаяется на смайл и прыгает на нем в 3х точках

а не то надо??
 
 Top
VladosS
Отправлено: 05 Марта, 2015 - 22:04:21
Post Id



Пользователь
Наблюдатель


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




внимательно изучаем весь скрипт. и ищем почему eror.............


уже нашел:
Было--win wind=window ("StarConflict 1.0.13.64275", "game_main_window", -1);
Стало--win wind=window ("StarConflict 1.0.18.67013", "game_main_window", -1);
(Добавление)
а не то надо??

наверное то, но вот только в самой игруле толку нет((
 
 Top
Kibor
Отправлено: 05 Марта, 2015 - 22:09:33
Post Id



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


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




 VladosS пишет:
уже нашел:
Было--win wind=window ("StarConflict 1.0.13.64275", "game_main_window", -1);
Стало--win wind=window ("StarConflict 1.0.18.67013", "game_main_window", -1);


динамичное имя окна.

указатель получать или по классу только
CODE:
win wind=window (-1, "game_main_window", -1);

или как у меня. по координатам мышиным
 Цитата:
int xs, ys;
getmouse(xs, ys);
win wind=getwindow(1, xs, ys);


почитать про getwindow..

и.......... всегда делать проверки............
 Цитата:
if (wind==0){messagebox ("error. запускать над страницей");goto er;}

 Цитата:
if (finddynamic(1, #x1, #y1, 10, 10, 50, 50, x-200, y-200, x+200, y+200, wind)==1)mousemove(x-200+x1, y-200+y1, wind);

(Добавление)
 VladosS пишет:
наверное то, но вот только в самой игруле толку нет((

значит не это надо применять.
 
 Top
dembel312
Отправлено: 10 Марта, 2015 - 12:19:15
Post Id



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


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




Доброго времени суток! Хотел бы разобраться где ошибаюсь в коде. Для примера брал готовый скрипт по линейке. Не могу понять как прописать использование спойла после смерти моба. Допустим свип на F3 забит. Я понимаю, что нужно проверить жив или мертв моб, если моб мертв, то использовать свип F3. И как однократно использовать спойл F2. Получается весь цикл переделывать нужно.
 Цитата:
//Бот для LIneage 2. Сделан в Кибор Обязательно смотреть прилагаемое видео настроек
int mob[3];//фки макросов
mob[0]=118; mob[1]=119; mob[2]=120;//фки макросов

int col_pix, X_pix, Y_pix;//Координаты и цвет первого пикселя в хп моба

int col_pix1, X_pix1, Y_pix1;//Координаты и цвет последнего пикселя в хп моба

int col_pix2, X_pix2, Y_pix2;//Координаты и цвет своего хп в месте если его будет мало

int k_mob=0, k_baf=0; //Счетчик
int N=0;//Счетчит мобов которые слили.

int error_tim=15000;//Это время давать на то что бы ударил по мобу от взятия в таргет - превысил - застрял (снять таргет)
int k_error_tim;//Это счетчик времени если перс за определенное время не добежал и не ударил (застрял)

int col, xek, yek;//цвет экрана и разрешение


nastroit();//Настройки определения точки пикселя начала хп моба

malo_xp();



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


function nastroit()//Настройки определения точки пикселя начала хп моба
{
getdisplay(col, xek, yek);//Определить какое разрешение
xek=xek/2-200; yek=yek/2;//Вывод текста по эти координатам. центр

textbkcolor (0,255);//Установка цвета текста
textout(0, xek, yek, "Возьмите моба в таргет. Наведите курсор на начало полосы хп моба и нажмите Ё", 0);
e: if (getkeystate(192)==0) {sleep(50); goto e;}//если не нажат Ё идти опять на проверку
getmouse(X_pix, Y_pix);//Записать в эти переменные координаты пикселя под курсором
q: if (getcolor(X_pix, Y_pix)==getcolor(X_pix-1, Y_pix)) {X_pix--; goto q;}//Самый левый найти
col_pix=getcolor(X_pix, Y_pix);//Узнать по этим координатам цвет хп моба..
pause (1000);//Пауза что бы успел отпустить кнопку

textbkcolor (0,65280);//Установка цвета текста
textout(0, xek, yek, "Наведите курсор на конец полосы хп моба и нажмите Ё", 0);
e1: if (getkeystate(192)==0) {sleep(50); goto e1;}//если не нажат Ё идти опять на проверку
getmouse(X_pix1, Y_pix1);//Записать в эти переменные координаты пикселя под курсором
q1: if (getcolor(X_pix1, Y_pix1)==getcolor(X_pix1+1, Y_pix1)) {X_pix1++; goto q1;}//Самый правый найти
col_pix1=getcolor(X_pix1, Y_pix1);//Узнать по этим координатам цвет хп моба..
pause (1000);//Пауза что бы успел отпустить кнопку

textbkcolor (0,8454143);//Установка цвета текста
textout(0, xek, yek, "Наведите курсор на свое хп на котором надо пить банку и нажмите Ё", 0);
e2: if (getkeystate(192)==0) {sleep(50); goto e2;}//если не нажат Ё идти опять на проверку
getmouse(X_pix2, Y_pix2);//Записать в эти переменные координаты пикселя под курсором
col_pix2=getcolor(X_pix2, Y_pix2);//Узнать по этим координатам цвет хп моба..

textout(0, xek, yek, "", 2);
resettextout(1);
textbkcolor (0,65280);//Установка цвета текста
}
//////////////////////////////////////////////////////////////////////////

function malo_xp()//Проверить или хп мало и банки пить
{
if (getcolor(X_pix2, Y_pix2)!=col_pix2)//Если надо банку выпить - хп мало
{
key(F6);
sleep(500);
}
}

///////////////////////////////////////////////////////////////////////////
cikl: malo_xp();//Проверить или хп мало и банки пить

key(F4); //Ближенего моба в таргет взять
pause(rand(500, 1000)); //Пауза которую выдержать (раном от пол секунды до сек)

if (getcolor(X_pix, Y_pix)!=col_pix) //Если нет моба в таргете
{
cikl1: key(mob[k_mob]);//Нажать на макрос выбора моба по нику
k_mob++;//Увеличить номер макроса в котором /target ник-моба находится
if (k_mob==3)k_mob=0;//Если это третий номер макроса ника моба - перейти к первому
pause(rand(1000, 2000)); //Пауза которую выдержать (раном от секунды до двух)
}


if (getcolor(X_pix, Y_pix)==col_pix) //Если моб в таргете
{
malo_xp();//Проверить или хп мало и банки пить

bit1: k_error_tim=gettime();//Записать время текущее
bit: if (getcolor(X_pix, Y_pix)==col_pix) //Если моб в таргете
{

if (gettime()-k_error_tim>error_tim)//Если превысил время (застрял или долгий бой)
{
if (getcolor(X_pix1, Y_pix1)==col_pix1)//Усли моб целый (красный конец хп) значит застрял
{
key(ESCAPE);//Нажать Es (таргет снять)
pause(rand(200, 500));
goto cikl1;// топать на cikl1 (на этой метке строка которая берет другого моба - с другим ником)
}
}

malo_xp();//Проверить или хп мало и банки пить

key(F1); // атака моба
pause(rand(500, 1500));
key(F2); // атака моба скилом 1
pause(rand(500, 1500));

goto bit; //Идти на проверку или хп моба есть еще
}

pause(rand(100, 300));

malo_xp();//Проверить или хп мало и банки пить

if (getcolor(X_pix, Y_pix)==col_pix) goto bit1;//Если моб в таргете (он напал) - бить а не собирать лут

key(ESCAPE);//Нажать Es
pause(rand(100, 300));

keydown(F5);// собирать лут когда моб слит
pause(rand(2000, 3500));
keyup(F5);

N++;//Увеличить счетчик мобов
textout(0, X_pix, Y_pix+20, "Мобов слито "+format (N), 0);//Изменить счетчик мобов которые слились
}
goto cikl;//Цикл змкнем. идти на начало

(Отредактировано автором: 10 Марта, 2015 - 12:23:24)

 
 Top
Kibor
Отправлено: 10 Марта, 2015 - 12:46:03
Post Id



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


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




я не вижу указания конкретного места где ожидается доработка и конкретного вопроса...
это такой способ заставить меня внести нужные изменения в скрипт бота? Радость
 
 Top
dembel312
Отправлено: 10 Марта, 2015 - 13:30:31
Post Id



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


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




 Kibor пишет:
я не вижу указания конкретного места где ожидается доработка и конкретного вопроса...
это такой способ заставить меня внести нужные изменения в скрипт бота? Радость

нет конечно Улыбка
 Цитата:
key(F1); // атака моба
pause(rand(500, 1500));
key(F2); // атака моба скилом 1
pause(rand(500, 1500));
сюда если просто вставить key(F3); //использовать свип
то бот будет по порядку использовать скилы

goto bit; //Идти на проверку или хп моба есть еще
}

нужно в каком то месте поставить условие проверки наличия хп моба. Предполагаю, что нужно вставлять if (getcolor(X_pix, Y_pix)==col_pix) key(F3);
 Цитата:
key(F1); // атака моба
pause(rand(500, 1500));
key(F2); // атака моба скилом 1
pause(rand(500, 1500));
if (getcolor(X_pix, Y_pix)==col_pix) //проверка наличия хп моба
key(F3); //использовать свип
goto bit; //Идти на проверку или хп моба есть еще
}

(Отредактировано автором: 10 Марта, 2015 - 13:35:03)

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


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




Powered by