Игры на Java Script возвращение. Часть 2

Решил вернуться к одной из моих самых любимых рубрик DEV и опубликовать эксперименты, которые мы проводили на стыке возможностей мессенджера Telegram и технлогии html5 canvas в начале 2019 года. В бизнесе часто практикуют тестирование гипотез, в результате таких тестов рождаются продукты, которые в большинстве случаев не доходящих до стадии серийного производства. Сегодня речь пойдет как раз об одном из таких тестов.

Взялись с Марком Корнейчиком за первый проект для html5 frame для мессенджера Telegram. Идея была в том, чтобы сделать простейшую аркаду управляемую двумя пальцами и изучить возможность встраивания графических приложений в мессенджер Telegram.

В процессе разработки, хочется с первых секунд обкатывая механику игрового проекта использовать приятные глазу спрайты не тратя время на их подготовку. В этом очень сильно может помочь веб-сайт spriters-resource.com

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

Итак, требования:

  • Быстрая в разработке игра
  • Браузерка совместимая с мобильными устройствами
  • Короткая игровая сессия
  • Только сингл-плеер

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

В качестве релизного проекта, обозревая аркады от Электроника “Ну, Погоди” до HASTE (gamedev.ru форум) мы пришли к тому, что будем реализовать хардкорную аркаду, жесткую и беспощадную к пользователю. Чтобы как Flappy Bird, но при этом скорее Mario чем Flappy Bird.

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

В качестве гипотезы, мы решили воспроизвести упрощенную версию аркадного шутера 1942 вышедшего на ZX-Spectrum.

Процесс

За первый час удалось инициализировать и запустить игровую канву. Прямоугольник выполняет роль условного самолётика. Управление осуществляется нажатием на левую и правую часть игрового поля соответственно.


HTML5 CANVAS

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

Получили следующий результат.

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

Итого доведение до условно играбельной альфы заняло несколько дней.

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

Запустить игру (корректно отображается только на смартфонах или в браузере в режиме совместимости со смартфоном).

GitLab