По опыту Арины Михалны, Саймон Уиллисон за один вечер собрал RTS-игру с мультиплеером через Claude Code. Агент написал логику игры, серверную часть на Node.js, рендер на canvas и балансировку юнитов — человек объяснял идею и тестировал. Игра работает, код живой, проект называется Battledrones.

1 вечерот идеи до игры
0 строккода написано руками

Схема проекта Battledrones: клиент на canvas, сервер на Node.js, вебсокеты для синхронизации

Что такое вайбкодинг на живом кейсе

Вайбкодинг — это когда описываешь проект человеческими словами, а Claude Code пишет код и собирает структуру. Никаких классов, архитектуры, синтаксиса — просто объясняешь идею, как другу: «нужна стратегия в реальном времени, где два игрока строят базы и управляют дронами».

В кейсе Battledrones Саймон задал три главные механики:

  • Мультиплеер через вебсокеты — два игрока видят одно поле в реальном времени.
  • Игровая логика — ресурсы, строительство, движение юнитов, столкновения.
  • Туман войны — игрок видит только свою часть карты, пока не разведает остальное.

Агент собрал структуру проекта, написал серверную часть на Node.js, рендер на canvas, логику движения и балансировку юнитов. Человек тестировал, запускал игру и говорил, что не так: «дроны слишком слабые, сделай их быстрее». Агент правил и показывал результат. Через несколько итераций игра работала.

Что агент сделал сам: разбор по шагам

Шаг 1: Структура проекта

Claude Code создал папки и файлы:

battledrones/
├── server.js       # серверная логика, вебсокеты
├── public/
│   ├── index.html  # точка входа
│   ├── game.js     # клиентская логика
│   └── render.js   # рендер на canvas
└── package.json    # зависимости

По данным из источника, серверная часть — Express + Socket.IO для синхронизации игроков, клиентская — TypeScript, рендер на <canvas>. Агент сам выбрал стек, потому что задача звучала как «быстро и без лишних зависимостей».

Шаг 2: Игровая логика

Агент написал механики:

  • Ресурсы — игрок собирает минералы, тратит их на юнитов и постройки.
  • Строительство — клик по карте → появляется завод или турель.
  • Юниты — дроны двигаются к цели, стреляют в противника, умирают при столкновении.
  • Туман войны — карта скрыта, кроме зоны видимости своих юнитов.

Баланс юнитов (здоровье, урон, скорость) агент подобрал сам на основе классических RTS. Позже Саймон попросил усилить дронов — они умирали от одного выстрела турели. Агент поднял HP с 50 до 100, игра стала играбельной.

Шаг 3: Мультиплеер через вебсокеты

Синхронизация через Socket.IO:

  1. Игрок подключается к серверу — получает ID и стартовую позицию.
  2. Каждое действие (движение юнита, постройка, атака) отправляется на сервер.
  3. Сервер проверяет валидность действия и рассылает обновлённое состояние игры обоим игрокам.

Агент сам написал обработку событий и защиту от читов — нельзя построить юнита за чужие ресурсы или двинуть чужого дрона. Это стандартная логика серверного геймдева, но человеку не пришлось объяснять детали — агент знал паттерн.

Таблица: что агент делает сам, а что требует правок

Задача Агент сам Человек правит
Структура проекта Да Нет
Серверная логика Да Нет
Рендер на canvas Да Редко (баги отрисовки)
Баланс юнитов Нет Да (здоровье, урон, скорость)
Геймплейные механики Да Иногда (уточнить поведение)
Туман войны Да Нет

Читайте также

Вайбкодинг работает не только на лендингах — агент собирает проекты с логикой и мультиплеером.

В — что агент делает сам, а что приходится править.

канале разбираю кейсы вайбкодинга на живых примерах

Что пришлось править руками

Баланс юнитов. Агент сделал дронов слишком слабыми — они умирали от одного выстрела турели. Саймон попросил поднять HP со 100 до 150 и снизить урон ракет. Агент применил правки, игра стала играбельной.

Карты. Стартовая карта была пустой — два игрока, ничего между ними. Саймон попросил добавить препятствия и нейтральные ресурсы. Агент сгенерировал несколько вариантов карт с разным расположением баз и минералов.

Остальное работало из коробки: мультиплеер, рендер, столкновения юнитов, туман войны. Саймон запускал игру, тестировал с другом через два браузера и уточнял механики. Агент правил и показывал результат за несколько минут.

Как повторить: шаги для своего проекта

1. Опиши главные механики проекта

Не код, не архитектуру — сценарии. Что делает пользователь, что видит на экране, что происходит за кадром. Для игры Battledrones это звучало так:

  • Два игрока видят одно поле.
  • Игрок строит базу, собирает ресурсы, создаёт юнитов.
  • Юниты двигаются к цели, атакуют противника.
  • Игрок видит только свою часть карты, пока не разведает остальное.

Агент понял задачу и собрал структуру проекта.

2. Запусти Claude Code и дай задание

Открой терминал в папке проекта:

claude code "Собери RTS-игру с мультиплеером: два игрока,
ресурсы, строительство, юниты, туман войны. Серверная часть
на Node.js, клиентская — canvas."

Агент создаст структуру, напишет код и предложит запустить сервер. Если нужен конкретный стек или библиотеки — уточни в задании.

3. Тестируй и уточняй

Запусти проект, посмотри, что работает, что нет. Скажи агенту, что исправить: «дроны слишком медленные, сделай их быстрее на 50%». Агент применит правки и покажет результат.

Если агент не понял задание — уточни сценарий конкретнее. Не «сделай игру сбалансированной», а «подними здоровье дронов до 150, снизь урон ракет до 30».

4. Выложи код на GitHub

Агент может сам закоммитить изменения и запушить на GitHub. Скажи: «создай репозиторий battledrones, закоммить весь код и запушь на GitHub». Нужен токен GitHub — агент объяснит, как его получить.

Схема работы с агентом: объяснить идею → запустить проект → уточнить механики → выложить на GitHub

Скриншот: Пост Саймона Уиллисона о проекте Battledrones (снято 21.10.2026)
Скриншот: Пост Саймона Уиллисона о проекте Battledrones (снято 21.10.2026)

Вайбкодинг vs традиционная разработка: честное сравнение

Критерий Вайбкодинг Традиционная разработка
Время на прототип 1 вечер 2–4 недели
Опыт программирования Не нужен Обязателен
Контроль над кодом Низкий (агент пишет) Полный
Баланс и UX Требует правок Делаешь сразу
Подходит для MVP Да Да, но дольше

Вайбкодинг не заменяет разработчика на продакшн-проектах — агент не чувствует UX, не знает бизнес-логику и не предсказывает крайние случаи. Но для прототипа, MVP или личного проекта это самый быстрый способ от идеи до работающего продукта.

Больше про вайбкодинг: 5 побед и 5 провалов — честный разбор того, как это работает.

Где взять код проекта и как запустить

Код игры Battledrones лежит на GitHub: github.com/simonw/battledrones. Чтобы запустить локально:

git clone https://github.com/simonw/battledrones.git
cd battledrones
npm install
npm start

Открой http://localhost:3000 в двух вкладках браузера — можешь играть с самим собой. Для игры с другом нужен публичный сервер — задеплой на хостинг, агент объяснит шаги.

По материалам: пост Саймона Уиллисона о проекте Battledrones.

По опыту Арины Михалны, вайбкодинг работает на проектах любой сложности — от лендинга за час до игры с мультиплеером за вечер. Главное — объяснить агенту идею как человеку, а не писать техническое задание. Остальное он соберёт сам.