Author Topic: [Alpha/Beta Testing] Тестируем сырые обновления (ссылки в первом посте)  (Read 232654 times)

0 Members and 2 Guests are viewing this topic.

quant13

  • Активный участник
  • ***
  • Posts: 174
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #165 on: December 27, 2014, 09:57:08 PM »
тыкал не в браузер. в игру. игра не повисла. повис только кликер. 4,10 не вис раньше

Johnny

  • Создатель
  • Герой форума
  • *
  • Posts: 593
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #166 on: December 28, 2014, 06:43:51 PM »
всяко бывает. добьешься стабильного воспроизведения ошибки, тогда и приходи

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #167 on: February 01, 2015, 10:38:03 PM »
На счет предложений, может уже стоит поработать над функционалом KEYSTRING?

Есть такая программка "KeePass 2" и в ней есть авто-набор логинов и паролей, так вот она как то умудряется набирать абсолютно любые символы, даже непечатные!

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #168 on: February 01, 2015, 10:52:52 PM »
Стоит конечно. Давно при чём. Но только не нужно трогать кейстринг. Это же агрегатор кейпрессов. Просто нужна новая функция эмулирующая набор текстовой переменной именно в том виде как она задана. С теми же символами и в той же раскладке. Идеальное название print но оно занято хоть и не документированно.
Последнее время прямо наплыв с этим кейстрингом.


Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #169 on: March 04, 2015, 11:17:16 AM »
Многократно повторял у себя, результат один, пока не будет полного снимка функция возвращает абы что. Графический буфер должен быть чист! Редактор открывать нельзя. Кроме того при использовании GETSCREEN() + PXLCOUNT изображение, скорее всего, не обновляется.

Это вылезло после разбора этого скрипта
http://vk.com/topic-14410794_21900056?post=25879

Может функция PXLCOUNT не правильно определяет положение этого вырезанного скрина?
« Last Edit: March 04, 2015, 11:22:07 AM by Oraven »

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #170 on: March 04, 2015, 03:11:19 PM »
Я проверял и с закрытым редактором и с открытым. Но до теста GETSCREEN уже отрабатывал поэтому было всё правильно.
 
Сейчас проблему удалось поймать. Стало заметно если первый GETSCREEN с областью и сразу после открытия скрипта GETSCREEN не прогонялся. В не зависимости открыт редактор или нет, ведь буферы разделены.

Вставил заделку скриншотов и понял что PXLCOUNT не при чём. Хотя и не сразу. PXLCOUNT считает правильно, но данные у него не те.
Короче GETSCREEN берёт область на 1 меньше по горизонтали и вертикали. Ошибка здесь.
Кто хочет может попробовать на белом фоне запустить
Code: (clickermann) [Select]
GETSCREEN(500,500,509,509)
SCREENSHOTEX(500,500,509,509)

Размер области 10х10 но GETSCREEN с областью берёт на 1 меньше (см. скрин). Но заметить это легче только если GETSCREEN(...) идёт первым в скрипте, тогда там чернота. А если не первым, тогда там мусор от преведущих GETSCREEN, что тоже приводит к ошибкам, но заметить их труднее.

У всех остальных функций область считается правильно.
« Last Edit: March 04, 2015, 03:13:11 PM by Vint »


Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #171 on: March 04, 2015, 03:44:23 PM »
Проблема

Короче, проблема в несовпадении области GETSCREEN с областями в функциях
Code: (clickermann) [Select]
GETSCREEN(500,500,509+1,509+1) // чтобы было правильно приходится прибавить по 1 <<== Проблема ==
SCREENSHOTEX(500,500,509,509)
« Last Edit: March 04, 2015, 05:55:27 PM by Oraven »

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #172 on: March 04, 2015, 03:52:39 PM »
В функциях всё правильно, неправильно в GETSCREEN


Johnny

  • Создатель
  • Герой форума
  • *
  • Posts: 593
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #173 on: May 01, 2015, 08:41:16 AM »
Memory Leak

Друзья мои, как выяснилось наш кликер имеет классические утечки памяти, которые при длительном его использовании приводят к активному поглощению памяти и в конечном итоге краше (от обжорства). Скорость прямопропорциональна задержкам в скрипте.

Я сделал над собой усилие, вышел из прокрастинации и подправил ряд базисных функций. Теперь вроде все хорошо. Однако дело нуждается в проверке.
Затестите пожалуйста не сломал ли я чего и не ушло ли что от моего взора В ПЛАНЕ УТЕЧЕК. Все прочие фиксы и предложения позже. Это первостепенная задача.
Тренд: http://crapware.aidf.org/forum/index.php?topic=1811.0

fix http://rghost.net/92nSY8Gmd

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #174 on: May 24, 2015, 09:00:11 AM »
Баг
Нашел тут странный баг с "Не равно". Он есть и в старых версиях.
Смысл в том что условие в цикле сравнивает два элемента массива с переменными. Когда используется "равно" то все нормально, но если используется "не равно", то оператор "И" почему то работает как "ИЛИ"

Code: (clickermann) [Select]
LOGCLEAR

FOR($a=0,$a<400)
   ARRPUSH($arr, $a)
END_CYC

$x = 356
$y = 359
LOGWRITE ("X:", $x," Y:", $y)

LOGWRITE ("РАВНО")
FOR($a=0,$a<ARRSIZE($arr),2)
   
   IF(($arr[$a]=$x)&($arr[$a+1]=$y))
      LOGWRITE ("Совпадает X:", $arr[$a]," Y:", $arr[$a+1])
   END_IF
   
END_CYC

LOGWRITE ("НЕ РАВНО")
FOR($a=0,$a<ARRSIZE($arr),2)
   
   IF(($arr[$a]!$x)&($arr[$a+1]!$y))
   ELSE
      LOGWRITE ("Совпадает X:", $arr[$a]," Y:", $arr[$a+1])
   END_IF
   
END_CYC

HALT

Лог:
Quote
9:51:33 X:356 Y:359
9:51:33 РАВНО
9:51:33 НЕ РАВНО
9:51:33 Совпадает X:356 Y:357
9:51:33 Совпадает X:358 Y:359

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #175 on: May 25, 2015, 11:45:01 AM »
Баг
Нашел тут странный баг с "Не равно". Он есть и в старых версиях.
Смысл в том что условие в цикле сравнивает два элемента массива с переменными. Когда используется "равно" то все нормально, но если используется "не равно", то оператор "И" почему то работает как "ИЛИ"
[spoiler]
Code: (clickermann) [Select]
LOGCLEAR

FOR($a=0,$a<400)
   ARRPUSH($arr, $a)
END_CYC

$x = 356
$y = 359
LOGWRITE ("X:", $x," Y:", $y)

LOGWRITE ("РАВНО")
FOR($a=0,$a<ARRSIZE($arr),2)
   
   IF(($arr[$a]=$x)&($arr[$a+1]=$y))
      LOGWRITE ("Совпадает X:", $arr[$a]," Y:", $arr[$a+1])
   END_IF
   
END_CYC

LOGWRITE ("НЕ РАВНО")
FOR($a=0,$a<ARRSIZE($arr),2)
   
   IF(($arr[$a]!$x)&($arr[$a+1]!$y))
   ELSE
      LOGWRITE ("Совпадает X:", $arr[$a]," Y:", $arr[$a+1])
   END_IF
   
END_CYC

HALT

Лог:
Quote
9:51:33 X:356 Y:359
9:51:33 РАВНО
9:51:33 НЕ РАВНО
9:51:33 Совпадает X:356 Y:357
9:51:33 Совпадает X:358 Y:359
[/spoiler]

Бага нет. Ты наступил на логические грабли. Кстати ты именно на эти уже наступал. Я кстати тоже  ;D
Если коротко, то с участниками НЕ, для получения нужного тебе результата нужно ставить не И, а ИЛИ
Code: (clickermann) [Select]
IF(($arr[$a] ! $x) | ($arr[$a+1] ! $y))

При использовании НЕ в операндах
Code: (clickermann) [Select]
IF(($arr[$a] ! $x) & ($arr[$a+1] ! $y))условие так же выполнится если оба операнда не совпадают.
Если совпадёт хоть один или не одного будет работать ELSE. Всё правильно.

В строке 25 LOGWRITE правильно должен быть написан
Code: (clickermann) [Select]
LOGWRITE ("Совпадает или X:", $arr[$a]," или Y:", $arr[$a+1])тогда ты поймёшь, что всё правильно.
« Last Edit: May 25, 2015, 11:49:47 AM by Vint »


АНТИКЛАН

  • Активный участник
  • ***
  • Posts: 111
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #176 on: October 25, 2015, 11:08:52 AM »
Memory Leak

Друзья мои, как выяснилось наш кликер имеет классические утечки памяти, которые при длительном его использовании приводят к активному поглощению памяти и в конечном итоге краше (от обжорства). Скорость прямопропорциональна задержкам в скрипте.

Я сделал над собой усилие, вышел из прокрастинации и подправил ряд базисных функций. Теперь вроде все хорошо. Однако дело нуждается в проверке.
Затестите пожалуйста не сломал ли я чего и не ушло ли что от моего взора В ПЛАНЕ УТЕЧЕК. Все прочие фиксы и предложения позже. Это первостепенная задача.
Тренд: http://crapware.aidf.org/forum/index.php?topic=1811.0

fix http://rghost.net/92nSY8Gmd

У меня ничего не поменялось. С запуском простого скрипта с потоком на нажатие одной кнопки с интервалом в 3 минуты. Быстро отъедается около полутора гигабайт памяти и потом со временем целевое приложение вылетает с ошибкой нехватки памяти.
« Last Edit: April 15, 2018, 06:32:49 PM by АНТИКЛАН »

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #177 on: October 25, 2015, 12:41:57 PM »
У меня ничего не поменялось. С запуском простого скрипта с потоком на нажатие одной кнопки с интервалом в 3 минуты. Быстро отъедается около полутора гигабайт памяти и потом со временем целевое приложение вылетает с ошибкой нехватки памяти.

Покажи свой скрипт.
Уверен что скачал последнюю версию 4.11.003?
На оф страничке не написано что это 003 но на самом деле там самая последняя версия.
http://crapware.aidf.org/page/clickermann

АНТИКЛАН

  • Активный участник
  • ***
  • Posts: 111
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #178 on: October 27, 2015, 01:36:39 AM »
Покажи свой скрипт.
Уверен что скачал последнюю версию 4.11.003?
На оф страничке не написано что это 003 но на самом деле там самая последняя версия.
http://crapware.aidf.org/page/clickermann

Code: (clickermann) [Select]
// СКРИПТ
// Author: АНТИКЛАН
// Version: 1.0 (25.10.2015)

#name "NAME"   // Имя скрипта

//#include "subs.cms"

#ps2_mouse   // Включаем режим PS/2 мыши
#ps2_keyboard   // Включаем режим PS/2 клавиатуры

$HWND = WNDFIND("WINDOW", 1)   // Присвоение переменной окна значения и привязка к окну
HSET($HWND, 1)

// ПОТОК
THREAD(THREAD_1)
   KEYPRESS(#F5)
   WAIT(RND(175,185))
END_THREAD
« Last Edit: April 15, 2018, 06:36:44 PM by АНТИКЛАН »

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #179 on: October 27, 2015, 08:47:28 AM »
Потестил, действительно память утекает. Дело в HSET($HWND, 1).
У тебя в главном потоке снова и снова каждую миллисекунду происходит привязка HSET($HWND, 1)

Если это пример части скрипта то пиши так
Code: (clickermann) [Select]
// СКРИПТ
// Author: АНТИКЛАН
// Version: 1.0 (25.10.2015)

#name "NAME"   // Имя скрипта

//#include "subs.cms"

#ps2_mouse   // Включаем режим PS/2 мыши
#ps2_keyboard   // Включаем режим PS/2 клавиатуры

IF($_hwnd = 0) // условие перестанет срабатывать после привязки
   $HWND = WNDFIND("Блокнот", 0)   // Присвоение переменной окна значения и привязка к окну
   IF($HWND > 0)
      HSET($HWND, 1) // если найдено привязываемся
      SETTHREAD (THREAD_1, 1) // запускаем поток       
   ELSE
      HINTPOPUP("Окно не найдено")
      HALT // если нет, останавливаем выполнение
   END_IF
END_IF

WAIT(1) // в главном потоке хорошо бы написать задержку

// ПОТОК
THREAD(THREAD_1,0)
   KEYPRESS(#F5)
   WAIT(RND(175,185))
END_THREAD

Если это весь скрипт то куда проще привязаться горячими клавишами Alt+W наведя мышь на окно.
Code: (clickermann) [Select]
#ps2_mouse
#ps2_keyboard

KEYPRESS(#F5)
WAIT(RND(175,185))
« Last Edit: October 27, 2015, 08:49:45 AM by Oraven »