Skip to main content

AGS Starter 0.8.0

Last updated on

Release Date: April 6th, 2023 Indochina Time.

  • Current AccelByte SDK Unreal Engine: 22.0.2
  • Current AccelByte SDK Unity: 15.15.0
  • Current AccelByte Network-Utilities: 3.0.0
  • Current AccelByte P2P Unity: 0.2.5
  • Current AccelByte OSS: 0.9.3

Here’s a look at what’s new in AccelByte Gaming Services (AGS) Starter 0.8.0

Highlights

  • Implement Flexing Roles in Game Modes

    You can now configure flexing roles in a game mode, giving you greater control over how your game handles matchmaking between players. This will improve matchmaking times in your game, meaning less waiting and more playing!

  • Set Expiration Time for Access and Refresh Tokens

    You can now set the expiration times for Access and Refresh Tokens for IAM Clients in the Admin Portal.

  • Configure Role-Based Matchmaking in the Admin Portal

    You can now configure role-based matchmaking in the Admin Portal, allowing you to refine how your players are matched together.

  • Added Authentication to MSK

    We now support Kafka SCRAM authentication which can be activated via environment variables. Cloud will continue to use non-authenticated mode by default.

  • Turn Manager Generates Secret for Each User

    You can now use the Turn Manager to generate a secret for each individual user. The generated secret can also be used in the Turn Server.

  • Override Scope Value in OIDC Login Integration

    You can now override the scope value when configuring your OIDC Login Integration, giving you greater flexibility when configuring 3rd-party platforms.

  • Party-related Endpoint Improvements

    You can now use Session service endpoints to:

  • Multi-Factor Authentication with Email

    For multi-factor authentication, you can now allow users to authenticate via email. This works for both Admin Portal users and players using the Player Portal or logging into your game.

  • Asymmetric Party Support

    Our Matchmaking service now supports asymmetric parties. Parties can either be asymmetric in the number of players in each party, or in the types of roles contained within each party.

  • Loot Box Support

    We’ve added a new Loot Box item type so that you can add loot boxes to your game. You can choose which items have a chance of appearing in a loot box, and set the probability for each item to appear in the Admin Portal.

  • Matchmaking Based on Player Roles

    The Matchmaking service is now able to match players based on their role in the game. Only players with the defined role will be able to join the match.

  • New Status for Disconnected Players in the Session Service

    Previously if a player was disconnected from a session, the player was marked as dropped which made them unable to rejoin the session. Now, disconnected players will be marked as disconnected and will be able rejoin the session before reaching the inactiveTimeout limit. If they don’t rejoin the session before the inactiveTimeout, they’ll be marked as dropped.

  • Force Logout from Lobby

    Now, when you set the Max Player value for the Lobby lower than the number of connected players, it will force random players to logout from the Lobby. This is useful if you need to perform maintenance on your game. Just set the Max Player value to 0 to force all players to log out while maintenance is performed.

  • Client-SDK Improvements

    Our Client-Side SDK now has the ability to:

    • Calculate the server time added in both Unreal Engine OSS and the Unity SDK.
    • Use the Analytics service with the Unreal OSS.
  • Enable and Disable Lobby

    ou can now temporarily disable the lobby to perform maintenance on your game. When the lobby is disabled, any active players will be forced out of your game, and no players will be able to join the game until the lobby has been re-enabled.

  • New Status for Players in the Session Service

    Previously if a match was ended, the player’s status would remain as connected. Now if a match ends, the player’s status will change to terminated

  • Account Linking with One Time Code

Players can now link their 3rd party headless account to their full account in your web platform using a one time code.

  • Related Endpoints

  • Create and Edit Player Records in the Admin Portal

    You can now create and player records in the Admin Portal. This can be used for testing or for fixing a player record that is missing or incomplete. Previously, you could only create a player record using the API.

  • New Presence status: Away

    You can now use the Away status to indicate that players are unavailable for a match.

  • New endpoint allows game client to retrieve player records in bulk

    Game clients can now query player records in bulk to support features that require multiple player records

  • In-game store displays, store sections, and rotating shop item

    You can now implement store displays, display sections, and item rotations in your in-game store for the better store catalog management and to offer players with more choices in the in-game stores. A rotation of items can be easily configured to allow an in-game store to display a different set of items for each set period of time.

  • Personal item slot and owned-item backfill

    You can now give players special items they can buy from the rotating store so that they feel rewarded for checking in store catalog. Additionally, items already owned by players in the rotation store should be backfilled with other items so that real estate of the rotating shop would not be wasted.

  • Retrieve game records in bulk

    Game clients can now query game records in bulk by keys to support in-game features that require multiple game records.

  • See specific player reporting in user management

    Now you are able to see all the report tickets for a specific user in a user management page.

  • Player able to joins multiple group

    Now you can choose your group configuration to allow player to joins to multiple or single group at the same time.

  • Loot Box customization using the gRPC architecture

    You can now customize your loot box reward logic and mechanism using the gRPC architecture after previously you can only use the default method.

  • In-Game Login Using Oculus

    You can now configure Oculus in-game logins through the Admin Portal. After configuring, your players can login in-game using their Oculus accounts.

  • Adjusting Statistics Min and Max Value

    You can now increment or decrement over the configured min and max statistics value.

  • Improved Admin Portal’s sidebar & header UX

  • Virtual Currency Revocation Configuration

    • You can now configure revocations of virtual currencies through the Admin Portal.
  • Added support for Authenticating OIDC Login Method using UserInfo Endpoint

  • Added new type in achievement which is global achievements and that’s can be unlocked with global statistics

  • DoB (Date of Birth) on the User Details page in the Admin Portal

    • The DoB field is brought back to the User Details page in the Admin Portal.
  • Admin Portal page for Chat Reporting and Moderation

  • Group service publish event for analytics based on user actions related to the group

  • Additional Custom Match Function toggle in Match Configuration in the Admin Portal

  • Admin can now configure the following field via Admin Portal in Match Pool:

    • Auto-Accept Backfill Proposal
  • Override Match Function is now Override Specific Function in Match Pools and the toggle has been removed. Now it is a fillable field.

  • Adjustment in Admin Portal page on Session Template modal, it will only display these fields if Admin choose DS as the Session Type:

    • Deployment
    • Client Version
    • Requested Regions
  • Achievement update configuration behavior improvement. Admin can now flexibly update the configuration, as long as it hasn't been activated, or the status is tied.

  • Admin Portal page for Chat Configuration and Chat Profanity Filter. Admin can now do the following actions:

    • Chat Configuration
      • Select the database for the Chat filtering method (Default or gRPC)
      • Configure Chat Rate Limit
      • Configure Chat Spam Limit
    • Chat Profanity Filter
      • Register a profane word along with its falsePositive and falseNegative (if client chooses Default as database for chat filtering method)
      • See registered profane words in alphabetical order with non-alphabet characters located after the alphabet ones.
  • Admin Portal page for Match Function. Admin can now create a match function via the Admin Portal.

  • Expiration dates (start & end dates) can now be added to Code Redemptions through the Admin Portal

  • Admin Portal for system inbox notifications. Game admin now can:

    • Create a message to all or specific user which later send into user’s inbox
    • Save message as draft
    • Delete message from user’s inbox
  • Admin Portal page for User Management. Admin can now modify a user's private custom attributes via the Admin Portal.

  • New API endpoint (bulkUpdateRegionData) to allow for changing of items' region data in bulk. Admins can now use API calls to make changes to multiple items' region data in one call.

    • API endpoint: /platform/apidocs/#/Item/bulkUpdateRegionData
  • Leaderboard service now handles user's entry removal on the leaderboard when the user deletes their account

  • Add ability in UGC to support users to get other users’ channels

  • Expose Auto-accept Backfill proposal in Add Match Pools modal

  • Adding explanation on Joinable in Matchmaking Ruleset MPv1

  • Match Functions change title to gRPC Plugin

  • Adding edit button on gRPC Plugin

  • Remove default JSON template in Match Ruleset (MPv2) creation and adding new button to show default template that Game Admin can copy

  • Adding Override Specific Function in Match Pool Modal:

    • Stat Codes
    • Enrichment
    • Validation
    • Backfill Matches
    • Make Matches
  • Adding dropdown list of gRPC plugin selection if Game Admin choose to select Use gRPC Plugin

Bug Fixes and Minor Changes

  • Fixed login and 3rd-party account linking issues and improved account security.
  • Improved the UI for Item Mapping.
  • You can now search for UGC content by Content ID or User ID in the Admin Portal.
  • Added a server status filter to the Historical Logs page.
  • Fixed and improved issues in Matchmaking, Multiplayer V2, E-commerce, Telemetry, and Legal services.
  • Fixed functional issues in the App Editor, Player Portal, Launcher, Matchmaking, Armada, Wallet, IAM, Store, Entitlement, UGC, Ban, DLC, Analytics & Data Monitoring, Reward, Python Server-Side SDK, and OSS services.
  • Fix missing validation for group max member when user join OPEN group
  • When a match is found in Matchmaking, all players in the match now receive a notification.
  • Fixed multiple issues in the AccelByte Unreal Engine OSS that were causing crashes.
  • Deprecated the EventTimestamp and EventID attributes from the Protected Save Events endpoint to clarify their use as these attribute values are auto-generated.
  • Resolved a security issue with User Generated Content
  • You can now filter achievements based on their tag and code in the Admin Portal.
  • You can now search for a particular user statistics value and statCode in the Admin Portal.
  • Group service updated with a bug fix that addresses the free form notification issue that was not sent to the users
  • Fixed Admin Portal in UGC feature that caused Admin to not delete the channel created by Admin
  • Add View action and read-only Achievement details page when using View Only role so that Admin with View Only role can see achievement detail
  • Fixed Update and shortBy functionality for UGC content in SDK

Breaking Changes

  • Shutting Stadia Integrations for Login and In-App Purchase

    We will be shutting down the Stadia integrations on our platform, effective 13 February 2023.

  • E-Commerce Service - Media Item type will no longer be able to be set as consumable

  • Unreal SDK Plugin

    • Changes on some variables in AccelByteUserProfileModels on the unreal-sdk-plugin
      • Before:
        • TMap<FString, FJsonObjectWrapper> CustomAttributes{}
        • TMap<FString, FJsonObjectWrapper> PrivateCustomAttributes{}
      • After:
        • FJsonObjectWrapper CustomAttributes{}
        • FJsonObjectWrapper PrivateCustomAttributes{}
  • Cloud save OSS interface

    • Additional field (key) in the callback. This change impacts DeleteUserRecord, ReplaceUserRecord, GetUserRecord, ReplaceGameRecord