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

0 Members and 2 Guests are viewing this topic.

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #300 on: January 19, 2017, 07:51:33 AM »
Надо исправить наконец код PRINTSCREEN в файле const.txt и спраке

#PRINTSCREEN 154

Правильное значение 44
#PRINTSCREEN 44

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #301 on: January 20, 2017, 08:26:00 AM »
Вот еще пример вылезания кавычек. Удаление пробелов из строки. В результате должна получиться пустая строка но...
Code: (clickermann) [Select]
PRINT (STRLEN(STRFILTER("   ", " ", 0)))
HALT

В логе значение 2

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #302 on: January 25, 2017, 06:34:26 PM »
При запуске кликера через ассоциированный скрипт с параметром #autorun кликер остается на экране в недосвернутом состоянии.
Надо бы это поправить чтоб он полностью был только в трее или на панеле задач.

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #303 on: January 27, 2017, 02:49:37 PM »
Так 4.13 кроме экзешников пока ничего и нет.


Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #304 on: January 27, 2017, 03:28:10 PM »
На самом деле можно обойтись без Win_Api_Constants.cms достаточно просто внести эти строки в файл const.txt
Ну добавится решетка в начале каждой команды типо #WM_KEYDOWN неужели это такая проблема?

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #305 on: February 05, 2017, 07:39:04 PM »
Ну зачем тебе сохранять его в темп то? Выбирай сохранить как, а лучше скачать а уж потом запускать.

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #306 on: February 12, 2017, 01:49:27 PM »
может всеже стоит научить в новой версии функцию DIST правильно работать с дробными числами!!!???
ладно еслиб она выдавала ошибку, или возвращала "0", но она ведь часто вводит в заблуждение. я то уже в курсе, и всегда пользуюсь своими вычислениями если есть вероятность дробного числа. а такова вероятность всегда очень велика, даже при простейших математических действиях с координатами, и в дальнейшем используя DIST, может долго поламать голову над чудесами которые происходит далее. а если координаты берутся не с экрана, а из самого приложения? и я вообще не пойму, почему изначально эта функция предполагала расчеты только с целыми? в чем была загвоздка при создании ее полноценной?
пример.
Code: (clickermann) [Select]
$x1 = 0
$y1 = 0
$x2 = 1
$y2 = 2.0001

print(Sqrt(POW(($x1-$x2),2)+POW(($y1-$y2),2)))
print(dist($x1,$y1,$x2,$y2))

halt

циферки может каждый сам поменять, и посмотреть на эту беду.

к примеру если выставить координаты, и дну из них поделить на два (на практике может встретиться очень часто)
Code: (clickermann) [Select]
$x1 = 0
$y1 = 0
$x2 = 1
$y2 = 103/2
то у нас DIST выдаст 1.4142135623731 , полторы точки  :o от нулевой точки до 51-ой , этож нонсэнс, а сразу и не поймешь в чем тут косяк.

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #307 on: February 12, 2017, 01:53:51 PM »
Ну очевидно что полпиксела быть не может. Нужно просто использовать INT

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #308 on: February 12, 2017, 02:06:25 PM »
Ну очевидно что полпиксела быть не может. Нужно просто использовать INT
нужно то оно нужно, но на практике нам об этом никто не говорит  :D .
плюс, как я писал ранее, координаты можно брать из самого приложения, а там они всегда дробные. и часто какаянибудь сотая часть единицы играет роль. да можно было бы использовать ROUND и смещать точку на столько сколько требуется. но тотже ROUND тоже с причудами  :D, он часто возвращает числа типа 22.99999999999, и снова скрипт гонит не по теме. и снова после ROUND требуется еще не забыть использовать INT. а не много ли лишних движений?

что ж там такого в этом DIST проблемно было сделать, чтоб он работал как нужно?
опять же повторюсь, я уже привык, многие из активных пользователей тоже, но всеже нужно сделать как положено.



насчет ROUND я погоречился  ;D, смещаем току умножением. но фак остается фактом, ROUND часто вадавал мне лишние девятки после точки. щяс пытаюсь найти как  :D

Quote
но фак остается фактом, ROUND часто вадавал мне лишние девятки после точки. щяс пытаюсь найти как  :D
поковырял я это ROUND, чето ничего не нашел  >:(. да и не помню уже в какой это версии было. кароче забил. нашел лишь небольшей косячек с округлением 5,6,7 или более знаков после точки (зависит он количества знаков перед точкой), выдает отрицательные числа. но это скорее всего так и требуется, так как там есть вроде какоето максимальное число для памяти т.д. и т.п.,  но лучше бы в этих случаях выдавало ошибку.


урааааа :D  :D  нашел девятки  :D
закономерности никакой не нашел, просто наугад  :(
Code: (clickermann) [Select]
print(ROUND (2567.4535848 , -4))в лог выдает 2567.4535999999997 , пхуууу, ато я уж посчитал что выставил себя лапухом  ;D
« Last Edit: February 12, 2017, 02:37:47 PM by dramster »

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #309 on: February 12, 2017, 02:53:17 PM »
выявлен баг, стабильный баг. в функции ROUND . вот на это я частенько и напарывался, о чем писал выше.
Code: (clickermann) [Select]
$n = RND (0, 9999999)/1000
print($n)
print(ROUND ($n , -1))
waitms(100)
лог:
Code: [Select]
14:48:22 3029.151
14:48:22 3029.2
14:48:22 2958.86
14:48:22 2958.9
14:48:22 9476.338
14:48:22 9476.2999999999987
14:48:22 2778.042
14:48:22 2778
14:48:22 7206.278
14:48:22 7206.3
14:48:22 3186.751
14:48:22 3186.8
14:48:22 5989.206
14:48:22 5989.2
14:48:23 5519.9849999999994
14:48:23 5520
14:48:23 8356.742
14:48:23 8356.7000000000013
14:48:23 8906.4860000000013
14:48:23 8906.5
14:48:23 8243.3070000000013
14:48:23 8243.2999999999987
14:48:23 4159.407
14:48:23 4159.3999999999994
14:48:23 3857.423
14:48:23 3857.4
14:48:23 5222.6719999999994
14:48:23 5222.7
14:48:23 362.745
14:48:23 362.7
14:48:23 9822.203
и так далее.




:-\ судя по кусочку лога:
Code: [Select]
14:48:23 8356.742
14:48:23 8356.7000000000013
14:48:23 8906.4860000000013
14:48:23 8906.5
тут и с делением чтото глюкает  :-\

[spoiler] :D неужели, только сейчас я догнал, в чем может быть проблема при использовании кликера в одной 3д игре, где езда на автомобиле отлажена от и до. авто едет очень быстро, координаты берутся из памяти, расчеты ведутся мгновенно, нужна максимальная точность, вроде все идет по курсу, но в какието моменты руль на мгновение до упора поварачивает в не нужном направлении, я грешил на считывание из памяти возможных косяков. но теперь думаю проверить всё заново, так как гдето всеже  могут вылазить дробные числа, и какаянибудь функция срабатывает не правильно.[/spoiler]
« Last Edit: February 12, 2017, 03:12:37 PM by dramster »

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #310 on: February 12, 2017, 04:38:21 PM »
Почему DIST работает с целыми числами я понимаю и у меня с ним никогда не возникали проблемы, ну кроме времён когда и выходные данные были целые.
При разработке в голове сложилось: для чего кликеру DIST? - считать расстояние между пикселами экрана. Коордмнаты пикселов могут быть только целые числа, поэтому выбираем тип данных int. Ну так люди программируют. Нужно использовать тот тип данных который нужен. Можешь конечно все числа заводить во float, но это лишняя трата памяти, времени расчётов и точности.
Если бы всякие  If_picture_in работали с float мы бы сильно потеряли в скорости.

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

Понятно что дистанция между точками в своих системах координат (или игровых) может иметь дробные координаты, но дист для них не задумывался. Приходиться считать самим. Сейчас желательно переделать dist под новые расширенные применения кликера. Он чуть вырос из экранной "тыкалки".
« Last Edit: February 21, 2017, 02:27:40 PM by Vint »


Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #311 on: March 05, 2017, 01:44:34 PM »
Нужно исправить устаревший скрипт в справке.

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #312 on: April 21, 2017, 05:50:37 PM »
баг при вызове подпрограммы со строковыми параметрами в версии v4.13 b3.
Code: (clickermann) [Select]
SUB(test, $text)
   print($text)
END_SUB


$str = "Русский, Anglish"
test($str) //всё норм - "Русский, Anglish"
wait(1)
test("Anglish") //получаем  "ANGLISH"  вместо   "Anglish"
wait(1)
test("Русский, Anglish") //получаем "Русский)"  и ошибку
halt

[spoiler]пол дня себе мозг выносил с этой неразберихой  >:( [/spoiler]

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #313 on: May 20, 2017, 02:13:08 AM »
версия v4.13 b3 х64 не работает в режиме ps2.



тоже самое и с #ps2_mouse+LCLICK

Johnny

  • Создатель
  • Герой форума
  • *
  • Posts: 593
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #314 on: May 23, 2017, 04:33:55 PM »
версия v4.13 b3 х64 не работает в режиме ps2.



тоже самое и с #ps2_mouse+LCLICK

работает но там нужен соответствующий драйвер ioport.dll под х64 сборку