Heya! Following up, the getAuthTicketForWebApi
feature seems to be working great, and my server is correctly validating the tickets. Fantastic!
But there's a slight problem. I've run into an edge case with Steam Family Sharing that I wanted to bring to your attention. When someone plays my game via Family Sharing, I've found that the auth ticket generated by the plugin correctly belongs to the player's account. However, the Steam.StaticAccountKey
expression returns the Steam ID of the owner's account.
This creates a mismatch that my backend server flags as an invalid request (as it should). It sees a valid ticket for Player A, but the request claims to be from Player B. My AI took a peek at the GitHub repo to understand it better, and noticed the user ID is retrieved from the UserStatsReceived_t
callback. A potential fix might be to use the standard SDK function SteamUser()->GetSteamID()
instead. This synchronous call should always return the ID of the actual current player, which would resolve the issue in Family Sharing scenarios.
I could just use the ID from the validated ticket as a source of truth.. However I think it should be addressed at the root, as I have other logic in my client that utilizes Steam.StaticAccountKey
.