Автоматизация и боты

 Помощь      Поиск      Пользователи
Сайт Кибор     Программируемый кликер Кибор     Видео обучение     Заказать бот

 Страниц (1): [1]   

> Без описания
Kostick
Отправлено: 19 Июня, 2024 - 03:56:15
Post Id



Пользователь
Мастер


Покинул форум
Сообщений всего: 184
Дата рег-ции: Авг. 2020  
Репутация: 1




Здравствуйте.
Приобрёл плату Arduino, чтобы использовать её как имитатор клавиатуры и мыши по инструкции(для просмотра ссылки Вам необходимо авторизоваться) т.к. в игре Lost Ark защита не пропускала обычные нажатия, который отправлял Kibor.
Т.к. бота создаю в Визуальном редакторе, задался вопросом, можно ли как-то модифицировать окно Визуального редактора, чтобы в нём в выборе блоков в Эмуляции кроме функций "key" и "mouse" появились функции "_Key_Arduino" и "_Mouse_Arduino", которые используются для Arduino. И если их используешь, то в начале дописывался бы следующий текст для объявления переменных:
CODE:
#define MOUSE_LEFT 1
#define KEY_RETURN 0xB0
#define KEY_TAB 0xB3
string path_to_dll = pathfolder()+"Arduino.dll";

external(INT, "get_port", "get_port", path_to_dll);
external(INT, "set_port", "set_port", path_to_dll);

// Параметры для мыши
external(INT, "get_port", "get_port", path_to_dll);
external(INT, "set_port", "set_port", path_to_dll);
external(INT, "set_delay_mouse", "set_delay_mouse", path_to_dll);
external(INT, "set_delay_mousemove", "set_delay_mousemove", path_to_dll);
external(INT, "set_offset_mousemove", "set_offset_mousemove", path_to_dll);
external(INT, "set_random_delay_mouse", "set_random_delay_mouse", path_to_dll);
external(INT, "mouse_click", "mouse_click", path_to_dll);
external(INT, "mouse_click_dbl", "mouse_click_dbl", path_to_dll);
external(INT, "mouse_drag_left", "mouse_drag_left", path_to_dll);
external(INT, "mouse_drag_right", "mouse_drag_right", path_to_dll);
external(INT, "mouse_left", "mouse_left", path_to_dll);
external(INT, "mouse_left_dbl", "mouse_left_dbl", path_to_dll);
external(INT, "mouse_left_down", "mouse_left_down", path_to_dll);
external(INT, "mouse_left_up", "mouse_left_up", path_to_dll);
external(INT, "mouse_middle", "mouse_middle", path_to_dll);
external(INT, "mouse_middle_dbl", "mouse_middle_dbl", path_to_dll);
external(INT, "mouse_middle_down", "mouse_middle_down", path_to_dll);
external(INT, "mouse_middle_up", "mouse_middle_up", path_to_dll);
external(INT, "mouse_move", "mouse_move", path_to_dll);
external(INT, "mouse_right", "mouse_right", path_to_dll);
external(INT, "mouse_right_dbl", "mouse_right_dbl", path_to_dll);
external(INT, "mouse_right_down", "mouse_right_down", path_to_dll);
external(INT, "mouse_right_up", "mouse_right_up", path_to_dll);
external(INT, "mouse_wheel_down", "mouse_wheel_down", path_to_dll);
external(INT, "mouse_wheel_up", "mouse_wheel_up", path_to_dll);

// Параметры для клавиатуры
external(INT, "set_delay_key", "set_delay_key", path_to_dll);
external(INT, "set_random_delay_key", "set_random_delay_key", path_to_dll);
external(INT, "_key", "key", path_to_dll);
external(INT, "_key_down", "key_down", path_to_dll);
external(INT, "_key_up", "key_up", path_to_dll);
external(INT, "text", "text", path_to_dll);

int com = get_port(2341, 8037); // узнать в каком com порте находится ардуино, передаются VID и PID
if(com==0)
{
messagebox("Arduino с указанными VID и PID не найдено");
}

set_port(com); // установить порт, в него будут отправляться команды из длл

// Параметры для мыши
set_delay_mouse(100); // установить паузу между нажатием и отпусканием кнопок мыши
set_random_delay_mouse(20); // рандом между нажатием и отпускание кнопок мыши
set_delay_mousemove(1); // пауза между каждым шагом перемещением мыши, чем меньше тем быстрее
set_offset_mousemove(2); // шаг перемещения курсора, чем больше, тем быстрее перемещается курсор

// Параметры для клавиатуры
set_delay_key(100); // установить паузу между нажатием и отпусканием клавиш
set_random_delay_key(20); // установить рандом между нажатием и отпусканием клавиш


Модифицированные файлы для визуального редактора:
_Key_Arduino -(для просмотра ссылки Вам необходимо авторизоваться) _Mouse_Arduino -(для просмотра ссылки Вам необходимо авторизоваться)

Примеры для клавиатуры:
CODE:
text("Напечатать этот текст"); // ввести текст
_key(KEY_TAB); // нажать Tab
text("Print this text"); // ввести текст
_key(KEY_RETURN); // нажать Enter
_key('a'); // нажать клавишу a
_key('A'); // нажать SHift+a

pause(2000);
_key_down('z'); // зажать клавишу z
pause(3000); // ждать 3 секунды, клавиша z будет зажата
_key_up('z'); // отпустить клавишу z

_key_down(122); // можно и так, передав код нужной клавиши из таблицы ASCII
pause(3000);
_key_up(122);


Примеры для мыши:
CODE:
mouse_move(250, 300); // переместить курсор в нужные координаты
mouse_click(MOUSE_LEFT); // клик левой кнопкой мыши в текущих координатах курсора

pause(1000);
mouse_left(100, 500); // клик левой кнопкой мыши в указанных координатах

pause(1000);
mouse_drag_left(100, 200, 1000, 500); // зажать курсор в координатах 100, 200 и переместить в 1000, 500

pause(1000);
set_offset_mousemove(10); // изменить шаг перемещения курсора
mouse_right(40, 30); // клик правой кнопкой мыши в указанных координатах

(Добавление)
UPD. Вроде бы сделал.
Добавил файлы "_Mouse_Arduino" и "_Key_Arduino" в папки "templates" и "templates_web"
И добавил строчки:
 Цитата:
_Mouse_Arduino
_Key_Arduino

Во все файлы в папках "profile" и "profile_web" в раздел "SECTION "Эмуляция" 0"
(Добавление)
Только не нашел, как сделать так, чтобы при добавлении новых блоков вначале вставлялся текст с объявлением переменных.

(Отредактировано автором: 19 Июня, 2024 - 04:14:31)

 
 Top
Zireael
Отправлено: 19 Июня, 2024 - 11:27:42
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 4461
Дата рег-ции: Нояб. 2017  
Репутация: 585




 Цитата:
чтобы при добавлении новых блоков вначале вставлялся текст с объявлением переменных.

https://kibor-bot.com/forum/rds....50928#1622950928
Смотрите описание блоков шаблона. GLOBAL_SINGLE_CODE_TOP наверное нужен.
 
 Top
Kostick
Отправлено: 19 Июня, 2024 - 16:20:38
Post Id



Пользователь
Мастер


Покинул форум
Сообщений всего: 184
Дата рег-ции: Авг. 2020  
Репутация: 1




Спасибо. Совсем забыл про этот пост. Да это то, что нужно.
 
 Top
Kibor
Отправлено: 23 Июня, 2024 - 10:47:17
Post Id



Администратор
Эксперт


Покинул форум
Сообщений всего: 8217
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 357




 Kostick пишет:
Только не нашел, как сделать так, чтобы при добавлении новых блоков вначале вставлялся текст с объявлением переменных.


Смотрите как пример блока MessageBoxA (В секции Другое в самом низу)
Там показано как вызывать API и функции с dll

 Цитата:
[INTERFACE]
DIALOG, "MessageBox", 405, 111;
STATIC, "Заголовок", 8, 8, 100, 20;
EDIT, 116, 8, 276, 20, string Zag;
STATIC, "Текст", 8, 32, 100, 20;
EDIT, 116, 32, 276, 20, string Text;
BUTTON_OK, "Принять", 184, 60, 100, 20;
BUTTON_CANCEL, "Закрыть", 292, 60, 100, 20;
[END]

[APPEARANCE]
COLOR = 100, 100, 100;
SIZE_X = 18;
SIZE_Y =4;
[END]

[ASSOC_VAR]
N1 = NULL;
Text ="Это подключенная Api функция";
Zag = "Заголовок";
N2 = NULL;
[END]


[GLOBAL_SINGLE_CODE_TOP]
#define NULL 0x0
external(INT, "MessageBoxA", "MessageBoxA", "User32.dll");
[END]


[CALL]
(N1, Text, Zag, N2)
[END]
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0)
« Вопросы и решение проблем »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 




Powered by