Category: Authentication / Login
Priority: High
Platform: Steam (Linux via Proton), Steam Deck
- Issue Description
When attempting to authenticate via social networks (Google, Facebook, Apple ID, etc.) , the game launches the system’s web browser to complete the OAuth flow. After successfully entering credentials in the browser, the page does not redirect the user back to the game. Instead, the browser remains open, and the game client continues waiting indefinitely, resulting in an infinite loading state or an “Authentication failed” error.
- Expected Behavior
After successful authentication in the browser, the user should be automatically returned to the game client, and their account should be successfully linked/authenticated. This is the standard OAuth flow behavior.
-
Technical Context (for Developers)
Environment: The game runs through Proton/Wine (Windows emulation on Linux).
Problem: In Proton/Wine environments, inter-process communication mechanisms (e.g., handling custom URI schemes or localhost redirects) behave differently than in native Windows.
Root Cause: Most likely, the game uses the default system browser for OAuth but:
Does not properly register a custom protocol handler (e.g., dragonheir://auth) in the Wine prefix. Or expects a localhost redirect on a port that is blocked or unavailable in Proton’s isolated network namespace.Log Evidence: Proton logs (PROTON_LOG=1) often show errors like No protocol handler for URL scheme: dragonheir.
-
Suggested Fixes for the Development Team
Implement an embedded OAuth webview (recommended): Use an embedded browser component (e.g., CEF) for authentication within the game window, as many modern games do (Genshin Impact, Honkai: Star Rail). This completely avoids inter-process communication issues.