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

0 Members and 7 Guests are viewing this topic.

Johnny

  • Создатель
  • Герой форума
  • *
  • Posts: 593
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #375 on: December 05, 2017, 06:42:59 PM »
до 006 getscreen с привязкой захватывал не целевой элемент (как воще т задумывалось) а все родительское окно. поэтому появлялись сдвижки графики равные всяким панелям, рамкам, заголовкам. в 006 захватывается только тот элемент интерфейса к которому была привязка.

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

h31p

  • Зашел в гости
  • *
  • Posts: 16
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #376 on: December 05, 2017, 07:23:59 PM »
до 006 getscreen с привязкой захватывал не целевой элемент (как воще т задумывалось) а все родительское окно. поэтому появлялись сдвижки графики равные всяким панелям, рамкам, заголовкам. в 006 захватывается только тот элемент интерфейса к которому была привязка.

заглянул ради интереса на 006 снова лупой редактора - так и скачет. выглядит это так (gif):



т.е. изображение на долю секунды "съезжает" вправо и вниз (чётко на расстояния от 0 до края флэша без привязки), затем "возвращается" обратно. закономерности во времени появления таких скачков не наблюдается, интервалы абсолютно разные.
а, и забыл сказать - без привязки никаких скачков нет, всё всегда где должно быть.

Quote
посмотрю что там может разростить на пицот мегабайт. возможно где то утечка памяти.

ага, плиз, а то страшно надолго оставлять стало :)

Johnny

  • Создатель
  • Герой форума
  • *
  • Posts: 593
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #377 on: December 13, 2017, 07:08:35 PM »
Как на счет решения проблемы "заголовка" в оконном режиме.

Починено. Там вообще не очень корректно работало.

v4.13.006b

http://rgho.st/7NMC8qtZk

так же добавлены две сис переменные $_date_str и $_time_str для вполне очевидных целей

v4.13.007

Так, тут кароче выяснилось что дело было не в бобине. А в некорректной работе WinAPI применимо к нашим целям.
Вернул что сломал. Теперь графика не должна съезжать на размер шапок рамок

http://rgho.st/6P7Rjb6Mw

Надо уже разобраться с этой фигней и к НГ выкатить обновление. Ребята два года ждут уже.

p.s. что касается поведения флеш плеера когда он становится весь черный - так было всю дорогу. возможность получения графики в оконном режиме исключительно на совести разработчиков принимающей стороны
« Last Edit: December 13, 2017, 07:10:51 PM by Johnny »

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #378 on: December 13, 2017, 08:50:24 PM »
Так, тут кароче выяснилось ...

Да теперь все ровно. Однако ступор редактора после исчезновения привязанного окна все еще остается.

algirdas

  • Освоившийся
  • **
  • Posts: 35
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #379 on: December 14, 2017, 10:39:39 AM »
Нельзя ли в этой прекрасной программе для ускорения поиска нужного куска в длинном тексте сделать некоторые разделители разноцветными, напр.  //+++++ подсвечивать красным цветом, //~~~~~~ - синим, //*** - желтым, оставляя остальные, как и сейчас, зеленым.

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #380 on: December 14, 2017, 04:15:17 PM »
А вот то что старые переменные  $_xmax и $_ymax по прежнему сжирают по одному пикселю в уплату за свою работу - огорчило.
А что с ними не так? Всё правильно, максимальные координаты x,y (не размер экрана).


Johnny

  • Создатель
  • Герой форума
  • *
  • Posts: 593
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #381 on: December 14, 2017, 05:39:28 PM »
И до кучи хотелось, бы  поддержка файла qinsert_menu большего размера, так как он очень маленький и многие  полезные команды в него уже не влезают, если файлы большего размера не поддерживаются, тогда ещё одно меню куда пользователи будут сохранять личные команды.
Чего?  :o

Johnny

  • Создатель
  • Герой форума
  • *
  • Posts: 593
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #382 on: December 14, 2017, 06:06:54 PM »
впервые слышу. по задумке они так то безразмерными должны быть. Oraven вон их допиливает постоянно.
и уж точно нигде жестких границ не задавалось. у нас даже размер истории открытых файлов можно подстраивать.
а можно файл который не смог не влез? потестирую погоняю. да и вдруг там просто где то синтаксис запорот, скобочку забыл или символ какой

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #383 on: December 14, 2017, 06:42:59 PM »
А системную переменную с номером версии ввели?


Cleoss

  • Активный участник
  • ***
  • Posts: 260
  • Автоматизируй это!
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #384 on: December 25, 2017, 01:23:58 AM »
Появление версии 4.13.4 я проспал. И даже не заметил, когда изменились и дополнились операторы сравнения:

Неравно
!=
Больше или равно
>=
Меньше или равно   
<=

Печалька, что ! поменяли на !=, что теперь делать (переходить ли на новую версию и править скрипты или подождать поправок)? А ведь было чуть легче, если б была переменная с кодом версии кликера:

Code: (clickermann) [Select]
if($_ver>="4.13.4")
   if($a!=$b)
else
   if($a!$b)
end_if
      $a=1
   else
         if($_ver>="4.13.4")
            if($a!=$c)
         else
            if($a!$c)
         end_if
            $a=0
      end_if
else
   $a=2
end_if

Но в идеале хорошо б, если интерпретатор сам понимал "старые" выражения как надо и не давал ошибок, чтоб не плодить горы лишнего кода.

Ещё б не плохо оператор return, который бы определял, какое значение возвращает функция-подпрограмма. Ну и брейк для выхода из цикла можно добавить заодно.

Code: (clickermann) [Select]
sub(func,$par)
   $a=5*$par
   return $a
end_sub

// Было:
func(3)
print($a+2)

// Стало бы:
print(func(3)+2)

Но добавление "Меньше/Больше или равно" это всё-таки прогресс. Жалко вот ещё, что strreplace обрабатывает/заменяет только первое вхождение, а не все.

PS. Оказывается, пропустил я не только 4.13.4бетку, но и 4.13.7)) Сразу захотелось узнать, будет ли конструкция вида if ("4.13.4"<=$_ver<"4.13.7") работать)) Ну а чё, стандартный такой себе математический диапазон, с коим все мы сталкиваемся в школе или вузе.

..а на windows 10 выскакивает ошибка интерпретации строки
Code: (clickermann) [Select]
$com_ = INT (INIREAD("..\command_file.ini","com","command"))Ошибка возникает из-за попытки выйти на каталог выше. Проверьте плз. Кусок кода написал по памяти, поэтому слеш мог поставить не правильно, но ..

Может, дело в имени переменной $com_ (заканчивается не на букву)? Сам я ешё не тестил пока ничего новее 4.13.3, завтра возможно исправлюсь.

у меня одного в версии 4.13.004 в режиме "редактора" падает fps рабочего стола? при этом проц не нагружается, видеокарта вроде тоже не напрягается. просто картинка начинает тормозить, будь то игра, видео, или просто при передвижении окна по рабочему столу. если закрыть редактор, все становится норм.

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

Первое, что приходит в голову, это лупа (либо отключаем когда не нужна, либо понижаем скорость обновления в конфиге). У меня бывал глюк после пользования лупой, что либо окно редактора становилось чёрным, либо элементы интерфейса главной формы &mdash; не прорисованными (вплоть до переразворачивания).
« Last Edit: December 25, 2017, 02:20:47 AM by Cleoss »

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #385 on: December 25, 2017, 02:14:11 AM »

Печалька, что ! поменяли на !=, что теперь делать (переходить ли на новую версию и править скрипты или подождать поправок)? А ведь было чуть легче, если б была переменная с кодом версии кликера.

да, переменная с версией это давно пора, и предлагали ранее.

как вариант (сам не тестировал), можно попробовать с #define

пример редактирования скрипта под версию 4.13...
Code: (clickermann) [Select]
#define !: !=


if(1 ! 0)
   print("да, !")
else
   print("нет, !")
end_if
halt

но нужно учитывать, что все строки с восклицательным знаком также добавят к себе "=" . данный пример работает на 13.006 корректно, кроме "да, !=" в логе  :D.


насчет пользовательских функций также уже давно обсуждалось. было бы здорово.
http://crapware.aidf.org/forum/index.php?topic=2108.0
« Last Edit: December 25, 2017, 02:24:30 AM by dramster »

Cleoss

  • Активный участник
  • ***
  • Posts: 260
  • Автоматизируй это!
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #386 on: December 25, 2017, 02:25:11 AM »
данный пример работает на 13.006 корректно, кроме "да, !=" в логе  :D.

Сорян, Драмчег, пока я написал тебе ответ выше, ты меня уже опердил))

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #387 on: December 25, 2017, 02:42:26 AM »

у меня одного в версии 4.13.004 в режиме "редактора" падает fps рабочего стола? при этом проц не нагружается, видеокарта вроде тоже не напрягается. просто картинка начинает тормозить, будь то игра, видео, или просто при передвижении окна по рабочему столу. если закрыть редактор, все становится норм.

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

Первое, что приходит в голову, это лупа (либо отключаем когда не нужна, либо понижаем скорость обновления в конфиге). У меня бывал глюк после пользования лупой, что либо окно редактора становилось чёрным, либо элементы интерфейса главной формы &mdash; не прорисованными (вплоть до переразворачивания).

да не, не изза лупы это, я там далее сам потестил и понял в чем загвоздка http://crapware.aidf.org/forum/index.php?topic=356.msg24857#msg24857
и это начиная именно с версии 4.13 и выше. сильно не напрягает, так как скрипты то в основном запускаются с главного окна (не с редактора). просто заметил кой какой косячек.

[spoiler=вот в чем дело :)]черт подери, может Johnny встроил майнер в кликер  :o  ;D . при майнинге видеокартой какраз таки фпс раб. стола падает, только намного сильнее.
на заметку Johnny для новых версий  ;). [/spoiler]
« Last Edit: December 25, 2017, 02:57:17 AM by dramster »

Cleoss

  • Активный участник
  • ***
  • Posts: 260
  • Автоматизируй это!
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #388 on: December 25, 2017, 02:59:31 AM »
[spoiler=вот в чем дело :)]черт подери, может Johnny встроил майнер в кликер  :o  ;D
на заметку Johnny для новых версий  ;). [/spoiler]

Идея годная, больше 1000 голов уже есть, пора монетизировать!  :D

А ваще Аэро лупе не помеха, одно может помогать другому тормозить.
Ну и майнин в простое -__-

По ходу и задумка с #дефайном неплохое быстрое решения, я уж и забыл про него, хотя перед переходом на новый движок надо малость потестить завтра и оценить все про да контра.

Захотелось ещё вот кратко набросать список нововведённых функций:
[spoiler=Свежие функции Кликермана после релиза 4.13.3b]
$_xmin (эти два для режима привязки? или только для мультимонитора?)
$_ymin ~~~
$_date_str
$_time_str
HGETPID(hwnd)
GETMESSAGE (wParam, lParam, [isnew] )
Tab, Ctrl+Tab, Shift+Tab, Ctrl+S (пользуюсь в редакторе этим хоткеем ещё с 4.13.3 точно)
$_hwnd_self
!=  <=  >=
and or xor ^
arrsort($array)
#logfile "debug.txt"
\data\default.txt
--httpwork.dll
CHAR(code)[/spoiler]
Для таких как я, которые вечно всё пропускают. Я ожидал, что будет 4 версия, но вот 5-ой и 7-ой я точно не ждал, хорошие у Джона перемены)) Unicode у меня кстати так и не работает, надо б на эту тему написать обзорчег.

Провел эксперименты. Нашёл, что ошибка появляется когда есть файл скрипта по умолчанию default.txt

Не совсем въеду, об чём речь. Что за дефолт и где он лежит? ...А, всё, почитал справку, раздел "История") Дооо, надо эт потестить есчо. Читаю в справке: "Доработка функций граф поиска", думаю: во-о-о, чтот Джонни ввёл для расчёта графов и задачи коммивояжера)


Надумал щас вот побыряку потестить и запустить новые версии кликера да не тут то было. Ни одна из новых версий не пошла, два раза вылетает "Прекращена работа программы" и без всяких опций. С-под админа тож не завелось, завтра надо буит добавить в исключения и перегрузиться. Обычно я не тушу комп, а гибернирую))

Ещё интрэсна, научатся ли когда-нибудь функции getfilelist/getdirlist возвращать и дату изменения файлов/папок, а не только их имена? Допустим даже через несколько скрытых параметров (один ключ = нужны ли пользователю даты или нет, второй = формат возвращаемой даты).

Мои пометки к новой справке:

Quote
+ Доработка READMEM(), теперь функция
Теперь функция, а раньше тогда что это было? Или тут недописано?

Quote
+ Отказ от библиотеки httpwork.dll
Это ещё зачем? и повлияет ли это на выпил httpGet?
У меня и так обращение по протоколу https: вешает намертво х64-версию КЛМН, то же происходит и от многих других сайтов при работе х32 с этой функцией. А многие http-сайты (не засекьюренные) возвращают увы только пустую строку, несмотря на весь мощный потенциал этой фишки. То есть в большинстве случаев она либо виснет, либо отдаёт "".

Quote
+ Исправление ряда проблем с кавычками в возвращаемых строках
+ Исправление ряда багов потоков
+ Предупреждение об отсутствии файла в #include
За это отдельное спасиб, потестим! Не лишним было б и предупреждение о недостающем гетскрине, по аналогии (для любителей искать чёрную кошку на чёрном экране, к коим относится и ваш слуга)).

Quote
+ Исправление GETFILELIST()
+ Исправление GETDIRLIST()
А что там было не так?

Еще кажется, из хелпы было удалено, что имя переменной после доллара должно начинаться с буквы, но не цифры. Упростились требования к имени?

Quote
RNDFROM
Функция. Возвращает случайно выбранное число из заданного набора.
Разве функция не может возвращать строки из указанного набора?

Quote
ARRSORT
Сортирует элементы массива по возрастанию.
Пока не судьба потестить функцию, но уже интересно: сортируются ли значения и по алфавиту или только числа по возрастанию? Соблюдается ли "натуральный порядок" при сортировке? Например: 1,2,3,10,100 вместо 1,10,100,2,3. Будет ли в функции создан ключ для удаления дублей строк/чисел или хотя бы функционал для маркироовки дублей (напр., временный массив с позициями дублирующихся строк)? Ешё мелочь, но спрошу: если будет фильтрация дублей, то будет ли фильтр регистро(не)зависимым или по выбору?

Quote
STRPOS
Функция. Возвращает позицию начала искомой подстроки во входной строке.
Та же байда, что и со стринг-реплейсом: работает только с первым элементом вместо того, чтоб создать массив позиций всех найденных строк.

Quote
CHAR
Функция. Возвращает символ по его коду.
Работает только с ascii-диапазоном? Или поширее?

Quote
SETKBLAYOUT
Устанавливает языка ввода (раскладки) в конкретном окне.
Можно к примеру в справке указать что для русяза код равен 1049.

Quote
WHILE ... END_CYC
Цикл с предусловием.
Можно в примеры добавить нечто вроде:
[spoiler=(ожидание) поиска картинки]
$counter=0
$present=0
while($present=0)
   getscreen(0,0, $_xmax,$_ymax)
   //colormode(8, 0,0, $_xmax,$_ymax)
   if_picture_in(0,0, $_xmax,$_ymax, "screen.bmp")
      move($_return1,$_return2)
      print("Found at (",$_return1,",",$_return2,")")
      waitms(1)
      $present=1
   else
      print("Not found!")
      inc($counter)
      if($counter>10)
         beep(800,800)
         halt
      end_if
   end_if
   waitms(300)
end_cyc[/spoiler]

Quote
SCREENSHOTFIX
По-прежнему, данная команда так и не появилась в гиперссылочном содержании вверху страницы раздела "Анализ экрана". Также у функции в справке неправильно описан синтаксис -- очевидно, он взят из SCREENSHOTEX, а надо так:
SCREENSHOTFIX(x1, y1, x2, y2, path, [format])
То есть в описании отсутствует обязательный параметр PATH с указанием пути к файлу перезаписываемой картинки, хотя пример к функции предподнесён правильно.
Ещё такой попутный квешн: раз кликер меняет применяемую к jpeg-скринам компрессию только при перезагрузке проги, можно ли его заставить как-либо перечитать настройки из конфига без перезапуска?

Quote
$_date_str
$_time_str
Их пока что не нашёл в справке, во "Введении". Типа возвращает строку с наконкатенированными циферками и разделителями?

Quote
LOGSHOW (show, [x, y] )
Может, добавить ещё две факультативные координаты в параметры, чтоб можно было задавать и размер лога на экране?

Quote
EXECUTE (filename, [param] )
Он больше не переводит самопроизвольно передаваемые в кавычках параметры в верхний регистр?

Quote
GETMESSAGE (wParam, lParam, [isnew] )
Для меня это всё тёмный лесъ, как и ридмем/райтмем)) Нужно хотя б с десяток реальных, полезных, насущных примеров применения, самых т. с. не в бровь, а в глаз, с протейшими вещами, которые можно сотворить с этими командами. Но вот идея Драмстера обмениваться ментально флагами состояния с другой копией кликера мне оч понра. А можно например посылая мессидж без привязки к окну, закрывать/ сворачивать/ менять текст элементов? И можно ли менять текст элементов окна путём записи чрез команду writemem?

Кроме всяких туда-сюда снующих и вечно всплывающих жучков (не в последнюю очередь благодаря большому поддерживаемому diversity функций кликера, что несомненно есть немалый плюс), слабым местом является слабая представленность интерфейсеых функций. Вот в 2016-ом, относительно недавно, была добавлена RADIOBOX, как она удобна и как бы я без неё жил! Но вот некоторых элементов для создания элементов интерфейса кликеру имхо явно не хватает:
1) Создание из скрипта формы произвольной, конфигурируемой формы и размера (простите за тавтологию) + создание на этой форме любого количества кнопок опять же произвольного, задаваемого в скрипте размера
2) Возможность выводить полученную в графическом буфере либо из файла картинку в любом месте экрана и с любой прозрачностью, в том числе использовать выводимые картинки в виде фона для кнопок из пункта 1

То есть по сути нужен пяток простых, но крутых новых функций:
  • drawform (name, [x1,y1, x2,y2], [background])
  • drawimage (name, targetFormname, [x1,y1, x2,y2], sourceFile/sourceVar, [transparency, buttonname], [effect, effectStrenght])
  • drawtext (name, targetFormname, fontfamily, fontsize, [border, bordercolor, bordersize,] [x1,y1, x2,y2], string)
  • changeobj (name, newSourceName, targetFormname)
  • drawbutton (name, targetFormname, subOnclick, [x1,y1, x2,y2], [background])

Возможно, чтоб не вводить диссонанс в большой список параметров и не путать отсутствующие параметры с имеющимися, можно было б организовать парсинг параметров путём задания их синтаксиса в виде пар, к примеру так:
drawtext(string="MyText", size=18)

Это будет не плохой шажок навстречу АвтоИту по созданию интерфейсов программок -____- Так недалеко и до регекспа.
« Last Edit: December 30, 2017, 09:49:45 AM by Cleoss »

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #389 on: December 25, 2017, 03:35:33 AM »
потестировал те самые, загадочные $_xmin $_ymin. как и все догадывались, они показывают отрицательные значения координат при расположении дополнительного монитора левее или выше основного.

и даже при таком расположении экранов

переменные возвращают правильные значения (отрицательные $_xmin/$_ymin и положительные $_xmax/$_ymax) .

но, видимым этот дополнительный монитор не становится. потестил с разными расположениями мониторов. как оказалось, пока основной монитор не будет выше (либо равно) и левее (либо равно) дополнительного, то правильного скрина не будет. вкратце, если одна из переменных $_xmin или $_ymin будет меньше нуля, то скриншот экрана страдает. основной монитор в таком случае находится в верхнем левом углу всего скриншота, а все остальное - черное.