What's New 2023.2
General updates
Version naming
With this release we are changing the versioning for ADT. Future releases will be numbered according to the year (2023) and the release within the year (in this case the second release of the year).
Component versions
AccelByte Development Toolkit (ADT) release version 2023.2 includes the following component versions:
- ADT Web Portal v1.24.0
- ADT Hub v0.20.0
- ADT SDK v2.25.0
- ADT CLI v2.15.0
Unreal Engine 5.2 support
ADT is being updated to support 5.2. Full support did not make it into 2023.2 but we will be releasing a patch update soon.
Distribution updates
Smart Builds beta
We are incredibly excited that Smart Builds are moving from Alpha to Beta. This represents the point at which we feel Smart Builds are almost ready for production use but there may still be some bugs to work out. They can be used on all platforms now but only Windows on Unreal 4 or 5 will show the benefits currently. Support for console platforms and for Unity will be added in the second half of this year. We encourage you to start using Smart Builds in your day to day work, but be cautious about using them for anything critical. Please report any bugs or issues you encounter right away.
Smart Builds represent the future of build distribution in ADT. They use a content aware diffing mechanism that ensures you only ever upload and download what has actually changed between any two builds. They improve upon existing methods of binary diffing in two key areas: they are near optimal and don't suffer from combinatorial explosion when attempting to calculate patches across many different non-sequential builds. This reduces transfer time and storage requirements dramatically. In our comparison tests we have seen 10x improvements in the end to end delivery time of a build, and instead of storage requirements scaling linearly with builds, it scales only incrementally by 10-20% for each successive build.
In the coming months, as Smart Builds move to full general release, we will look to deprecate the existing distribution mechanism. When we are ready to do this we will communicate this clearly, and provide a migration tool that allows builds under the existing system to easily transfer to Smart Builds.
Uploading a smart build using the CLI
Downloading a smart build from ADT Hub
Android APK distribution
We've had a number of requests to add additional platform support to ADT's build distribution. As a step towards that, we have added Android support to ADT. With this release, Android APKs are now fully supported in ADT. This means you can upload and download builds through the ADT CLI or drag & drop. You can also connect Android devices to ADT Hub, and deploy builds to any attached device. All the usual time savers such as auto download, deploy, and play are also available for Android.
Pairing an Android device
Deploying an Android build from Version page
Deploying an Android build from Overview page
Scheduled auto update for build channels
Auto update currently downloads an update as soon as it becomes available. Sometimes this might not be what you want as it may not be a convenient time. In addition, having all the auto updates happen simultaneously for all users can cause network bandwidth saturation. ADT now provides an option to schedule automatic updates by setting a specific time for a new build to be downloaded. An optional time offset can also be applied to the scheduled time to reduce network congestion caused by all clients attempting to download at the same time.
Command line control over build status
It has always been possible to set the status for your builds through ADT Hub, but we've now added the ability to do this from the command line. This enhances support for automated workflows where you want to manage this from your build machine. To make use of this, there is a new CLI command (shown below) called set-build-status which takes the –build-status
argument with the status you want to set.
C/C++
.\BlackBoxCLI.exe build set-build-status --build-status <build_status> --namespace <namespace> --apikey <your_apikey> --game-project <the_game_project_path>
Options
Commands | Descriptions |
---|---|
--help,h | Print this help message and exit |
--build-status TEXT (REQUIRED) | Choose one: stable, notStable, stableWithNote, tbd, and unverified |
--build-id TEXT (OPTIONAL) | buildID that you want to add/change the status |
---version-id TEXT (OPTIONAL) | Override version id to be used |
Create empty build channels
Up until now, it's always been necessary to specify a build when you want to create a build channel. We've now added the ability to create empty build channels. This separates the process of creating a channel and uploading a build to it allowing for more flexible automation workflows. You can do this through the CLI or directly from ADT Hub.
C/C++
.\BlackBoxCLI.exe build-channel create-empty --name <build_channel_name> --namespace <namespace> --apikey <your_apikey>=
Creating an empty build channel using the ADT CLI
Creating an empty build channel from ADT Hub
Rename installation folder
Currently ADT forces a default build installation folder which cannot be changed. If you attempt to change it manually the build will become unplayable. In this release we added a way to change the build installation folder. You can find this new option under the ellipses menu after you have finished downloading a build.
Changing the build installation folder from the channels page
Changing the build installation folder from the versions page
Health updates
Grouping sessions by match
When making a multiplayer game and diagnosing problems, it can be challenging to know what clients are playing together and on which server in a particular match. ADT now provides a way to group sessions by match. This allows you to easily see session details and logs for all of the participants in a particular match. This can help you identify and correlate issues that occur in a match and analyze whether this is related to a specific user or a server problem.
Viewing grouped sessions from the Matches page
Viewing grouped sessions from the Playtests page
Bulk delete
Builds and crash data grow rapidly over time. Being able to manage this effectively is important to keep things organized and control cost. In the last release we added the basic ability to delete versions and associated data. With this release ADT now allows admins to easily delete multiple versions in a time range along with their associated builds, metadata, binary files, and symbol files.
Custom call stack grouping
The default grouping that ADT uses to match call stacks works in many situations, but there are often cases where you want more precise control. ADT web now provides the ability to have much more control over call stack matching through the use of rules that you can create. Rules use a git ignore
style pattern matching to allow you to exclude call stack lines for the purposes of matching. You can do this on a global, module, or file basis for more fine grained control. In addition, you can now control how many lines should be considered as part of the matching algorithm. Currently these rules will only apply to new crashes and not existing ones.
Custom symbol server
ADT now allows you to specify your own symbol server instead of using ADT's built-in symbol server. By enabling this feature, users no longer need to upload PDB files and you can manage them externally. Instead, after registering a build, you only need to specify the CrashURL
. This functionality streamlines the process and offers improved convenience for managing symbols and crashes. Currently this is only supported for Windows builds.
Improved onboarding tour
ADT tour is a comprehensive interactive guide designed to showcase the key features of both the web and hub applications. Through the tour, users can easily familiarize themselves with the features available in ADT. The tour currently covers getting started with build distribution, managing versions and builds, and how to set up crash reporting. We will continue to expand this over time to make it easier to get familiar with the powerful feature set that ADT provides.
New design for crash and sessions graphs
We received feedback that it was hard to read the session and crash graphs in the dashboard. To make it easier to read we changed these to be a bar chart instead of a line graph.
Previous session and crash graphs as a line graph
New session and crash graphs as a bar chart
Bug fixes
General
- Users were able to create Jira tickets even after resetting the Jira Board
- The total Power User account was not including accounts using Azure SSO
Distribution
- Token expires when uploading causing uploads to fail
- User with no access are still able to find private build channels
Health
- Unable to search crashes using ? and ::
- Similar crashes cause repeated triggering of alerts
- Text overlap when using a long branch name on the Version details page
Known issues
- Recorded crash videos may not match the configured video length on the web