Перейти к содержимому

BENNE: бесплатный движок для квестов point and click в браузере на Phaser 4 и TypeScript

abe ·

BENNE — бесплатный движок с лицензией MIT и редактор для VS Code, на которых можно делать классические квесты point and click для браузера. Рассказываем, что он умеет, как начать проект и как выложить игру на itch.io.

Обложка VENO: наклонённый пиксельный скриншот квеста Hank Steele с панелью глаголов и офисной сцены из демо BENNE, с надписями «Бесплатный движок», BENNE × Phaser 4, Point & Click и «Квесты прямо в браузере»

BENNE — бесплатный движок для квестов point and click, работающий в вебе. Он построен на Phaser 4 с ядром на TypeScript и поставляется с собственным редактором для Visual Studio Code: можно собрать классический квест с локациями, глаголами, инвентарём и диалогами, а затем выпустить его как браузерную игру. Движок создаёт разработчик Bennethon, распространяется он по лицензии MIT.

Если вы выросли на пиксельных квестах, где на всё подряд нажимали «Look at» («Осмотреть»), BENNE пытается вернуть это ощущение с помощью современных веб-инструментов. В этом руководстве — что внутри, как создать первый проект и как выложить готовую игру на itch.io.

BENNE коротко

Что это Движок + редактор для VS Code для квестов point and click
Автор Bennethon
Основа Phaser 4, TypeScript, Vite
Лицензия MIT (бесплатно, открытый код)
Где работает В любом современном браузере; сборки для Windows — по желанию
Последний релиз v0.1.3 (25 октября 2026 года) на GitHub
Первая игра на нём Hank Steele and the AI Apocalypse (игра с геймджема, бесплатная)
Официальный сайт benne.games

Ключевой арт BENNE: пиксельный логотип BENNE рядом с бежевым ретро-монитором CRT, на экране которого надпись Play, изображение: Bennethon

Номер версии говорит о главном: BENNE ещё совсем молод. Первый релиз 0.1 вышел в октябре 2026 года, так что между версиями возможны изменения — читайте примечания к выпуску, прежде чем обновлять уже начатый проект.

Что берёт на себя движок для квестов

На экране квест point and click выглядит просто, но под капотом ему нужно много «сантехники»: персонаж, который обходит препятствия, кликабельные зоны, система глаголов, инвентарь, где предметы применяются к другим объектам, ветвящиеся диалоги, катсцены и сохранения. Универсальный движок вроде Phaser даёт спрайты, ввод и звук, но не эти правила жанра.

BENNE добавляет этот слой поверх Phaser 4. Согласно официальному руководству, он вдохновлён Adventure Game Studio и движком SCUMM от LucasArts, и в нём есть:

  • Локации, персонажи, инвентарь и диалоги в виде готовых строительных блоков.
  • Деревья диалогов с отслеживанием состояния, чтобы варианты ответа появлялись или исчезали по ходу сюжета.
  • Масштабирование перспективы и тонирование по регионам, чтобы персонаж уменьшался, уходя «вглубь» сцены.
  • Применение предмета из инвентаря к цели, катсцены, затемнения экрана, следование персонажей друг за другом и сохраняемые настройки речи и звука.
  • Музыка, звуковые эффекты, озвученные диалоги и видеокатсцены — всё через именованные ресурсы с автодополнением.
  • Система интерфейса на JSON с изображениями 9-slice, кнопками, ползунками, списками и полями ввода текста.

Играбельное демо BENNE: пиксельный разработчик стоит в своём офисе у книжной полки и ретро-компьютера и предлагает экскурсию, изображение: Bennethon

Это можно попробовать самому: на официальной главной странице есть небольшое играбельное демо, где вы гуляете по офису разработчика.

Глаголы, стили и «принципиальные» правила

Стили взаимодействия задаются в файле game-config.json. Значит, один и тот же движок может сделать классическую игру с девятью глаголами и панелью в духе LucasArts («Walk to», «Look at», «Use»…), современную игру на два клика (левая кнопка — действие, правая — осмотр) или схему в стиле Sierra либо гибридную.

Hank Steele на BENNE: уборщик в машине времени над панелью глаголов Move, Talk to, Use, Look at, изображение: Bennethon

Кроме того, BENNE намеренно строг в некоторых вещах — это делает проекты единообразными:

Область Правило BENNE Что это значит для вас
Спрайты Спрайт-листы Aseprite с анимациями по тегам Анимируете в Aseprite; другие способы импорта есть в планах
Текст Только растровые (bitmap) шрифты Чёткий пиксельный текст при любом масштабе
Разрешение Низкое внутреннее разрешение, обычно от 320×240 до 640×480 Целочисленное или почти целочисленное масштабирование для чёткого пиксель-арта
Устройство мира Полигоны для зон ходьбы, хотспотов и регионов Никаких тайловых карт и сеток — фигуры рисуются в редакторе
Скрипты Строки BenneScript выполняются по порядку Ходьба или реплика заканчивается до начала следующей строки

Если вам нужен свободный движок под любой жанр, эти рамки могут показаться тесными. Если хочется быстро сделать ретро-квест, они избавляют от множества решений.

Как начать первый проект на BENNE

В официальном руководстве по установке названы три вещи: Visual Studio Code 1.106 или новее, актуальная LTS-версия Node.js и, желательно, Aseprite для спрайтов. Дальше:

  1. Откройте в VS Code панель расширений, найдите BENNE Editor и установите его. На панели действий (Activity Bar) появится значок BENNE.
  2. Откройте палитру команд и выполните BENNE: Create New Game.
  3. Выберите шаблон: 9-verb (классическая панель глаголов), 2-click (минимальное управление) или Blank (пустой, новичкам не рекомендуется).
  4. Назовите проект и выберите папку. Расширение создаст файлы и само запустит npm install.
  5. Откройте новую папку и выполните npm run dev, чтобы запустить сервер разработки с горячей перезагрузкой.

Весь ваш контент лежит в src/game/: локации, персонажи, интерфейсы, инвентарь, диалоги, ресурсы и game-config.json. Папками движка управляет редактор, поэтому обновления движка не затирают ваш сюжет.

Схема работы с BENNE: пиксельный спрайт-лист попадает в редактор кода, который выдаёт браузерную игру, ZIP-архив и десктопную сборку

Как выглядит BenneScript

Скрипты пишутся на TypeScript, но BenneScript позволяет описывать логику квеста почти как пьесу. Строка вроде Hank: `It's open!` заставляет персонажа заговорить, и не нужно писать await перед каждым действием. Типичный скрипт двери подводит игрока к двери через walkToClicked(), убирает ключ с помощью inventory.remove(items.key), проигрывает звук, ждёт через wait(0.75) и меняет анимацию двери.

Ещё несколько команд из официального руководства:

  • rooms.<name>.goTo() переводит в другую локацию.
  • cutscene(() => { … }) оборачивает сцену, которую игрок может пропустить клавишей Esc.
  • .now, together(…) и background(…) позволяют выполнять несколько действий одновременно.
  • npm run lint проверяет скрипты на типичные ошибки.

Локации, реквизит, предметы и звуки — это типизированные имена, сгенерированные из вашего контента, поэтому редактор их автодополняет и рано ловит опечатки.

Публикация игры на BENNE на itch.io и для Windows

Именно при публикации BENNE особенно полезен веб-разработчикам игр: он берёт на себя мелочи, из-за которых часто ломаются загрузки HTML5.

  1. Выполните npm run build:itch в папке игры. Команда проверяет типы, собирает проект, сверяет ограничения itch.io по числу файлов и размеру и создаёт releases/<package-name>-itch.zip.
  2. Проверьте продакшен-сборку через npm run preview. Если открыть dist/index.html напрямую, всё будет работать не так, как на настоящем хостинге.
  3. На itch.io загрузите ZIP как проект типа HTML и отметьте «playable in the browser» («играть в браузере»). Файл index.html уже лежит в корне архива.
  4. По желанию: выполните npm run build:windows, чтобы получить портативный ZIP для Windows со встроенным Electron. Игроки распаковывают его и запускают .exe — Node.js не нужен. Загрузите его отдельным файлом с пометкой Windows.

Два практических совета из руководства: сборки для Windows не подписаны, поэтому сначала проверьте их на настоящем ПК с Windows, а сохранения в браузере и в десктопной версии хранятся раздельно. В скриптах game.isDesktop показывает, какая сборка запущена, — удобно, чтобы скрыть кнопку «Quit» («Выход») в браузере.

Hank Steele: какой получается игра на BENNE за 14 дней

Первая игра на BENNE — Hank Steele and the AI Apocalypse, комедийный квест об уборщике, который попадает на десять лет в будущее, где власть захватил ИИ, и должен починить машину времени, чтобы вернуться домой. Bennethon сделал её за 14 дней для $110 Adventure Game Challenge — геймджема на тему «Delayed Consequences» («Отложенные последствия»). Игра бесплатна на itch.io, запускается в браузере или на Windows и проходится примерно за полчаса.

Hank Steele разговаривает с учёной-хронологом в солнечном пиксельном коридоре с табличкой выхода и роботом-уборщиком, изображение: Bennethon

На странице itch.io указано, что при создании кода, графики и звуков игры помогали инструменты ИИ. Сам BENNE ИИ не требует: каждый кадр можно нарисовать вручную в Aseprite.

Кому стоит попробовать BENNE

  • Любителям квестов, которые немного программируют: шаблоны и BenneScript позволяют сосредоточиться на головоломках и шутках.
  • Разработчикам веб-игр: вы получаете проект на Phaser 4 и TypeScript, который можно читать и расширять, плюс аккуратный экспорт на itch.io.
  • Командам геймджемов: игра, сделанная за 14 дней, уже существует, так что сжатые сроки реальны.

Он подходит хуже, если вам уже сейчас нужны тайловые миры, графика высокого разрешения или стабильный движок версии 1.0 для долгого коммерческого проекта.

Частые вопросы

BENNE бесплатный?

Да. На официальном сайте указано, что BENNE распространяется по лицензии MIT, поэтому его можно использовать бесплатно, в том числе в собственных играх.

Нужно ли знать Phaser, чтобы работать с BENNE?

Нет. BENNE сам берёт на себя локации, глаголы, инвентарь и диалоги. Знание TypeScript помогает, а знание Phaser пригодится, если захотите расширять движок.

Работают ли игры на BENNE на телефонах?

Сборки BENNE запускаются в любом современном браузере. Движок рассчитан на управление указателем, как мышью, поэтому проверьте сенсорное управление на телефоне, прежде чем обещать поддержку мобильных.

Какое разрешение выбрать для игры на BENNE?

Руководство советует низкое внутреннее разрешение, обычно от 320×240 до 640×480, с увеличением в целое число раз, чтобы пиксель-арт оставался чётким.

Как загрузить игру на BENNE на itch.io?

Выполните npm run build:itch, загрузите ZIP из папки releases как HTML-проект и отметьте, что в него можно играть в браузере.

Где узнать больше?

Начните с официального руководства BENNE, руководства по публикации и исходного кода на GitHub.

Похожие статьи

Обзоры игр

Что такое игра мяч убегает из круга: от вирусных роликов «Will the Ball Escape?» до настоящей игры, плюс 8 советов

Почему ролики с мячиком, прыгающим внутри кольца, захватили YouTube Shorts, как устроена игра мяч убегает из круга и 8 советов, как быстрее лопнуть желейное…

VENO RimlyЧитать далее
Обзоры игр

Что такое игра соедини пары: правило двух поворотов, корни Shisen-Sho и 9 советов, как очистить любое поле

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

VENO PairlyЧитать далее
Загрузка игры…

VENOGAME / PLAYBOOK

Моя арена

На этом устройстве. Без регистрации.

Нажмите сердечко и соберите свою коллекцию.