Кейс
Drones War
Бесплатный однопользовательский пошаговый варгейм на гексагональной карте прямо в браузере: разведывайте дронами, удерживайте позиции пехотой, захватите штаб противника.
- Тип
- Браузерная игра
- Старт
- 2026
- Стек
- TypeScript, React, WebGL
- Карты
- 5 исторических полей сражений
Идея
Дешёвые дроны изменили современную войну: разведка, удары и радиоэлектронная борьба теперь определяют каждый шаг на земле. Drones War превращает это в компактную стратегию на 20–40 минут — без установки и без регистрации.
Что мы сделали
- Варгейм на гексагональной карте с туманом войны, разведкой и ударами дронов, пехотой, линиями снабжения, завязанными на штабы, дорогами, исследованиями и радиоэлектронной борьбой.
- Погода, которая влияет на возможности дронов, и соответствующие визуальные эффекты.
- ИИ-противник с уровнями Easy, Normal и Hard, который играет по тем же правилам, что и игрок.
- Пять карт по мотивам реальных сражений: Арденны, Арнем, Монте-Кассино, Нарвский фронт и побережье Нормандии.
- Сохранение игр в браузере, чтобы партию можно было продолжить позже.
Инженерные решения
Детерминированное ядро симуляции
Все правила игры находятся в чистом ядре на TypeScript с генератором случайных чисел на основе seed, отдельно от рендеринга и интерфейса. Одни и те же входные данные всегда дают одну и ту же партию. Благодаря этому правила можно тестировать, ошибки — воспроизводить, а поведение ИИ-противника легко понять.
Рендеринг на WebGL в React
Карта отрисовывается с помощью PixiJS на WebGL, интерфейс — на React. Состояние игры хранится в небольшом общем для них хранилище.
Вообще без бэкенда
Игра раздаётся как статические файлы с edge-серверов. При росте числа игроков нечего масштабировать, патчить или оплачивать.
Решения записаны
Ключевые архитектурные решения зафиксированы в виде ADR (architecture decision records), чтобы их обоснование жило столько же, сколько код.
Тестирование
Ядро симуляции покрыто unit-тестами и интеграционным тестом, который проигрывает игровые сценарии. GitHub Actions запускает проверку типов и полный набор тестов при каждом push и pull request.
Связанные услуги: Приложения на заказ · Разработка MVP и прототипов · Тестирование ПО и QA
Другие кейсы: fewbase · Baltic Monitor · DevGrants Daily
Нужно что-то подобное?
Расскажите, что хотите сделать. Небольшие задачи приветствуются, общение асинхронное, ответ в течение одного рабочего дня.
Начать разговор