Author Topic: Как сделать минимальный срок выполнения скрипта?  (Read 2482 times)

0 Members and 1 Guest are viewing this topic.

EvilNoob

  • Зашел в гости
  • *
  • Posts: 9
    • View Profile
Народ пожалуйста помогите, вот я нажимаю на горячую клавишу(например е), и начинается скрипт как мне его сделать максимально быстрым(мгновенным) чтоб между каждым действием не было остановок не в одну миллисекунду.(Если это возможно)

EvilNoob

  • Зашел в гости
  • *
  • Posts: 9
    • View Profile
Ну вот например одна из функций программы которую мне хорошо было бы ускорить

IF(ISKEYDOWN(#R))
$x_cursor = $_xmouse
$y_cursor = $_ymouse
LCLICK(1250,55)
LCLICK(685,335)
LDOWN(1000,400)
MOVE(1000,490)
LUP(1000,490)
LCLICK(950,530)
LDOWN(1000,490)
MOVE(1000,400)
LUP(1000,400)
LCLICK(1250,55)
MOVE($x_cursor,$y_cursor)
KEYPRESS(#3)
LDOWN(-1,-1)
LUP(-1,-1)
KEYDOWN(#1)
KEYUP(#1)
END_IF

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
Ускорить? Это?  :o

У меня все твои манипуляции выполняются в среднем за 50мс. Ты хочешь еще быстрее?

Code: (clickermann) [Select]
IF(ISKEYDOWN(#R))
   
   $ms = $_ms
   
   $x_cursor = $_xmouse
   $y_cursor = $_ymouse
   LCLICK(1250,55)
   LCLICK(685,335)
   LDOWN(1000,400)
   MOVE(1000,490)
   LUP(1000,490)
   LCLICK(950,530)
   LDOWN(1000,490)
   MOVE(1000,400)
   LUP(1000,400)
   LCLICK(1250,55)
   MOVE($x_cursor,$y_cursor)
   KEYPRESS(#3)
   LDOWN(-1,-1)
   LUP(-1,-1)
   KEYDOWN(#1)
   KEYUP(#1)
   
   print("действия выполнились за ", $_ms-$ms, "мс.")
else
   waitms(50)
END_IF

К стати, какой результат ты ждешь используя отрицательные параметры для LDOWN(-1,-1)/LUP(-1,-1) ?

Добавлю:

Возможно у меня так быстро (50мс) изза параметра в файле config:
Code: [Select]
; Добавляет задержку N милисекунд в keypress, LRMclick
; Обеспечивает бОльшую совместимость с некоторыми играми и приложениями
smart_delay = 1

Но да же если там по умолчанию больше (уже не помню сколько), это не сильно замедлит выполнение.
« Last Edit: April 07, 2019, 07:34:52 PM by dramster »

EvilNoob

  • Зашел в гости
  • *
  • Posts: 9
    • View Profile
Ну во-первых спасибо, что пытался.
Во-вторых да мне надо быстрее 50мс.
Во-третих я не знаю как у тебя работает но в моей программе нужно чтоб производился клик, и если не задать кординаты уменя нету клика, и я пришол к простейшему выводу просто поставить отрицальные координаты в этом случае происходит клик на том месте где твой курсор в данный момент.
IF(ISKEYDOWN(#SPACE))
LCLICK  (нету клика)
END_IF

IF(ISKEYDOWN(#SPACE))
LCLICK(-1,-1) (есть клик)
END_IF
P.S.-Хотя сейчас я так посмотрел после тово как мне подсказали как сделать чтоб после скрипта курсор вернулся на место, то это уже не нужно, ну я тебе обьяснил в любом случае почему там (-1,-1)
« Last Edit: April 07, 2019, 07:40:37 PM by EvilNoob »

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
У тебя какая версия программы? В последней версии отрицательные координаты работают как отрицательные для расширенного рабочего стола, где координаты реально отрицательными могут быть.
Правильно писать LCLICK($_xmouse,$_ymouse) - клик там где курсор.

10мс  :o . Это чтож там у тебя такое шустрое выполняться должно? Я не представляю даже. Может ты не совсем понимаешь насколько это мало? К примеру когда ты играешь в игру с частотой кадров = 60фпс (большинство мониторов показывают при такой частоте), у тебя один кадр = 16мс. То есть ты хочешь чтобы твои действия выполнились быстрее одного "мгновения для пк". При этом у тебя там вижу и перемещения чегото и клики.

EvilNoob

  • Зашел в гости
  • *
  • Posts: 9
    • View Profile
Ну у меня видимо несколько старовата версия, у меня при минусных нечего не происходит кроме клика.
Насчет что такое шустрое должно выполнятся, то логично что чем быстрее тем лучше, особено для игровой программы где я погибаю из-за нескольких десятков миллисекунд, такие вот пироги.
Остается пытатся добиться тех же результатов сократив скрипт, в более быстрой форме видимо.

dramster

  • Герой форума
  • *****
  • Posts: 1134
    • View Profile
Ну у меня видимо несколько старовата версия, у меня при минусных нечего не происходит кроме клика.

Последняя стабильная версия тут:

EvilNoob

  • Зашел в гости
  • *
  • Posts: 9
    • View Profile
Ладно я отдыхать, завтра продолжу постигать гранит науки кликермена, и улучшать свою программу.