Автокликер Clickermann :: Форум

Основной раздел => Общие вопросы => Topic started by: Hito on November 01, 2020, 01:24:42 AM

Title: Как обнаружить мышь на экране?
Post by: Hito on November 01, 2020, 01:24:42 AM
Ребят, помогите проблему решить. Есть игра, которая захватывает и отпускает мышь. При захвате мышь исчезает с экрана и если ею двигать, то поворачивается камера в игре. А если захват мыши отпустить, то она просто перемещается по экрану. Вся проблема в том, что при некоторых действиях в игре, мышь захватывается автоматически и если потом нужно куда-то кликнуть ею, то полная херь получается. Кликер не видит мышь на экране и не может определить - захвачена она, или нет. Как эту проблему решить можно?
Title: Re: Как обнаружить мышь на экране?
Post by: ya12 on November 01, 2020, 08:43:51 AM
Если игра позволяет, то ковыряешь память с помощью Cheat Engine. При захвате значение измениться. Обычно для переключения режимов используются значения типа 0,1,..., но бывают и не очень логичные 255.
Title: Re: Как обнаружить мышь на экране?
Post by: Hito on November 01, 2020, 11:55:26 AM
Если игра позволяет, то ковыряешь память с помощью Cheat Engine. При захвате значение измениться. Обычно для переключения режимов используются значения типа 0,1,..., но бывают и не очень логичные 255.
Я к сожалению далек от кавыряния в памяти... Никогда этим не занимался... И навряд ли Black Desert это позволит ))
Title: Re: Как обнаружить мышь на экране?
Post by: 4.У.В.@.К on November 01, 2020, 01:48:28 PM
А код курсора как то меняется в состояниях, когда мышь "захвачена" и "не захвачена" автоматически?
Бывает так, что сами цифровые значения системной переменной $_cursor не важны, достаточно того, что они не равны друг другу, в различные моменты игры.
Title: Re: Как обнаружить мышь на экране?
Post by: Hito on November 01, 2020, 02:34:17 PM
А код курсора как то меняется в состояниях, когда мышь "захвачена" и "не захвачена" автоматически?
Бывает так, что сами цифровые значения системной переменной $_cursor не важны, достаточно того, что они не равны друг другу, в различные моменты игры.

Ты об $_xmouse и $_ymouse? Если мышь захвачена и находится у края игрового клиента, то ее координаты меняются на противоположный край клиента. Я так понимаю, это для того, чтобы камеру крутить бесконечно можно было. Но смысл в том, что камеру-то крутить не надо, а нужно навести мышь в нужные координаты и кликнуть. Каким образом этой инфой можно воспользоваться - я хз. К примеру, не привязанная мышь находится в координатах 1000, 1000, что в нашем примере будет ровняться нижнему правому углу игрового клиента. А в привязанном состоянии ее координаты поменяются на 10,10. Но как кликеру понять - привязана мышь, или нет?
Title: Re: Как обнаружить мышь на экране?
Post by: 4.У.В.@.К on November 01, 2020, 03:19:48 PM
Ты об $_xmouse и $_ymouse?

Не, я говорю не про координаты, а про код курсора, который меняется, например при наведении курсора на различные элементы окна приложения (или элементы игрового интерфейса).
В редакторе: Команды ==> Системные переменные ==> $_cursor - Код курсора. Вот я про что.

Code: (clickermann) [Select]
LOGWRITE ($_cursor)

WAITMS(100)

Кстати да, резкое несанкционированное изменение координат курсора, тоже можно наверно анализировать).
Title: Re: Как обнаружить мышь на экране?
Post by: Hito on November 01, 2020, 04:06:52 PM
Ты об $_xmouse и $_ymouse?

Не, я говорю не про координаты, а про код курсора, который меняется, например при наведении курсора на различные элементы окна приложения (или элементы игрового интерфейса).
В редакторе: Команды ==> Системные переменные ==> $_cursor - Код курсора. Вот я про что.

Code: (clickermann) [Select]
LOGWRITE ($_cursor)

WAITMS(100)

Кстати да, резкое несанкционированное изменение координат курсора, тоже можно наверно анализировать).

Хм... То, что доктор прописал...
А по поводу резкого несанкционированного изменения координат курсора - тогда бы уже давно заблокировали ))
Спасибо огромное!