Enable Xbox Live sign in and multiplayer in Minecraft - #60
Conversation
|
Perhaps embarrassingly, I have been working on this since around december and only came across #33 today. I have tried my best to reconcile what I had locally with that branch |
|
Hi, great work! I am also actively in the progress of updating #33 to consume the bleeding edge changes to Xodus ipc for device/title auth via sisu flow, for accessing both default and title specific endpoints ( |
|
Hey there, thank you! and yes, happy to. once the new Xodus/SISU work is available I can rebase my commit onto it, resolve the overlapping pieces, retain only the fixes still needed, and test minecraft again. if you prefer to cherry pick I can split the commit further. let me know what works best |
|
Hey, I'm getting a crash trying to run 1.26.33 with this branch. sign in screen renders fine, D3D11 device creates fine (tried both wined3d and DXVK), but it dies right after this every time: fixme:gdkc:XNetworkingRegisterConnectivityHintChanged queue ..., callback ..., token ... stub! Same crash spot both times, before and after switching to DXVK, so probably not a rendering issue but I wouldn't know. Arch/Hyprland rtx 4060 game files via xodus streaming. I can grab a full backtrace if you want or if its helpful. not sure if this is environment or a real issue since im not really a coding genius, sorry |
|
@yuuzuree yes, a full backtrace would be useful |
|
@Sightem heres a snippet of the important pieces, also every frame is inside minecraft.windows itself theres no xgameruntime/wine frames except the thread trampoline at the bottom, so its not crashing in the stub call itself. null pointer write on a bg thread right after XNetworkingRegisterConnectivityHintChanged gets stubbed. my guess is the stub returns success without actually setting something up and the game null derefs it later but no idea if thats right Unhandled exception: page fault on write access to 0x0000000000000000 in 64-bit code (0x000001443605a7). |
|
the crash is on minecraft worker thread while loading a TextureSet through could you provide the complete log from process startup, the exact commit you built, and retry with a freshly streamed Content directory using current xodus? |
|
@Sightem I tried to get you a fresh pull but hit a different xodus bug, current main doesnt seem to decrypt the exe during streaming anymore (comes out as raw data not a valid PE), and the new run command errors out on both a directory and the msixvc file. not sure if thats expected right now or a bug on their end or just my issue my original install still reproduces the exact same crash though, same registers, same backtrace, so that ones alright to tinker with, the commit i built from is b5d23b0 |
|
that is quite strange, beats me honestly |
|
Just a quick question. Does this require Linux-specific binaries? Because Mac users are definitely feeling a bit left out back here |
|
@ItsAMariotimeGitTheHub this PR is tested with WineGDK inside GDK-Proton, and im unaware if macos analogues exist. Xodus itself is Rust and to |
this is wrong for xodus..., I develop it on macOS and it works as the game.(well instead of proton you need crossover) |
This builds on #33 and implements the Gaming Runtime behavior minecraft’s embedded XSAPI needs to finish xbox live initialization. it enables Xodus interoperability, consumes the returned MSA token, completes XUser/XSTS/profile setup, routes token requests to the correct relying party, fixes token and signature result buffers, and supplies the user state and identity methods minecraft queries
It also adds the required XNetworking information flow, XSystem interface support, and fixes Xodus socket response handling
Tested with Minecraft Bedrock 1.26.33 under GDK Proton10-32: Xbox Live sign in works and multiplayer servers can be joined without ProxyPass