Энтузиаст портировал Doom прямо в документ Word — игра работает хорошо, но звука нет
Игра, которой почти тридцать лет, снова ломает шаблоны. На этот раз культовый шутер Doom запустили внутри автономного документа Microsoft Word. Речь идет не о модификации или плагине, а о полноценном порте, который работает исключительно за счет вычислительных ресурсов текстового редактора. Однако за этим техническим трюком скрываются вопросы о границах совместимости современных приложений и безопасности корпоративного ПО.
Как Doom обошел ограничения офисного пакета
Голландский инженер-программист Войцех Грай продемонстрировал, что офисный пакет Microsoft способен на гораздо большее, чем обработка таблиц и текста. Для запуска легаендарного шутера требуется современная версия Microsoft Office на архитектуре x86, около 6,6 Мбайт свободного места и, что критично, разрешение на выполнение VBA-макросов. Именно макросы становятся тем самым «движком», который превращает Word в игровую платформу. Без снятия блокировки на выполнение скриптов система безопасности просто не даст запустить файл, что автоматически отсекает большинство рядовых пользователей.
Техническая архитектура порта: от DLL до BMP-кадра
В основе проекта лежит нестандартная связка компонентов. Внутри документа находится библиотека doomgeneric_docm.dll и игровые данные doom1.wad, закодированные в base64. После распаковки архива пользователю необходимо разместить в папке vba три скрипта, которые управляют циклом игры. Каждый игровой «тик» библиотека генерирует BMP-изображение текущего кадра, а система считывает нажатия клавиш через функцию GetAsyncKeyState. Именно этот механизм накладывает главное визуальное ограничение: экран ограничен разрешением 320х200 пикселей, чтобы не перегружать процессор рендерингом больших изображений в среде, не предназначенной для графики.
Сравнение с аналогами: почему Word-версия превосходит PDF
До этого момента основным способом «нелегального» запуска Doom в документах был проект DoomPDF, основанный на концепции Pdftris. Однако версия для Word, по словам разработчика, выглядит гораздо ближе к ретро-стилю оригинальной игры. Производительность здесь достаточно высока для комфортного прохождения уровней, в то время как PDF-аналоги страдали от низкой частоты кадров и артефактов рендеринга. Управление осталось классическим: стрелки для перемещения, Ctrl для стрельбы, пробел для взаимодействия и цифры 1–7 для выбора оружия.
Тем не менее, у проекта есть очевидный недостаток — полное отсутствие звукового сопровождения. Это не баг, а архитектурное ограничение: VBA-среда не предоставляет простого интерфейса для вывода аудиопотока без внешних библиотек, что пока не реализовано.
Ранее Войцех Грай уже прославился необычными портами Doom: он запускал шутер в текстовом формате (Doom-ascii), внутри игры Stardew Valley и даже в Minecraft. Каждый из этих проектов требовал нетривиального подхода к интеграции, но Word-версия выделяется именно тем, что использует корпоративный софт, который установлен на миллионах рабочих компьютеров.
Этот эксперимент поднимает серьезный вопрос для ИТ-отделов компаний. Если VBA-макросы способны эмулировать игровой движок и рендерить графику в реальном времени, то потенциальные угрозы от вредоносных скриптов, маскирующихся под документы, становятся еще более изощренными. Хотя Doom в Word — это безобидная демонстрация, она доказывает, что границы возможностей офисного пакета гораздо шире, чем предполагают стандартные политики безопасности. Возможно, в ближайшее время мы увидим ужесточение правил выполнения макросов, что сделает подобные порты достоянием истории, а не инструментом для игры на рабочем месте.














