# Battle Drones: Саймон Уиллисон собрал RTS на Claude за 321 коммит — и прикрутил мультиплеер через звук
Каноническая страница: https://plainews.ru/posts/battle-drones-vibe-coded-rts-claude
Опубликовано: 2026-10-21T11:03:22.216Z

Саймон Уиллисон собрал браузерный RTS в стиле Command & Conquer с помощью Claude за 12 итераций. Мультиплеер работает через микрофон — без сервера.
Саймон Уиллисон — разработчик и автор блога, известный в сообществе ИИ-инструментов — опубликовал разбор своего последнего эксперимента с vibe coding (подход, при котором разработчик описывает желаемое словами, а код пишет агент). Результат: браузерный RTS Battle Drones в духе Command & Conquer 1995 года, с туманом войны, 3D-моделями, несколькими режимами игры и мультиплеером, который синхронизирует состояние через аудиосигнал между двумя устройствами. Кодовую базу на TypeScript написали агенты — в основном Claude Code — за 321 коммит и 12 крупных итераций.

## Что внутри: 9 зданий, 6 карт и гигантский мех с лазерными глазами

На момент публикации Battle Drones включает:

| Категория | Количество |
| --- | --- |
| Здания | 9 |
| Наземные юниты | 7 |
| Воздушные юниты | 6 |
| Пехота | 3 |
| Карты | 6 (5 биомов) |

Биомы — умеренный, пустынный, арктический, вулканический, тропический. Есть генератор случайных карт, режим Last Stand (один игрок против волн врагов), скирмиш с ротационно-симметричными картами и шесть AI-личностей: Balanced, Rush, Air Swarm, Boom, Skyforce, Ironclad. Отдельная фича — Goliath, гигантский мех, который топает по карте, стреляет лазерами из глаз и может основать новую базу прямо на поле боя.

Помимо этого: оружие с зональным уроном (Barrage, EMP, Drop Pod, Sky Hammer), ящики с ресурсами, музыка, которая становится интенсивнее во время боёв, мутаторы с дополнительными правилами, ежедневные задания и система медалей.

## Как это строилось: от скучного прототипа к «сделай НАМНОГО веселее»

Уиллисон начал в июле с Claude Fable 5 и простого запроса: построить мобильный RTS с дронами. Первая версия оказалась узнаваемой как жанр, но неинтересной. Claude использовал фреймворк Phaser для 2D — Уиллисон признаётся, что не заметил этого до нескольких итераций спустя.

Вторая версия добавила спрайты для всех юнитов и режим AI vs. AI. Третья — в октябре, уже на Claude Opus 5.5 — получила пять новых карт с разными тайлами и переработанные спрайты. Игра стала выглядеть как настоящая, но скучать Уиллисон не перестал.

Переломный момент — четвёртая итерация. Уиллисон поделился с кем-то за ужином своей теорией: агенты могут построить что-то похожее на игру, но не способны сделать её по-настоящему интересной. После этого решил дать моделям честный шанс и написал Opus 5.5 с телефона:

> This game isn't fun enough yet. Make it a LOT more fun.

Запрос запустил Ultracode mode — режим Claude Code, в котором агент выполняет «динамические воркфлоу» (JavaScript-скрипты, оркестрирующие несколько субагентов параллельно). Процесс занял несколько часов: Уиллисон запустил его вечером, результат получил следующим утром. По его словам, результаты оказались впечатляющими.

## Мультиплеер через микрофон — это не шутка

Одна из самых необычных фич — синхронизация состояния игры между двумя устройствами через звук. Устройства должны находиться в зоне слышимости микрофона друг друга. Это развитие более раннего эксперимента Уиллисона под названием Chirp Pong.

> **К сведению.** Уиллисон отмечает, что аудио-мультиплеер вызывал головные боли — в буквальном смысле. Позже он добавил поддержку обычного онлайн-мультиплеера.

Подход нестандартный и явно экспериментальный, но показывает, что агентный vibe coding позволяет реализовывать механики, до которых разработчик-одиночка вряд ли дошёл бы в классическом рабочем процессе.

## Где это ломается и чего в источнике нет

Уиллисон честно говорит: он почти не смотрел на код. Игра написана на TypeScript — языке, которым сам он почти не пользуется. Это означает, что поддерживать и развивать кодовую базу без агента будет сложно. Насколько стабильна игра при большом числе пользователей — в источнике не сказано.

Также не раскрыты: стоимость API-вызовов за 321 коммит, точное число часов работы агентов, детали реализации 3D-моделей (переход с Phaser 2D на 3D произошёл в пятой итерации, но подробностей нет).

Для разработчика, который хочет повторить опыт, важно понимать: Уиллисон использовал платный доступ к Claude Code, OpenAI Image Generation API для генерации спрайтов и, судя по контексту, немало времени на плейтестинг между итерациями. Vibe coding здесь — не «написал промпт и готово», а итеративный процесс с ручным тестированием на каждом шаге.

## Что это значит для тех, кто хочет попробовать

Battle Drones — наглядный пример того, что агенты уже способны строить нетривиальные интерактивные продукты с нуля. Ключевой вывод Уиллисона: запрос «сделай веселее» сработал лучше, чем детальные технические инструкции на ранних этапах. Для разработчиков без игрового бэкграунда это может быть более доступным входом в жанр, чем изучение Unity или Godot.

Поиграть в Battle Drones можно прямо в браузере — ссылка есть в оригинальном посте Уиллисона на simonwillison.net.

## Источники

- Simon Willison: Battle Drones - a vibe coded RTS with audio-based multiplayer
