Игры для Xbox на ПК, распространяемые через приложение Xbox, не запускаются на Linux из-за проприетарной среды выполнения GDK от Microsoft. Это также ломает Game Pass, хотя компания поддерживает облачный стриминг игр Game Pass. Новый проект с открытым исходным кодом от разработчиков Heroic Launcher, названный «Xodus», нацелен исправить это с помощью обратного инжиниринга и эмуляции необходимых компонентов для запуска игр Xbox на ПК под Linux.
Xodus в первую очередь ориентирован на современные игры Xbox для ПК на базе GDK и их пакеты MSIXVC, а не на старые релизы на UWP, такие как Gears of War 4 и ранние игры Forza Horizon. Проблема с ними не в API DirectX или инструкциях x86; Proton и DXVK/VKD3D уже могут их переводить. Это также причина, по которой вы всё ещё можете запускать игры Xbox на ПК под Linux, если каким-то образом достанете исполняемые файлы без DRM.
Настоящая проблема — это триединство проприетарного GDK (Game Development Kit) от Microsoft, служб идентификации Xbox и зашифрованных пакетов MSIXVC. Эта среда отвечает за проверку лицензий на игры, которые вы приобрели через приложение Xbox. Без её работы в фоне игры просто вылетают при попытке открыть их или вовсе не запускаются. Вот здесь и вступает в дело Xodus.
Команда Xodus сообщает, что проект уже может входить в службы Xbox, загружать игровые пакеты и получать лицензии на игры. Он включает собственную реализацию с открытым исходным кодом xgameruntime.dll и пользовательские форки Wine и Proton, а также xal-rs — библиотеку аутентификации Xbox для Rust. Xodus использует прокси-библиотеки для взаимодействия с играми на GDK и перехватывает вызовы API для передачи действительных токенов Xbox Live.
Пока усилия сосредоточены на эмуляции Xbox Gaming Runtime из Xbox GDK через Wine, затем проект перейдёт к непосредственному запуску и воспроизведению игр Xbox для ПК локально. Учитывая, что они уже решили проблемы аутентификации Xbox/Microsoft, проверки лицензий и расшифровки пакетов, скоро мы сможем увидеть PC Game Pass, работающий нативно на Linux.
BedrockonLinux 2.0, ещё один проект с открытым исходным кодом, который приносит Minecraft Bedrock на платформу, уже использует аналогичные технологии обратного инжиниринга для обработки этих компонентов с тех пор, как Microsoft перенесла игру на GDK. Это позволяет игре общаться с Xbox Live в реальном времени через защищённый канал для аутентификации токенов, несмотря на то, что игра работает в изолированной среде, такой как SteamOS (Linux).
Сама Microsoft в прошлом месяце выпустила четыре оригинальные игры Xbox на ПК и заявила, что будет больше, а утекшие документы указывают на выход игр Xbox 360 на ПК в следующем году. Эти игры поставляются со встроенным эмулятором Xbox 360. Однако пока неясно, используют ли эти игры тот же стек GDK, что и нативные игры Xbox для ПК.
Всегда имейте в виду, что редакции могут придерживаться предвзятых взглядов в освещении новостей.
Автор – Hassam Nasir




