October 2025 Microsoft Game Development Kit (GDK) release notes
Introduction
Welcome to the October 2025 Microsoft Game Development Kit release. You can use the GDK to develop games that can be certified and approved for release on Windows 11 PCs and Windows 10 PCs.
About this document
We have organized this document into the following sections.
- What's new
- Release notes:
- Known issues
- Documentation
What's new in the October 2025 Microsoft Game Development Kit
- The GDK is released in two types: Major (focused on features, two times a year) and Updates (focused on fixes, as often as needed).
- To view the full What's New section, see the online version of What's New.
October 2025 GDK Update 1
Notifications
Cross-platform functionality
XUserSignOutAsyncandXUserSignOutResulthave been added to support player sign-out on Steam Deck.XUserIsSignOutPresentcan be used to determine whether the current device supports sign-out via API.
Xbox services
Three new APIs—
XGameInviteRegisterForPendingEvent,XGameInviteUnregisterForPendingEvent, andXGameInviteAcceptPendingInvite—have been added to restore consistency forXGameInvitecallbacks, which previously behaved inconsistently across in-proc and out-of-proc scenarios. The new pending-invite handler is called only in in-proc flows. After the title handles invite acceptance,XGameInviteAcceptPendingInviteis called. This triggers the invite-accepted callback.On Windows and Xbox console (where Gaming Runtime Services (GRTS) is available), shell UI was responsible for the invite acceptance flow. The title was notified only when the invite was accepted. For in-proc scenarios, such as Steam Deck, titles handle invite acceptance. The
XGameInvitecallback fires when an invite is received so that titles can manage the acceptance flow.
Microsoft Azure PlayFab Game Saves
Upload progress tracking now reports compressed byte counts. This change keeps progress callbacks and telemetry aligned with the actual data streamed and prevents premature "completed" percentages when large saves compress poorly.
The previously dormant
PFGameSaveFilesAddUserOptions::RollbackToLastKnownGoodandRollbackToLastConflictflags have been enabled. They now honor rollback requests duringPFGameSaveFilesAddUserWithUiAsync. Titles get the expected selection instead of always syncing to the latest save.
Initialization now cleans up correctly after
E_INVALIDARGfailures (such as a missing Steam Deck save path). This change ensures that subsequent calls no longer report "already initialized."
Logging was added to improve diagnostics when running out-of-process.
Issue fixes
Microsoft Azure PlayFab Party
Fixed an issue where PlayFab Party voice chat couldn't be established when no
XUserwas signed in, including on Steam games played on Windows without an Xbox network user and on Steam Deck.
Xbox services
Fixed an issue where the URI received by the game from
XGameInvitecallbacks on Steam Deck didn't match the URI received on Windows. The Steam Deck URI only included the connection string but was missing the sender information and invited user XUID.
October 2025 GDK
Notifications
GDK tools
The
/updatesubvalflag has been added to MakePkg for checking for a newer version of SubmissionValidator.dll. If this flag is used and a newer version of the SubmissionValidator.dll is available, MakePkg downloads and places the .dll file in the path for MakePkg.
The Touch Adaptation Kit Command Line Tool (TAK CLI) (tak.exe) has been removed from the GDK setup. For instructions about how to download this tool, go to TAK CLI on GitHub.
Known issues
XUserResolveIssueWithUiAsync flow
Issue:
TheXUserResolveIssueWithUiAsyncAPI is intended to resolve user account issues such as token or consent problems, not to change the signed-in identity. However, it's possible for a user who originally signed in with Account A to complete this flow and sign in with Account B, resulting in a different XUID.Impact:
When the account changes during this flow, the API detects the mismatch and automatically fails the operation.Applies to:
- October 2025 GDK
- October 2025 GDK Update 1
Guidance:
If the operation fails because of an account change, remove the user and re-add the user to ensure proper sign-in.
Downloading compressed save data
Issue:
PlayFab Game Saves might encounter issues when downloading compressed save data that's larger than its uncompressed size. This is most commonly encountered when a game is using its own file compression in addition to PlayFab Game Saves.Applies to:
- October 2025 GDK
- October 2025 GDK Update 1
Guidance:
Consider disabling additional file compression, if possible.Status:
This will be fixed in a future GDK update.
XblTestAccountGui tool test account error
Issue:
TheXblTestAccountGuitool might fail to sign in test accounts. If so, the following error message appears.Live auth error: Login Error: The remote server returned an error: (400) Bad Request.
Applies to:
- October 2025 GDK
- October 2025 GDK Update 1
Status:
This issue is corrected in the latest GitHub release of the Xbox Live developer tools. They're available at https://aka.ms/xbltools. This fix will be included in a future GDK release.
XGameInviteRegisterForPendingEvent must be called before adding XUsers
Issue:
On Steam Deck,XGameInviteRegisterForPendingEventmust be called before addingXUsers, or they won't be properly registered for invite notifications. This sequencing requirement was unintentional.Applies to:
October 2025 GDK Update 1Status:
This issue will be fixed in a future GDK release.
XGameInviteRegisterForPendingEvent requires connectionString to be set
Issue:
On Steam Deck,XGameInviteRegisterForPendingEventwon't invoke title callbacks for invites that are missing the Xbox Multiplayer Activity (MPA)connectionString. Although it's an optional field when sending the invite,XGameRuntimedrops invite payloads without it.Applies to:
October 2025 GDK Update 1Workaround:
Provide a non-empty connection string when sending the invite. Ignore it on the receiving end if it isn't needed.Status:
This issue will be fixed in a future GDK release.
Documentation
Offline documentation for the October 2025 release of the GDKX is installed on your development PC by the GDKX Setup program. After running Setup, the Help file for the GDKX (gdk.chm) is in C:\Program Files (x86)\Microsoft GDK\Documentation.
- The online GDKX documentation is at https://aka.ms/gdkonline.