feat: adds auth, implicit support for 64x64 skins,#1431
Closed
mattsumi wants to merge 4 commits intosmartcmd:mainfrom
Closed
feat: adds auth, implicit support for 64x64 skins,#1431mattsumi wants to merge 4 commits intosmartcmd:mainfrom
mattsumi wants to merge 4 commits intosmartcmd:mainfrom
Conversation
Collaborator
|
not up to quality standards, also includes contributions from a previous banned contributor that was making vibecoded PRs. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Changes
Previous Behavior
this adds a new auth with microsoft, ely.by, and offline accounts. users can finally manage accounts in-game without doing cursed manual stuff outside the client (username.txt, forcefully needing to create dlc to add a skin, etc.)
Root Cause
the previous (attempted) implementation was fully vibecoded. currently there is no implementation for auth, and 64x64 skins have been asked for a while now.
New Behavior
full microsoft account login via device code flow (the xbox live auth chain is stupid btw, like 4 separate token exchanges just to get a damn minecraft profile). ely.by support for the alternative auth crowd. offline accounts with proper v3 UUIDs. all stored in sqlite instead of whatever json spaghetti was there before. native UI for managing accounts in-game so you dont have to alt-tab and edit files like its 2003.
Fix Implementation
new [newauth] static library handles all the oauth/xbl/xsts/mojang API nonsense. newauthManager is a singleton managing up to 4 auth slots for splitscreen. AuthDb uses sqlite for account and token storage with auto-migration from the old json garbage. three new packets (170-172) handle server-side auth negotiation. UIScene_MSAuth is the in-game account manager UI with device code display, offline username input, and ely.by login (including 2fa). also rolled a custom json parser because adding a dependency felt like overkill for reading like 5 fields.
AI Use Disclosure
No AI was used to write the code in this PR.
Related Issues