Star 历史趋势
数据来源: GitHub API · 生成自 Stargazers.cn
README.md

Xodus

The great gaming migration to Linux

Discord

[!CAUTION] This is an unofficial project - use at your own risk. It is not affiliated with, endorsed by, or sponsored by Microsoft or XBOX; all trademarks, product names, and company names or logos mentioned herein are the property of their respective owners.

Current state of the project

The project can now login, download packages and obtain licenses for games.

These parts are still quite scattered around.

  • Device login
  • User login
  • XBOX authorization
  • MSIXVC download
  • On-demand .exe decryption #50
  • MSIXVC2 support #53

FAQ

Q: What is Xodus
Xodus aims to bring XBOX PC games to Linux and possibly Mac devices.

Q: When can I play my Minecraft Bedrock?
While Xodus is quickly maturing, there is still a lot of work to support it from Wine standpoint to provide necessary XBOX Services to games.
TL;DR soontm

Q: How to get involved?
Start by joining our Discord or review any open GitHub issues .

Q: What games will be supported?
We hope to manage to support most of the catalog, the limitation is the game has to be GDK and in MSIXVC format.
So far Gears of War 4 is a prominent unsupported title for the time being.

Q: Will XBOX Backward Compatibility on PC work?
While Xodus is capable of downloading and running those titles. It's possible these games will work only after additional patches to wine, dxvk or vkd3d-proton.

Building

The project structure is as follows.

.
├── msixvc - [rlib] common rlib crate for utilities for parsing MSIXVC and XSP files
├── xodus - [rlib] common rlib crate that contains core xodus functionality, API calls abstractions and utilities
├── xodus-cli - [bin] CLI currently used for iterating over new xodus features
└── xodus-service - [bin] service process exposing a xodus.sock for IPC communication, it takes care of xgameruntime.dll integration.

[!NOTE] xodus-service aims to become a main point of integration. All xodus clients will connect to it to interact with games and XBOX services.

Prerequisites

Running

Building all crates in release mode

cargo build --release --workspace

Running cli in debug

cargo run -- --help

Running xodus-service in debug

cargo run --bin xodus-service

Debug and profile xodus-cli or xodus-service with tokio-console

RUSTFLAGS="--cfg tokio_unstable" cargo run --features tokio_console 

[!WARNING] For better performance when decrypting MSIXVC files, the aes and ssse3 features are enabled on x86_64, and the aes feature is enabled on aarch64. This means that the program will crash with an illegal instruction error when running on a CPU which doesn't support those instructions.

See https://en.wikipedia.org/wiki/AES_instruction_set for a list of compatible CPUs (every processor from 2011 onwards should be supported).

CLI Usage

Usage: xodus-cli <COMMAND>

Commands:
  download    Download msixvc or xsp files for a given game
  license     Dump CIKs for use with XvdTool
  extract     Extract locally stored msixvc file
  login       
  streaming   Download and extract the game through streaming algorithm
  clep        Generate or decrypt base64-encoded CLEP challenge data
  sp-license  Decode SPLicenseBlock
  help        Print this message or the help of the given subcommand(s)

Options:
  -h, --help     Print help
  -V, --version  Print version

Special Thanks

关于 About

The great gaming migration to Linux
gaming-softwarexboxxbox-game-pass

语言 Languages

Rust99.2%
Python0.8%

提交活跃度 Commit Activity

代码提交热力图
过去 52 周的开发活跃度
138
Total Commits
峰值: 40次/周
Less
More

核心贡献者 Contributors