Pavel Bezdornov

Game developer

Frontend developer

Jet Forces

  • Тип проекта: Личный проект
  • Разработчик: alpinweb.com

Описание проекта: Разработка прототипа динамичного браузерного 2D-шутера с элементами платформера. Ключевая особенность игры — уникальная экономическая механика: собираемые монеты одновременно выполняют роль здоровья игрока (система повреждений в стиле Sonic) и ресурса для покупки боеприпасов/топлива для джетпака. Это потребовало создания жестко синхронизированной системы менеджмента ресурсов в реальном времени.

Ключевые инженерные решения и достижения:

  • Интеграция React и Phaser: Спроектировал архитектуру приложения, в которой игровой цикл Phaser бесшовно связан с реактивным UI на React через менеджер состояния MobX. Это позволило вынести игровой интерфейс (HUD, меню) из canvas в чистые веб-компоненты.

  • Управление сложным игровым состоянием: Реализовал на MobX централизованное хранилище данных для уникальной механики «монеты как здоровье/валюта», обеспечив мгновенный отклик интерфейса и синхронизацию с физическим движком игры.

  • Игровой ИИ и физика: Запрограммировал конечные автоматы (Finite State Machines) для базового искусственного интеллекта врагов и настроил физическое взаимодействие объектов (Arcade Physics) для механики полета на джетпаке и симуляции падения монет при уроне.

  • Проектирование уровней: Интегрировал тайлмапы, созданные в Tiled, обеспечив оптимизированный рендеринг геометрии уровня и коллизий в браузере.

Результат: Успешно разработанный и оптимизированный прототип HTML5-игры. Проект доказал мою способность быстро осваивать новые технологии (React/MobX) и эффективно применять их для решения нестандартных архитектурных задач на стыке реактивного веба и геймдева.

Технологии с которыми я работал: