Как сделать кликер в браузере
Давно думаю попробовать написать несколько материалов, как легко в браузере писать ботов и не только. Не кармы ради, а плюсиков для. Шутка с долей шутки.
Данный материал не является пособием по программированию. И данный код ни в коем случае не считать эталонным! Использовать его надо с умом в любых интересах в познавательных целях, не во зло.
Если материал окажется интересным, то продолжу.
Пока писал пост, гадал: "забанит, не забанит, забанит, не забанит ли меня администрация за такой пост?"
Глава 0. Немного обо всём этом
Немного вводной, так скажем основы основ. Особенности описанного далее материала в том, что ботов (он же UserScript, гуглится легко что это такое) можно писать прямо в любимом браузере для любимого браузера. Преимуществ в этом много, начиная с удобства разработки и заканчивая наименьшей заметностью бота при меньших усилиях. В своё время я для одной игры написал бота. Разработчики хвалились, что они отслеживают ботов и банят. Но забанить меня в течение пары месяцев у них не получилось. Только когда я потерял интерес (как раз где-то через месяц) я оставил специально "дыру" и только тогда они начали подозревать неладное, но аргументов на забанивание всё равно не нашли. Но боты выступают не только в виде читерства, но и например для разгадки простых капч. В другой игре постоянно, по поводу и без надо было вводить капчу, простую. Тогда я написал разгадывателя капчи с 99.5% (примерно) попаданием. Но зря, через некоторое время капча была убрана разработчиками.
По сути эти боты - это просто кликеры (автокликеры), хотя можно сделать и не кликера, а фонового, но это, если и буду описывать, то в самом конце цикла статей.
Также, для удобства работы рекомендую пока что ознакомиться, а в будущем обязательно поставить Greasemonkey или Tampermonkey. Есть ещё Scriptish, но он мне не понравился. А также можно использовать UserScripts "как есть" в Хроме, но это чуть менее удобно.
Тут и далее материал будет писаться на основе браузера Firefox, ибо там есть очень хороший плагин для разработчиков FireBug и я к нему привык. Но в других браузерах есть всё тоже самое, свои инструменты для разработчика, просто чуть по другому выглядит и называется. Чтобы продолжить их надо открыть, для этого надо нажать F12. Если у вас не открываются они, например в Сафари, то ищем в гугле "название_вашего_браузеран открыть инструменты разработчика".
Далее под Хромом будут подразумеваться все браузеры основанные на хромоподобном движке webkit/blink, это Опера, Яндекс и другие.
Все названия элементов меню и прочего я буду писать примерные, обобщенные, а вы уже ищите что-то похожее.
Скрины, если и будут, то могут быть из разных браузеров, там где это нагляднее показывается.
Данный материал не рассказывает о кроссбраузерности. В материале используются только современные достижения для современных браузеров.
Глава 1. Функция click() и querySelector
В данной главе мы научимся пользоваться консолью, научимся искать и изменять элементы, ну и кликать.
Начнем с авторизации на Пикабу. Все свои эксперименты с авторизацией я провожу в Инкогнито режиме на тестовом аккаунте, но это не принципиально.
И так мы открыли Инструменты разработчика и там находим Консоль. В ней мы будем тестировать наш JS код.
Авторизация происходит следующим образом: вводится "логин" и "пароль" и нажимается кнопка "войти". Первым делом нам надо ввести данные. Но надо знать куда ввести, в какой элемент на странице, то есть найти элементы под названием input. Конечно же не любые, а именно для логина и пароля. Кто пользуется Firebug или Хром необходимо будет поставить курсор на этот input, нажать правую мышь и выбрать пункт "инспектировать элемент". В консоли откроется наш элемент. Если у вас нет подобного пункта, то в консоли должна быть кнопочка придется искать его по всему документу самим.
(на картинке ниже слева Хром, правее Firebug)
После того как выбрали его, необходимо найти пункт типа "скопировать селектор" или CSS. Вроде любой браузер должен копировать самый короткий селектор. Кроме Firebug, он копирует самый длинный, полный селектор.
Более подробно с этим можно ознакомиться по ссылке выше или в учебнике по CSS, это основы CSS.
Получается вот такие строки:
document.querySelector('button.b-button:nth-child(2)');
Выполняя каждую строку отдельно, в консоли мы увидим наши элементы.
Так просто не с каждым атрибутом, но сейчас не об этом.
Обязательно брать строки в кавычки всегда!
document.querySelector('button.b-button:nth-child(2)').click();
Выполняем эту строчку и у нас произойдёт отправка. Если выполнить все три строчки разом, то произойдёт сразу, в порядке переданных строк, заполнение и вход.
На этом авторизация (вход) готов, всего три строчки кода. В следующей статье на примере кликера будет цикл, чтобы заинтересовать и уже видеть результат.
"Бонусом": тоже самое можно сделать с выставлением плюса или минуса комментарию. Выбираем наш элемент и кликаем:
На этом всё. Хотел написать кратко, думал уложусь в несколько абзацев, а получилось как всегда, Остапа было уже не остановить.
Эпилог поста
В планах примерно такой порядок материал:
2. Цикл (какой-то один или два, а не все).
3. Условия (if/else) и Интервалы (setTimeout/setInterval)
4. Массив, хранилища (наверное только localStorage) и прочее что понадобится. например JSON.
Планы неточные, могут меняться, в частности по пожеланиям в комментариях.
Упростить и ускорить выполнение рутинной работы в браузере призвано расширение с открытым исходным кодом Automa. Оно доступно для веб-обозревателей на базе Chromium и позволяет создавать и гибко настраивать автоматизированные сценарии.
Содержание
Как оно работает
На выбор доступно множество действий: открытие и закрытие вкладки, выполнение JS-кода, создание скриншотов, пролистывание страницы, клик на интерактивные элементы, заполнение полей, получение текста. Есть даже условия, которые зависят от состояния или наличия объекта на веб-сайте. Каждая команда представлена в виде блоков, которые соединяется друг с другом посредством протягивания «нити». В итоге получается выполняющаяся по очереди цепочка действий.
Главная страница расширения представлена четырьмя основными вкладками: недавние действия, список сценариев, именуемый Workflows, коллекции автоматизаций, история запусков. Для создания собственного сценария достаточно перейти в раздел Workflows и нажать кнопку New Workflow. После этого появится плитка, кликом по которой открывается окно редактирования.
Все условия и действия представлены в виде настраиваемых блоков. Они перетаскиваются со специальной панели мышью и редактируются по нажатию. Прелесть расширения именно в относительной простоте создания сценариев.
В режиме редактирования слева появляется панель со свойствами объекта — именно там настраивается веб-адрес страницы, которая будет открыта, и элементы, с которыми будет взаимодействие. Определить идентификатор элементов на любом сайте можно, кликнув на расширение в верхней панели браузера, и затем нажав на иконку с прицелом. Далее достаточно выбрать мышью нужное поле или кнопку и скопировать идентификатор из специального поля снизу.
Сценарии использования
Вариантов применения Automa много — всё зависит от желания и задач. Можно использовать расширение для заполнения форм, получения данных в виде файла, автонажатия кнопок по расписанию. В качестве примера я нашёл две простые, но полезные для себя автоматизации.
Поиск по почте
Для тех случаев, когда нужно проверять электронные письма от конкретного адресата, можно создать специальный сценарий. Он открывает страницу почты, кликает на поле поиска, вписывает нужного адресата и нажимает на кнопку поиска. Собственно, именно такие блоки действий и надо расставить при создании. Наибольшую сложность при работе с Gmail вызвало определение правильного идентификатора для кнопки поиска.
Экспорт данных из таблиц
С помощью расширения можно получать любые данные с сайтов и сохранять их в форматах JSON, CSV и в виде обычного файла. Самый показательный пример — экспорт таблицы с сайта NVIDIA. В ней собрано более 200 игр, поддерживающих DLSS и RTX. Следить за обновлениями таблицы вручную сложно, зато возможно каждый месяц запускать сценарий и сравнивать старый и новый файлы.
К сожалению, все данные сохраняются в не самой удобной структуре, однако этого достаточно для отслеживания новых игр и приложений в таблице.
Подводные камни
Automa — очень мощный инструмент, однако он неидеален. Есть целый ряд неприятных ограничений.
Рядовым пользователям будет непросто разобраться. Утилита выглядит довольно просто, она интуитивна, но у неопытных пользователей могут быть сложности с поиском нужных элементов на страницах и построением логики сценариев. Есть документация на английском, но она описывает только часть функций.
Не хватает вставки в формы из буфера обмена. В некоторых сценариях лично мне не хватало возможности вставлять в формы содержимое из буфера обмена, неважно, автоматически или вручную. Все сценарии полностью статичные, и заданные параметры нельзя менять во время запуска.
Работает не очень быстро. Расширение избавляет юзера от нескольких кликов и ввода текста, однако работает не моментально. Между выполнениями заданных действий присутствует заметная задержка.
Всем привет, продолжаем изучать автоматизацию на основе программируемого автокликера.
Начнём с подпрограмм, что это и зачем они нужны.
Подпрограмма это список действий, который будет часто повторяться в вашей программе, но не обязательно подряд. Например, мы используем такие действия (пока напишем в псевдокоде):
при этом подразумевается, что вам нужно сделать так с множеством страниц, например 20 штук.
Если бы нам нужно было поставить лайки только на одной странице, мы бы обернули действия в цикл и нам бы этого хватило.
Но что если нужно открывать другие страницы, а может, между делом совершать совсем другие действия (публиковать пост, писать комментарии и т.д.) Тогда имеет смысл выделить наш участок кода в отдельную функцию.
SUB(имяФункции) - определяет начало функции, общепринято все функции выносить на самый верх программы, либо выносить в отдельный файл, но это необязательно и больше для красоты, расскажу об этом в одном из следующих постов.
Имя функции определяете вы сами, старайтесь задать такое, чтобы вам было понятно, что делает эта функция, например ставит лайки в вк - VKLikes, ищет в эксель нужную строку - ExcelFindString и т.д.
END_SUB - соответственно обозначает конец вашей подпрограммы(функции).
Теперь вы можете в любой момент вызвать вашу функцию таким образом - имяФункции()
Почему это удобно? Представим, что вам потребовалось ставить лайк не на каждый пост, а на каждый второй, теперь вам придется проходить по всей вашей программе, искать каждый момент где вы ставите лайк и менять там, добавлять ещё одну прокрутку, если же это у вас выведено в отдельную функцию, вам достаточно поменять это один раз в одном месте. Удобно? а то! Ну и отдельный плюс - сокращение вашего кода. Совсем недавно я изменил свой скрипт, изначально я писал его просто как список действий, без подпрограмм, это заняло у меня 2200 строк, после *рефакторинга скрипт стал занимать 700.
*рефакторинг - процесс улучшения кода без внесения новых возможностей.
Также важной возможностью является передача в вашу функцию какого-либо параметра, который менял бы исполнение этой функции в зависимости от значения переменной.
Вот участок моей реальной программы:
Да, ваш скрипт может целиком выглядеть как вызов различных функций, это нормально и даже очень хорошо. Я передаю в функцию TWPersonalPost переменную, которая имеет значение от 1 до 10, в зависимости от этого, функция открывает тот лист Excel с которого мне нужно скопировать информацию:
Тогда в названии вашей программы нужно указать переменную, например SUB(VKlikes, $name)
и внутри подпрограммы с помощью команд IF или SWITCH сделать различные действия в зависимости от значения переменной.
Анализ экрана
Анализ экрана позволяет добавить в вашу программу ту самую вариативность исполнения, программа будет менять исполнение действий в зависимости от происходящего на экране (вот мы и добрались до создания собственного искусственного интеллекта. ну почти)
для этого clickermann представляет нам множество функций, главной из которой является GETSCREEN.
GETSCREEN - делает снимок экрана и помещает его в буфер для анализа, буквально это print screen. Мы можем сделать как снимок всего экрана, так и снимок определенной области, зачем? Ну это немного ускоряет выполнение скрипта, ведь анализировать часть проще чем весь экран. Во вторых на всем экране могут быть похожие элементы или пиксели такого же цвета, которые помешают нам. Для этого необходимо в скобочках указать координаты двух углов, верхнего правого и нижнего левого. Например так GETSCREEN(649, 473, 883, 631).
Тогда в буфер сохранится выделенный красным криво-прямоугольником участок. Ну например если мы хотим нажать одну из этих зеленых кнопок, и мы знаем что они всегда находятся в этой области.
Хорошо, мы сохранили изображение, как его проанализировать?
IF_PIXEL_IN - ищет пиксель заданного цвета в снимке, и возвращает его координаты. Обязательно нужно указать координаты (если вы сделали снимок области, указываем такие же координаты, что и для GETSCREEN) и цвет искомого пикселя. В коде это выглядит так:
$_return1 \ $_return2 - переменные созданные самой программой, в них лежат координаты (по Х и по Y) для первого найденного пикселя такого цвета в этом участке изображения. Мы можем проделать любые действия с ними, например нажать левой\правой кнопкой мыши, остановить\продолжить исполнение программы и так далее. Для этого нужно поставить эти действия между IF_PIXEL_IN и END_IF которое обозначает конец условия, также как в команде IF.
Откуда мы узнали какой цвет пикселя нам нужно искать? Для этого достаточно навести на нужное место и посмотреть в окно определения цвета clickermann.
Оранжевым изобразил указатель мыши в момент создания этого снимка.
Но нужно быть осторожным, многие сайты меняют цвета кнопок при наведении на них, так и здесь на пикабу, кнопка "картинка" не меняет цвет при наведении, а вот видео и текст меняют и при наведении на них мы увидим цвет:
Как видно, при наведении кнопка побледнела, в отличии от "картинка", кстати @SupportTech, а не баг ли это?))
Получается, чтобы узнать цвет пикселя нам нужно навести на кнопку, но при наведении, цвет меняется, в своё время я немало посидел, над причиной, почему моя программа не находит цвет, когда вот он туточки.
Для этого мы можем пойти простым путём, делаем скриншот экрана одним из следующих способов, в зависимости от вашего просветления:
Ну разве что последний способ не очень подходит, после чего открываем картинку и уже на ней наводим на кнопку и смотрим её цвет:
С помощью этой функции, также можно проверять, открыто ли нужное окно у вас, или ваша программа начинает творить фигню. Например, мы знаем, что Excel выглядит так:
наверху у него всегда цвет пикселя
Теперь мы можем создать проверку, например мы работаем в Excel и браузере, соответственно в браузере сверху нет цвета пикселя Excel, тогда если мы находим такой пиксель - выводим оповещение:
SOUND("имя_файла.wav") - воспроизводит звуковой файл в ваши динамики, давая вам знать о проблеме или например успешном окончании программы. Только .wav файлы. Файл должен находиться в папке с программой clickerman.
Теперь программа позовёт вас, если что-то пойдёт не так и будет ждать. Как вариант можно в действиях указать нажатие левой кнопкой мыши по значку Excel, для его раскрытия и потом ещё одну такую же проверку, в 90% случаев именно из-за лишнего закрытия-открытия окна что-то идёт не так.
Мы разобрали случай, когда цвет пикселя не повторяется на экране, то есть у нас есть только одна кнопка "текст" например, но что, если у нас множество кнопок одного цвета, и цена ошибки слишком высока, как то так:
Тогда следует использовать анализ экрана по совпадению картинки, а поможет нам функция
IF_PICTURE_IN - ищет образец картинки в сохраненном участке изображения. Только файлы bmp формата, пример:
Чтобы повысить вероятность нахождения, можно указать % точности совпадения. Например так:
IF_PICTURE_IN (20,20, 300, 300, "somefile.bmp", 0, 90) тогда, 90% совпадения будет достаточно для запуска действий внутри IF.
Как получить картинку формата .bmp?
Есть два способа, самый точный это командой SCREENSHOTEX - сохраняет участок экрана как отдельный файл в папке с программой.
и второй способ, включаем режим лупы
Теперь смотрим на окно лупы в clickermann и наводим на нужное место, нажимаем ALT + G
и скриншот указанный на экране лупы будет сохранен в папке программы внутри папки screens.
Теперь это изображение мы можем использовать для поиска его при исполнении скрипта.
Мы рассмотрели две основные функции для анализа экрана, по пикселю и по изображению. Вы можете ознакомиться с остальными функциями в справке программы, возможно найдете функцию которая больше подходит вам для исполнения вашего скрипта, но эти две на 95% покрывают все потребности.
Программы и Браузеры
216 постов 3.9K подписчиков
Правила сообщества
-Ставьте наши теги, если Ваш пост о программе, приложении или браузере(в том числе о расширениях, дополнениях в нему), его недоработке, баге, обновлении. Это может быть пост - обзор или отзыв.
-При возникновении споров относитесь с уважением друг к другу, а так же приводите аргументы.
Разрешено всё, что не запрещено правилами Пикабу.
Не знаю, как применить написание таких скриптов в моей работе, но огромный плюс за ценную инфу и хорошее изложение!
А подскажите, какие функции нужны что бы сделать так:
Кликер работает, доходит до поля где нужно вручную ввести текст с бумажки, ждёт ввода, после ввода продолжает дальше.
Это можно как-то на горячую клавишу вывести? Например, ввели текст, нажали "энтер" и он пошёл дальше.
Делать проверку через анализ экрана сильно замороченно, я уверен, что это можно как то проще сделать.
где можно увидеть наглядные примеры с использованием этого софта? Программы и тд. Группа в вк чет мертвая совсем у них
Это очень круто
В пятницу познала дзен с битриксом, всего-то 200 правил для купонов с 1 купоном создать.
В субботу поняла, что можно использовать ваш совет про кликер, вручную вставляя в буфер обмена данные
Сейчас увидела ваш пост и думаю - осилить и сделать, чтобы он вообще сам брал «на строчку ниже».
Да будет завтра битва! ;)
Реализовал кучу функций аля
LCLICK(512,331) //клик по адресу
Понял, что уже реализованы горячие клавиши в разделе шаблонов.
Вроде инженерное образование, вроде умею читать. Прочёл все три поста несколько раз, но так и не смог написать ничего работающего(
Я один такой тупой?
Несмотря на то что продолжение не получило такого отклика как начало, ты все-равно молодец.
Хотелось узнать как в Индии относятся к фильму ПиКей в плане его антирелигиозности
Мне больше BurundukPro подходит, есть два режима, для тех кто не хочет морочиться с программированием и для программистов.
Ответ на пост «Как автоматизировать однотипную, монотонную работу бесплатно и без навыков программирования»
Эх, сколько раз меня выручала автоматизация! Вспомнил тут пару случаев. (если что то использую скрипты в AutoHotkey (AHK)).
Первый был когда еще в органах работал. Начальство придумало - а давайте все фабулы дел вносить в базу данных. При этом база данных не воспринимала копировать-вставить (что тупо), но база не публичная и вход через матюки и старый интернет эксплорер, так что работали как есть. Сидишь, придумываешь как это сократить и потом впечатываешь. Особенно сильно негодовали мы с другом, так как у нас были не перспективные дела (в отделе на каждого следака было по 10 дел в месяц, а у нас с ним напару под сотню, именно чтобы разгрузить остальных). И нам печатать было больнее всего. И тут я вспомнил про АНК и что он умеет печатать из буфера обмена - т.е. для меня это было копировать-вставить, а база воспринимала это словно я напечатал. Экономия во времени была колоссальная.
Да и мелкие задачи, если их можно автоматизировать, тоже переносятся в АНК. Из того что помню:
- тоже из учётки. Перешла к нам в отдел женщина, которая в работе разбиралась но с пк была на Вы. Очень мне не нравилось что она постоянно просила меня подойти и поставить апостроф, т.к. у неё не получалось (много раз в день, Карл!). На очередную просьбу я просто сделал ей скрипт который этот апостроф ставит по нажатию на Pause, а на клавиатуру напечатал на самоклейке этот апостроф и на эту кнопку наклеил.
- в онлайн игре играл в 9 окон (ходил на рейд в соло в л2, управляя всем из одного) - это не продвинутый бот и пришлось помучаться но в итогесмог отправлять команды в свёрнутые окна не открывая из, было удобно; в другой игре был тупой крафт, где тоже нужно было прокликивать одни и те же места, тоже скрипт сработал.
- часто работаю в премьер про (программа видеомонтажа) и там некоторые удобные функции не реализованны, увы. Но они прекрасно допиливаются скриптом. Те же накидывания эффектов. Приходится переключаться на отдельную панель, имкать там эффект и перетаскивать на слой.Но те кто работал в АЕ с Fx console меня поймет, это можно сделать удобнее - скрипт сам делает все эти действия, еще и за секунду. Или еще пример. Часто приходится повышать уровень громкости, и это однотипное движение, особенно если видеофрагментов под сотню. Все вместе тоже нельзя - автоматика выровняет по самому громкому кусочку, что попортит все. Выручает скрипт. И еще полезность - горячие клавиши нельзя повесить на правую кнопку мыши, но иногда хочется - опять скрипт. Сделал перемещение курсора себе на пкм. Он еще и щупает что лежит под курсором и если там кусочек видео, то выпадает меню (как обычно), а если пустота то срабатывает горячая клавиша.
- надо было отстабилизировать много фрагметов видео. Алгоритм следющий - выделяем фрагмент, набрасываем на него стабилизатор, жмем "анализ", ждём пока пройдет анализ (каждый раз разное время, зависит от длинны кусочка видео), и переходим к следующему кусочку. И так пару сотен кусков. С коллегой решили что лучше потратить время на настройку скрипта и оставить компьютер на ночь чем сидеть руками делать. И помогло что скриптом можно определять открыто ли окно анализа, на что мы и ориентировались.
Если вы подумали, что для того чтобы сделать всё тут описанное нужны навыки програмирования, то вы ошибаетесь. Большая часть примеров была сделана путем копирования скрипров которые записаны в русской документации по программе (прямо напрячься пришлоь только в скрипте для игры). Да и на самом деле сейчас есть много других программ, в которых даже не нужно ничего писать текстом, записывай действия и все (как в оригинальном посте).
Поэтому помните, что автоматизация это бро. Иногда стоит потратить время на обдумывание однообразной задачи и попытки её автоматизировать.
Умение быстро кликать просто необходимо для геймеров. Нужно иметь хорошую выносливость и ловкость пальцев, чтобы быстро щелкать на протяжении всей игры. И , честно говоря, иногда это очень утомляет. Но есть способ упростить себе игру - Автокликер.
Автокликер - это небольшая программка, имитирующая щелчки мыши в играх, чтобы вы могли думать о прицеливании и прохождении уровней вместо того, чтобы страдать, бесконечно нажимая кнопку мыши, пока она не сломается.
На этой странице список из 8 лучших автокликеров, найденных на просторах интернета. Не относитесь к этому списку как к рейтингу, у каждой программы есть плюсы и минусы. В начале пойдут самые простые в использовании кликеры.
1. Free Mouse Clicker
Если вам нужен очень простой автокликер, это как раз он. Free Mouse Clicker - это маленькая программка в ожно окно без меню параметров, экспорта, импорта, записи и других «излишеств».
Настроек минимум: интервал, кнопка мыши, действие (одинарный или двойной щелчок), горячие клавиши начала и остановки. Всё.
- Простейший интерфейс
- Можно настроить до 1000 КПС.
- Нет лишних функций.
2. OP Auto Clicker
Op Auto Clicker похож на предыдущий, но имеет чуть больше настроек.
В нем можно выбрать место, где будут происходить клики: в текущем положении курсора или в заранее заданных координатах. Также можно задать конечное количество кликов.
3. Free Auto Clicker
Free Auto Clicker позволяет задавать точное место на экране, где нужно имитировать щелчки мыши. Можно даже задать последовательность из нескольких координат.
Ещё можно установить нужный интервал и количество кликов, после которого нужно остановиться.
Можно кликать каждой кнопкой мыши.
- Лёгок в использовании.
- Без регистрации.
- Бесплатный, бывают обновления.
- Работает и в браузере.
- Нельзя назначить свои горячие клавиши.
- Из-за популярности, некоторые игры могут определять его и банить.
- Некоторые антивирусы (Dr.Web, Comodo) считают его опасным.
4. GS Auto Clicker
GS Auto Clicker от Golden Soft - не самый простой автокликер, хотя на первый взгляд может показаться обратное.
Настроек не так много, и они все спрятаны по разным окошкам, что не очень удобно. Зато в GS Auto Clicker есть возможность записи. Программа запишет последовательность ваших кликов и их положение. После этого можно будет запускать записанную последовательность.
- Прост для новичков
- Бесплатный
- Антивирусы не ругаются
- Может подвиснуть иногда, если перегрузить его кликами
- Мало настроек, и они все спрятаны.
5. Auto Click Typer
Auto Click Typer - это бесплатный автокликер с возможностью создания скрипта-последовательности. Важно, что кроме кликов тут можно добавлять в сценарий кнопки клавиатуры.
Для каждого действия в сценарии можно настраивать задержку и количество нажатий как в точном количестве, так и в случайном из диапазона значений.
- Большие возможности без навыков программирования.
- Легко создавать, изменять и удалять скрипты.
- Работает без интернета.
- Полностью бесплатный.
- Некоторые антивирусы помечают как вредоносное ПО.
- В установщике есть рекламный софт, но можно отказаться от него.
6. Auto Mouse Click
Auto Mouse Click может имитировать работу мыши, несколько кнопок клавиатуры и несколько системных действий. Всё это можно комбинировать в различной последовательности.
Порядок действий довольно простой: выберите координаты, в которых произойдет действие; выберите тип действия из списка; затем выберите задержку; и нажмите кнопку «Add».
Можно создать последовательность из разных или однинаковых действий. После завершения создания скрипта нажмите «Start», чтобы запустить скрипт. Вот и все.
Можно назначить отдельные горячие клавиши для старта/остановки скрипта, для взятия координат курсора и для добавления действия.
- Просто настраивать координаты
- Поддерживает правую и левую кнопки
- Можно делать экспорт/импорт скриптов
- Можно назначать горячие клавиши
- По окончанию бесплатного периода нужно платить.
7. Perfect Automation
Perfect Automation - это наиболее продвинутый в плане настроек автокликер, с такими функциями как запись мыши и клавиатуры, редактор сценариев, планировщик и т. д. Если сильно захотеть, кроме игр его можно использовать для автоматизации рабочих процессов на компьютере.
Поскольку в этом автокликере там много функций, сначала в нем сложно разобраться.
- Бесплатный
- Много функций
- Гибкие настройки
8. MAC AUTO CLICKER 1.1
Как следует из названия, MAC Auto Clicker - это автокликер для компьютеров на Mac OS.
Этот автокликер для Mac абсолютно бесплатен, но и безобразно прост. Можно назначать автоматическую остановку по времени или количеству кликов. Однако, нет функции горячих клавиш, что делает его очень неудобным.
Какой автокликер лучший?
Из простых лучшим будет OP Auto Clicker. Если вам нужны более сложные последовательности щелчков, качайте Auto Click Typer. Ну а если вам нужен продвинутый инструмент с возможностью записи, выбирайте Perfect Automation.
Большинство тех, кто начинает изучать программирование, начали это из-за желания сделать свою игру. Нууу… я не исключение, но судьба меня занесла в веб разработку.
Ладно, давай ближе к делу. Создать кликер при помощи pixi.js.
Задача тривиальная, но т.к. в разработке игр я мало разбираюсь, то пришлось изучить чуть лучше эту тему.
Почему Js? Почему pixi.js? Почему вообще кликер?!
— Я решил показать лишь свою реализацию задачи. Не хочу учить кого-то какими технологиями пользоваться, как писать код. Просто мое решение задачи.
Перед началом написания кода:
Во-вторых весь код я вставлю картинкой, но в конце статьи будет ссылка на github с исходниками проекта, чтобы вы могли сами потыкать.
В коде я оставил поясняющие комментарии для вас, надеюсь понятно будет.
Для начала мы объявляем алиасы и инициализируем само приложение.
Создаем нужные переменные под все элементы игры и загружаем картинки.
Для картинок я выбрал формат атласа.
Если не знаком с атласом, то это json формат для загрузки большого количества картинок за один раз.
Вот так это выглядит в коде
Я создавал это с помощью TexturePacker. Делать такое вручную, на мой взгляд, не целесообразно.
С помощью функции setup я разбираю атлас, задаю расположение элементов, стили для текста, добавляю начальное значение очков.
Это стандартные действия для всего(расположение). Самое интересное это три свойства у target. interactive, buttonMode и on(«pointerdown», handlerClick). Первые два нужны для взаимодействия клика и элемента target. on — это обычный обработчик событий.
Теперь нам нужно написать все необходимые функции для работы игры.
Игровой цикл — gameLoop
Состояние игры — play
Обработка клика — handlerClick
gameLoop просто вызывает функцию state.
В play я проверяю значение timer(он равен 10) и разрешаю клик по кнопке, так же обновляю размеры target.
handlerClick идет проверка на возможность клика и производится клик.
Из недостатка, который я вижу, это изменение размеров у target элемента. Он изменяется с 0.9 до 1. Сразу. Без анимации. Но когда ты играешь это не заметить, оставил как есть.
Как и обещал, ниже ссылка на github проект.
Если вы не сталкивались с pixi, но хотите развернуть игру у себя, то вам потребуется сервер. Я использовал openserver. Это нужно для ajax запросов.
Читайте также: