Содержание
- На чём сделать кликер: Scratch, движок или готовая программа
- Как сделать кликер в Scratch: инструкция из 5 шагов
- Пример игры «Монетный Кликер»: как сделать кликер интересным дольше минуты
- Пять ошибок, из-за которых кликер в Scratch считает неправильно
- Как сделать кликер в Unity и Roblox Studio: рабочий минимум
- Автокликер: почему это не кликер-игра
- Как сохранить кликер и показать его друзьям
- Частые вопросы про кликер
- Что делать дальше
Как создать игру-кликер на Scratch за 5 простых шагов
Черновик готовит редакция с помощью ИИ. За стандарт издания отвечает главный редактор — Валерий Курземнек.
Кликер — игра, где счёт растёт от нажатий по картинке. Как сделать кликер быстрее всего: в Scratch, прямо в браузере, за один вечер — нужны один спрайт, одна переменная и блок «когда спрайт нажат». На движке Unity, Godot или в Roblox Studio та же механика требует кода и установленной программы.
Коротко:
- Минимальный кликер в Scratch — это три блока: «когда спрайт нажат», «изменить [Счёт] на 1» и переменная «Счёт».
- Категория с переменными в русском Scratch 3.0 называется «Переменные». Раздел «Данные» остался в Scratch 2.0 — инструкции, которые отправляют вас туда, устарели.
- Устанавливать ничего не нужно: редактор работает в браузере, приложение Scratch требуется только для работы без интернета.
- Улучшения («купить +1 к силе клика») делаются второй переменной и блоком «если … то» — без них кликер надоедает за минуту.
- Если вы искали программу, которая кликает мышкой сама, вам нужен автокликер — это не игра, разбор ниже.
- Для Unity и Roblox Studio ниже даны рабочие минимумы с кодом: кнопка на Canvas со счётчиком на C# и деталь с ClickDetector на Luau.
Материал обновлён в августе 2026 года; названия блоков сверены с официальной русской локализацией редактора Scratch 3.0.
На чём сделать кликер: Scratch, движок или готовая программа
Запрос «как сделать кликер» закрывают пять разных инструментов, и выбор зависит от того, где вы хотите показать результат. В выдаче Яндекса по этому запросу на 23 августа 2026 года из десяти результатов четыре ведут на Unity (Rutube, YouTube, clubpixel, DTF), два — на Scratch (Хабр, iXBT), по одному — на Godot (Steam Community), Roblox Studio (VK Видео) и Flutter (tproger); десятая позиция — эта страница. Flutter в таблице ниже не разбираем: это фреймворк мобильных приложений, а игру-кликер на нём собирают редко. Остальные четыре инструмента сравниваем.
| Инструмент | Что установить | На чём пишется реакция на клик | Где играют другие |
|---|---|---|---|
| Scratch | Ничего, работает в браузере | Блок «когда спрайт нажат» | Ссылка на проект на сайте Scratch |
| Roblox Studio | Roblox Studio на ПК | Объект ClickDetector и событие MouseClick на языке Luau | Внутри Roblox |
| Unity | Unity Hub и редактор Unity | Компонент Button и событие On Click на C# | Сборка для ПК, веба или телефона |
| Godot | Godot Engine на ПК | Сигнал pressed у кнопки на GDScript | Сборка для ПК или веба |
Вывод раздела: маршрут выбирается по тому, где игра должна оказаться. Нужен результат за вечер и без установки — Scratch, инструкция из пяти шагов сразу ниже. Нужно, чтобы играли друзья внутри Roblox, — Roblox Studio. Нужна сборка для ПК, веба или телефона — Unity. Рабочий минимум с кодом для Unity и Roblox Studio идёт отдельным разделом после Scratch.
Как сделать кликер в Scratch: инструкция из 5 шагов

Дальше — рабочая последовательность для Scratch 3.0 на русском языке. Названия кнопок и блоков даны так, как они написаны в редакторе: если у вас включён английский, переключите язык значком глобуса в верхней панели.
Шаг 1. Подготовка среды и создание нового проекта
Откройте сайт Scratch и нажмите «Создать» в верхнем меню — откроется редактор проектов. Аккаунт нужен для сохранения и ссылки на проект: без входа игра живёт только во вкладке браузера. По официальной странице загрузки Scratch, приложение для работы без интернета выпущено под Windows 10 и новее, macOS 10.13 и новее, ChromeOS и Android 6.0; на телефоне Android оно не работает, только на планшете. Если дома есть только смартфон, посмотрите разбор как сделать из телефона компьютер — часть способов даёт полноценный браузер с мышкой.
Новый проект открывается со спрайтом кота. Он вам не нужен: щёлкните по нему правой кнопкой мыши в списке спрайтов справа внизу и выберите «удалить».
Шаг 2. Настройка сцены и добавление спрайтов
Наведите курсор на круглую кнопку с котом в правом нижнем углу и выберите «Выбрать спрайт» — откроется библиотека. Для кликера подойдёт любой заметный объект: монета, кнопка, персонаж. Поставьте спрайт в центр сцены, перетащив его мышкой.
Фон добавляется соседней кнопкой в правом нижнем углу: «Выбрать фон». Он ни на что не влияет механически, но без фона игра выглядит незаконченной.
Размер спрайта задаётся полем «Размер» над списком спрайтов. Для кликера ставьте 150–200: чем крупнее цель, тем проще по ней попадать, особенно на планшете.
Мини-вывод: на этом шаге у вас есть сцена, один крупный спрайт по центру и фон. Кода пока нет — игра не реагирует ни на что.
Шаг 3. Программирование спрайта: счёт растёт от клика

Выберите спрайт монеты и перейдите в категорию «Переменные» в палитре блоков слева. Нажмите «Создать переменную», назовите её Счёт и оставьте вариант «Для всех спрайтов» — иначе кнопка улучшения из шага 4 не увидит эту переменную.
Сразу создайте вторую переменную — Сила клика. Она хранит, сколько очков даёт одно нажатие. Без неё улучшения некуда встраивать.
Теперь сам скрипт. В категории «События» найдите блок «когда спрайт нажат» и перетащите его на рабочую область. Это точное название блока в русском Scratch 3.0; формулировка «когда этот спрайт кликнут» — из старых переводов. Под него прицепите из «Переменных» блок «изменить [Счёт] на 1» и подставьте вместо единицы овальную переменную Сила клика.
Стартовые значения задаются отдельным скриптом: блок «когда [зелёный флаг] нажат» из «Событий», под ним два блока «задать [Счёт] значение 0» и «задать [Сила клика] значение 1». Без него счёт не обнулится при новом запуске.
Отклик на нажатие делает игру приятнее. Добавьте в скрипт клика три блока: «изменить размер на 10 %» из категории «Внешний вид», «ждать 0.05 секунд» из категории «Управление» и снова из «Внешнего вида» — «установить размер 100 %». Оба блока размера лежат во «Внешнем виде»: в «Управлении» из этой тройки только «ждать». Монета будет дёргаться под пальцем.
Звук берётся во вкладке «Звуки» кнопкой «Выбрать звук», а в скрипт ставится блок «включить звук [Pop]» из категории «Звук». Блока с названием «воспроизвести звук» в редакторе нет — есть «включить звук» и «играть звук до конца»; второй тормозит скрипт до конца дорожки и для кликера не подходит.
Мини-вывод: после этого шага игра уже играется. Нажмите зелёный флаг, кликните по монете — счёт на сцене растёт.
Шаг 4. Добавление дополнительных функций: покупка улучшений

Улучшение — это второй спрайт, по которому тоже кликают, но он не даёт очки, а меняет правила. Нарисуйте кнопку инструментом «Нарисовать» в меню добавления спрайта, подпишите её текстом «Улучшить за 10».
Скрипт кнопки собирается из четырёх блоков:
- «когда спрайт нажат» — категория «События»;
- «если <Счёт > 9>, то» — блок «если … то» из «Управления», внутрь условия ставится оператор «>» из «Операторов», слева переменная Счёт, справа число 9;
- «изменить [Счёт] на -10» — списываем цену;
- «изменить [Сила клика] на 1» — каждый следующий клик даёт на очко больше.
Почему в условии стоит 9, а не 10: блока «больше или равно» в Scratch нет, есть только «>». Для целых чисел «Счёт больше 9» означает то же самое, что «Счёт не меньше 10».
Цена улучшения здесь зафиксирована: одно и то же число 10 стоит и в условии, и в списании. В следующем разделе цена начнёт расти, и число 10 придётся заменить переменной в обоих местах: если поменять только условие, улучшения станут бесплатными.
Мини-вывод: игра получила цикл «кликай — копи — усилься». Это и есть то, ради чего в кликеры играют дольше тридцати секунд.
Шаг 5. Тестирование и отладка
Проверяйте по списку:
- Нажали зелёный флаг — счёт стал нулём, сила клика единицей.
- Один клик по монете добавляет ровно столько очков, сколько показывает «Сила клика».
- Кнопка улучшения не срабатывает, пока очков меньше цены улучшения.
- После покупки счёт уменьшился ровно на цену, а не ушёл в минус.
- Игра ведёт себя одинаково в полноэкранном режиме и в обычном.
Показывать переменные на сцене удобно на время отладки: галочки рядом с ними в категории «Переменные» включают табло. Когда игра готова, лишние переменные можно спрятать блоком «скрыть переменную».
Мини-вывод: кликер из пяти шагов — это два спрайта, две переменные и четыре коротких скрипта. Всё остальное в этом жанре надстраивается поверх.
Пример игры «Монетный Кликер»: как сделать кликер интересным дольше минуты
Разница между заготовкой и игрой — в цене улучшений. Если улучшение всегда стоит 10 очков, игрок покупает их подряд и теряет интерес. Работает правило: каждое следующее улучшение дороже предыдущего в полтора раза, а цена округляется вниз.
Одним блоком это не собирается: цена должна стать переменной, и поменять придётся четыре места. Создайте третью переменную — Цена — так же, как «Счёт», с вариантом «Для всех спрайтов».
- Старт. В скрипт «когда [зелёный флаг] нажат» добавьте третью строку — «задать [Цена] значение 10». Без неё переменная стартует с нуля, условие оказывается верным при любом счёте, и первое улучшение покупается бесплатно с первого клика.
- Условие. Вместо числа 9 поставьте в правое окошко блока «>» оператор вычитания из «Операторов»: получится «если <Счёт > (Цена — 1)>, то». Для целых чисел это то же самое, что «Счёт не меньше Цены».
- Списание. Блок «изменить [Счёт] на -10» больше не годится: цена растёт, а -10 остаётся. Замените число на оператор вычитания — «изменить [Счёт] на (0 — Цена)». Блок «изменить … на» умеет только прибавлять, поэтому списание задаётся отрицательным значением.
- Пересчёт. Последним блоком внутри условия — «задать [Цена] значение <[целое меньшее] от (Цена * 1.5)>». Блок округления в «Операторах» выглядит как «[ ] от ( )», нужный пункт в выпадающем списке — «целое меньшее». Порядок обязателен: сначала списание по текущей цене, потом пересчёт.
Скрипт кнопки улучшения целиком, сверху вниз: «когда спрайт нажат» → «если <Счёт > (Цена — 1)>, то» → внутри условия «изменить [Счёт] на (0 — Цена)» → «изменить [Сила клика] на 1» → «задать [Цена] значение <[целое меньшее] от (Цена * 1.5)>».
Подпись «Улучшить за 10» после первой же покупки перестанет быть правдой. Поставьте галочку у переменной Цена в палитре — текущая цена будет видна на сцене, и подпись на кнопке можно сделать нейтральной.
Прогоните пересчёт руками: 10 → целое меньшее от 15 = 15 → целое меньшее от 22,5 = 22 → от 33 = 33 → от 49,5 = 49 → от 73,5 = 73. Ровно эти шесть цен и стоят в таблице.
Как это выглядит в числах:
| Покупка | Цена | Всего потрачено | Сила клика после покупки |
|---|---|---|---|
| 1-я | 10 | 10 | 2 |
| 2-я | 15 | 25 | 3 |
| 3-я | 22 | 47 | 4 |
| 4-я | 33 | 80 | 5 |
| 5-я | 49 | 129 | 6 |
| 6-я | 73 | 202 | 7 |
Цена растёт быстрее силы клика, поэтому каждая следующая покупка требует чуть больше времени, чем предыдущая. Это и держит игрока: цель всегда видна и всегда чуть дальше вытянутой руки.
Второй приём — пассивный доход. Отдельный скрипт с блоком «повторять всегда», внутри «ждать 1 секунд» и «изменить [Счёт] на [Ферма]», даёт очки, пока игрок ничего не делает. Переменная Ферма покупается второй кнопкой по той же схеме, что и сила клика.
Отдельно стоит проговорить с ребёнком, что кликеры про заработок денег и кликеры-игры — разные вещи: механика «нажимай и копи монетки» часто используется как обёртка для рекламы и обещаний дохода. Об этом есть отдельный разбор — мифы про онлайн-заработок.
Вывод раздела: интерес к кликеру держится на арифметике цен. Меняйте множитель 1.5 и стартовую цену — и получите совсем другую по темпу игру.
Пять ошибок, из-за которых кликер в Scratch считает неправильно
Эти дефекты повторяются почти в каждом первом проекте — и все они лечатся одним блоком.
- Один клик добавляет 5–10 очков. Скрипт собран на «повторять всегда» с условием «мышь нажата?»: цикл прокручивается десятки раз в секунду, пока палец на кнопке. Лечится блоком «ждать 0.1 секунд» внутри цикла или переходом на «когда спрайт нажат», который срабатывает один раз на нажатие.
- Счёт не обнуляется при новом запуске. Нет скрипта «когда [зелёный флаг] нажат» с блоками «задать значение». Переменная в Scratch хранит последнее значение между запусками.
- Кнопка улучшения загоняет счёт в минус. Списание стоит снаружи блока «если … то». Оба действия — и списание, и усиление — должны лежать внутри условия.
- Кнопка не видит переменную. При создании выбран вариант «Только для этого спрайта». Пересоздайте переменную с вариантом «Для всех спрайтов».
- Проект открывается пустым на другом компьютере. Работа не сохранена: без входа в аккаунт «Сохранить сейчас» недоступно. Запасной путь — меню «Файл» → «Сохранить на свой компьютер», файл с расширением .sb3.
Вывод раздела: если счёт ведёт себя странно, сначала смотрите, какой блок запускает скрипт, и только потом ищите ошибку в арифметике.
Как сделать кликер в Unity и Roblox Studio: рабочий минимум
Механика та же самая — событие клика, переменная-счётчик, число на экране. Разница в том, что на движке это пишется текстом. Ниже две сборки, доведённые до состояния «нажал Play — счёт растёт»: где создать объект, куда положить скрипт и какой в нём код.
Unity: кнопка на Canvas и счётчик на C#
- Создайте проект по шаблону 2D и откройте сцену.
- Меню GameObject → UI (Canvas) → Button. Отдельно создавать холст не нужно: в разделе Canvas документации uGUI сказано, что элемент интерфейса из этого меню «automatically creates a Canvas, if there isn’t already a Canvas in the scene», а сам элемент становится дочерним объектом холста — «all UI elements must be children of such a Canvas».
- Тем же меню добавьте элемент Text — это табло счёта. В разделе Text той же документации он описан прямо: «The Text control displays a non-interactive piece of text to the user».
- Создайте C#-скрипт с именем
Clickerи повесьте его на объект Canvas кнопкой Add Component. - Впишите в скрипт код:
using UnityEngine; using UnityEngine.UI; public class Clicker : MonoBehaviour { public Button clickButton; // сюда перетащите объект Button public Text scoreLabel; // сюда — объект Text private int score; void Start() { scoreLabel.text = "0"; clickButton.onClick.AddListener(OnClick); } void OnClick() { score += 1; scoreLabel.text = score.ToString(); } } - Выделите Canvas и перетащите в поля Click Button и Score Label объекты Button и Text из окна Hierarchy. Нажмите Play — счёт растёт от нажатий.
Строка clickButton.onClick.AddListener(OnClick) — это ровно тот приём, что показан в справочнике Unity к свойству onClick: btn.onClick.AddListener(TaskOnClick);. Само событие On Click в документации Unity описано как «A UnityEvent that Unity invokes when a user clicks the button and releases it», и там же оговорено, что будет при промахе: «If the mouse is moved off the button control before the click is released, the action does not take place». Ту же привязку можно сделать вообще без кода — списком On Click в инспекторе кнопки. За клики отвечает объект EventSystem — «Canvas uses the EventSystem object to help the Messaging System», и к обработке клика в справке стоит отдельная ремарка: «Make sure your Scene has an EventSystem». Если его в сцене нет, кнопка молчит.
Roblox Studio: ClickDetector на детали и счёт в leaderstats
- Создайте место из шаблона Baseplate и поставьте на площадку деталь (Part) — по ней и будут кликать.
- Вложите внутрь детали объект ClickDetector. В справке Roblox Creator Hub он описан как «an object that provides user input on in-experience BaseParts and Models» и работает, только когда родителем стоит деталь, модель или папка: «They work when parented to BasePart, Model, or Folder objects».
- Счёт держит встроенный лидерборд. В ServerScriptService создайте Script с именем
Leaderboard— документация Roblox предписывает именно это место и имя: «Create a new Script within ServerScriptService and name it Leaderboard». Папку внутри игрока обязательно назватьleaderstatsстрочными буквами, иначе игрок на доску не попадёт: «It’s essential that the folder is named leaderstats with all lowercase letters. Roblox doesn’t add the player to the leaderboard if you name it any other way».local Players = game:GetService("Players") local function leaderboardSetup(player) local leaderstats = Instance.new("Folder") leaderstats.Name = "leaderstats" leaderstats.Parent = player local clicks = Instance.new("IntValue") clicks.Name = "Clicks" clicks.Value = 0 clicks.Parent = leaderstats end Players.PlayerAdded:Connect(leaderboardSetup) - Второй скрипт — сам клик. Куда его класть, в документации сказано дословно: «Place this code inside a Script inside a ClickDetector», то есть Script вкладывается внутрь ClickDetector.
local clickDetector = script.Parent local function onClicked(playerWhoClicked) local leaderstats = playerWhoClicked:FindFirstChild("leaderstats") local clicks = leaderstats and leaderstats:FindFirstChild("Clicks") if clicks then clicks.Value += 1 end end clickDetector.MouseClick:Connect(onClicked) - Нажмите Play. Клик по детали добавляет единицу в столбец Clicks на встроенной доске лидеров.
Событие MouseClick передаёт в функцию игрока, который кликнул: сигнатура в справке — MouseClick(playerWhoClicked: Player). Отсюда и берётся playerWhoClicked в коде. Второе, обо что спотыкаются: свойство MaxActivationDistance задаёт «the maximum distance, in studs, between a Character and the ClickDetector … for the player to be able to interact with it» — если персонаж дальше, клик не сработает вовсе.
Godot: сигнал pressed
Кнопка в Godot испускает сигнал pressed — в документации он описан как «Emitted when the button is toggled or pressed». Обработчик пишется на GDScript и подключается к сигналу прямо в редакторе, дальше логика совпадает с Unity: увеличить переменную, обновить подпись.
Вывод раздела: кликер везде собирается из трёх одинаковых частей — событие клика, переменная-счётчик, число на экране. В Unity клик приходит в метод C# через On Click, в Roblox Studio — в функцию на Luau через MouseClick, в Scratch то же самое собирается мышкой из блоков. Логика одна, отличается запись.
Автокликер: почему это не кликер-игра
Часть людей, которые ищут, как сделать кликер, имеют в виду не игру, а программу, нажимающую кнопку мыши за пользователя. Это разные вещи, и путать их дорого: в выдаче по запросу «как сделать кликер» автокликеры не встречаются вовсе — все результаты первой десятки посвящены разработке игры.
Что стоит знать про автокликеры:
- Это отдельный класс программ-макросов, они не пишутся в Scratch и не имеют отношения к геймдеву.
- Скачивание таких программ со случайных сайтов — распространённый способ занести на компьютер нежелательное ПО.
Вывод раздела: если цель — научиться программировать, делайте игру. Автокликер решает противоположную задачу — избавляет от нажатий.
Как сохранить кликер и показать его друзьям
Собранная игра живёт во вкладке браузера до первого закрытия. Дальше три варианта:
- Аккаунт Scratch. После входа доступно меню «Файл» → «Сохранить сейчас», проект попадает в личный кабинет. Кнопка «Поделиться» делает страницу проекта публичной и даёт ссылку, которую можно отправить кому угодно.
- Файл на компьютере. «Файл» → «Сохранить на свой компьютер» выгружает проект файлом .sb3. Это полная копия игры: файл переносится на флешке или почтой и открывается редактором Scratch на другом компьютере.
- Приложение без интернета. На официальной странице загрузки Scratch перечислены поддерживаемые системы: Windows 10 и новее, macOS 10.13 и новее, ChromeOS, Android 6.0. Там же прямо сказано, что скачивать приложение необязательно: «You can also use the Scratch project editor in most web browsers on most devices by going to scratch.mit.edu and clicking «Create»».
Чек-лист готовности кликера:
- Зелёный флаг обнуляет счёт и возвращает силу клика к единице.
- Клик по спрайту добавляет очки и даёт отклик — звук или изменение размера.
- Есть хотя бы одно улучшение с растущей ценой.
- Улучшение нельзя купить, когда очков не хватает.
- Проект сохранён и открыт по ссылке в режиме «Поделиться».
Частые вопросы про кликер
Нужен ли аккаунт Scratch, чтобы сделать кликер?
Чтобы собрать игру — нет: редактор открывается кнопкой «Создать» и работает без входа. Аккаунт нужен для сохранения: без него проект исчезнет вместе с закрытой вкладкой, а кнопка «Поделиться» и ссылка на проект будут недоступны.
В какой категории лежит блок «изменить [Счёт] на 1»?
В категории «Переменные». Название «Данные» осталось в Scratch 2.0, и инструкции, которые отправляют в раздел «Данные», написаны для устаревшей версии редактора.
Почему за один клик начисляется сразу несколько очков?
Скрипт собран на цикле «повторять всегда» с проверкой «мышь нажата?»: пока кнопка удерживается, цикл прокручивается десятки раз в секунду. Помогает блок «ждать 0.1 секунд» внутри цикла или переход на блок «когда спрайт нажат», который срабатывает один раз на каждое нажатие.
Можно ли сделать кликер на телефоне?
Редактор Scratch открывается в браузере на большинстве устройств, но приложение Scratch для Android работает только на планшетах — на смартфоне оно не поддерживается. Работать на телефоне через браузер технически можно, однако перетаскивать блоки на маленьком экране неудобно.
Сколько блоков нужно для самого простого кликера?
Три: переменная «Счёт», блок «когда спрайт нажат» из категории «События» и блок «изменить [Счёт] на 1» из категории «Переменные». Всё остальное — звук, улучшения, пассивный доход — надстраивается поверх этой основы.
Можно ли сделать кликер в Unity или Roblox Studio, минуя Scratch?
Да. В Unity минимум такой: кнопка и текстовое поле создаются меню GameObject → UI (Canvas), а скрипт на C# подписывается на событие On Click и увеличивает счётчик. В Roblox Studio — деталь с объектом ClickDetector, Script внутри него и папка leaderstats, куда пишется счёт. Разница со Scratch в том, что обе программы нужно установить, а логику написать текстом.
Что делать дальше
Соберите версию из пяти шагов и дайте поиграть кому-то, кто не видел, как вы её делали. Обычно первая же чужая партия показывает, что цена улучшения подобрана неверно: игрок либо скупает всё за минуту, либо бросает, не накопив на первую покупку. Правьте числа в таблице цен: механика в кликере всегда одна.
