Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Темы - gsukhado

Страницы: [1]
1
День добрый.
У меня в скрипте есть строки для пересчета формул координат

#define xmul(:$x_gr_new+INT((
#define )xmul:-$x_gr_ish)*$x_peresch)
#define ymul(:$y_gr_new+INT((
#define )ymul:-$y_gr_ish)*$y_peresch)

В "настройки интерпретатора" стоит "игнорировать ошибки". Но в новой версии Кликерман постоянно мне на эти строчки тыкает, говоря что число скобок не соответствует. Но я же ему сказал "Игнорировать ошибки"! В 4.12 он отлично все игнорировал и на нервы не действовал... А тут нехорошо поступает...

2
Доброго времени суток.
Задача: сдвинуть экран в эмуляторе, для чего зажать левую кнопку мышки, сдвинуть и отпустить.
Скрипт отлично работал в Блюстаксе. Сейчас потребовалось применить в Нокс - все прочее работает отлично, в т.ч. обычные клики, а вот при сдвиге экрана - мышка как будто не нажимается, а просто по экрану перемещается.
Не подскажете, в чем тут может быть подвох? Попробовал уже ldown заменить на POSTMESSAGE - результат не изменился :(

if($emulator_vybor=0)  // для Блюстака
   ldown(INT($x_pxl_lev_verh+$x_zone_pxl/2+$x_move_fict/2),INT($y_pxl_lev_verh+$y_zone_pxl/2+$y_move_fict/2))
else   // для Нокса
   $x_nox=INT($x_pxl_lev_verh+$x_zone_pxl/2+$x_move_fict/2)
   $y_nox=INT($y_pxl_lev_verh+$y_zone_pxl/2+$y_move_fict/2)
   POSTMESSAGE($hwnd1,0x0201,0x0001,$x_nox+($y_nox*65536))   //LDOWN
end_if
         print ("---кликнули на ", 70+284+$x_move_fict/2, " на ", 400+284+$y_move_fict/2)
   waitms(800+rnd(0,100))
   m_move(INT($x_pxl_lev_verh+$x_zone_pxl/2-$x_move_fict/2), INT($y_pxl_lev_verh+$y_zone_pxl/2-$y_move_fict/2))
   //      print("---Передвинулись на дальность", $x_move_fict, " и ", $y_move_fict)
   waitms(900+rnd(0,100))
if($emulator_vybor=0)  // для Блюстака
   lup($_xmouse, $_ymouse)
else   // для Нокса
   POSTMESSAGE($hwnd1,0x0202,0x0000,$_xmouse+($_ymouse*65536))   //LUP
end_if

3
Общие вопросы / Цвет, отличный от заданного
« : Апрель 01, 2018, 11:57:28 am »
День добрый.
Нужно обнаружить, когда при применении colormode в нужной части экрана появляются пиксели, отличных от черно-белых.
Можно конечно перебором попроовать в PXLCOUNT, но цветов разных может быть много. Можно ли как-то проще посчитать число пикселей с цветом, отличных от черного или белого?
(поиском по форуму увы не нашел)

4
День добрый.
По ряду причин хочу все текущие скриншоты сохранять не в папке Кликермана, а в иной.
Если указывать такой внешний адрес, SCREENSHOT("d:\_tmp_screens\_my_analiz_")
то просто ничего не сохраняет и все

Обходной вариант с сохранением и последующим переносом работает, но это лишнее действие:
SCREENSHOT("_my_analiz_")
EXECUTE("cmd.exe", "/c move /Y screens\*.*, d:\_tmp_screens")

Можно ли как-то сразу сохранить в нужную папку?

5
Общие вопросы / Поиск гомотетичных фигур
« : Февраль 28, 2018, 03:11:18 pm »
День добрый.
Во многих приложениях сейчас изображения имеют разный размер, в зависимости от того, в какой части экрана они находятся (например, внизу экрана - больше, типа как "рядом", а вверху экрана меньше, типа "далеко"). В остальном изображения подобны, точнее, гомотетичны между собой.
За счет таких плавающих размеров искать по стандартному совпадению пиксел - почти не вариант, только если делать скрины в разных частях экрана и последовательно каждый из них искать.
Может быть есть алгоритмы, как находить такие гомотетически изменяющиеся картинки?

6
Всем день добрый.
Возможно простой вопрос: можно ли и как сделать рандом, но неравномерный?
Например, в интервале 1-100 чтобы чаще всего выдавало из 50-70, чуть реже в интервалах 40-50 и 70-85, еще реже 20-40 и 85-95, и совсем редко 0-20 и 95-100 ?

7
Общие вопросы / Работа с окном Excel
« : Декабрь 28, 2017, 12:04:07 am »
День добрый.
Делаю вроде простой скрипт скопировать из Экселя - вставить в Браузерную почту.
Но почему-то с окном Экселя возник затык, работать в нем не хочет. Причем даже на первом шаге, когда я хочу пододвинуть найденное окно. Причем полностью идентичный код для Explorer - работает, а для Excel - окно находит, на передний план перемещает, но не двигает. Не подскажете, что тут может быть?

Код: Clickermann
  1.   $hwnd2=0
  2.   $hwnd2 = wndfind("Excel") // получаем HWND окна
  3.   if ($hwnd2 > 0)
  4.      print("нашли окно Excel = ", $hwnd2)
  5.   else
  6.      print("почему-то найти не смогли")
  7.   end_if
  8.   waitms(3400+rnd(0,20))
  9.   WNDBUMP($hwnd2)     // Окно на передний план - срабатывает
  10.   waitms(3400+rnd(0,20))
  11.  
  12.   WNDPOS($hwnd2,0,0)  // подвинули окно влево - должно вроде, но к Excel никакой реакции
  13.   waitms(300+rnd(0,200))
  14.   WNDGETINFO ($hwnd2, $tmp_var21, $tmp_var22, $tmp_var23, $tmp_var24)
  15.   print("Окно размером ", $tmp_var21, "  ", $tmp_var22, " на ", $tmp_var23, "  ", $tmp_var24)
  16.   waitms(600+rnd(0,50))
  17.   WNDSIZE($hwnd2,750,867)
  18.   print("изменили размер окна")
  19.   waitms(400+rnd(0,20))
  20.  

8
Общие вопросы / Виртуальная машина
« : Октябрь 05, 2017, 10:46:01 pm »
Вообще бы хорошо создать тему с использованием виртуальной машины, потому как нубу будет трудно в этом разобраться. Не все умеют ставить виндовс, а работать в фоне нужно чуть ли не каждому. Скачать уже готовую виртуалку с портативной VirtualBox куда проще.
Сейчас тоже вышел на то, что скрипт заработал, а комп для работы нужен. Полазил здесь - хотя бы краткого введения или инструкций по виртуальной машине не нашел. Может быть что-то посоветуете или ссылочку дадите, что и как правильно применять?

9
День добрый.

Требуется задавать масштабируемые значения для переменных, т.е. чтобы координаты для формул прописывались не в явном виде, а как функция = ($x_gr+INT(($x_ishodnoe-$x_gr)*$x_peresch)) от координаты $x_ishodnoe

Вручную везде по тексту вводить конструкции типа
ldown($x_gr+INT(($x_ishodnoe-$x_gr)*$x_peresch),$y_gr+INT(($y_ishodnoe-$y_gr)*$y_peresch))

или
if ((pxl($x_gr+INT(($x_ishodnoe-$x_gr)*$x_peresch),$y_vert_chat)=4144959)&(pxl($x_gr+INT(($x_ishodnoe-$x_gr)*$x_peresch),$y_vert_chat+INT(4*$y_peresch))=12566527)&(pxl($x_gr+INT(($x_ishodnoe-$x_gr)*$x_peresch),$y_vert_chat+INT(17*$y_peresch))=12566527)&(pxl($x_gr+INT(($x_ishodnoe-$x_gr)*$x_peresch),$y_vert_chat+INT(48*$y_peresch))=16744319))

- просто замучаешься. Наверняка есть возможность задания подобных функций, чтобы можно было сокращать до примерно
ldown(функция($x_ishodnoe),функция($y_ishodnoe))
Но увы в описаниях не нашел. Если просто через обычную подпрограмму - то надо вводить какие-то дополнительные переменные чтобы вернуть рассчитанное значение... Явно я что-то в хэлпах не обнаружил? подскажите плз...

10
Ошибки / Не срабатывает код на голом месте
« : Август 16, 2017, 10:29:05 pm »
Что-то уже не первый раз глюки с Кликерманом: код может не работать просто на голом месте.
Например, скопировал себе предложенный dramster код http://crapware.aidf.org/forum/index.php?topic=88.msg23101#msg23101
И он не работает. Причем не работает даже на примитивном уровне - не выдает на печать строку 78. А если ее же перенабрать вручную - то строка начинает работать нормально. Причем когда визуально перенабираю - то код полностью идентичный. Что тут не так? Неужели надо вручную перенабирать весь листинг программы, чтобы она заработала?

Еще из последних примеров, в ответ на код :
      $x1 = $tmp_x-26-5
      $y1 = $tmp_y+62-5
      $x2 = $tmp_x+6+3+5
      $y2 = $tmp_y-18+100+10+5
      print("координаты ", $x1, " ", $y1, " ", $x2, " ", $y2)
Выдает распечатку "координаты 31 84 49 28-18+100+10+5"
А после того как вручную еще раз перенабрал строку  $y2 = $tmp_y-18+100+10+5
- стало выдавать "координаты 31 84 49 125"

С чем это может быть связано?

11
Всем день добрый.
Пробую использовать вроде бы детально описанную тут команду if_picture_in
Сделал скриншот с использованием http://crapware.aidf.org/forum/index.php?topic=2778.0 (пробовал варианты цветокоррекции на 3 и на 6, итог одинаков), обрезал картинку до размера примерно 30на50, и пробую найти ее на поле игры.
Однако if_picture_in выдает в качестве результата все время (0,0). Я попробовал даже уменьшить поле в if_picture_in(11,125...) - но результат все тот же.
Хотя нужный фрагмент на экране визуально присутствует, скорее внизу экрана - но его данная функция найти никак не хочет.
В чем тут может быть подвох, как сделать?

Код: Clickermann
  1. //main part
  2. print("Начинаем фармить")
  3. // ---Поиск шахты с лесом
  4. getscreen(0,0,513,950)
  5. colormode(6,0,0,513,950)
  6. if_picture_in(11,125,510,948,"st_les.bmp",-1,100)
  7.   print("Нашел совпадение, координаты:", $_return1, " ,", $_return2)
  8.   move($_return1+5, $_return2+5)
  9.   wait(5)
  10.   goto(ataka_shahty)
  11.   print("Ничего нет")
  12.   goto(tmp_end)
  13. enf_if
  14.  

P.S.Если это существенно: картинку ищу в игре на эмуляторе BlueStack3

12
День добрый.
Зарегистрировался с почты sukhadol@yandex.ru
Затем когда хотел войти - то почему-то пароль не подходит (правда, зарегистрировался с длинным паролем, возможно где-то опечатался). При попытке зарегистрироваться заново с тем же адресом - говорит что таковой уже используется. Но при попытке использования сервиса восстановления пароля - на почту вообще ничего не пришло, прождал более суток.
Сейчас пришлось создать второй аккаунт :(

Страницы: [1]