Beamable Releases Unity SDK 0.16.0

Beamable Releases Unity SDK 0.16.0

Beamable is happy to announce the release of our Unity SDK 0.16.0. The full changelogs can be found below. Here are the highlights of the release. 

New Microservices Experience

The Microservices window has been completely rebuilt. You can create, manage, monitor, and deploy your services all from the new window. Each microservice has its own log container that can be docked anywhere in the Unity Editor. We’ve also added support for executing Docker Snyk tests, viewing the microservice’s build directory, and attaching a Command Line Interface directly to the microservice Docker container.

Disable Unity Domain Reloading

Unity has offered the ability to increase your Playmode entrance speeds by disabling domain reloading since Unity 2019. Now, Beamable 0.16.0 supports disabling domain reloading as well, which can dramatically speed up your workflow. To try it out, enable Enter Playmode Settings in the Editor section of Project Settings, but don’t enable any reloading options. You should be aware that you may need to adapt your own code to support this workflow.

Leaderboard Cohorting

Beamable has always offered leaderboards as a core capability. Now you can control how your players are grouped into leaderboards by using cohorts. Cohorts can be configured based on player stats, or percentage splits. Beamable uses your configuration to distribute players amongst the various cohorts. The leaderboards SDK automatically aligns the cohorts with leaderboards, so players in the same cohorts exist in the same leaderboards. You can use this feature to group your players based on their gameplay, business logic, or spend.

Content Workflow Enhancements

Content is a central Beamable feature, and in 0.16.0, we’ve added a few improvements to make your workflow faster and more efficient. In the Unity Editor, you can now reset your local content files by going to Window/Beamable/Utilities/Reset Content. If you need to create a new content class, we’ve added a menu item at Create/Beamale/Content Types that will automatically generate you a content class with the associated Content Ref and Content Link classes. When you enter playmode, the Admin Console has a few new commands to help you investigate and verify your content. LIST_CONTENT will print your current content manifest, and GET_CONTENT will display the serialized version of a piece of content. These commands can help you discover issues or validate your content flows.

Automatic Network Compression

Beamable 0.16.0 automatically compresses network traffic between your game and Beamable’s servers. If any request or response exceeds 1KB, the traffic will be GZipped. GZip compression can reduce the payload size of your network traffic by an order of magnitude. Megabytes become kilobytes. This will speed up your game’s connection to Beamable, and increase the size of messages you can send.

Added

  • Support for disabling Unity Domain Reload
  • Content console commands (GET_CONTENT, LIST_CONTENT, CONTENT_NAMESPACE, SET_CONTENT_NAMESPACE)
  • Easy custom content class creation in Create/Beamable/Content Types
  • Resetting content to the server state under Window/Beamable/Utilities/Reset Content
  • MustBeSlugString content validation with configurable option to allow underscores
  • OptionalBoolean type for content
  • Leaderboard Apis that supports fetching partition/cohort cached assignment transparently
  • Ability to disable VIP currency awards on Mail Rewards
  • PlayerSettings scripting define symbols are saved in the Diagnostics file
  • Beamable package version Toolbox announcement
  • Microservices- New Microservices Manager window
  • Microservices- Local microservice health checks are accessible on container port 6565
  • Microservices- Snyk testing for microservices
  • Microservices- Ability to categorize [ClientCallable] methods in documentation with [SwaggerCategory]

Changed

  • Request and Responses to and from Beamable are GZipped if larger than 1K
  • Leaderboard Content supports partitioning, max size, and cohorting
  • Leaderboard Update API will transparently fetch cached assignment
  • PlayerStatRequirements now support providing the domain and access to stats
  • MustBeOneOf content validation attribute now supports Optional types
  • Beamable Platform errors all extend from RequesterException in Unity Client and microservice code
  • Redesigned internal Toolbox announcements
  • Content Manager publish flow shows Realm and Namespace for confirmation

Fixed

  • Added missing attributes for content classes
  • SocialService SocialList serialization
  • Account Management Flow third party login buttons use correct third parties
  • Microservices- Visual Studio Code debug configuration source maps are now correct
  • Microservices- AssumeUser() no longer throws null reference

Our changelogs can be found at https://github.com/beamable/Changelogs/blob/production/com-beamable-changelog.md