DOS Cloud Gaming
Давным давно я занялся разработка JavaScript API для запуска DOS игр в браузере. После стольких потраченных сил с удовлетворением могу сказать, что многие сайты со старыми игрушками перешили и используют именно мое API. Но, прогресс не стоит на месте и я занялся разработкой следующей версии js-dos.
Вас ждет много вкусностей:
- Универсальные бандлы (zip архивы), которые содержать конфигурацию dosbox. Теперь для развертывании игры на сайте достаточно одной строчки кода
- Открытый репозитории бандлов
- Виртуальные кнопки и джойстики для игры на мобильных устройствах
- Бэкенд эмулятора полностью перемещен в Worker
- Независимый, заменяемый рендер. Например, можно рендерить игру через Three.js
- Поддержка нескольких бэкендов. Сейчас это только dosbox, но в планах поддержка dosbox-x и много чего ещё
- web-rtc бэкенд Janus для игры в облаке
Зачем вообще нужен облачный сервис для DOS игр?
Технологии шагнули далеко вперед, современных мощностей уже зачастую хватает чтобы играть практически во все DOS игры прямиком в браузере. Однако, ситуация на мобильных устройствах выглядит много хуже. Мощностей многих устройств все ещё не достаточно чтобы играть в популярные игры: DOOM, MK, Carmageddon. Некоторые игры (например: C&C, Diablo) не работают даже на PC. Это связано с тем что пока невозможно имплементировать рекомпилирующий эмулятор на WebAssembly.
Именно в таких ситуация и должен помогать облачный сервис. Например, стандартный тест DHRY2 тест запущенный на мобильном устройстве обычно дает результат около 20 очков. Запущенный в облачном сервисе — 240 очков (этого достаточно чтобы играть в любую DOS игру).
Тестирование
Сейчас сервис проходит активное тестирование, его можно попробовать в действии. Мне очень нужны тестовые данные из стран СНГ.
Помочь с тестированием очень просто. Все что нужно — зарегистрироваться, поиграть по ссылке в DOOM и описать свои ощущения. Для запуска игры в облачном сервисе нужно использовать кнопку »>> Turbo».
Могу много интересного рассказать про разработку js-dos v7, не знаю что было бы интересно сообществу. Очень жду обратной связи в комментариях или Discord проекта.
Спасибо.