AGS 2026.4.0 Release NotesSupported
This is the latest AGS version. AccelByte actively maintains this version by providing regular updates, bug fixes, security patches, and comprehensive technical support. Please refer to the AGS Version Support Lifecycle document for more information.
Release date: July 3rd, 2026
Versions
AccelByte Gaming Services (AGS) Game SDK
- Unreal Engine: [TBD]
- OSS: [TBD]
- Network-Utilities: [TBD]
- Unity: [TBD]
- P2P Unity: [TBD]
Extend SDK (previously known as Server SDK) latest version:
Please refer to the respective GitHub releases page:
- C#: https://github.com/AccelByte/accelbyte-csharp-sdk/releases
- Go: https://github.com/AccelByte/accelbyte-go-sdk/releases
- Java: https://github.com/AccelByte/accelbyte-java-sdk/releases
- Python: https://github.com/AccelByte/accelbyte-python-sdk/releases
- Codegen CLI : https://github.com/AccelByte/extend-codegen-cli/releases
Highlights
Analytics Connector S3 Exporter
Analytics customers can now export their historical event data from AccelByte's internal S3 bucket to their own client-owned S3 bucket in a separate AWS account. This self-service tool is a one-time, pre-launch utility designed to help customers secure a full copy of their data before the upcoming S3 data retention policy takes effect. It supports both AGS analytics event and game telemetry event types, provides progress visibility and historical export records, and maintains namespace isolation in shared cloud environments.
To access it from the Admin Portal, go to the Foundations menu → Game Analytics → S3 Export.
Analytics Usage Dashboard
The Usage Monitor is now available on the Admin Portal, giving customers visibility into the number of events processed into AIS Aurora across AGS and game telemetry sources. It displays cumulative event counts for the last three calendar months (including the current, in-progress month), with data refreshed daily via a scheduled cron job.
In shared cloud environments, usage is isolated per namespace, allowing each customer to view only their own data.
To access it from the Admin Portal, go to the Settings menu → Billing and Usage → Usage, and scroll to the bottom of the page to view Analytics usage.
Dynamic CORS Configuration Support
This feature allows customers to configure the allowed CORS origins (domains) for a specific namespace directly from the Admin Portal. Customers can manage their web integration security without submitting a support ticket or relying on the AccelByte infrastructure team.
To access it from the Admin Portal, go to the Foundations menu → Tools and Utilities → Allowed Origins (CORS).
Server-Side Filtering of Hidden Players in Leaderboards
This feature adds server-side support for filtering hidden users from leaderboards. Scores from hidden or moderated users are excluded from leaderboard rankings on the server directly, eliminating the need for game clients to perform the filtering themselves, as they do today.
This feature must be enabled manually by the customer on a per-leaderboard configuration basis. By default, it is disabled for both new and existing leaderboard configurations to avoid breaking existing integrations and game behavior. To enable this feature, navigate to your leaderboard configuration and turn on the “Hidden Player Filtering” option.
[Unreal Engine] Unreal Engine 5.8 Support
The AGS Game SDK now officially supports Unreal Engine 5.8 across the SDK, NetworkUtility, and OSS plugins.
Minor Changes
Reporting
- Added AutoResolve action support for auto-moderation rules. When AutoResolve is enabled and the report threshold is met, the ticket status is automatically set to CLOSED instead of AUTO_MODERATED.
- Allowed client credentials to be used with the admin submit report endpoint.
Challenge
- Improvement on the repeating challenge system with support for template slots, enabling more flexible and robust scheduling of recurring challenge goals across cycles.
Fleet Commander
- Added region state support to fleet region configuration, allowing regions to be marked as active or inactive. Fleet list and DS allocation responses now respect region state, and an includeInactiveRegions query parameter is available to include inactive regions in results.
Session
- Improvement for DS status change processing, ensuring DS status events are processed in order per session while allowing concurrent processing across different sessions.
- Added party code to game session sync, making party codes visible when game sessions are synchronized.
Matchmaking-V2
- Added one-way statistics matching enforcement during rule flexing: when stat-based matching rules are flexed, only one side needs to meet the relaxed criteria for a match to succeed.
Admin Portal
- Redesigned the third-party login platform configuration experience with category tabs, namespace badges, platform-aware setup modals, masked secrets, and contextual documentation links.
- Added PASSWORD_PROTECTED joinability option to session templates.
- Added platform hint alert when linking accounts in user management to help users understand which platform is being linked.
- Added restriction type select for all ban types in user management.
- Added date filter to fixed challenge goal preview.
- Enabled moving challenge goals to either the current or a future cycle from the challenge management UI.
- Added user statistics tab to the user lookup page.
Game SDK
- [Unreal Engine] Added support for Unreal Engine 5.8 across the SDK, NetworkUtility, and OSS plugins.
- [Unreal Engine] [OSS] Added GetDLCContent API to retrieve a user’s DLC content. Available on both the SDK Entitlement API and the OSS Entitlements interface (FOnlineEntitlementsAccelByte), with support for platform-specific DLC types such as
EAccelByteDLCType::STEAM. - [Unreal Engine] [OSS] Game sessions and parties now support PASSWORD_PROTECTED joinability directly through the OnlineSubsystem, without dropping down to the SDK. New FOnlineSessionV2AccelByte methods allow joining with a password and fetching or rotating game session and party passwords (
GetGameSessionPassword,GetPartyPassword,UpdateGameSessionPassword,UpdatePartyPassword). A newSETTING_SESSION_PASSWORDsession setting sets the password on create/update and is stripped from session attributes, never broadcast to other members. Requires AccelByteUe4Sdk 28.7.0 or later and backend support for PASSWORD_PROTECTED joinability. - [Unreal Engine] Added
Session::GetSessionSecretto fetch the per-(session, user) secret on demand via REST, recommended over caching the lobby V2SessionJoinedSecret notification when a player may join multiple sessions in quick succession. - [Unreal Engine] Added
ApiUtilities::GenerateTOTPAsync, which forces a fresh TimeManager sync before generating the code so the TOTP is anchored to AccelByte server time rather than the local OS clock. - [Unreal Engine] Added
FAccelByteTimeManager::SetBasicServerUrlto push a fresh server URL into TimeManager (for example after an environment switch), invalidating the cached server time so the next sync targets the new environment.
Bug Fixes
Admin Portal
- Fixed an issue where a Studio Admin could not invite other Studio Admins into their studio when only having a “namespace-” scoped namespace role.
- Fixed user statistics tab not being shown in the publisher namespace.
- Fixed USER wildcard permission check to correctly match IAM SDK behavior, resolving incorrect access control in some scenarios.
- Fixed leaderboard active cycle filter not persisting on page refresh.
- Fixed the View Account History button not appearing for studio namespace users in Shared Cloud.
- Fixed role name edit buttons being obscured by the hint popover.
- Fixed match pool list columns (Name, Ruleset, Session Template) overflowing into adjacent columns.
- Fixed audit log filter action buttons not being visible on the User Details tab.
- Fixed challenge goal edit being incorrectly disabled for fixed challenges with repeatAfter set.
- Fixed total goal set count not updating correctly after modifying repeatAfter in a challenge.
- Fixed challenge goal slot update endpoint not being called when creating a goal through the create challenge flow.
- Fixed future cycles group missing from the challenge goal sets view.
- Fixed challenge template slots not being used as the source of truth for goal grouping.
- Fixed goal confirmation dialog not showing the assigned goal set impact row when a goal’s slot changes.
- Fixed report list not showing a reason column, and added tooltip for long reason text.
- Fixed inventory grant form not retaining the user ID after granting an item.
- Fixed AMS unsubscribe alert threshold not being based on the current plan.
- Fixed config migration export rule environment always defaulting to ags-starter.
- Fixed scope field UX and validation bugs for Epic and OIDC login platform configuration.
- Fixed matchmaking xray history displaying an error when the response is null.
Config Migration
- Fixed missing type value in some get export rule API responses.
- Fixed incorrect social associated modular package reference.
Platform
- Fixed fulfillment history query to require a user ID parameter, preventing unintended broad data queries.
Leaderboard
- Fixed an issue where adding a new leaderboard to an existing stat code mapping did not work correctly.
Challenge
- Fixed an issue where template slots were missing during config migration for repeating challenges.
- Fixed an issue where round 1 was not created when moving goals to slots in a repeating challenge.
Fleet Commander
- Fixed DS status change events not being processed in order per session — events are now sharded by session ID to guarantee ordering while allowing concurrent processing across different sessions.
- Fixed creating or updating a fleet with a duplicate fleet name returning HTTP 500 instead of the correct HTTP 409 conflict response.
- Fixed DS status change events not being published when a dedicated server transitions to the claimed state.
Session
- Fixed an issue where DS server connection details were lost when AMS sent unresponsive or claimed events, causing sessions to lose server information.
- Fixed cross-platform join setting not being read correctly during session sync due to incorrect field key handling.
- Fixed maxPlayers limit not being enforced in party creation and session validation — the value can no longer be overridden by users beyond the configured maximum.
- Fixed session server details not being preserved when a DS event contains no server details.
- Fixed MPA (matchmaking pool activity) records not being cleaned up when a session transitions to CLOSED joinability.
Matchmaking-V2
- Fixed an issue where stale IsFull events could remove valid backfill tickets before the session was actually full.
- Fixed an issue where backfill tickets created after session reuse were incorrectly marked as outdated, causing them to be prematurely rejected.
- Fixed party attribute filtering to only apply filters for attributes explicitly specified in the ruleset, preventing incorrect match rejections.
- Fixed unnecessary calls to the Social service when statCode is empty.
Chat
- Fixed issue where WebSocket clients disconnecting every ~60 second.
Game SDK
- [Unreal Engine] Improved TOTP code validation so the acceptance window is applied correctly and uses a tighter, standards-aligned tolerance for clock drift, resolving cases where valid codes could previously be rejected.
- [Unreal Engine] The TimeManager server URL now refreshes automatically on
SetEnvironment, so existingFAccelByteInstanceobjects pick up the new environment URL without requiring a restart. - [Unreal Engine] Fixed
FAccelByteModelsV2SessionJoinedSecretnot exposing the SessionID field, which was previously dropped during deserialization. - [Unreal Engine] [OSS] Added
SETTING_MATCHMAKING_SESSION_IDto the session-attribute skip list alongside other internal matchmaking fields (such asSETTING_MATCHMAKING_BACKFILL_TICKET_ID), ensuring it is excluded from session attribute serialization and resolving a matchmaking discrepancy with existing sessions.